إطار عمل التعلم الآلي Datumbox 0.6.0 يُصدر ذكاء بيانات PlatoBlockchain. البحث العمودي. منظمة العفو الدولية.

داتومبوكس إطار التعلم الآلي 0.6.0 صدر

تم إطلاق الإصدار الجديد من Datumbox Machine Learning Framework! قم بتنزيله الآن من جيثب or مستودع مافن المركزي.

ما الجديد؟

التركيز الرئيسي لل إصدار 0.6.0 هو توسيع إطار العمل للتعامل مع البيانات الكبيرة ، وتحسين بنية التعليمات البرمجية وواجهات برمجة التطبيقات العامة ، وتبسيط تحليل البيانات ، وتعزيز التوثيق والانتقال إلى ترخيص مسموح به.

دعونا نرى بالتفصيل التغييرات في هذا الإصدار:

  1. التعامل مع البيانات الكبيرة: مكّنت إدارة الذاكرة المحسّنة ومحركات التخزين المستمر الجديدة إطار العمل من التعامل مع مجموعات بيانات كبيرة بحجم عدة غيغابايت. مضيفا دعم MapDB يمكّن محرك قاعدة البيانات الإطار من تجنب تخزين جميع البيانات في الذاكرة وبالتالي يكون قادرًا على التعامل مع البيانات الكبيرة. تمت إعادة تصميم محرك InMemory الافتراضي ليكون أكثر كفاءة أثناء إزالة محرك MongoDB بسبب مشكلات الأداء.
  2. بنية إطار محسنة ومبسطة: يتم تقليل مستوى التجريد بشكل كبير ويتم إعادة تصميم العديد من المكونات الأساسية. على وجه الخصوص ، تتم إعادة كتابة آليات تخزين الثبات وإزالة العديد من الميزات غير الضرورية وهياكل البيانات.
  3. واجهات برمجة تطبيقات عامة جديدة "Scikit-Learn-like": تم تغيير جميع الطرق العامة للخوارزميات لتشبه واجهات برمجة تطبيقات Python Scikit-Learn (نموذج الملاءمة / التنبؤ / التحويل). الأساليب العامة الجديدة أكثر مرونة وأسهل وأكثر ملاءمة للاستخدام.
  4. تبسيط تحليل البيانات: يأتي إطار العمل الجديد مزودًا بمجموعة من الأساليب الملائمة التي تتيح التحليل السريع لملفات CSV أو الملفات النصية وتحويلها إلى كائنات مجموعة البيانات.
  5. توثيق محسن: يتم توثيق جميع الفئات العامة / المحمية وأساليب الإطار باستخدام تعليقات Javadoc. بالإضافة إلى ذلك ، يوفر الإصدار الجديد اختبارات JUnit محسّنة والتي تعد أمثلة رائعة على كيفية استخدام كل خوارزمية في إطار العمل.
  6. رخصة اباتشي الجديدة: تم تغيير ترخيص البرنامج الخاص بإطار العمل من "جنو العمومية العامة الترخيص v3.0"إلى"رخصة أباتشي ، الإصدار 2.0". الترخيص الجديد مسموح به ويسمح بإعادة التوزيع داخل البرامج التجارية.

نظرًا لأنه تم إعادة كتابة جزء كبير من إطار العمل لجعله أكثر كفاءة وأسهل في الاستخدام ، فإن الإصدار 0.6.0 هو غير متوافق مع الإصدارات السابقة مع الإصدارات السابقة من إطار العمل. أخيرًا ، انتقل إطار العمل من Alpha إلى مرحلة تطوير Beta ويجب اعتباره أكثر استقرارًا.

كيفية استخدامه

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

الخطوات التالية وخريطة الطريق

سيستمر تطوير إطار العمل ويجب إجراء التحسينات التالية قبل إصدار الإصدار 1.0:

  1. Usجي إطار من وحدة التحكم: على الرغم من أن الهدف الرئيسي لإطار العمل هو المساعدة في تطوير تطبيقات التعلم الآلي ، إلا أنه يجب تسهيل استخدامه من قبل مطوري برامج غير جافا. باتباع نهج مشابه مثل Mahout ، يجب أن يوفر الإطار الوصول إلى الخوارزميات باستخدام أوامر وحدة التحكم. يجب أن تكون الواجهة بسيطة وسهلة الاستخدام ويجب دمج الخوارزميات المختلفة بسهولة.
  2. دعم خيوط المعالجة المتعددة: يستخدم إطار العمل حاليًا مؤشرات الترابط فقط لعمليات التنظيف والكتابة غير المتزامنة في القرص. ومع ذلك ، يمكن موازاة بعض الخوارزميات وهذا سيقلل بشكل كبير من أوقات التنفيذ. يجب أن يكون الحل في هذه الحالات أنيقًا ويجب أن يعدل بأقل قدر ممكن المنطق / الرياضيات الداخلية لخوارزميات التعلم الآلي.
  3. تقليل استخدام المصفوفات والمصفوفات ثنائية الأبعاد: لا يزال عدد قليل من الخوارزميات يستخدم المصفوفات والمصفوفات ثنائية الأبعاد. يؤدي هذا إلى تحميل جميع البيانات في الذاكرة مما يحد من حجم مجموعة البيانات التي يمكن استخدامها. يجب إعادة تنفيذ بعض الخوارزميات (مثل PCA) لتجنب استخدام المصفوفات بينما بالنسبة للآخرين (مثل GaussianDPMM و MultinomialDPMM وما إلى ذلك) يجب أن نستخدم المصفوفات المتفرقة.

مهام أخرى مهمة يجب القيام بها في الإصدارات القادمة:

  1. قم بتضمين خوارزميات تعلم الآلة الجديدة: يمكن تمديد إطار العمل لدعم العديد من الخوارزميات الرائعة مثل Mixture of Gaussians و Gaussian Processes و k-NN و Decision Trees و Factor Analysis و SVD و PLSI والشبكات العصبية الاصطناعية إلخ.
  2. تحسين التوثيق ، تغطية الاختبار & أمثلة التعليمات البرمجية: قم بإنشاء وثائق أفضل ، وتحسين اختبارات JUnit ، وتعزيز تعليقات التعليمات البرمجية ، وتقديم أمثلة أفضل حول كيفية استخدام الخوارزميات وما إلى ذلك.
  3. تحسين العمارة & تحسين التعليمات البرمجية: مزيد من التبسيط والتحسينات على بنية الإطار ، وترشيد التجريد ، وتحسين التصميم ، وتحسين السرعة واستهلاك الذاكرة ، إلخ.

كما ترى ، إنه طريق طويل ويمكنني استخدام بعض المساعدة. إذا كنت على مستوى التحدي قطرة لي خط أو إرسال طلب السحب الخاص بك على جيثب.

شكر وتقدير

اود ان اشكر الفثيريوس بامباليتكيس لمساهمته التي لا تقدر بثمن في تحسين بنية الإطار. كما أود أن أشكر ej-technologies GmbH لتزويدي بترخيص لملف تعريف Java الخاص بهم. علاوة على مجد بلدي جان كوتيك لعمله المذهل في محرك التخزين MapDB. أخيرًا وليس آخرًا ، حبي لصديقتي كيرياكي لتحملها معي.

لا تنس تنزيل كود Datumbox v0.6.0 من جيثب. المكتبة متاحة أيضا على مستودع مافن المركزي. لمزيد من المعلومات حول كيفية استخدام المكتبة في مشروع Java الخاص بك ، راجع ما يلي توجيه أو اقرأ التعليمات الموجودة على الصفحة الرئيسية في Github repo.

إنني أتطلع إلى تعليقاتكم وتوصياتكم. طلبات السحب دائما موضع ترحيب! 🙂

الطابع الزمني:

اكثر من داتومبوكس