أباتشي ماهوت
أباتشي ماهوت هو مشروع تابع لمؤسسة برمجيات أباتشي، يهدف إلى إنتاج تطبيقات مجانية لخوارزميات التعلم الآلي الموزعة أو القابلة للتوسع، مع التركيز بشكل أساسي على الجبر الخطي . في السابق، استخدمت العديد من التطبيقات منصة أباتشي هادوب ، إلا أنها تركز اليوم بشكل أساسي على أباتشي سبارك . [ 3 ] [ 4 ] كما يوفر ماهوت مكتبات جافا/سكالا للعمليات الرياضية الشائعة (مع التركيز على الجبر الخطي والإحصاء) ومجموعات جافا الأولية. لا يزال ماهوت قيد التطوير، وقد تم تنفيذ عدد من الخوارزميات. [ 5 ]
سمات
سامسارا
يشير مصطلح Apache Mahout-Samsara إلى لغة برمجة خاصة بمجال Scala (DSL) تتيح للمستخدمين استخدام بنية مشابهة للغة R بدلاً من البنية التقليدية المشابهة لـ Scala. وهذا يسمح للمستخدم بالتعبير عن الخوارزميات بإيجاز ووضوح.
val G = B %*% B . t - C - C . t + ( ksi dot ksi ) * ( s_q cross s_q )مستقل عن الواجهة الخلفية
يُجرّد كود Apache Mahout لغة المجال المُخصصة من محرك التشغيل. وبينما يتم التطوير النشط باستخدام محرك Apache Spark، يُمكن للمستخدمين استخدام أي محرك يختارونه - وقد تم استخدام H2O و Apache Flink سابقًا، وتتوفر أمثلة على ذلك في قاعدة الكود.
معالجات الرسوميات/وحدة المعالجة المركزية
تُعرف آلة جافا الافتراضية (JVM) ببطء حساباتها. ولتحسين السرعة، أُضيفت "مُحلِّلات أصلية" تنقل عمليات BLAS داخل النواة، وبالتالي تُوزِّعها خارج آلة جافا الافتراضية، مُحوِّلةً إياها إلى ذاكرة خارج الكومة أو ذاكرة وحدة معالجة الرسومات (GPU) للمعالجة عبر وحدات معالجة مركزية متعددة و/أو أنوية معالجة مركزية، أو وحدات معالجة رسومات عند استخدام مكتبة ViennaCL . [ 6 ] ViennaCL هي مكتبة C++ مُحسَّنة للغاية، تُنفَّذ فيها عمليات BLAS باستخدام OpenMP وOpenCL. واعتبارًا من الإصدار 14.1، يُعتبر إصدار OpenMP مستقرًا، بينما لا يزال إصدار OpenCL في مرحلة إثبات المفهوم التجريبية.
الموصون
يتميز Apache Mahout بتطبيقات لـ Alternating Least Squares و Co-Occurrence و Correlated Co-Occurrence، وهي خوارزمية توصية فريدة خاصة بـ Mahout تعمل على توسيع نطاق التواجد المشترك ليتم استخدامه على أبعاد متعددة من البيانات.
تاريخ
الانتقال من MapReduce إلى Apache Spark
على الرغم من أن خوارزميات Mahout الأساسية للتجميع والتصنيف والترشيح التعاوني القائم على الدفعات قد طُبقت على Apache Hadoop باستخدام نموذج MapReduce ، إلا أن المساهمات لم تقتصر على التطبيقات القائمة على Hadoop. فقد رُحِّب أيضاً بالمساهمات التي تعمل على عقدة واحدة أو على مجموعة خوادم غير قائمة على Hadoop. على سبيل المثال، كان مكون التوصية "Taste" للترشيح التعاوني في Mahout مشروعاً منفصلاً في الأصل، ويمكن تشغيله بشكل مستقل دون الحاجة إلى Hadoop.
ابتداءً من الإصدار 0.10.0، حوّل المشروع تركيزه إلى بناء بيئة برمجة مستقلة عن الواجهة الخلفية، تحمل الاسم الرمزي "سامسارا". [ 7 ] [ 8 ] [ 9 ] تتكون هذه البيئة من مُحسِّن جبري مستقل عن الواجهة الخلفية، ولغة برمجة خاصة بالمجال (DSL) جبرية مكتوبة بلغة سكالا، تُوحِّد عوامل التشغيل الجبرية في الذاكرة والموزعة. تشمل المنصات الجبرية المدعومة: أباتشي سبارك ، و H2O ، وأباتشي فلينك . بدأ التخلص التدريجي من دعم خوارزميات ماب ريدوس في عام 2014. [ 10 ]
سجل الإصدارات
| إصدار | تاريخ الافراج عنه | ملحوظات |
|---|---|---|
| 0.1 | 2009-04-07 | |
| 0.2 | 2009-11-18 | |
| 0.3 | 2010-03-17 | |
| 0.4 | 31-10-2010 | |
| 0.5 | 2011-05-27 | |
| 0.6 | 2012-02-06 | |
| 0.7 | 2012-05-16 | |
| 0.8 | 2013-07-25 | |
| 0.9 | 2014-02-01 | |
| 0.10.0 | 2015-04-11 | سامسارا دي إس إل |
| 0.10.1 | 2015-05-31 | |
| 0.10.2 | 2015-08-06 | |
| 0.11.0 | 2015-08-07 | |
| 0.11.1 | 2015-11-06 | |
| 0.11.2 | 2016-03-11 | |
| 0.12.0 | 2016-04-11 | تمت إضافة محرك Apache Flink |
| 0.12.1 | 19-05-2016 | |
| 0.12.2 | 2016-06-13 | |
| 0.13.0 | 2017-04-17 | |
| 0.14.0 | 2019-03-07 | المصدر فقط (بدون ملفات تنفيذية) |
| 14.1 | 2020-10-07 |
المطورين
تم تطوير برنامج أباتشي ماهوت بواسطة مجتمع. ويتولى إدارة المشروع فريق يُسمى "لجنة إدارة المشروع" (PMC). وتضم اللجنة الحالية كلاً من: أندرو موسلمان، وأندرو بالومبو، ودرو فارس، وغوان مينغ (ويسلي) تشيو، وإيزابيل دروست-فروم، وجيك مانيكس، وجي كاي (جاي) تشانغ، وبات فيريل، وباريتوش رانجان، وتريفور غرانت، وروبن أنيل، وسيباستيان شيلتر، وستيفو سلافيتش. [ 11 ]
انظر أيضاً
مراجع
- ↑ "أباتشي ماهوت: الإصدار الأول 0.1 تم إصداره" .
- ↑ "أباتشي ماهوت: تعلم آلي قابل للتوسع واستخراج البيانات" . تم الاطلاع عليه بتاريخ 6 مارس 2019 .
- ^ "التعريف بأباتشي ماهوت" . آي بي إم.كوم . 2011 . تم الاسترجاع 13 سبتمبر 2011 .
- ↑ "InfoQ: Apache Mahout: خوارزميات تعلم آلي قابلة للتوسع بدرجة كبيرة" . infoq.com . 2011. تم الاطلاع عليه بتاريخ 13 سبتمبر 2011 .
- ↑ "الخوارزميات - أباتشي ماهوت - مؤسسة برمجيات أباتشي" . cwiki.apache.org . 2011. مؤرشف من الأصل في 22 ديسمبر 2013. تم الاطلاع عليه في 13 سبتمبر 2011 .
- ↑ "توسيع نطاق Mahout Samsara ليشمل مجموعات وحدات معالجة الرسومات" . مؤرشف من الأصل في 3 نوفمبر 2020. تم الاطلاع عليه في 29 أكتوبر 2020 .
- ↑ "مرجع لغة الجبر الخطي المدمجة في معالج ماهوت-سامسارا" . مؤرشف من الأصل في 2 أغسطس 2016. تم الاطلاع عليه في 29 فبراير 2016 .
- ↑ "مرجع لغة الجبر الخطي الموزع لماهوت-سامسارا" . مؤرشف من الأصل في 2 أغسطس 2016. تم الاطلاع عليه في 29 فبراير 2016 .
- ↑ "Mahout 0.10.x: أول إصدار من Mahout كبيئة برمجة" . www.weatheringthroughtechdays.com . مؤرشف من الأصل بتاريخ 9 أكتوبر 2016. تم الاطلاع عليه بتاريخ 29 فبراير 2016 .
- ↑ "MAHOUT-1510 ("وداعًا MapReduce")" .
- ↑ "معلومات لجنة أباتشي" .
روابط خارجية
- مشاريع مؤسسة برمجيات أباتشي
- أباتشي هادوب
- برامج استخراج البيانات والتعلم الآلي
- منتجات البيانات الضخمة
- برنامج 2009
- برنامج يستخدم ترخيص أباتشي
