ML.NET

ML.NET مكتبة برمجية مجانية للتعلم الآلي ، مُصممة للغتي البرمجة C# و F# . [ 4 ] [ 5 ] [ 6 ] كما تدعم نماذج بايثون عند استخدامها مع NimbusML. تضمنت النسخة التجريبية من ML.NET تحويلات لهندسة الميزات ، مثل إنشاء n-gram ، ونماذج تعلم للتعامل مع التصنيف الثنائي، والتصنيف متعدد الفئات، ومهام الانحدار. [ 7 ] أُضيفت لاحقًا مهام تعلم آلي إضافية، مثل اكتشاف الشذوذ وأنظمة التوصية، وسيتم تضمين مناهج أخرى، مثل التعلم العميق، في الإصدارات المستقبلية. [ 8 ] [ 9 ]

التعلم الآلي

يُتيح إطار عمل ML.NET لمطوري .NET الحاليين إمكانيات تحليل وتنبؤ قائمة على نماذج التعلم الآلي. ويستند هذا الإطار إلى .NET Core و.NET Standard، ما يمنحه القدرة على العمل عبر منصات متعددة، مثل Linux و Windows و macOS . وعلى الرغم من حداثة إطار عمل ML.NET، إلا أن بداياته تعود إلى عام 2002 كمشروع بحثي في ​​مايكروسوفت باسم TMSN ( استخراج النصوص والبحث والتنقل) لاستخدامه داخليًا في منتجات مايكروسوفت. ثم أُعيد تسميته لاحقًا إلى TLC (رمز التعلم) حوالي عام 2011. ويقول الدكتور جيمس مكافري، من مايكروسوفت للأبحاث، إن ML.NET مُشتق من مكتبة TLC، وقد تفوق عليها بشكل كبير. [ 10 ]

يمكن للمطورين تدريب نموذج تعلم آلي أو إعادة استخدام نموذج موجود من طرف ثالث وتشغيله في أي بيئة دون اتصال بالإنترنت. هذا يعني أن المطورين ليسوا بحاجة إلى خلفية في علم البيانات لاستخدام هذا الإطار. تم تقديم دعم تنسيق نموذج التعلم العميق مفتوح المصدر ( ONNX ) بدءًا من الإصدار 0.3 في ML.NET. تضمن هذا الإصدار تحسينات ملحوظة أخرى مثل آلات التحليل العاملي، و LightGBM ، والمجموعات، وتحويل LightLDA، وOVA. [ 11 ] تم تفعيل تكامل TensorFlow مع ML.NET بدءًا من الإصدار 0.5. تمت إضافة دعم تطبيقات x86 وx64 في الإصدار 0.7، بما في ذلك إمكانيات توصية محسّنة باستخدام تحليل المصفوفات. [ 12 ] تتوفر خارطة طريق كاملة للميزات المخطط لها على مستودع GitHub الرسمي. [ 13 ]

أُعلن عن الإصدار الأول المستقر 1.0 من إطار العمل في مؤتمر Build (مؤتمر المطورين) 2019. وتضمن إضافة أداة بناء النماذج وقدرات التعلم الآلي المؤتمت ( AutoML ). [ 14 ] وقدّم الإصدار 1.3.1 معاينة لتدريب الشبكات العصبية العميقة باستخدام روابط C# [ 15 ] لـ TensorFlow، بالإضافة إلى أداة تحميل قواعد البيانات التي تُمكّن من تدريب النماذج على قواعد البيانات. أما الإصدار 1.4.0 التجريبي، فقد أضاف ميزة تسجيل ML.NET على معالجات ARM وتدريب الشبكات العصبية العميقة باستخدام وحدات معالجة الرسومات (GPU) لأنظمة Windows وLinux. [ 16 ]

أداء

أظهرت ورقة بحثية لشركة مايكروسوفت حول التعلم الآلي باستخدام ML.NET قدرتها على تدريب نماذج تحليل المشاعر باستخدام مجموعات بيانات ضخمة مع تحقيق دقة عالية. وقد أظهرت نتائجها دقة بلغت 95% على مجموعة بيانات مراجعات أمازون التي تبلغ 9 جيجابايت. [ 17 ]

مصمم نماذج

واجهة سطر الأوامر ML.NET CLI هي واجهة تستخدم ML.NET AutoML لتدريب النماذج واختيار أفضل خوارزمية للبيانات. أما معاينة ML.NET Model Builder [ 18 ] فهي إضافة لبرنامج Visual Studio تستخدم ML.NET CLI وML.NET AutoML لإخراج أفضل نموذج ML.NET باستخدام واجهة رسومية . [ 14 ]

قابلية تفسير النموذج

شكّلت عدالة الذكاء الاصطناعي وقابليته للتفسير مجالًا للنقاش بين خبراء أخلاقيات الذكاء الاصطناعي في السنوات الأخيرة. [ 19 ] ومن أبرز المشكلات التي تواجه تطبيقات التعلّم الآلي ظاهرة "الصندوق الأسود"، حيث لا يكون المستخدمون النهائيون ومطورو التطبيق على دراية بكيفية اتخاذ الخوارزمية لقرار ما، أو ما إذا كانت مجموعة البيانات تحتوي على تحيّز. [ 20 ] وقد تضمنت النسخة 0.8 واجهات برمجة تطبيقات (APIs) لتفسير النماذج، والتي كانت تُستخدم داخليًا في مايكروسوفت. وأضافت هذه النسخة إمكانية فهم أهمية ميزات النماذج من خلال إضافة ميزتي "الأهمية الإجمالية للميزات" و"النماذج الإضافية المعممة". [ 21 ]

عند وجود عدة متغيرات تُساهم في النتيجة الإجمالية، يُمكن الاطلاع على تفاصيل كل متغير وتحديد الميزات التي كان لها التأثير الأكبر على النتيجة النهائية. تُوضح الوثائق الرسمية إمكانية إخراج مقاييس التقييم لأغراض تصحيح الأخطاء. أثناء تدريب النموذج وتصحيح أخطائه، يُمكن للمطورين معاينة البيانات المُفلترة وفحصها مباشرةً. يُمكن تحقيق ذلك باستخدام أدوات DataView في Visual Studio . [ 22 ]

Infer.NET

أعلنت مايكروسوفت للأبحاث عن إطلاق إطار عمل Infer.NET الشهير للتعلم الآلي القائم على النماذج، والذي يُستخدم في الأبحاث بالمؤسسات الأكاديمية منذ عام 2008، كمصدر مفتوح، وأصبح الآن جزءًا من إطار عمل ML.NET. [ 23 ] يستخدم إطار عمل Infer.NET البرمجة الاحتمالية لوصف النماذج الاحتمالية ، مما يمنحه ميزة إضافية تتمثل في سهولة التفسير. وقد تم تغيير مساحة اسم Infer.NET لاحقًا إلى Microsoft.ML.Probabilistic بما يتوافق مع مساحات أسماء ML.NET. [ 24 ]

دعم لغة بايثون NimbusML

أقرت مايكروسوفت بشعبية لغة البرمجة بايثون بين علماء البيانات، لذا قدمت NimbusML، وهي واجهة برمجة تطبيقات تجريبية لبايثون خاصة بـ ML.NET. تُمكّن هذه الواجهة المستخدمين من تدريب نماذج التعلم الآلي واستخدامها في بايثون. وقد تم جعلها مفتوحة المصدر على غرار Infer.NET. [ 12 ]

التعلم الآلي في المتصفح

تتيح منصة ML.NET للمستخدمين تصدير النماذج المدربة إلى تنسيق تبادل الشبكات العصبية المفتوحة (ONNX). [ 25 ] وهذا يُتيح استخدام النماذج في بيئات مختلفة لا تعتمد على ML.NET. ويمكن تشغيل هذه النماذج على جانب العميل في المتصفح باستخدام ONNX.js، وهو إطار عمل جافا سكريبت من جانب العميل لنماذج التعلم العميق المُنشأة بتنسيق ONNX.

دورات التعلم الآلي في مدارس الذكاء الاصطناعي

بالتزامن مع إطلاق النسخة التجريبية من ML.NET، طرحت مايكروسوفت دروسًا ودورات تدريبية مجانية في مجال الذكاء الاصطناعي لمساعدة المطورين على فهم التقنيات اللازمة للعمل مع هذا الإطار. [ 26 ] [ 27 ] [ 28 ]

انظر أيضاً

مراجع

  1. أنكيت أستانا (2017-05-07). "تقديم ML.NET: إطار عمل للتعلم الآلي متعدد المنصات، مثبت، ومفتوح المصدر" . blogs.msdn.microsoft.com . تم الاطلاع عليه بتاريخ 2018-05-10 .
  2. "ML.NET: تعلم الآلة المصمم لـ .NET" . مايكروسوفت . تم الاطلاع عليه بتاريخ 11 مايو 2018 .
  3. في المستوى الرئيسي · دوت نت/التعلم الآلي
  4. ديفيد راميل (8 مايو 2018). "ML.NET مفتوح المصدر ومتعدد المنصات يُبسّط عملية التعلّم الآلي - مجلة فيجوال ستوديو" . مجلة فيجوال ستوديو . تاريخ الاسترجاع: 10 مايو 2018 .
  5. كريم أندرسون (9 مايو 2017). "مايكروسوفت تُطلق إطار عمل ML.NET للتعلم الآلي متعدد المنصات" . على موقع MSFT . تم الاطلاع عليه بتاريخ 10 مايو 2018 .
  6. أنكيت أستانا (2018-08-07). "الإعلان عن ML.NET 0.4" . blogs.msdn.microsoft.com . تم الاطلاع عليه بتاريخ 2018-08-08 .
  7. غال أوشري (2018-05-06). "ملاحظات إصدار ML.NET 0.1" . جيت هاب . تم الاسترجاع في 2018-05-10 .
  8. تيواري، أديتيا (8 مايو 2018). "مايكروسوفت تطلق إطار عمل ML.NET مفتوح المصدر للتعلم الآلي" . Fossbytes . تم الاطلاع عليه بتاريخ 10 مايو 2018. مع مرور الوقت، سيمكّن هذا الإطار من تنفيذ مهام أخرى في مجال التعلم الآلي، مثل اكتشاف الحالات الشاذة، وأنظمة التوصية، وغيرها من الأساليب مثل التعلم العميق ، وذلك بالاستفادة من المكتبات المضافة.
  9. "مهام التعلم الآلي في ML.NET" . مايكروسوفت . تم الاطلاع عليه بتاريخ 26 ديسمبر 2018 .
  10. جيمس مكافري (19 ديسمبر 2018). "ML.NET: إطار عمل التعلم الآلي لمطوري .NET" . مجلة MSDN Connect، عدد خاص 2018. تاريخ الاطلاع: 9 يناير 2019. على الرغم من حداثة مكتبة ML.NET، إلا أن أصولها تعود إلى سنوات عديدة. فبعد فترة وجيزة من إطلاق إطار عمل Microsoft .NET في عام 2002، بدأت مايكروسوفت للأبحاث مشروعًا يُسمى TMSN ("البحث والتنقل في استخراج النصوص") لتمكين مطوري البرامج من تضمين كود التعلم الآلي في منتجات وتقنيات مايكروسوفت. حقق المشروع نجاحًا كبيرًا، ونما حجمه واستخدامه داخليًا في مايكروسوفت على مر السنين. وفي عام 2011 تقريبًا، أُعيد تسمية المكتبة إلى TLC ("كود التعلم"). تُستخدم TLC على نطاق واسع داخل مايكروسوفت، وهي حاليًا في الإصدار 3.10. تُعد مكتبة ML.NET امتدادًا لـ TLC، مع إزالة الميزات الخاصة بمايكروسوفت. لقد استخدمتُ كلا المكتبتين، وفي نواحٍ عديدة، تفوقت مكتبة ML.NET على سابقتها.
  11. "إصدار Microsoft ML.NET v0.3" . جيت هاب . 2018-07-03 . تم الاطلاع عليه بتاريخ 2018-07-03 .
  12. 1 2 "الإعلان عن ML.NET 0.7 (التعلم الآلي .NET)" . مايكروسوفت . 2018-11-08 . تم الاطلاع عليه بتاريخ 2018-11-14 .
  13. "خارطة طريق ML.NET" . جيت هاب . 9 مايو 2018. تم الاطلاع عليه بتاريخ 30 يونيو 2018 .
  14. 1 2 "الإعلان عن ML.NET 1.0" . مايكروسوفت . 2019-05-06 . تم الاطلاع عليه بتاريخ 2019-05-07 .
  15. "SciSharp/TensorFlow.NET" . SciSharp STACK. 21 فبراير 2020.
  16. "ML.NET 1.4.0-preview2" . جيت هاب . 2019-10-09 . تم الاطلاع عليه بتاريخ 2019-10-09 .
  17. أحمد، زيشان؛ أميزاده، سعيد؛ بيلينكو، ميخائيل؛ كار، روغان. تشين، وي شنغ؛ ديكل، ياعيل؛ دوبري، كزافييه. إكساريفسكي، فاديم؛ ايرهاردت، اريك. إيسيانو، كوستين؛ فيليبي، سينجا؛ فينلي، توم. جوسوامي، ابهيشيك. هوفر، مونتي؛ إنجليس، سكوت؛ إنترلاندي، ماتيو؛ كاتزنبيرجر، شون؛ كاظمي، نجيب؛ كريفوشيف، جليب؛ لوفيرينكو، بيت؛ ماتانتسيف، إيفان؛ ماتوسيفيتش، سيرجي؛ مرادي، شهاب؛ نذيروف، جاني؛ أورمونت، جوستين؛ أوشري، غال؛ باجنوني، أرتيدورو؛ بارمار، جيغنيش؛ روي، برابهات؛ وآخرون . (2019-05-15). “التعلم الآلي في Microsoft باستخدام ML.NET”. وقائع المؤتمر الدولي الخامس والعشرين لجمعية ACM SIGKDD حول اكتشاف المعرفة واستخراج البيانات . الصفحات 2448-2458 . arXiv : 1905.05715 . doi : 10.1145/3292500.3330667 . ISBN   9781450362016. S2CID 53380995 . 
  18. "dotnet/machinelearning-modelbuilder" . منصة .NET. 17 فبراير 2020.
  19. "الذكاء الاصطناعي قد يعزز التحيز، وعمالقة الحوسبة السحابية يعلنون عن أدوات لتحقيق العدالة في الذكاء الاصطناعي" . فوربس . 24 سبتمبر 2018. تاريخ الاطلاع: 5 ديسمبر 2018 .
  20. "ماذا يعني فتح الصندوق الأسود للذكاء الاصطناعي؟" . برايس ووترهاوس كوبرز . 15 مايو 2018. تاريخ الاسترجاع: 5 ديسمبر 2018 .
  21. هاستي، تريفور ج. (1 نوفمبر 2017). "النماذج الإضافية المعممة". النماذج الإحصائية في S. ص 249-307 . doi : 10.1201/9780203738535-7 . ISBN  9780203738535.
  22. "الإعلان عن ML.NET 0.8 - التعلم الآلي لـ .NET" . مايكروسوفت . 2018-12-04 . تم الاطلاع عليه بتاريخ 2018-12-05 .
  23. "مايكروسوفت تُتيح شفرة الذكاء الاصطناعي Infer.NET مفتوحة المصدر في الوقت المناسب لعطلة نهاية الأسبوع" . ذا ريجستر . 5 أكتوبر 2018. تاريخ الاطلاع: 31 أكتوبر 2018 .
  24. "تتيح مايكروسوفت برنامج Infer.NET، وهو إطار عملها الشهير للتعلم الآلي القائم على النماذج، كمصدر مفتوح" . Packt . 2018-10-08 . تم الاطلاع عليه بتاريخ 2018-10-31 .
  25. "ML.NET - تصدير نماذج Machine Learning.Net إلى تنسيق ONNX" . إل برونو . 11 يوليو 2018. تاريخ الاسترجاع: 9 يناير 2019 .
  26. "مدرسة الذكاء الاصطناعي" . مايكروسوفت للذكاء الاصطناعي . 2018-05-07 . تم الاطلاع عليه بتاريخ 2018-06-29 .
  27. "دليل ML.NET" . مايكروسوفت . 2018-05-07 . تم الاطلاع عليه بتاريخ 2018-06-29 .
  28. "دليل مستخدم Infer.NET" . Infer.NET . 2018-10-05 . تم الاطلاع عليه بتاريخ 2018-10-31 .

للمزيد من القراءة

  • كابلمان، جاريد (2020). التعلم الآلي العملي باستخدام ML.NET: البدء باستخدام Microsoft ML.NET لتطبيق خوارزميات التعلم الآلي الشائعة في لغة C# . دار نشر Packt. رقم ISBN 978-1789801781.
  • موخيرجي، سوديبتا (2020). ML.NET مكشوفة: أدوات بسيطة لتطبيق التعلم الآلي على تطبيقاتك . دار نشر أبريس. رقم ISBN 978-1484265420.
  • إسبوزيتو، دينو؛ إسبوزيتو، فرانشيسكو (2022). برمجة ML.NET . مطبعة مايكروسوفت. ISBN 978-0137383658.