أفضل 10 أطر للتعلم الآلي

نشرت: 2017-03-11
عرض جدول المحتويات
1. Tensorflow
2. الكافيين
3. التعلم الآلي من أمازون
4. اباتشي سنجا
5. مايكروسوفت CNTK
6. الشعلة
7. Accord.NET
8. اباتشي محوت
9. ثيانو
10. تبادل الأفكار

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

1. Tensorflow

تم تطوير Tensorflow بواسطة فريق Google Brain لفهم اللغة المختلفة والمهام الإدراكية. يتم استخدام إطار العمل مفتوح المصدر هذا لإجراء بحث مكثف حول الشبكات العصبية العميقة والتعلم الآلي. نظرًا لكونه إطار عمل التعلم الآلي الثاني من Google Brain ، فهو متوافق مع معظم وحدات المعالجة المركزية ووحدات معالجة الرسومات الجديدة. تم تجهيز العديد من خدمات Google الشهيرة التي نستخدمها يوميًا مثل Gmail والتعرف على الكلام وصور Google وحتى بحث Google بنظام Tensorflow.

يستخدم Tensorflow الرسوم البيانية لتدفق البيانات لأداء مهام رقمية معقدة. تم تطوير الحسابات الرياضية باستخدام رسم بياني موجه يحتوي على حواف وعقد. تُستخدم هذه العقد لتنفيذ العمليات ويمكن أن تعمل أيضًا كنقاط نهاية حيث يتم تغذية البيانات. تمثل الحواف أيضًا ارتباطات الإدخال / الإخراج بين العقد المختلفة.

2. الكافيين

Caffe عبارة عن إطار عمل للتعلم الآلي تم تصميمه بتعبير وسرعة ونمطية أفضل كنقاط تركيز. تم تطويره من أجل رؤية الكمبيوتر / تصنيف الصور من خلال الاستفادة من الشبكات العصبية التلافيفية (CNNs). تشتهر Caffe بـ Model Zoo ، وهي عبارة عن مجموعة من النماذج المدربة مسبقًا ولا تتطلب أي تشفير لتنفيذها.

إنه مناسب بشكل أفضل لبناء التطبيقات بدلاً من Tensorflow الذي يكون أفضل في البحث والتطوير. إذا كنت تتعامل مع تطبيقات تحتوي على نص أو صوت أو بيانات متسلسلة زمنية ، فلاحظ أن Caffe ليس مخصصًا لأي شيء آخر غير رؤية الكمبيوتر. ومع ذلك ، يمكن تشغيله ديناميكيًا على مجموعة من الأجهزة ويقوم بعمل جيد في التبديل بين وحدة المعالجة المركزية ووحدة معالجة الرسومات باستخدام علامة واحدة فقط.

3. التعلم الآلي من أمازون

طورت أمازون خدمة التعلم الآلي الخاصة بها للمطورين تسمى AML. إنها مجموعة من الأدوات والمعالجات التي يمكن استخدامها لتطوير نماذج تعلم متطورة وعالية الجودة وذكية دون التلاعب في الكود. باستخدام AML ، يمكن اشتقاق التنبؤات اللازمة لتطبيقاتك عبر واجهات برمجة التطبيقات التي يسهل استخدامها. يستخدم علماء البيانات الداخلية في أمازون التقنية الكامنة وراء AML لدعم خدمات Amazon Cloud وهي قابلة للتطوير للغاية وديناميكية ومرنة. يمكن لـ AML الاتصال بالبيانات المخزنة في Amazon S3 أو RDS أو Redshift وتنفيذ عمليات مثل التصنيف الثنائي أو الانحدار أو التصنيف متعدد الفئات لإنشاء نماذج جديدة.

4. اباتشي سنجا

يركز Apache Singa بشكل أساسي على التعلم العميق الموزع باستخدام تقسيم النموذج وموازاة عملية التدريب. يوفر نموذج برمجة بسيطًا وقويًا يمكنه العمل عبر مجموعة من العقد. التطبيقات الرئيسية في التعرف على الصور ومعالجة اللغة الطبيعية (NLP).

تم تطوير Singa باستخدام نموذج برمجة قائم على تجريد الطبقة البديهي ويدعم مجموعة من نماذج التعلم العميق. نظرًا لأنه يعتمد على بنية مرنة للغاية ، فيمكنه تشغيل طرق تدريب متزامنة وغير متزامنة وحتى مختلطة. تتكون المجموعة الفنية في Singa من ثلاثة مكونات مهمة: IO و Model و Core. يحتوي مكون الإدخال / الإخراج على فئات تستخدم لقراءة / كتابة البيانات على الشبكة والقرص. يتعامل المكون الأساسي مع عمليات الموتر ووظائف إدارة الذاكرة. يضم النموذج الخوارزميات وهياكل البيانات المستخدمة في نماذج التعلم الآلي.

5. مايكروسوفت CNTK

CNTK (مجموعة الأدوات المعرفية) هي إطار عمل تعلم الآلة مفتوح المصدر من Microsoft. على الرغم من أنه أكثر شيوعًا في مجال التعرف على الكلام ، يمكن أيضًا استخدام CNTK للتدريب على النص والصور. نظرًا لوجود دعم لمجموعة متنوعة من خوارزميات التعلم الآلي مثل AS CNN و LSTM و RNN و Sequence-to-Sequence و Feed Forward ، فهي واحدة من أكثر أطر التعلم الآلي ديناميكية. يدعم CNTK أنواعًا متعددة من الأجهزة ، بما في ذلك العديد من وحدات المعالجة المركزية ووحدات معالجة الرسومات.

التوافق هو أحد أهم ميزات CNTK. كما تم الإشادة به باعتباره بنية التعلم الآلي الأكثر تعبيرًا وسهولة في الاستخدام. في CNTK ، يمكنك العمل مع لغات مثل C ++ و python وإما استخدام نماذج التدريب المضمنة أو إنشاء نماذجك الخاصة.

6. الشعلة

يمكن القول إن Torch هو أبسط إطار عمل للتعلم الآلي للإعداد والانطلاق بسرعة وسهولة ، خاصة إذا كنت تستخدم Ubuntu. تم تطوير Torch في عام 2002 في جامعة نيويورك ، ويستخدم على نطاق واسع في شركات التكنولوجيا الكبرى مثل Twitter و Facebook. يتم ترميز Torch بلغة تسمى Lua ، وهي لغة غير شائعة ولكنها سهلة القراءة والفهم. يمكن أن تُعزى بعض مزايا Torch إلى لغة البرمجة الودية هذه التي تحتوي على رسائل خطأ مفيدة ، ومستودعًا ضخمًا من نماذج التعليمات البرمجية ، والأدلة ، ومجتمع مفيد.

7. Acco rd.NET

Accord.NET هو إطار عمل تعلم آلي مفتوح المصدر يعتمد على .NET وهو مثالي للحوسبة العلمية. وهو يتألف من مكتبات مختلفة يمكن استخدامها لتطبيقات مثل التعرف على الأنماط والشبكات العصبية الاصطناعية ومعالجة البيانات الإحصائية والجبر الخطي ومعالجة الصور وما إلى ذلك. يتكون الإطار من مكتبات متاحة كمثبتات وحزم NuGet وكود المصدر. يحتوي Accord.NET على مكتبة مصفوفة تسهل إعادة استخدام الكود والتغييرات الحسابية التدريجية.

8. اباتشي محوت

نظرًا لكونه مشروعًا مجانيًا ومفتوح المصدر من قِبل مؤسسة Apache Software Foundation ، فقد تم إنشاء Apache Mahout بهدف تطوير أطر عمل ML موزعة أو قابلة للتطوير مجانًا لتطبيقات مثل التجميع والتصنيف والتصفية التعاونية. مجموعات Java لعمليات حسابية مختلفة ومكتبات Java متوفرة أيضًا في Mahout.

يتم نشر Apache Mahout أعلى Hadoop باستخدام نموذج MapReduce. أحد التطبيقات الرائعة هو تحويل البيانات إلى رؤى على الفور. بمجرد توصيل البيانات الكبيرة المخزنة على Hadoop ، يمكن لـ Mahout مساعدة أدوات علم البيانات في العثور على أنماط ذات معنى من مجموعات البيانات.

9. ثيانو

تم تطوير Theano في عام 2007 في جامعة مونتريال المشهورة عالميًا بخوارزميات التعلم الآلي. على الرغم من اعتباره إطار عمل للتعلم الآلي منخفض المستوى ، إلا أنه مرن وسريع الاشتعال. رسائل الخطأ التي يتم طرحها بواسطة إطار العمل سيئة السمعة لكونها غير مفيدة ومشفرة. إذا تركنا هذه الأمور جانباً ، فإن Theano هي منصة أكثر ملاءمة لمهام البحث ويمكن أن تكون مفيدة للغاية في ذلك.

يتم استخدامه في الغالب كنظام أساسي لأنظمة التجريد المتطورة التي ترسل أغلفة API إلى Theano. ومن الأمثلة على بعض المكتبات الشعبية: Lasagne و Blocks و Keras. عيب استخدام Theano هو أنه سيتعين عليك العبث ببعض الحلول للحصول على دعم متعدد GPU.

10. تبادل الأفكار

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

يوفر Brainstorm اثنين من "المعالجات" أو واجهات برمجة التطبيقات للبيانات باستخدام Python - أحدهما لوحدات المعالجة المركزية بواسطة مكتبة Numpy والآخر للاستفادة من وحدات معالجة الرسومات باستخدام CUDA. يتم تنفيذ معظم عمليات الرفع الثقيل عن طريق برمجة Python مما يعني أن واجهة المستخدم الأمامية الغنية تكاد تكون غائبة.