php-ai / php-ml
PHP-ML - Machine Learning library for PHP
Requires
- php: ^8.0
Requires (Dev)
- phpbench/phpbench: ^1.2
- phpstan/phpstan: ^0.12
- phpstan/phpstan-phpunit: ^0.12
- phpstan/phpstan-strict-rules: ^0.12
- phpunit/phpunit: ^8.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Fresh approach to Machine Learning in PHP. Algorithms, Cross Validation, Neural Network, Preprocessing, Feature Extraction and much more in one library.
PHP-ML requires PHP >= 7.2.
Simple example of classification:
require_once __DIR__ . '/vendor/autoload.php';
use Phpml\Classification\KNearestNeighbors;
$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);
echo $classifier->predict([3, 2]);
// return 'b'
Awards
Documentation
To find out how to use PHP-ML follow Documentation.
Installation
Currently this library is in the process of being developed, but You can install it with Composer:
composer require php-ai/php-ml
Examples
Example scripts are available in a separate repository php-ai/php-ml-examples.
Datasets
Public datasets are available in a separate repository php-ai/php-ml-datasets.
Features
- Association rule learning
- Classification
- SVC
- k-Nearest Neighbors
- Naive Bayes
- Decision Tree (CART)
- Ensemble Algorithms
- Bagging (Bootstrap Aggregating)
- Random Forest
- AdaBoost
- Linear
- Adaline
- Decision Stump
- Perceptron
- LogisticRegression
- Regression
- Clustering
- Metric
- Accuracy
- Confusion Matrix
- Classification Report
- Regression
- Workflow
- Pipeline
- FeatureUnion
- Neural Network
- Cross Validation
- Feature Selection
- Preprocessing
- Normalization
- Imputation missing values
- LabelEncoder
- LambdaTransformer
- NumberConverter
- ColumnFilter
- OneHotEncoder
- Feature Extraction
- Token Count Vectorizer
- NGramTokenizer
- WhitespaceTokenizer
- WordTokenizer
- Tf-idf Transformer
- Token Count Vectorizer
- Dimensionality Reduction
- PCA (Principal Component Analysis)
- Kernel PCA
- LDA (Linear Discriminant Analysis)
- Datasets
- Models management
- Math
Contribute
- Guide: CONTRIBUTING.md
- Issue Tracker: github.com/php-ai/php-ml
- Source Code: github.com/php-ai/php-ml
You can find more about contributing in CONTRIBUTING.md.
License
PHP-ML is released under the MIT Licence. See the bundled LICENSE file for details.
Author
Arkadiusz Kondas (@ArkadiuszKondas)

