آموزشیادگیری ماشین

درس ۱ از ۹۹، هوش مصنوعی، حدود ۶ دقیقه خواندن

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

جواب کوتاه

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

بنگاهی محله

بنگاهی قدیمی محله رو در نظر بگیرید. هیچ فرمولی بلد نیست. ولی سی ساله داره خونه می‌فروشه و صدها معامله دیده.

بهش می‌گید «یه خونه‌ی هشتاد متری، هشت‌ساله، توی همین محله». یه نگاه می‌کنه و یه قیمت می‌گه که خیلی دور نیست. از کجا می‌دونه؟ کسی بهش فرمول نداده. از همون صدها معامله، خودش یه الگو توی ذهنش ساخته: هر چی بزرگ‌تر، گرون‌تر؛ هر چی قدیمی‌تر، ارزون‌تر.

یادگیری ماشین یعنی همین

یادگیری ماشین (یا «ماشین لرنینگ») همین کار بنگاهیه، برای کامپیوتر. سه قدم داره:

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

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

برعکس برنامه‌نویسی معمولی

توی برنامه‌نویسی معمولی، برنامه‌نویس قاعده رو می‌نویسه: «اگه این شد، اون کار رو بکن». کامپیوتر قاعده و داده رو می‌گیره و جواب می‌ده. یادگیری ماشین برعکسه:

داده و جواب‌ها رو می‌دیم، و قاعده رو خودش پیدا می‌کنه. برای همین می‌گن یادگیری ماشین کار رو «بی اینکه صریح برنامه‌نویسی بشه» انجام می‌ده.

کِی به درد می‌خوره؟ وقتی نوشتن قاعده سخته یا نشدنیه. مثلا چطور قاعده بنویسید که یه عکس گربه‌ست؟ «چهار تا پا، دو تا گوش»؟ سگ هم داره. ولی با هزارتا عکس گربه و هزارتا عکس غیر گربه، ماشین خودش یاد می‌گیره.

تجربه، کار، سنجه

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

  • تجربه: معامله‌هایی که دیده.
  • کار: حدس قیمت یه خونه.
  • سنجه: حدسش چقدر با قیمت واقعی فرق داشت.

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

اسمش از کجا اومد

اسم «یادگیری ماشین» رو آرتور ساموئل سال ۱۹۵۹ گذاشت. اون موقع بهش «کامپیوترهای خودآموز» هم می‌گفتن. ساموئل توی دهه‌ی ۱۹۵۰ یه برنامه ساخته بود که توی بازی چکرز (یه جور بازی دوز روی صفحه‌ی شطرنج)، شانس برد هر طرف رو حساب می‌کرد.

امروز خیلی‌ها «یادگیری ماشین» و «هوش مصنوعی» رو جای هم به کار می‌برن؛ ولی یکی نیستن. فرقشون: هوش مصنوعی، یادگیری ماشین و یادگیری عمیق.

این مسیر

این درس اول یه مسیر بلنده. قدم به قدم، از همین بنگاهی تا شبکه‌ی عصبی می‌ریم:

  1. شروع: یاد گرفتن ماشین یعنی چی.
  2. داده: سوخت یادگیری.
  3. ریاضی لازم، از صفر و با تصویر.
  4. اولین مدل از اول تا آخر.
  5. بعد دسته‌بندی، ارزیابی، الگوریتم‌ها، و شبکه‌ی عصبی.

از ریاضی نترسید؛ هر جا لازم شد، همونجا با تصویر یاد داده می‌شه.

جمع‌بندی. آنچه از این درس با خودتان می‌برید.

  • قاعده نمی‌نویسیم؛ مثال نشون می‌دیم.
  • مثال‌ها، یاد گرفتن، حدس روی مثال تازه.
  • داده و جواب می‌ره تو، قاعده میاد بیرون.
  • تجربه بیشتر، کار بهتر، با یه سنجه.
  • اسمش از ۱۹۵۹.

خودتون رو بسنجید

۱۵ پرسش، هر بار تازه از میان ۳۰ پرسش این درس. آخرش فقط کارنامه رو می‌بینید: چند تا درست، چند تا نادرست.

خودتون رو بسنجید

۱۵ پرسش

  • هر بار پرسش‌ها و ترتیب گزینه‌ها عوض می‌شه.
  • تا آخر نمی‌گیم کدوم جواب درست بوده؛ می‌تونید برگردید و جوابتون رو عوض کنید.
  • آخرش کارنامه می‌گیرید: چند تا درست، چند تا نادرست.
  • اگه وسطش بستید، دوباره که باز کنید از همون‌جا ادامه می‌دید.

فصل‌های این درس

درس بعد