مهاجرت به یادگیری ماشین

سلامامروز میخوام از نحوه و روش مهاجرت از مهندسی نرم افزار به متخصص یادگیری ماشین براتون مطلب بزارمو از تجربیات خودم در این راه با شما صحبت کنم.ابتدای امر میخوام بهتون بگم به جای خوندن کلی مقاله و بلاگ که با شما از نتیجه های یادگیری ماشین صحبت می کنند به یک چیز ساده و اون هم نحوه اجرای یک پروژه یادگیری ماشین فکر کنید.بیاین به مدل های یاد گیری ماشین فکر کنیم ممکنه الان فکر های نادرستی در مورد یادگیری ماشین تو ذهنتون باشه ولی من میخوام به صحبت از یادگیری ماشین شروع کنم .باید برای شروع بخشی از یک کار کوچک رو امتحان کنیم.ابتدای کار با اشکالاتی مواجه میشوید و بعضی از مطالب براتونمبهم به نظر میرسند چرا که با ذهنیت متفاوت و مخصوص یک برنامه نویس سیستم های تجاری کهتمام اتفاقات با عملیات و کاربری استفاده کننده گان از واسط کاربری رخ میدهد وارد این ماجرا یعنی یادگیری ماشین میشوید.زمان را برای فهمیدن مدل و شکل یادگیری ماشین از دست ندهید و فقط و فقط به یادگیری بپرداز درباره نحوه های بکار گیری الگوریتم هابروی داده های متفاوت و متنوع که به دست شما می رسد.اولین مسئله ای که باید به آن فکر کنید جمع آوری داده است اطلاعاتی که شما قرار است با استفاده از آنها به کمک ماشین محاسباتی انجام دهید یا مقداری را پیش بینی کنید، این اطلاعات ممکن است داده ای ساختار مند(SQL) از درون یک پایگاه داده یا یک فایل متنی یا حتی یک اطلاعات برخط(STREAM) مانند جریان داده ای توییتر باشد.درادامه کار باید اطلاعات را برای پردازش آماده کنید، این مرحله می تواند علاوه بر آماده سازی داده ها مثل تبدیل نوع داده ای و یا فرمت اطلاعات به شکل مناسب شامل کارهایی مثل تمیز سازی( cleansing) هم باشد که هدف از اجرای آن عموما تعیین تکلیف ارتباطات داده ها با سایر داده های موجود باشد.مثلا رکورد های اطلاعاتی از جدول فرزند که حاوی مقادیر نادرست و نامعتبر در خصوصیت کلید خارجی هستند.حالا نوبت به بکارگیری الگوریتم های موجود میرد که با شناخت نوع مساله که غالبا از دو دسته با نظارت و بی نظارت انتخاب می شوند، توجه داشته باشید نوع الگوریتم های نیمه نظارتی هم ممکن است به کار گرفته بشود.برای ساده تر شدن این کار کافیست تشخیص دهید که مساله شما با کدام یک از تکنیک های زیر قابل حل می باشد.1- خوشه بندی2- طبقه بندی3-رگرسیونو …هر یک از کارهایی که اشاره شدند، دارای مستندات خوبی هستند که میشود به عنوان نمونه خیلی خوب به مجموعه مستندات اسپارکی موجود از سایت زیر اشاره کرد:https://spark.apache.orgکافیست درسایت بالا به بخش راهنمای برنامه نویسان مراجعه کنید.از نتیجه بکار گیری الگوریتم های موجود بروی موضوعات مطرح شده باید در مرحله ارزیابی بهره وری کار انجام شده استفاده کرد تا به میزان مقبولیت خروجی کار از نظر دقت و خطا دست پیدا کرد.تمام ماجرای برنامه های یادگیری ماشین به طور خلاصه تکرار مراحل و اتفاقات مشابهی است که برای شما تعریف کردم.یعنی داده ها رو باید جمع آوری کنید و برای اجرای الگوریتم های موجود از هر دسته بندی که هستند آماده کنیدبعد الگوریتم منتخب و مناسب خودتان را برای کاری مثل خوشه بندی اجرا نمایید تا مدل کاری شما آماده بشود.حالا میتوانید از روی مدل به دقت و میزان خطا یا حتی به اطلاعات پایه کسب و کارتون که با ماشین براتون آماده شده است دست پیدا کنید. این ها دانستنی های لازم برای شروع به کار در حوزه یادگیری ماشین هستند.شرکت های زیادی از یادگیری ماشین در حل مساله های مرتبط با داده یا هوش مصنوعی از یادگیری ماشینمانند گوگل، اوبر، فیس بوک و بسیاری از سایت های پر بیننده دیگر استفاده می کنند.به عنوان مثال میشود در نتیجه اجرای فرایند هایی مانند داده کاوی از ماشین برای حدس زدن برچسب متناسب با یک رکورد یا موجودیت اطلاعاتی استفاده کرد.در اجرا و پیاده سازی برنامه ها با استفاده از یادگیری ماشین به طور معمول کارهایی مثل مدل سازی از روی داده ها با کمک داده های آموزشی، انتخاب ویژگی ها و در آخر الگوریتم متناسب با مساله و داده اتفاق می افتد تا با اطلاعات پایه کسب و کار خود با کمک ماشین به پیاده سازی برنامه مورد نیاز بپردازید.“آخرین و تازه ترین مورد کاربرد یادگیری ماشین برای من تخمین میزان درصد تخفیف برای مشترکین سازمانم هست که با توجه به رفتار های درون سازمانی آنها صورت می گیرند.” http://sciencehome.net/