عن المشروع

ML.NET هو إطار عمل لتعلم الآلة مفتوح المصدر ومتعدد المنصات، مصمم خصيصاً لمنظومة .NET. تكمن قيمته الأساسية في تمكين مطوري .NET من بناء نماذج تعلم الآلة المخصصة وتدريبها ونشرها واستخدامها داخل تطبيقاتهم، دون الحاجة إلى خبرة مسبقة في تعلم الآلة أو إتقان لغات أخرى مثل Python أو R. يوفر الإطار مجموعة متكاملة من الأدوات التي تغطي خط المعالجة الكامل: تحميل البيانات من الملفات وقواعد البيانات، وتحويل البيانات، ومكتبة من خوارزميات تعلم الآلة المدمجة. ويدعم مجموعة واسعة من السيناريوهات الشائعة، بما في ذلك التصنيف، والتنبؤ، واكتشاف الشذوذ. وإلى جانب أدوات التدريب الأصلية الخاصة به، يمكن لـ ML.NET استهلاك نماذج TensorFlow وONNX، مما يوسع نطاق السيناريوهات المدعومة ويجعل الإطار أكثر قابلية للتوسع. يتميز دعم المنصات بالشمولية؛ حيث يعمل ML.NET على أنظمة Windows وLinux وmacOS عبر .NET Core، وعلى Windows عبر .NET Framework. كما أنه يعمل على معماريات ARM64، وApple M1، وBlazor WebAssembly، مع وجود بعض القيود الموثقة على منصات معينة. يتم دعم البنية 64 بت على جميع المنصات، بينما يتم دعم البنية 32 بت على Windows فقط، باستثناء الوظائف المتعلقة بـ TensorFlow وLightGBM. يتم توزيع الإطار عبر NuGet. الحزمة الأساسية هي Microsoft.ML، ويمكن تثبيتها باستخدام واجهة سطر الأوامر لـ .NET Core (`dotnet add package Microsoft.ML`)، أو مدير حزم NuGet (`Install-Package Microsoft.ML`)، أو مدير الحزم في Visual Studio، أو عبر Paket. كما يتم نشر إصدارات يومية إلى تغذية Azure DevOps. يتطلب المشروع .NET Core 2.1 أو أحدث، أو .NET Framework 4.6.1 أو أحدث (يُنصح بـ 4.7.2 أو أحدث). يوضح ملف README سير العمل النموذجي: إنشاء MLContext، وتحميل ملف CSV باستخدام محمل النص، وبناء خط معالجة التعلم الذي يقوم بمعالجة الميزات النصية وإضافة أداة تدريب تصنيف ثنائي (FastTree)، ثم ملاءمة النموذج، وإنشاء محرك تنبؤ لتقييم المدخلات الجديدة. ويشير ملف README إلى مستودع منفصل للعينات (dotnet/machinelearning-samples) للحصول على أمثلة كاملة، بالإضافة إلى الوثائق، ومرجع واجهة برمجة التطبيقات، والأدلة التعليمية، وقائمة تشغيل على YouTube. يرتبط إيقاع الإصدار بقطار إصدارات .NET: حيث يتم إصدار نسخ رئيسية من ML.NET مرة واحدة سنوياً بالتزامن مع إصدارات .NET الرئيسية (مثل ML.NET 1.7 مع .NET 6 في نوفمبر 2021، وML.NET 2.0 مع .NET 7، وهكذا)، مع الحفاظ على فروع الإصدار لأغراض الصيانة. تغطي اختبارات التكامل المستمر أنظمة CentOS، وUbuntu، وmacOS، وWindows x64، وWindows Full Framework، وWindows x86، وWindows .NET Core 3.1، مع تكوينات Debug وRelease. يخضع ML.NET لرخصة MIT، وهو مجاني للاستخدام التجاري، ويُعد مشروعاً تابعاً لمؤسسة .NET. يرحب المشروع بالمساهمات، وله حضور مجتمعي نشط على Discord واجتماعات منتظمة لمجتمع تعلم الآلة في .NET.