2016-05-03 11:08:09 +00:00
# PHP-ML - Machine Learning library for PHP
2016-02-08 22:07:16 +00:00
2017-11-15 10:08:51 +00:00
[![Minimum PHP Version ](https://img.shields.io/badge/php-%3E%3D%207.1-8892BF.svg )](https://php.net/)
2016-07-20 07:15:52 +00:00
[![Latest Stable Version ](https://img.shields.io/packagist/v/php-ai/php-ml.svg )](https://packagist.org/packages/php-ai/php-ml)
2018-07-31 21:28:07 +00:00
[![Build Status ](https://travis-ci.org/php-ai/php-ml.svg?branch=master )](https://travis-ci.org/php-ai/php-ml)
2016-10-15 18:50:16 +00:00
[![Documentation Status ](https://readthedocs.org/projects/php-ml/badge/?version=master )](http://php-ml.readthedocs.org/)
2016-04-08 21:22:55 +00:00
[![Total Downloads ](https://poser.pugx.org/php-ai/php-ml/downloads.svg )](https://packagist.org/packages/php-ai/php-ml)
[![License ](https://poser.pugx.org/php-ai/php-ml/license.svg )](https://packagist.org/packages/php-ai/php-ml)
2018-02-14 18:51:07 +00:00
[![Coverage Status ](https://coveralls.io/repos/github/php-ai/php-ml/badge.svg?branch=master )](https://coveralls.io/github/php-ai/php-ml?branch=master)
2017-10-24 06:31:29 +00:00
[![Scrutinizer Code Quality ](https://scrutinizer-ci.com/g/php-ai/php-ml/badges/quality-score.png?b=master )](https://scrutinizer-ci.com/g/php-ai/php-ml/?branch=master)
2018-03-10 20:48:16 +00:00
< p align = "center" >
2018-07-31 21:28:07 +00:00
< img src = "https://github.com/php-ai/php-ml/raw/master/docs/assets/php-ml-logo.png" / >
2018-03-10 20:48:16 +00:00
< / p >
2016-07-16 22:31:47 +00:00
2016-08-14 17:14:56 +00:00
Fresh approach to Machine Learning in PHP. Algorithms, Cross Validation, Neural Network, Preprocessing, Feature Extraction and much more in one library.
2016-05-02 10:07:53 +00:00
2018-01-06 10:12:42 +00:00
PHP-ML requires PHP >= 7.1.
2016-07-20 07:15:52 +00:00
2016-05-02 10:07:53 +00:00
Simple example of classification:
```php
2017-10-25 06:09:23 +00:00
require_once __DIR__ . '/vendor/autoload.php';
2017-05-29 07:39:08 +00:00
2016-05-02 12:10:49 +00:00
use Phpml\Classification\KNearestNeighbors;
2016-05-02 10:07:53 +00:00
$samples = [[1, 3], [1, 4], [2, 4], [3, 1], [4, 1], [4, 2]];
$labels = ['a', 'a', 'a', 'b', 'b', 'b'];
$classifier = new KNearestNeighbors();
$classifier->train($samples, $labels);
2017-05-29 07:39:08 +00:00
echo $classifier->predict([3, 2]);
2016-05-02 10:07:53 +00:00
// return 'b'
```
2016-02-08 22:07:16 +00:00
2018-03-10 20:48:16 +00:00
## Awards
< a href = "http://www.yegor256.com/2016/10/23/award-2017.html" >
< img src = "http://www.yegor256.com/images/award/2017/winner-itcraftsmanpl.png" width = "400" / > < / a >
2016-04-08 21:22:55 +00:00
## Documentation
2016-02-08 22:20:08 +00:00
2016-04-08 22:53:18 +00:00
To find out how to use PHP-ML follow [Documentation ](http://php-ml.readthedocs.org/ ).
2016-02-08 22:07:16 +00:00
## Installation
2017-09-02 19:24:51 +00:00
Currently this library is in the process of being developed, but You can install it with Composer:
2016-04-08 21:22:55 +00:00
```
composer require php-ai/php-ml
```
2016-02-08 22:07:16 +00:00
2016-07-24 11:35:13 +00:00
## Examples
Example scripts are available in a separate repository [php-ai/php-ml-examples ](https://github.com/php-ai/php-ml-examples ).
2018-03-10 20:48:16 +00:00
## Datasets
Public datasets are available in a separate repository [php-ai/php-ml-datasets ](https://github.com/php-ai/php-ml-datasets ).
2016-05-02 10:07:53 +00:00
## Features
2016-09-17 20:02:48 +00:00
* Association rule learning
* [Apriori ](http://php-ml.readthedocs.io/en/latest/machine-learning/association/apriori/ )
2016-05-02 10:07:53 +00:00
* Classification
2016-05-07 21:53:42 +00:00
* [SVC ](http://php-ml.readthedocs.io/en/latest/machine-learning/classification/svc/ )
2016-05-02 11:49:19 +00:00
* [k-Nearest Neighbors ](http://php-ml.readthedocs.io/en/latest/machine-learning/classification/k-nearest-neighbors/ )
* [Naive Bayes ](http://php-ml.readthedocs.io/en/latest/machine-learning/classification/naive-bayes/ )
2017-02-10 11:01:58 +00:00
* Decision Tree (CART)
* Ensemble Algorithms
* Bagging (Bootstrap Aggregating)
* Random Forest
2017-02-23 19:59:30 +00:00
* AdaBoost
* Linear
* Adaline
* Decision Stump
* Perceptron
2017-04-23 07:03:30 +00:00
* LogisticRegression
2016-05-02 10:07:53 +00:00
* Regression
2016-05-02 11:49:19 +00:00
* [Least Squares ](http://php-ml.readthedocs.io/en/latest/machine-learning/regression/least-squares/ )
2016-05-07 21:53:42 +00:00
* [SVR ](http://php-ml.readthedocs.io/en/latest/machine-learning/regression/svr/ )
2016-05-02 10:07:53 +00:00
* Clustering
2016-05-14 19:50:48 +00:00
* [k-Means ](http://php-ml.readthedocs.io/en/latest/machine-learning/clustering/k-means/ )
* [DBSCAN ](http://php-ml.readthedocs.io/en/latest/machine-learning/clustering/dbscan/ )
2017-04-23 07:03:30 +00:00
* Fuzzy C-Means
2016-05-14 19:50:48 +00:00
* Metric
* [Accuracy ](http://php-ml.readthedocs.io/en/latest/machine-learning/metric/accuracy/ )
2016-07-11 22:11:18 +00:00
* [Confusion Matrix ](http://php-ml.readthedocs.io/en/latest/machine-learning/metric/confusion-matrix/ )
2016-07-19 20:17:03 +00:00
* [Classification Report ](http://php-ml.readthedocs.io/en/latest/machine-learning/metric/classification-report/ )
2016-07-11 22:00:17 +00:00
* Workflow
* [Pipeline ](http://php-ml.readthedocs.io/en/latest/machine-learning/workflow/pipeline )
2016-08-14 17:14:56 +00:00
* Neural Network
2017-05-17 22:07:14 +00:00
* [Multilayer Perceptron Classifier ](http://php-ml.readthedocs.io/en/latest/machine-learning/neural-network/multilayer-perceptron-classifier/ )
2016-05-02 10:07:53 +00:00
* Cross Validation
2016-05-14 19:50:48 +00:00
* [Random Split ](http://php-ml.readthedocs.io/en/latest/machine-learning/cross-validation/random-split/ )
2016-07-10 22:07:07 +00:00
* [Stratified Random Split ](http://php-ml.readthedocs.io/en/latest/machine-learning/cross-validation/stratified-random-split/ )
2018-02-10 17:07:09 +00:00
* Feature Selection
* [Variance Threshold ](http://php-ml.readthedocs.io/en/latest/machine-learning/feature-selection/variance-threshold/ )
2018-02-14 18:51:07 +00:00
* [SelectKBest ](http://php-ml.readthedocs.io/en/latest/machine-learning/feature-selection/selectkbest/ )
2016-05-09 21:52:09 +00:00
* Preprocessing
2016-05-14 19:50:48 +00:00
* [Normalization ](http://php-ml.readthedocs.io/en/latest/machine-learning/preprocessing/normalization/ )
* [Imputation missing values ](http://php-ml.readthedocs.io/en/latest/machine-learning/preprocessing/imputation-missing-values/ )
2016-05-07 21:53:42 +00:00
* Feature Extraction
2016-05-14 19:50:48 +00:00
* [Token Count Vectorizer ](http://php-ml.readthedocs.io/en/latest/machine-learning/feature-extraction/token-count-vectorizer/ )
2019-02-15 16:31:10 +00:00
* NGramTokenizer
* WhitespaceTokenizer
* WordTokenizer
2016-07-11 22:21:34 +00:00
* [Tf-idf Transformer ](http://php-ml.readthedocs.io/en/latest/machine-learning/feature-extraction/tf-idf-transformer/ )
2017-04-23 07:03:30 +00:00
* Dimensionality Reduction
2017-04-25 06:58:02 +00:00
* PCA (Principal Component Analysis)
2017-04-23 07:03:30 +00:00
* Kernel PCA
2017-04-25 06:58:02 +00:00
* LDA (Linear Discriminant Analysis)
2016-05-02 11:49:19 +00:00
* Datasets
2016-07-16 21:56:52 +00:00
* [Array ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/array-dataset/ )
2016-05-14 19:50:48 +00:00
* [CSV ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/csv-dataset/ )
2016-07-16 21:56:52 +00:00
* [Files ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/files-dataset/ )
2018-02-24 10:17:35 +00:00
* [SVM ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/svm-dataset/ )
2018-11-07 07:02:56 +00:00
* [MNIST ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/mnist-dataset.md )
2016-05-02 11:49:19 +00:00
* Ready to use:
* [Iris ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/demo/iris/ )
2016-05-10 21:44:28 +00:00
* [Wine ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/demo/wine/ )
* [Glass ](http://php-ml.readthedocs.io/en/latest/machine-learning/datasets/demo/glass/ )
2017-02-04 10:19:43 +00:00
* Models management
* [Persistency ](http://php-ml.readthedocs.io/en/latest/machine-learning/model-manager/persistency/ )
2016-05-02 11:49:19 +00:00
* Math
* [Distance ](http://php-ml.readthedocs.io/en/latest/math/distance/ )
* [Matrix ](http://php-ml.readthedocs.io/en/latest/math/matrix/ )
2016-09-17 20:02:48 +00:00
* [Set ](http://php-ml.readthedocs.io/en/latest/math/set/ )
2016-05-09 21:52:09 +00:00
* [Statistic ](http://php-ml.readthedocs.io/en/latest/math/statistic/ )
2017-04-23 07:03:30 +00:00
* Linear Algebra
2016-05-02 10:07:53 +00:00
## Contribute
2016-02-08 22:07:16 +00:00
2018-03-10 20:48:16 +00:00
- [Guide: CONTRIBUTING.md ](https://github.com/php-ai/php-ml/blob/master/CONTRIBUTING.md )
2016-08-21 12:03:20 +00:00
- [Issue Tracker: github.com/php-ai/php-ml ](https://github.com/php-ai/php-ml/issues )
- [Source Code: github.com/php-ai/php-ml ](https://github.com/php-ai/php-ml )
2016-02-08 22:07:16 +00:00
2016-07-26 19:57:15 +00:00
You can find more about contributing in [CONTRIBUTING.md ](CONTRIBUTING.md ).
2016-02-08 22:07:16 +00:00
## License
PHP-ML is released under the MIT Licence. See the bundled LICENSE file for details.
## Author
2016-05-02 10:07:53 +00:00
Arkadiusz Kondas (@ArkadiuszKondas)