
چالشهای الگوریتمی
پس از آنکه توانستیم چالشهای مربوط به داده را مدیریت کنیم، سراغ الگوریتم و مدل میرویم. بیشبرازش (Overfitting)، کمبرازش (Underfitting) و زمان نمونهای از چالشهای مربوط به مدلها و الگوریتمهای هوشمصنوعی و یادگیریماشین هستند.
مسئله Overfitting
هدف ما در یادگیریماشین این است که با مشاهده و یادگیری از دادههای گذشته، آینده را پیشبینی کنیم. وقتی دچار Overfitting میشویم در حقیقت مدل عمومیت خود را از دست داده است؛ به عبارت بهتر مدل نمیتواند آینده را به درستی پیشبینی کند. علت عدم توانایی در پیشبینی آینده این است که دادههای آموزش را زیاد از حد یاد گرفته است.
مثال
بهعنوان مثال فرض کنید به تازگی در یک شرکت مشغول به کار شده اید. در بدو ورود به شرکت در روز اول کاری اولین همکار مرد را مشاهده میکنید، پس از مدتی دومین، سومین و چهارمین همکار مرد را هم ملاقات میکنید. اگر شما دچار Overfitting شده بودید، فقط با آشنایی ۴ همکار قضاوت میکردید که همه همکاران شما آقا هستند و هیچ همکار خانمی در پرسنل شرکت وجود ندارد!
مسئله Underfitting
این مشکل وقتی بهوجود میآید که مدل نتواند به خوبی از دادگان آموزش، یاد بگیرد. این مسئله میتواند به دلایل مختلفی پیش بیاید. داده نامناسب یکی از چندین دلیل کمبرازش است.
منظور از داده نامناسب آن است که داده به قدری بیکیفیت است که اطلاعات دقیق و جامعی از هدفی که قصد مدل کردن آن را داریم به دست نمیدهد.
مثال
فرض کنید میخواهید مدلی آموزش دهید که حقوق افراد فعال در حوزه فناوریاطلاعات را پیشبینی کند ولی در دادگان، میزان تجربه و بیمهشدن یا نشدن افراد را ندارید. مشخصا با داشتن اطلاعات بیمه و سطح تجربه با دقت بهتری میتوانید حقوق آنها را پیشبینی کنید. اگر بر اساس این دادگان مدلی آموزش دهید که عملکردش مطلوب شما نبود دچار مشکل Underfitting شده اید.

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