التعلم الآلي في PHP: نظرة عامة على مكتبات ML

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

التعلم الآلي في PHP: نظرة عامة على مكتبات تنفيذ خوارزميات ML



على الرغم من أن Python يعتبر تقليديًا اللغة الرئيسية للتعلم الآلي، إلا أن PHP لديها أيضًا العديد من المكتبات القوية التي تسمح بتضمين نماذج ML مباشرة في تطبيقات الويب. في هذه المقالة، سنستعرض الأدوات الرئيسية للتعلم الآلي في PHP، وإمكانياتها، وأمثلة على استخدامها.



لماذا PHP للتعلم الآلي؟

تظل PHP واحدة من أكثر اللغات شيوعًا لتطوير الويب. يتيح استخدام مكتبات ML في PHP ما يلي:

  • دمج النماذج مباشرة في مشاريع Laravel/Symfony الحالية
  • تجنب التبديل بين اللغات داخل نفس المشروع
  • استخدام النظام البيئي المألوف Composer والتحميل التلقائي
  • نشر النماذج الأولية بسرعة على استضافة رخيصة


1. PHP-ML — معيار التعلم الآلي في PHP

PHP-ML (مكتبة التعلم الآلي لـ PHP) هي المكتبة الأكثر شيوعًا لـ ML في PHP. توفر مجموعة واسعة من الخوارزميات دون تبعيات خارجية.



التثبيت

composer require php-ai/php-ml


مثال: تصنيف النصوص

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

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

// بيانات التدريب$samples = [ 'منتج ممتاز توصيل سريع', 'جودة سيئة معيب', 'أوصي به لجميع الأصدقاء', 'لا يعمل تعطل بعد يوم'];$labels = ['positive', 'negative', 'positive', 'negative'];

// تحويل النص إلى متجهات$vectorizer = new TokenCountVectorizer(new WhitespaceTokenizer());$vectorizer->fit($samples);$vectorizer->transform($samples);

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

// تدريب النموذج$classifier = new KNearestNeighbors();$classifier->train($samples, $labels);

// التنبؤ$testSample = ['منتج رائع جودة'];$vectorizer->transform($testSample);$transformer->transform($testSample);

$predicted = $classifier->predict($testSample[0]);echo \"القطبية: $predicted\"; // positive?>


إمكانيات PHP-ML

  • التصنيف: KNearestNeighbors، NaiveBayes، SVC، DecisionTree
  • الانحدار: LeastSquares، Ridge، LogisticRegression
  • التجميع: KMeans، DBSCAN، FuzzyCMeans
  • معالجة النصوص: TF-IDF، الاشتقاق، الترميز
  • المقاييس: الدقة، الضبط، الاستدعاء، مصفوفة الارتباك


2. Rubix ML — إطار عمل حديث للتعلم الآلي

Rubix ML هي مكتبة أحدث وأكثر أداءً مع دعم الشبكات العصبية، وتسريع GPU، وخطوط أنابيب معالجة البيانات.



التثبيت

composer require rubix/ml


مثال: شبكة عصبية للتصنيف

<?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;

// إنشاء مجموعة البيانات$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 (المدرك متعدد الطبقات)$mlp = new MultilayerPerceptron([ new Dense(10), new Activation(new ReLU()), new Dense(5), new Activa

توصيات