Maschinelles Lernen mit PHP: Überblick über Bibliotheken für ML

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Maschinelles Lernen mit PHP: Überblick über Bibliotheken zur Implementierung von ML-Algorithmen



Obwohl Python traditionell als die Hauptsprache für maschinelles Lernen gilt, verfügt auch PHP über mehrere leistungsstarke Bibliotheken, die es ermöglichen, ML-Modelle direkt in Webanwendungen zu integrieren. In diesem Artikel betrachten wir die wichtigsten Werkzeuge für maschinelles Lernen in PHP, ihre Funktionen und Anwendungsbeispiele.



Warum PHP für maschinelles Lernen?

PHP bleibt eine der beliebtesten Sprachen für die Webentwicklung. Die Verwendung von ML-Bibliotheken in PHP ermöglicht:

  • Die direkte Integration von Modellen in bestehende Laravel/Symfony-Projekte
  • Den Verzicht auf Sprachwechsel innerhalb eines Projekts
  • Die Nutzung des vertrauten Composer-Ökosystems und der Autoloading-Funktionalität
  • Schnelles Erstellen von Prototypen auf günstigem Hosting


1. PHP-ML — Der Standard für maschinelles Lernen in PHP

PHP-ML (Machine Learning library for PHP) ist die beliebteste Bibliothek für ML in PHP. Sie bietet eine breite Palette von Algorithmen ohne externe Abhängigkeiten.



Installation

composer require php-ai/php-ml


Beispiel: Textklassifikation

<?phprequire_once __DIR__ . '/vendor/autoload.php';

use Phpml\\Classification\\KNearestNeighbors;use Phpml\\FeatureExtraction\\TfIdfTransformer;use Phpml\\Tokenization\\WhitespaceTokenizer;use Phpml\\FeatureExtraction\\TokenCountVectorizer;

// Trainingsdaten$samples = [ 'ausgezeichnetes Produkt schnelle Lieferung', 'schreckliche Qualität defekt', 'empfehle es allen Freunden', 'funktioniert nicht nach einem Tag kaputt'];$labels = ['positive', 'negative', 'positive', 'negative'];

// Text in Vektoren umwandeln$vectorizer = new TokenCountVectorizer(new WhitespaceTokenizer());$vectorizer->fit($samples);$vectorizer->transform($samples);

$transformer = new TfIdfTransformer();$transformer->fit($samples);$transformer->transform($samples);

// Modell trainieren$classifier = new KNearestNeighbors();$classifier->train($samples, $labels);

// Vorhersage$testSample = ['hervorragendes Produkt Qualität'];$vectorizer->transform($testSample);$transformer->transform($testSample);

$predicted = $classifier->predict($testSample[0]);echo "Stimmung: $predicted"; // positive?>


Funktionen von PHP-ML

  • Klassifikation: KNearestNeighbors, NaiveBayes, SVC, DecisionTree
  • Regression: LeastSquares, Ridge, LogisticRegression
  • Clusteranalyse: KMeans, DBSCAN, FuzzyCMeans
  • Textverarbeitung: TF-IDF, Stemming, Tokenisierung
  • Metriken: accuracy, precision, recall, confusion matrix


2. Rubix ML — Modernes Framework für maschinelles Lernen

Rubix ML ist eine neuere und leistungsfähigere Bibliothek mit Unterstützung für neuronale Netze, GPU-Beschleunigung und Datenverarbeitungspipelines.



Installation

composer require rubix/ml


Beispiel: Neuronales Netz zur Klassifikation

<?phprequire_once __DIR__ . '/vendor/autoload.php';

use Rubix\\ML\\Datasets\\Labeled;use Rubix\\ML\\NeuralNet\\Layers\\Dense;use Rubix\\ML\\NeuralNet\\Layers\\Activation;use Rubix\\ML\\NeuralNet\\ActivationFunctions\\ReLU;use Rubix\\ML\\NeuralNet\\ActivationFunctions\\Softmax;use Rubix\\ML\\NeuralNet\\Optimizers\\Adam;use Rubix\\ML\\Classifiers\\MultilayerPerceptron;use Rubix\\ML\\CrossValidation\\Reports\\MulticlassBreakdown;

// Datensatz erstellen$samples = [[2.5, 1.2], [1.0, 0.8], [3.5, 4.2], [2.0, 0.5]];$labels = ['cat', 'dog', 'cat', 'dog'];$dataset = new Labeled($samples, $labels);

// MLP (mehrschichtiges Perzeptron) erstellen$mlp = new MultilayerPerceptron([ new Dense(10), new Activation(new ReLU()), new Dense(5), new Activa

Empfehlungen