2016-05-07 21:53:42 +00:00
|
|
|
# PHP-ML - Machine Learning library for PHP
|
2016-04-08 22:36:48 +00:00
|
|
|
|
2016-07-20 07:15:52 +00:00
|
|
|
[![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.0-8892BF.svg)](https://php.net/)
|
|
|
|
[![Latest Stable Version](https://img.shields.io/packagist/v/php-ai/php-ml.svg)](https://packagist.org/packages/php-ai/php-ml)
|
2016-04-08 22:36:48 +00:00
|
|
|
[![Build Status](https://scrutinizer-ci.com/g/php-ai/php-ml/badges/build.png?b=develop)](https://scrutinizer-ci.com/g/php-ai/php-ml/build-status/develop)
|
2016-05-02 11:49:19 +00:00
|
|
|
[![Documentation Status](https://readthedocs.org/projects/php-ml/badge/?version=develop)](http://php-ml.readthedocs.org/en/develop/?badge=develop)
|
2016-04-08 22:36:48 +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)
|
|
|
|
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/php-ai/php-ml/badges/quality-score.png?b=develop)](https://scrutinizer-ci.com/g/php-ai/php-ml/?branch=develop)
|
|
|
|
|
2016-07-16 22:31:47 +00:00
|
|
|
![PHP-ML - Machine Learning library for PHP](assets/php-ml-logo.png)
|
|
|
|
|
2016-07-20 07:15:52 +00:00
|
|
|
Fresh approach to Machine Learning in PHP. Algorithms, Cross Validation, Preprocessing, Feature Extraction and much more in one library.
|
|
|
|
|
|
|
|
PHP-ML requires PHP >= 7.0.
|
2016-05-02 11:49:19 +00:00
|
|
|
|
|
|
|
Simple example of classification:
|
|
|
|
```php
|
2016-05-02 12:10:49 +00:00
|
|
|
use Phpml\Classification\KNearestNeighbors;
|
2016-05-02 11:49:19 +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);
|
|
|
|
|
|
|
|
$classifier->predict([3, 2]);
|
|
|
|
// return 'b'
|
|
|
|
```
|
|
|
|
|
|
|
|
## Documentation
|
|
|
|
|
|
|
|
To find out how to use PHP-ML follow [Documentation](http://php-ml.readthedocs.org/).
|
2016-04-08 22:36:48 +00:00
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
Currently this library is in the process of developing, but You can install it with Composer:
|
|
|
|
|
|
|
|
```
|
|
|
|
composer require php-ai/php-ml
|
|
|
|
```
|
|
|
|
|
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).
|
|
|
|
|
2016-05-02 11:49:19 +00:00
|
|
|
## Features
|
|
|
|
|
|
|
|
* Classification
|
2016-07-11 19:12:49 +00:00
|
|
|
* [SVC](machine-learning/classification/svc/)
|
2016-07-11 22:00:17 +00:00
|
|
|
* [k-Nearest Neighbors](machine-learning/classification/k-nearest-neighbors/)
|
|
|
|
* [Naive Bayes](machine-learning/classification/naive-bayes/)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Regression
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Least Squares](machine-learning/regression/least-squares/)
|
|
|
|
* [SVR](machine-learning/regression/svr/)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Clustering
|
2016-07-11 22:00:17 +00:00
|
|
|
* [k-Means](machine-learning/clustering/k-means/)
|
|
|
|
* [DBSCAN](machine-learning/clustering/dbscan/)
|
2016-05-14 19:50:48 +00:00
|
|
|
* Metric
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Accuracy](machine-learning/metric/accuracy/)
|
2016-07-11 22:11:18 +00:00
|
|
|
* [Confusion Matrix](machine-learning/metric/confusion-matrix/)
|
2016-07-19 20:17:03 +00:00
|
|
|
* [Classification Report](machine-learning/metric/classification-report/)
|
2016-07-11 22:00:17 +00:00
|
|
|
* Workflow
|
|
|
|
* [Pipeline](machine-learning/workflow/pipeline)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Cross Validation
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Random Split](machine-learning/cross-validation/random-split/)
|
|
|
|
* [Stratified Random Split](machine-learning/cross-validation/stratified-random-split/)
|
2016-05-09 21:52:09 +00:00
|
|
|
* Preprocessing
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Normalization](machine-learning/preprocessing/normalization/)
|
|
|
|
* [Imputation missing values](machine-learning/preprocessing/imputation-missing-values/)
|
2016-05-07 21:53:42 +00:00
|
|
|
* Feature Extraction
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Token Count Vectorizer](machine-learning/feature-extraction/token-count-vectorizer/)
|
2016-07-11 22:21:34 +00:00
|
|
|
* [Tf-idf Transformer](machine-learning/feature-extraction/tf-idf-transformer/)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Datasets
|
2016-07-16 21:56:52 +00:00
|
|
|
* [Array](machine-learning/datasets/array-dataset/)
|
2016-07-11 22:00:17 +00:00
|
|
|
* [CSV](machine-learning/datasets/csv-dataset/)
|
2016-07-16 21:56:52 +00:00
|
|
|
* [Files](machine-learning/datasets/files-dataset/)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Ready to use:
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Iris](machine-learning/datasets/demo/iris/)
|
|
|
|
* [Wine](machine-learning/datasets/demo/wine/)
|
|
|
|
* [Glass](machine-learning/datasets/demo/glass/)
|
2016-05-02 11:49:19 +00:00
|
|
|
* Math
|
2016-07-11 22:00:17 +00:00
|
|
|
* [Distance](math/distance/)
|
|
|
|
* [Matrix](math/matrix/)
|
|
|
|
* [Statistic](math/statistic/)
|
2016-05-02 11:49:19 +00:00
|
|
|
|
2016-04-08 22:36:48 +00:00
|
|
|
|
2016-05-02 11:49:19 +00:00
|
|
|
## Contribute
|
2016-04-08 22:36:48 +00:00
|
|
|
|
2016-05-02 11:49:19 +00:00
|
|
|
- Issue Tracker: github.com/php-ai/php-ml/issues
|
|
|
|
- Source Code: github.com/php-ai/php-ml
|
2016-04-08 22:36:48 +00:00
|
|
|
|
2016-05-02 11:49:19 +00:00
|
|
|
After installation, you can launch the test suite in project root directory (you will need to install dev requirements with Composer)
|
2016-04-08 22:36:48 +00:00
|
|
|
|
|
|
|
```
|
|
|
|
bin/phpunit
|
|
|
|
```
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
PHP-ML is released under the MIT Licence. See the bundled LICENSE file for details.
|
|
|
|
|
|
|
|
## Author
|
|
|
|
|
2016-05-02 11:49:19 +00:00
|
|
|
Arkadiusz Kondas (@ArkadiuszKondas)
|