آیا باید اکنون یاد بگیرم؟ یا بعدا؟ اساسا یادگیری یک مهارت همگانیست که توسط هر موجود زندهای در این سیارهی خاکی فرا گرفته میشود. تعریف یادگیری به این صورت است: کسب مهارت یا دانش به وسیلهی تجربه، مطالعه یا آموزش.
مانند گیاهی که یاد میگیرد چگونه نسبت به نور و دما واکنش نشان دهد، میمونی که یاد میگیرد چگونه پوست موز را بکند و یا ما که یاد میگیریم چگونه دوچرخهسواری کنیم. این اشتراک (یادگیری) عنصریست که ما را نسبت به هم منحصربهفرد میکند و در طول زمان منجر به تکامل موجودات میشود.
اما اگر بگویم ماشینها هم میتوانند یاد بگیرند چه؟
ما در عصری زندگی میکنیم که ماشینها تفاوت چندانی ندارند. یادگیری ماشین یک مفهوم نسبتا جدید است. ما میتوانیم به ماشینها بیاموزیم چگونه یاد بگیرند و حتی برخی از آنها میتوانند به تنهایی و بدون نیاز به ما یاد بگیرند. این پدیدهی جادویی «یادگیری ماشین» نامیده میشود.
امیدوارم این مقاله بینش مفیدی به شما ارائه دهد و ذهنتان را نسبت به کارهایی که امروزه کامپیوترها میتوانند انجام دهند نزدیک کند. من قصد ندارم به صورت جزئی به این که یادگیری ماشین چیست بپردازم، بلکه میخواهم مروری کلی بر روی مفاهیم پایهای آن داشته باشم.
اگر تنها یک چیز وجود داشته باشد که باید از این مقاله بیاموزید، آن این است که:
ماشینها میتوانند آینده را پیشبینی کنند، اما فقط تا زمانی که نسبت به گذشته تفاوت چندانی نداشته باشد.
یادگیری ماشین به جای برنامهنویسی با استفاده از یک سری قوانین مشخص و خاص، از یک کامپیوتر برای تشخیص الگوها از روی مثالها استفاده میکند. این الگوها از دادهها استخراج میشوند.
«یادگیری = یافتن الگوهای داده» «ماشین = کامپیوتر یا ماشین شما»
ایجاد الگوریتمهایی که از توابع پیچیدهی (الگوها) دادهها یاد میگیرند چگونه آن داده را پیشبینی کنند.
اساسا میتوان آن را در سه مرحله خلاصه کرد:
1. گرفتن داده به عنوان ورودی
2. پیدا کردن الگو از روی داده ورودی
3. پیشبینی الگوهای جدید
پیش از آن که شروع کنیم؛ مروری کلی بر روی برخی تواناییهایی که یادگیری ماشین امکان آنها را به ما میدهد داشته باشیم:
برای سادگی فقط بدانید که ماشینها با پیدا کردن الگوها در دادههای مشابه «یاد میگیرند». دادهها را به عنوان اطلاعاتی که از دنیا بدست میآورید، در نظر بگیرید. هرچه دادههای بیشتری به ماشین داده شود، ماشین هوشمندتر میشود.
اما همهی دادهها یکسان نیستند. تصور کنید که یک دزد دریایی هستید و ماموریت شما این است که گنج مدفون را در جایی از جزیره پیدا کنید. برای یافتن گنج، به اطلاعات کافی نیاز دارید. این اطلاعات که دادههای شما هستند، میتوانند شما را به مسیر درست یا جهت اشتباه هدایت کنند.
هرچه اطلاعات/دادههای بهتری به دست آید، عدم اطمینان کمتر میشود و بالعکس. بنابراین در نظر داشتن نوع دادهای که برای یادگیری به ماشین خود میدهید، امری مهم است.
«دادههای بیشتر مدلهای بهتر را شکست میدهند. دادههای بهتر، دادههای بیشتر را شکست میدهند.»
Riley Newman
با این وجود، پس از ارائه مقدار کافی داده، دستگاه میتواند پیشبینی کند. ماشینها میتوانند آینده را تا زمانی که خیلی متفاوت از گذشته به نظر نرسد، پیشبینی کنند.
ماشین واقعا با استفاده از دادههای قدیمی برای بدست آوردن احتمال وقایع آینده، یاد میگیرد.
اگر دادههای قدیمی شباهت زیادی به دادههای جدید دارند، چیزهایی که میتوانید در مورد دادههای قدیمی بگویید، احتمالا به دادههای جدید مرتبط خواهند بود. همانند نگاه کردن به گذشته برای حرکت به سوی آینده است.
یادگیری نظارتشده (Supervised learning): ماشین از دادههای برچسبگذاری شده یاد میگیرد. به طور معمول، دادهها توسط انسان برچسبگذاری میشوند.
یادگیری بدون نظارت (Unsupervised learning): ماشین از دادههای بدون برچسب یاد میگیرد. به این معنی که هیچ پاسخ درستی برای یادگیری به ماشین داده نشده است، اما ماشین الگوهایی را از دادهها پیدا میکند تا بتواند به یک جواب برسد.
یادگیری تقویتی یا کمکی (Reinforcement learning): ماشین از طریق یک سیستم مبتنی بر پاداش یاد میگیرد.
یادگیری تحت نظارت رایجترین و مورد مطالعهترین نوع یادگیری است، زیرا آموزش ماشین برای یادگیری با دادههای برچسبدار آسانتر از دادههای بدون برچسب است. بسته به آنچه میخواهید پیشبینی کنید، یادگیری نظارتشده میتواند برای حل دو نوع مشکل استفاده شود: رگرسیون (Regression) و طبقهبندی (Classification).
Regression:
اگر بخواهید مقادیر پیوسته را پیشبینی کنید، مانند تلاش برای پیشبینی هزینه یک خانه یا آب و هوای بیرون بر حسب درجه، از رگرسیون استفاده میکنید. این نوع مشکل محدودیت مقدار خاصی ندارد زیرا مقدار میتواند هر عددی بدون محدودیت باشد.
Classification:
اگر بخواهید مقادیر گسسته را پیشبینی کنید، مانند طبقهبندی اشیاء در دستههای مختلف، از Classification استفاده میکنید.
برای مثال مشکلی مانند: «آیا اون این خرید را انجام خواهد داد؟» پاسخی خواهد داشت که به دو دسته تقسیم میشود: بله یا خیر که گسسته هستند، به این مشکل binary classification نیز میگویند.
از آنجایی که هیچ دادهی برچسبگذاری شدهای برای یادگیری ماشینها وجود ندارد، هدف یادگیری ماشینی بدون نظارت، شناسایی الگوها در دادهها و گروهبندی آنها است. یادگیری بدون نظارت مختص ماشینهایی است که سعی میکنند به تنهایی و بدون کمک یاد بگیرند. تصور کنید کسی انبوهی از دادهها را به شما میدهد و میگوید: «برو پسر، چند الگو پیدا کن و آنها را برای من گروهبندی کن. با تشکر.» بسته به آنچه میخواهید با هم گروهبندی کنید، یادگیری بدون نظارت میتواند توسط دو روش دادهها را گروهبندی کند: خوشه بندی (clustering) و association.
Clustering:
یادگیری بدون نظارت سعی در حل این مشکل با جستجوی شباهتها در دادهها دارد. اگر یک خوشه یا گروه مشترک وجود داشته باشد، الگوریتم آنها را به شکل خاصی دستهبندی میکند. نمونهای از این میتواند تلاش برای گروهبندی مشتریان بر اساس رفتارهای خرید آنها باشد.
Association:
یادگیری بدون نظارت با تلاش برای درک قوانین و معنای پشت گروههای مختلف سعی در حل این مشکل دارد. یافتن رابطه بین خریدهای یک مشتری، مثالی رایج از این نوع مسئله است. فروشگاهها ممکن است بخواهند بدانند چه نوع محصولاتی با هم خریداری شدهاند و احتمالا میتوانند از این اطلاعات برای سازماندهی محل قرارگیری محصولات در فروشگاه برای دسترسی آسانتر استفاده کنند. یکی از فروشگاهها متوجه شد که ارتباط قوی بین مشتریانی که آبجو و پوشک بچه میخرند وجود دارد. آنها از این بیانیه استنباط کردند که مردانی که برای خرید پوشک برای نوزادان خود به بیرون رفته بودند، تمایل به خرید آبجو نیز دارند.
این نوع یادگیری ماشینی مستلزم استفاده از سیستم پاداش/جریمه است. هدف این است که وقتی ماشین به درستی یاد میگیرد، پاداش داده شود و وقتی ماشین اشتباه یاد میگیرد، جریمه شود.
یادگیری ماشین تقویتی یا کمکی زیرمجموعهای از هوش مصنوعی است. با طیف گستردهای از پاسخهای ممکن از دادهها، فرآیند این نوع یادگیری یک فرایند تکراری است یعنی پیوسته یاد میگیرد.
مثالهایی از Reinforcement Learning:
این یک مقاله بهروز شده در مورد پست قدیمی من درباره یادگیری ماشین است. امیدوارم چیزی یاد گرفته باشید! اگر چیزی هست که دوست دارید به این مقاله اضافه کنید، در صورت تمایل پیام بگذارید. از هر نوع بازخورد واقعا قدردانی میشود. از اشتراکگذاری آن نترسید! با تشکر!
متنی که خواندید ترجمه این مقاله است.
ما را در تلگرام دنبال کنید.