Mahout چیست؟

زیر پروژه Mahout که جزء جدایی ناپذیر پروژه هدوپ است یک محیط برای ایجاد برنامه ها و الگوریتم های یادگیری ماشین به صورت توزیع شده می باشد. این زیرپروژه شامل الگوریتم ها و کتابخانه های مختلفی برای داده کاوی می شود که می توان به الگوریتم های خوشه بندی نظیر K-Means و دسته بندی نظیر Naïve Bayes اشاره کرد.Mahout همچنین کتابخانه های محسابات ریاضی بر طبق جبر خطی و آمار را نیز برای جاوا فراهم می کند. این زیر پروژه هنوز در حال تکمیل شدن است اما تا به حال الگوریتم های زیادی برای آن پیاده سازی شده است. هرچند Mahout بیشتر به عنوان یکی از زیرپروژه های هدوپ شناخته می شود ولی این به این معنی نیست که وابسته به هدوپ باشد. Mahout می تواند بدون هدوپ و بر روی Single Node و حتی کلاستر غیر هدوپی مورد استفاده قرار گیرد. Mahout به زبان جاوا و اسکالا نوشته شده است.

سه جزء مهم از Apache mahout برای ساختن الگوریتمهای مقیاس پذیر عبارتند از :

  • New Scala
  • Spark algorithms
  • الگوریتمهای Mapreduce کامل هدوپ که برای Mahout به کار می رود

در ورژن جدید Mahout یک محیط جدید به نام Samara معرفی شده است. Mahout زمینه ای را فراهم آورده است که ما دوباره به این فکر بیفتیم که چطور الگوریتمهای ماشین های یادگیری مقیاس پذیر ساخته و استفاده می شوند. با کمک Mahout Samara ما قادر خواهیم بود تا الگوریتمهای ریاضی را خیلی ساده تر طراحی و اجرا کنیم. در هسته آن جبر خطی و عملیات آماری همرا با ساختار داده ای وجود دارد تا کار با آن در عین قدرتمندی آسانتر شود. شما می توانید از آن به عنوان یک کتابخانه یا آن را برای فعالیتهای خود سفارشی کنید تا شبیه زبان R برای شما عملیات فوق العاده ای انجام دهد .

Mahout Samara دارای یک Shell تعاملی می باشد که قادر است عملیات توزیع شده را روی کلاستر Spark اجرا کند ، این بدین معنی است که کاربران می توانند با آزادی عمل بیشتری الگوریتمهای خود راسفارشی کنند.

الگوریتم Mahout دارای ساختار جدیدی می باشد که برای سرعت بخشیدن به Mahout Samara پیاده سازی شده است. آنها از Spark 1.3 (نسل جدید Spark دارای قابلیت Cooccurrence Recommender می باشد که با استفاده از آن می توان Click تمام Userها را بصورت Stream مشاهده و زیر نظر گرفت) و H2O استفاده کرده اند این به معنی ۱۰ برابرشدن قدرت Mahout می باشد. با افزایش توانایی Mahout اکنون  می توانیم الگوریتم تجزیه ماترس قوی ، یک کلاسیفایر Naïve Bayes و همچنین فیلترهای مشترک داشته باشیم.

پیش نیازها برای نصب Apache Mahout :

  1. نصب جاوا (Java JDK 1.6)
  2. نصب maven 3
  3. نصب (SVN (Subversion

شروع کار با Mahout
به دلیل اینکه Mahout در بسته عمومی هدوپ وجود ندارد می بایست بسته Mahout را از اینجا دریافت نمایید. پس از دریافت و استخراج بسته فشرده Mahout باید مطمئن شوید که Maven را نیز نصب کرده اید.

پس از استخراج و اطمینان از نصب Maven ، دو متغیر محلی زیر را می بایست مقدار دهی نمایید:

  • HADOOP_HOME : مسیر اصلی مربوط به فایل های هدوپ
  • MAHOUT_HOME : مسیر اصلی مربوط به فایل های Mahout

پس از اینکار با اجرای دستور زیر در خط فرمان می توانید Mahout را نصب نمایید:

mvn -DskipTests clean instal

سایت اوراکل فارسی راه اندازی شد.برای مشاهده سایت اینجا کلیک نمایید.

جهت دانلود دوره های آموزشی تصویری با موضوع آموزش هادوپ روی موضوعات زیر کلیک نمایید.

 

محسن صفابخش

محسن صفابخش

با سلام محسن صفابخش هستم .کارشناس و متخصص داده هایی با حجم و مقیاس کلان ازینرو در حال حاضر در یکی از بزرگتربن سایت های ایران در زمینه مدیریت و نگهداری از دیتابیس های اوراکل آن مشغول به فعالیت می باشم.

More Posts - Website

Follow Me:
LinkedInGoogle PlusYouTube

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *