PHP पर मशीन लर्निंग: लाइब्रेरी और टूल्स का अवलोकन

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

PHP पर मशीन लर्निंग: लाइब्रेरी और टूल्स



परंपरागत रूप से, मशीन लर्निंग (ML) Python, R या Julia से जुड़ा है। हालांकि, PHP, वेब डेवलपमेंट के लिए सबसे लोकप्रिय भाषाओं में से एक होने के नाते, ML एल्गोरिदम को लागू करने के लिए एक पारिस्थितिकी तंत्र भी रखता है। हालांकि PHP में NumPy या TensorFlow जैसी उतनी उच्च प्रदर्शन और निम्न-स्तरीय लाइब्रेरी नहीं हैं, फिर भी कई व्यावहारिक कार्यों — वर्गीकरण, प्रतिगमन, क्लस्टरिंग, न्यूरल नेटवर्क के साथ काम करना — के लिए परिपक्व समाधान मौजूद हैं। इस लेख में, हम PHP पर मशीन लर्निंग के लिए तीन मुख्य लाइब्रेरी देखेंगे: PHP-ML, Rubix ML और Keras-PHP।



1. PHP-ML (PHP Machine Learning)



PHP-ML PHP पर मशीन लर्निंग के लिए सबसे लोकप्रिय और स्थिर लाइब्रेरी है। इसे बाहरी निर्भरता की आवश्यकता नहीं है, यह पूरी तरह से PHP में लिखी गई है और एल्गोरिदम की एक विस्तृत श्रृंखला प्रदान करती है। यह लाइब्रेरी सीखने, प्रोटोटाइपिंग और वेब एप्लिकेशन में ML को एकीकृत करने के लिए आदर्श है।



मुख्य क्षमताएं:

  • वर्गीकरण: नाइव बेयस, SVM (LibSVM पर आधारित), k-निकटतम पड़ोसी (k-NN), निर्णय वृक्ष।
  • प्रतिगमन: रैखिक प्रतिगमन, सपोर्ट वेक्टर रिग्रेशन (SVR), k-NN प्रतिगमन।
  • क्लस्टरिंग: k-मीन्स, DBSCAN, पदानुक्रमिक क्लस्टरिंग।
  • मूल्यांकन मीट्रिक्स: सटीकता, पूर्णता, F1-स्कोर, कन्फ्यूजन मैट्रिक्स।
  • डेटा प्रीप्रोसेसिंग: सामान्यीकरण, मानकीकरण, श्रेणीबद्ध विशेषताओं का एन्कोडिंग।


उदाहरण: टेक्स्ट की भावना निर्धारित करने के लिए क्लासिफायर प्रशिक्षण

use Phpml\\Classification\\NaiveBayes;use Phpml\\FeatureExtraction\\TfIdfTransformer;use Phpml\\Tokenization\\WhitespaceTokenizer;

// प्रशिक्षण डेटा$samples = [ 'बहुत अच्छी फिल्म', 'भयानक फिल्म', 'बहुत पसंद आया', 'उबाऊ और बेवकूफी भरा'];$labels = ['positive', 'negative', 'positive', 'negative'];

// टेक्स्ट को संख्यात्मक वेक्टर में बदलना$tokenizer = new WhitespaceTokenizer();$transformer = new TfIdfTransformer();

// मॉडल बनाना और प्रशिक्षित करना$classifier = new NaiveBayes();$classifier->train($samples, $labels);

// भविष्यवाणी$prediction = $classifier->predict(['दिलचस्प कहानी']);echo $prediction; // positive


2. Rubix ML



Rubix ML एक अधिक आधुनिक और उन्नत लाइब्रेरी है, जो उच्च प्रदर्शन और लचीलेपन पर केंद्रित है। यह जनरेटर (lazy loading) के माध्यम से बड़े डेटासेट के साथ काम करने का समर्थन करती है, इसमें एक अंतर्निहित पाइपलाइन सिस्टम है और NDArray के माध्यम से TensorFlow के साथ एकीकरण है। PHP-ML के विपरीत, Rubix ML को PHP 7.4+ की आवश्यकता है और यह intl और mbstring जैसे एक्सटेंशन का उपयोग करता है।



मुख्य विशेषताएं:

  • न्यूरल नेटवर्क: विभिन्न सक्रियण फलनों (ReLU, Sigmoid, Softmax) के समर्थन के साथ मल्टी-लेयर परसेप्ट्रॉन (MLP)।
  • पाइपलाइन: कई चरणों (सामान्यीकरण, एन्कोडिंग, प्रशिक्षण) को एक पाइपलाइन में संयोजित करना।
  • स्पार्स डेटा के साथ काम करना: बड़े मैट्रिक्स के लिए कुशल एल्गोरिदम।
  • विज़ुअलाइज़ेशन: ग्राफ़ बनाने के लिए अंतर्निहित उपकरण (SVG के माध्यम से)।
  • मॉडल को सहेजना और लोड करना: JSON या PHP-सीरियलाइज़्ड प्रारूप में सीरियलाइज़ेशन।


उदाहरण: घर की कीमत की भविष्यवाणी के लिए प्रतिगमन

use Rubix\\ML\\Regressors\\Ridge;use Rubix\\ML\\Datasets\\Labeled;use Rubix\\ML\\Transformers\\NumericStringConverter;

// डेटा लोड करना (मान लें CSV)$dataset = Labeled::fromIterator(new \\ArrayIterator([ ['area' => 120, 'rooms' => 3, 'price' => 150000], ['area' => 80, 'rooms' => 2, 'price' => 90000], ['area' => 200, 'rooms' => 4, 'price' =&g

अनुशंसाएँ