ماشین لرنینگ چیست ؟ و چگونه به متخصص یادگیری ماشین تبدیل شویم؟

در دنیایی زندگی می‌کنیم که رشد تکنولوژی به حدی زیاد شده که بسیاری از افراد نمی‌توانند خود را با آن همراه کنند و از قافله جا می‌مانند. هوش مصنوعی یا Artificial Intelligent گرایش نسبتا جدیدی در علوم است که می‌خواهد تحولات اساسی در زندگی مردم ایجاد کند. تعریف هوش مصنوعی کمی دشوار است، اما می‌توانیم بگوییم هوش مصنوعی ترکیبی از علوم مختلف برای هوشمند کردن ماشین‌ها است. یکی از زیرشاخه‌های معروف هوش مصنوعی یادگیری ماشین یا Machine Learning می‌باشد که این روزها به شدت مورد بحث قرار می‌گیرد. تاثیر ماشین لرنینگ را هر روز در زندگی روزمره خود احساس می‌کنید و این علم تا حدودی در زندگی روزمره ما حضور دارد. اگر تصمیم گرفتید ماشین لرنینگ را یاد بگیرید و نمی‌دانید باید از کجا شروع کنید، این مقاله می‌تواند برایتان مفید باشد. در این مطلب بررسی می‌کنیم که ماشین لرنینگ چیست ؟ و چه کاربردهایی دارد؟ سپس بررسی می‌کنیم که چطور یک متخصص یادگیری ماشین شویم و درباره موقعیت‌های شغلی این گرایش صحبت خواهیم کرد.

یادگیری ماشین یا ماشین لرنینگ چیست

اگر بخواهیم به زبان ساده تعریفی از Machine Learning داشته باشیم، باید بگوییم یادگیری ماشین علمی است که به ماشین‌ها یاد می‌دهد چطور چیزهای جدید از خودشان یاد بگیرند. احتمالا بعد از شنیدن این جمله از خودتان می‌پرسید آخر چرا باید ماشین‌ها از خودشان یاد بگیرند؟ این کار چه سودی برای ما دارد؟ با یک مثال این جمله را بررسی می‌کنیم.

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

اما اگر به ماشین یاد بدهیم که کثیفی زمین را تشخیص داده و بر اساس میزان کثیفی و شرایط زمین شروع به تمیز کردن سطح آن بکند. اگر برای ماشین این کار را تعریف کنیم، بسیار بهتر از انسان می‌تواند آن را انجام دهد. بدون اینکه خسته شود یا احتمال مریض شدن داشته باشد. ماشین مدنظر باید بتواند به سوالات زیر جواب بدهد:

  • چه زمانی زمین نیاز به تمیز کردن دارد؟
  • تا چه زمانی باید تمیز کردن زمین ادامه داشته باشد؟
  • و غیره

این کاری است که یادگیری ماشین یا Machine Learning انجام می‌دهد. یعنی به ماشین اجازه می‌دهد از خودش یاد گرفته و رفتارش را مرتب بهبود ببخشد.

ماشین‌ها مثل ما انسان‌ها مغز و قدرت تفکر ندارند، پس باید یک راهی وجود داشته باشد که به آن‌ها فکر کردن را یاد بدهیم و اینجا است که مدل‌های یادگیری ماشین می‌توانند به کمک ما بیایند. به این شکل که ماشین، داده را از محیط بیرونی تحویل گرفته و آن را به مدل مربوطه تحویل می‌دهد. سپس این مدل با توجه به شرایط موجود تصمیم‌گیری می‌کند. در مثال تمیز کردن زمین، ماشین می‌تواند با داده‌هایی که می‌گیرد و تحویل مدل می‌دهد به اطلاعات مختلفی دست پیدا کند:

  • چه زمانی زمین نیاز به تمیز کردن دارد یا چه زمانی تمیز است
  • این تمیز کردن تا چه زمانی باید ادامه داشته باشد
  • و غیره

[remind]یادگیری ماشین یک زیرشاخه معروف در هوش مصنوعی است که کمک می‌کند ماشین‌ها یا کامپیوترها بتوانند چیزهای جدید یاد بگیرند[/remind]

تفاوت میان داده‌ کاوی و یادگیری ماشین

داده کاوی در سال 1930 معرفی شد و هدف از آن یافتن اطلاعات مفید، پنهان شده و معتبر از میان حجم عظیمی از داده‌هاست. یادگیری ماشین اما در سال 1950 معرفی شد شامل به‌کارگیری مدل استخراجی از داده‌های آموزشی بر روی داده‌های جدید است. هر دوی این تکنیک‌ها از نظر اینکه سعی در یافتن داده‌های مفید دارند با هم نقطه‌ی اشتراک دارند ولی از نظر مسئولیت، مبدأ، پیاده‌سازی، ماهیت، موارد کاربرد و تکنینک‌های به کار رفته متفاوت هستند.

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

یادگیری ماشین در کدام بخش‌های زندگی ما دیده می‌شود؟

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

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

مثال‌های بالا تنها اشاره کوتاهی به کاربردهای یادگیری ماشین داشتند و این حوزه بسیار گسترده‌تر است.

یادگیری ماشین به چند دسته تقسیم می‌شود؟

به طور کلی یادگیری ماشین را به 3 دسته تقسیم می‌کنند:

  • یادگیری با نظارت (Supervised Learning)
  • یادگیری بدون نظارت (Unsupervised Learning)
  • یادگیری تقویتی (Reinforcement Learning)

در ادامه‌ی مقاله‌ی ماشین لرنینگ چیست به توضیح این سه دسته می‌پردازیم.

یادگیری با نظارت چیست؟

همان‌طور که از نام آن می‌توانید حدس بزنید در این حالت ماشین نیاز به یک ناظر یا راهنما دارد. دقیقا مثل یک کسی که پشت فرمان نشسته و در حال یاد گرفتن رانندگی است. کنار این شخص کسی به عنوان راهنما نشسته و توصیه‌های لازم را به او می‌دهد. در یادگیری با نظارت یک سری داده‌های از قبل آماده شده به عنوان راهنما تحویل ماشین داده شده و ماشین با توجه به مدل مربوطه تصمیمات لازم را اتخاذ می‌کند.

یادگیری بدون نظارت چیست؟

در این حالت ماشین نیازی به راهنما نداشته و به کمک مشاهدات می‌تواند روابط بین داده‌ها را کشف کند. در این حالت بعد از اینکه کامپیوتر داده‌های مختلف را دریافت کرد می‌تواند روابط بین آن‌ها را کشف کند. یک مثال در یادگیری بدون نظارت ماشینی است که می‌تواند به کمک خوشه بندی و بر اساس الگوهایی که درک کرده است، تفاوت بین دو خودرو سمند و دنا را تشخیص دهد. یعنی اگر 100 خودرو به ماشین معرفی شود، در یکی از این 2 دسته قرار خواهد گرفت.

یادگیری تقویتی چیست؟

باز هم با دقت در اسم این مدل می‌توانید کارکرد آن را متوجه شوید. در این حالت ماشین مرتب خود را تقویت کرده و سعی می‌کند در ارتباط با یک عامل (Agent) یا محیط (Environment) چیزهای جدید یاد بگیرد. این متد به کمک آزمون و خطا سعی در حل مساله داشته و در صورت گرفتن نتیجه مثبت پاداش و در صورت گرفتن نتیجه منفی جریمه می‌شود. در این حالت ماشین سعی می‌کند در تصمیم‌های آتی خود موفق‌تر باشد.

تفاوت خودکارسازی یا اتوماسیون (Automation) با ماشین لرنینگ چیست

اگر فکر می‌کنید یادگیری ماشین اسم جدید و جذابی برای خودکارسازی یا اتوماسیون است سخت در اشتباهید. این دو شاخه با هم تفاوت دارند.

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

یک مثال عالی برای درک تفاوت اتوماسیون و یادگیری ماشین سرویس ایمیل است. زمانی که ایمیل‌ها به طور خودکار ارسال می‌شوند ما از اتوماسیون استفاده کرده‌ایم و زمانی که یک فیلتر تشخیص اسپم روی آن قرار می‌دهیم، یعنی یادگیری ماشین را درگیر کرده‌ایم.

یادگیری ماشین تلاش می‌کند مراحل اتوماسیون و خودکارسازی را به طرز قابل توجهی بهبود ببخشد.

تفاوت یادگیری عمیق (Deep Learning) با ماشین لرنینگ چیست

3 مفهوم هوش مصنوعی (AI)، یادگیری ماشین (ML) و یادگیری عمیق (DL) معمولا در کنار هم قرار می‌گیرند و گاهی با هم اشتباه گرفته می‌شوند. Deep Learning شامل مفاهیم و الگوریتم‌هایی است که از شبکه‌های عصبی مصنوعی که ساختار مغز انسان را تشکیل می‌دهند الهام گرفته شده است.

به عبارتی دیپ لرنینگ زیرمجموعه یادگیری ماشین است و خودِ یادگیری ماشین هم به عنوان زیرمجموعه هوش مصنوعی در نظر گرفته می‌شود. تصویر زیر به خوبی رابطه این 3 مفهوم را نمایش می‌دهد.

ماشین لرنینگ چیست

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

مهارت‌های لازم برای تبدیل شدن به یک متخصص ماشین لرنینگ چیست

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

1 – تئوری یادگیری ماشین و الگوریتم‌های آن را خوب یاد بگیرید

برای یک متخصص ماشین لرنینگ بسیار مهم است که اصول اولیه و مفاهیم پایه یادگیری ماشین را بلد باشد. شما به عنوان یک متخصص ماشین لرنینگ باید الگوریتم‌های معروف این حوزه و اهدافی که دنبال می‌کنند را بلد باشید. در قدم بعدی باید درک کنید که این الگوریتم‌ها چطور با داده‌ها کار می‌کنند. همان‌طور که در بخش قبل گفتیم الگوریتم‌های یادگیری ماشین در سه حوزه‌‌ی کلی نظارتی، بدون نظارت و تقویتی‌اند. در ادامه تعدادی از معروف‌ترین این الگوریتم‌ها را برای شما لیست می‌کنیم تا درباره‌ی آن‌ها مطالعه کنید:

  • رگرسیون خطی
  • رگرسیون لجستیک
  • خوشه بندی
  • درخت تصمیم
  • جنگل تصادفی
  • CART
  • Apriori
  • PCA
  • K-means
  • KNN
  • و غیره

همچنین مطالعه مقاله 10 مورد از بهترین الگوریتم‌های داده کاوی می‌تواند ذهن شما را برای ورود به مباحث یادگیری ماشین آماده کند.

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

  • علوم داده چیست؟
  • Big Data به چه معناست؟
  • هوش مصنوعی چیست؟
  • ماشین لرنینگ چیست ؟
  • دیپ لرنینگ چیست؟
  • 3 مفهوم بالا چه نقاط مشترکی دارند یا با هم چه فرقی می‌کنند؟
  • تمام این اصطلاحات سنگین و پیچیده خارج از دنیای دانشمندان و در دنیای واقعی چه کاربردهایی دارند؟
برای تسلط بیشتر به این مفاهیم، توصیه می‌کنم یک مقاله کوتاه درباره آن‌ها بنویسید. حتی اگر جایی هم منتشر نشد هم مهم نیست.

2 – درک مناسبی روی علوم کامپیوتر داشته باشید

یک متخصص یادگیری ماشین باید دانش زیادی در علوم رایانه داشته باشد. اگر در دانشگاه رشته مهندسی کامپیوتر یا رشته‌های مشابه را خوانده باشید، چند قدم نسبت به سایر افرادی که می‌خواهند ماشین لرنینگ را یاد بگیرند جلوتر هستید. البته هر کسی به این حوزه علاقه‌مند باشد به سرعت می‌تواند با این مفاهیم آشنا شود. به طور کلی منظورم از مفاهیم علوم کامپیوتر در یادگیری ماشین موارد زیر هستند:

  • باید درک مناسبی از ساختمان داده داشته باشید: برای مثال پشته، صف، آرایه‌ها، درخت، جنگل و غیره
  • باید درک مناسبی از طراحی الگوریتم داشته باشید: برای مثال جستجو، مرتب‌سازی، بهینه‌سازی، محاسبه و پیچیدگی و غیره
  • باید درک مناسبی از معماری کامپیوتر داشته باشید: برای مثال حافظه، مفهوم بن بست، پردازش نامتقارن و غیره

یادگیری مفاهیم بالا به تنهایی کافی نیست. شما به عنوان یک متخصص ماشین لرنینگ باید بتوانید هنگام برنامه نویسی این مفاهیم را پیاده سازی کرده و به درستی از آن‌ها استفاده کنید.

3 – درک کافی روی مباحث آمار و احتمال داشته باشید

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

  • نمونه گیری
  • احتمال و توزیع‌های احتمال
  • توزیع متغیرهای تصادفی
  • رگرسیون خطی، چندگانه و لجستیک
  • و غیره

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

4 – زبان برنامه نویسی پایتون یا R (یا هر دو) را برای تحلیل داده یاد بگیرید

زبان برنامه نویسی مناسب ماشین لرنینگ چیست ؟

زبان برنامه نویسی Python در حین سادگی، بسیار قدرتمند و انعطاف‌پذیر است. پایتون در حوزه‌های مختلف مثل طراحی وب، ساخت اپلیکیشن، ساخت بازی و غیره مورد استفاده قرار می‌گیرد. زمانی که صحبت از هوش مصنوعی و یادگیری ماشین می‌شود، پایتون بیشتر از هر زبان دیگری جلب توجه می‌کند.

به عنوان یک متخصص ماشین لرنینگ باید یک زبان برنامه نویسی را یاد بگیرید که با توجه به سادگی و کتابخانه‌های قدرتمندی که پایتون دارد گزینه‌ی مناسبی برای افراد فعال در حوزه یادگیری ماشین است. هر چند زبان R هم قابلیت‌های زیادی دارد و می‌تواند در حل مسائل ماشین لرنینگ به کمک شما بیاید.

با توجه به رشد بسیار بالای پایتون و محبوبیت آن در کشور ما توصیه ما پایتون است.

5 – با Big Data یا کلان داده آشنا شوید

هر چند کار با داده‌های کلان یا Big Data یک تخصص جداگانه به حساب می‌آید و نیاز به نیروی متخصص دارد. اما شما به عنوان یک مهندس ماشین لرنینگ باید با اصول Big Data آشنا باشید چون ممکن است در طول کارتان با حجم زیادی از داده‌ها سروکار داشته باشید.

اگر به این درک برسید که داده‌های بزرگ چطور ذخیره می‌شوند، چطور فراخوانی شده یا چطور پردازش می‌شوند می‌توانید راه‌حل‌های بسیار مناسبی برای مسائل متنوع ماشین لرنینگ ارائه کنید.

توصیه می‌کنم برای تمرین و یادگیری Big Data حتما از یک توزیع لینوکس استفاده کنید چون لینوکس میانه‌ی خوبی با Apache Hadoop دارد. Hadoop مجموعه ابزارهای متن بازی است که با استفاده از چند کامپیوتر بزرگ به حل مسائل مربوط به کلان داده می‌پردازد. در ادامه برخی از مفاهیمی که در یادگیری ماشین لرنینگ به شما کمک می‌کند را معرفی می‌کنم:

  • HDFS
  • Mapreduce
  • Hive
  • Pig
  • Spark
  • Scala
  • و غیره

6 – شروع به مطالعه درباره مدل‌های یادگیری عمیق بکنید

مدل‌های یادگیری ماشین جزو مباحث پیشرفته‌ی این حوزه به حساب می‌آیند. این مدل‌ها به اپل و مایکروسافت کمک کردند دستیارهای صوتی Siri و Cortana را بسازند یا کمک می‌کنند شرکت‌های خودروسازی، روی خودروهای بدون راننده کار کنند. بعد از یادگیری مباحث قبلی باید وارد یک فاز جدی یعنی کار با مدل‌های یادگیری ماشین شوید.

برای شروع می‌توانید مدلی طراحی کنید که تصویر یک گل از تصویر یک میوه را تشخیص دهد. هر چند این مدل نمی‌تواند بلافاصله شما را به ساخت خودرو بدون راننده نزدیک کند، اما برای شروع خوب بوده و دید مناسبی از مسیری که باید طی کنید در اختیارتان قرار می‌دهد. بعضی از مباحثی که باید در این دوره یاد بگیرید عبارتند از:

  • شبکه عصبی مصنوعی یا Artificial Neural Networks
  • پردازش زبان‌های طبیعی یا Natural language processing
  • شبکه‌های عصبی پیچشی یا convolutional neural network
  • تنسورفلو یا TensorFlow
  • اوپن‌سی‌وی یا Open Computer Vision Library

آشنایی با شغل‌های هوش مصنوعی و ماشین لرنینگ

1 – مهندس یادگیری ماشین

مهندسی یادگیری ماشین مهم‌ترین و پرتقاضاترین شغل فعلی هوش مصنوعی در جهان است. این شغل شامل متخصصانی می‌شود که تسلط بالایی در ساخت سیستم‌های مبتنی بر هوش مصنوعی دارند، سیستم‌هایی که بتوانند از خودشان چیزهای جدید یاد بگیرند. رسیدن به مهارت بالا در این عنوان شغلی کمی سخت است.

مهندسان واقعی و خبره یادگیری ماشین باید بتوانند با طیف گسترده‌ای از داده‌ها کار کرده و برنامه نویسی را در سطح قابل قبولی بلد باشند. تخمین زده می‌شود به طور میانگین ( در زمان نگارش این مقاله) هر مهندس یادگیری ماشین در ایالات متحده سالانه بین 120.000 تا 140.000 دلار درآمد دارد. البته افراد ماهر می‌توانند درآمد بیشتری هم داشته باشند.

2 – دانشمند رباتیک

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

کسانی که در هوش مصنوعی فعال هستند، می‌توانند بعدا به عنوان یک کارشناس و متخصص رباتیک شروع به کار کنند. البته این افراد بعد از ورود به این حوزه باید مهارت‌های جدیدی را هم یاد بگیرند. از آنجایی که رباتیک ترکیبی از کامپیوتر، مکانیک و برق است داوطلبان این موقعیت شغلی باید به جز هوش مصنوعی و ماشین لرنینگ به این مباحث هم علاقه‌مند باشند. متوسط درآمد مهندسان رباتیک در زمان نگارش این مقاله در آمریکا به طور میانگین 75.000 دلار در سال است.

3 – مهندس یادگیری عمیق

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

4 – دانشمند داده

همان‌طور که از اسم این شغل می‌توانید حدس بزنید متخصص داده باید داده‌های مختلف را جمع آوری کرده و به کمک یادگیری ماشین آن‌ها را تحلیل کند. این شغل با اینکه از مباحث آماری استفاده می‌کند اما وظیفه‌ی آن فقط جمع کردن گزارش و آمار نیست. کسانی که در این حوزه وارد می‌شوند باید در استفاده از پلتفرم‌های Big Data و ابزارهای مختلف مثل Hadoop، Pig، Hive، Spark، MapReduce و غیره، متخصص باشد. همچنین یادگیری زبان‌های برنامه نویسی و کار با پایگاه داده مثل پایتون، SQL، پرل، اسکالا یا غیره، ضروری به نظر می‌رسد. متوسط درآمد دانشمندان داده در آمریکا در زمان نگارش این مقاله سالانه در حدود 115.000 دلار در سال است.

4 – متخصص بینایی ماشین

وظیفه این متخصص است که به ماشین‌ها بینایی ببخشد. درست مثل ما انسان‌ها که با چشمان خودمان می‌توانیم دنیای بیرون را دیده و بسیاری از مسائل را تشخیص دهیم. البته ماشین به کمک دوربین‌های خاص و نرم افزارهای پردازش تصویر دنیای بیرون را می‌بیند و با ساختار بینایی انسان تفاوت‌های اساسی دارد. بینایی ماشین در بخش‌های مختلفی مثل جریمه رانندگان متخلف، افزایش ایمنی خودروها، کنترل ترافیک، بخش‌های مختلف صنعت و تولید و غیره کاربرد دارد. یک متخصص بینایی ماشین باید در علوم رایانه، شناخت نور، مهندسی مکانیک و غیره تخصص داشته باشد.

جمع‌بندی:

یادگیری ماشین یک زیرشاخه معروف در هوش مصنوعی است که کمک می‌کند ماشین‌ها یا کامپیوترها بتوانند بدون برنامه‌ریزی مشخص و با الگو گرفتن از رفتار خودشان تصمیم‌گیری و عمل کنند. ماشین لرنینگ در بخش‌های مختلف زندگی مردم حضور دارد و سرویس‌های مختلفی به کمک این دانش ساخته می‌شوند. یافتن تخصص در زمینه‌ی ماشین لرنینگ طرفداران فراوانی در دنیای علوم کامپیوتر دارد، زیرا حوزه‌های شغلی فراوانی در دنیا نیازمند متخصصان علم داده است. برای تبدیل شدن به یک متخصص ماشین لرنینگ شما باید مفاهیم و نظریه‌های مطرح Machine Learning را بلد باشید، الگوریتم‌های معروف ML را بشناسید، درک مناسبی نسبت به آمار و احتمال و ریاضیات داشته باشید و مهم‌تر اینکه توانایی قابل قبولی در زمینه‌ی پردازش اطلاعات و کار با داده از طریق برنامه‌نویسی را داشته باشید. در مقاله‌ ماشین لرنینگ چیست به توضیح کاربردهای یادگیری ماشین و اینکه چگونه به یک متخصص ماشین لرنینگ تبدیل شویم و آینده شغلی یادگیری ماشین پرداختیم. اگر در این زمینه سوال یا نظری داشتید خوشحال می‌شویم که با ما و کاربران سون لرن به اشتراک بگذارید.

اگر دوست داری به یک متخصص داده کاوی اطلاعات با زبان پایتون تبدیل شوی و با استفاده از آن در بزرگترین شرکت‌ها مشغول به کار شوی، شرکت در دوره جامع متخصص علم داده با پایتون را پیشنهاد می‌کنیم.

 
ارسال دیدگاه
ما همه سوالات و دیدگاه ها رو می خونیم و پاسخ میدیم
۲۸ دیدگاه
سحر ۱۳ شهریور ۱۴۰۰، ۱۵:۰۹
سلام امکانش هست منابع خوب برای یادگیری آیتم های بالا معرفی کنید
نازنین کریمی مقدم ۱۴ شهریور ۱۴۰۰، ۰۱:۱۴
درود
مقاله منابع یادگیری ماشین لرنینگ در تقویم محتوایی ما هست. سعی میکنیم به زودی منتشرش کنیم.
محمد ۳۱ مرداد ۱۴۰۰، ۱۴:۳۶
مطالب تان به عنوان استارت اولیه برای آشنایی با یادگیری ماشین خیلی خوب بود.
با توجه به اینکه بنده برای پایان نامه خود در رشته عمران می خواستم سراغ نقش یادگیری ماشین در زمینه های مهندسی عمران بروم. آیا به نظرتان در این زمینه می تونم به نتیجه لازم برسم؟ با توجه اینکه بنده در مراحل اولیه آشنایی با یادگیری ماشین هستم
نازنین کریمی مقدم ۰۱ شهریور ۱۴۰۰، ۰۴:۲۵
درود
من خودم تجربه کار میان رشته ای رو داشتم و باید بگم که نشدنی نیست، اما باید زمان نسبتا خوبی بذارید و شکیبا باشید. یادگیری رو مرحله به مرحله انجام بدید و همه کارها رو به سه ماهه آخر موکول نکنید.
نمیدونم موضوع تزتون دقیقا چیه، اما در زمینه یادگیری ماشین در حوزه نقشه های عمرانی و مواردی از این دست قبلا کمی کار شده (فک کنم تو سامانه گنج سرچ کنید مفید باشه)
محمود جواهری ذاکر ۱۳ مرداد ۱۴۰۰، ۰۹:۲۱
واقعا عالی بود
مشخص بود نویسنده تسلط خوبی در حوزه مورد اشاره داشت
نازنین کریمی مقدم ۱۳ مرداد ۱۴۰۰، ۲۲:۴۰
سلام
ممنون که با ما همراه هستید :)
امیرحسین ۲۹ تیر ۱۴۰۰، ۱۱:۵۳
سلام خیلی ممنون از مقالتون عالی بود
یه سوال داشتم:
پردازش تصویر یه تخصص جداست یا فقط بخشی از یادگیری ماشینه؟
نازنین کریمی مقدم ۰۴ مرداد ۱۴۰۰، ۰۱:۱۶
درود
پردازش تصویر + بینایی ماشین یک تخصص جداست و در یسری مراحل از بعضی روشهای یادگیری ماشین استفاده میکنه.
Lantern ۱۶ فروردین ۱۴۰۰، ۱۸:۵۲
عالی و مفید ،، هم وبسایت آموزنده و هم اینستاگرام ،، برای من مبتدی خیلی از مطالب مبهم که در دور دست های ذهنم راجب برنامه نویسی داشتم واضح شدن ،، سپاسگزارم
آرزو ۱۸ اسفند ۱۳۹۹، ۲۲:۴۰
سلام،من تا حدودی آمار بلدم،ولی اصلا با برنامه نویسی و مباحث مربوط به اون آشنا نیستم،میخواستم ببینم ایا میتونم با گذروندن دوره های مناسب ماشین لرنینگ رو یاد بگیرم؟
نازنین کریمی مقدم ۱۸ اسفند ۱۳۹۹، ۲۳:۰۸
درود.
این عالیه که با آمار و مفاهیمش آشنا هستید. بخش عظیمی از ماشین لرنینگ بر پایه احتمالات شرطی و بیز و... هست.
بهتون توصیه میکنم زبان برنامه نویسی تون رو پایتون انتخاب کنید و با دوره آموزشی ماشین لرنینگ و پایتون پیش برید. چون پایتون خیلی ساده و سرراسته و سریع یاد میگیرید، کتابخانه و نمونه کد آماده هم برای تمرین و رفع اشکال زیاد داره.
وفا ۰۷ اسفند ۱۳۹۹، ۱۹:۲۹
خیلی خوب بود
ممنون از مقاله شما
یک نکته خوب این بود که برای متخصص ماشین لرنر شدن چه تخصص هایی باید یاد گرفت رو پیشنهاد کردید
این خیلی خوبه
نازنین کریمی مقدم ۰۸ اسفند ۱۳۹۹، ۰۰:۰۵
ممنون که با ما همراه هستید.
Mohammad Bayat ۲۵ دی ۱۳۹۹، ۱۰:۰۲
سلام منابع این مقاله چه کتابها یا مقالاتی هست؟
اسماعیل ۰۸ آبان ۱۳۹۹، ۲۲:۰۲
تشکر فراوان
امیرحسین ۱۱ مهر ۱۳۹۹، ۱۹:۱۳
عالی و تمام چقد خوبین شما
سعید ۰۴ شهریور ۱۳۹۹، ۱۱:۵۳
در یک جمله : عالی بود
سحر اسکندری ۲۲ مرداد ۱۳۹۹، ۲۳:۱۳
تشکر از مقاله خوبتون
فائقه نامور ۱۱ شهریور ۱۳۹۹، ۲۰:۱۵
سلام وقت بخیر
ممنون از توجه و همراهی شما
الهه ۱۳ مرداد ۱۳۹۹، ۲۳:۵۷
من فقط آمار بلدم. تازه شروع کردم اولین زبان برنامه نویسی تو عمرم رو یاد میگیرم. پایتون و زبان انگلیسیم قویه. چقدر طول میکشه بتونم سطح متوسط این تخصص برسم؟ یک سال ؟
المیرا ناصح ۲۱ شهریور ۱۳۹۹، ۱۴:۱۱
سلام دوست عزیز. ببینید نمیشه به این سوال پاسخ کلی داد. چون به خیلی فاکتورها بستگی داره و فرد به فرد متفاوته. ولی اگر با پشتکار خوب ادامه بدید و از دوره های آموزشی خوب هم بهره ببرید هم زمان یادگیری کم میشه و هم بهره وری بالا میره. موفق باشید.
رضوی ۳۱ تیر ۱۳۹۹، ۰۹:۵۲
خسته نباشید، عالی بود. یک سری ابهامات در این زمینه داشتم که برطرف گردید. موفق باشید
فیروزه ۰۹ تیر ۱۳۹۹، ۱۱:۴۶
خیلی خوب بود.سپاس
محسن محمدی رهنما ۰۴ تیر ۱۳۹۹، ۰۱:۵۴
سلام وقتتون بخیر مقاله تون خیلی خوب بود . ممنون
AMK _ 84 ۲۹ خرداد ۱۳۹۹، ۲۳:۴۵
بسیار عالی واقعا لذت بردم خیلی کامل و مفید 👌🏻👌🏻🙏🏻🙏🏻
امیرحسین ۲۹ خرداد ۱۳۹۹، ۲۲:۳۵
ممنون بابت مطالب مفیدتون
سهیل ۲۸ خرداد ۱۳۹۹، ۱۳:۰۴
ببخشید چه جوری میشه کار با سرور هایی چون apachi hadoop رو یاد گرفت؟
المیرا ناصح ۲۱ شهریور ۱۳۹۹، ۱۴:۱۳
سلام دوست عزیز. با یک سرچ ساده در بین سایت های آموزشی به زبان انگلیسی میتونید منابع آموزشی خیلی خوبی در این زمینه پیدا کنید.
اشتراک گذاری مقاله در :
  • یادگیری ماشین یا ماشین لرنینگ چیست
  • تفاوت میان داده‌ کاوی و یادگیری ماشین
  • یادگیری ماشین در کدام بخش‌های زندگی ما دیده می‌شود؟
  • یادگیری ماشین به چند دسته تقسیم می‌شود؟
  • تفاوت خودکارسازی یا اتوماسیون (Automation) با ماشین لرنینگ چیست
  • تفاوت یادگیری عمیق (Deep Learning) با ماشین لرنینگ چیست
  • مهارت‌های لازم برای تبدیل شدن به یک متخصص ماشین لرنینگ چیست
  • 1 – تئوری یادگیری ماشین و الگوریتم‌های آن را خوب یاد بگیرید
  • 2 – درک مناسبی روی علوم کامپیوتر داشته باشید
  • 3 – درک کافی روی مباحث آمار و احتمال داشته باشید
  • 4 – زبان برنامه نویسی پایتون یا R (یا هر دو) را برای تحلیل داده یاد بگیرید
  • 5 – با Big Data یا کلان داده آشنا شوید
  • 6 – شروع به مطالعه درباره مدل‌های یادگیری عمیق بکنید
  • آشنایی با شغل‌های هوش مصنوعی و ماشین لرنینگ