آیا واقعا یادگیری عمیق به داده زیاد احتیاج دارد؟

امروزه این یه جمله مشهور و رایجه:

یادگیری عمیق وقتی به درد می خوره که دیتای زیادی داشته باشی!

این جمله ی نه به کلی درست و نه به کلی غلط نیاز به کمی توضیح داره تا دقیقا معلوم بشه چه قدر درسته و چه قدر غلط!

داده ی برچسب خورده و داده ی بدون برچسب

در یادگیری ماشین، یادگیری با ناظر (supervised) و یادگیری بدون ناظر (unsupervised) دو دسته بندی اصلی به حساب میان. داده هایی که برای این دو روش به کار میرن هم تفاوت جدی باهم دارن. داده های مورد استفاده از الگوریتم های باناظر کاملا برچسب خورده ( labeled ) هستن. یعنی به ازای هر عضو از داده ها یک یا چند برچسب مشخص از کلاس ها وجود داره که کار ماشین، یادگیری چگونگی تناظر بین داده ها و برچسب های متناظر اون هاست.

اما در موج جدید یادگیری عمیق یک اتفاق مهم رخ داده. در حقیقت یکی از دلایل اوج گیری دوباره یادگیری عمیق همینه. این موضوع جذاب و به درد به خور اسمش هست "representation learning" یا اگه درست ترجمه کنم "یادگیری بازنمایی".

به طور خلاصه یادگیری بازنمایی یعنی این که شما یه سری داده ی برچسب نخورده رو به ماشین میدید و ماشین صرفا با مقایسه و کنار هم گذاشتن داده ها چیزهای زیادی رو از اون ها یاد میگیره. درسته که اون چیزها -شاید- به طور مستقیم قابل استفاده نباشند اما قطعا به عنوان یه ابزار کمکی و واسط محشرن!

الگوریتم Word2vec

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


رابطه ی بین کشورها و پایتخت ها. این بردارها کاملا بدون ناظر توسط ماشین یادگیری شدن.
رابطه ی بین کشورها و پایتخت ها. این بردارها کاملا بدون ناظر توسط ماشین یادگیری شدن.


خوب حالا بریم سر سوال اصلی:

آیا واقعا یادگیری عمیق به داده ی زیاد احتیاج داره؟

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

آیا یادگیری عمیق به داده ی برچسب خورده ی زیادی احتیاج دارد؟

پاسخ سوال بسیار ساده است. اگر شما می تونید یک روش یادگیری بازنمایی برای مسالتون پیدا کنید پاسخ خیر هست. اما اگر به هر دلیلی قادر نیستید که یک روش یادگیری بازنمایی رو به کار بگیرید پاسخ بله می باشد!

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

اگر میتوانید از داده های برچسب نخورده استفاده کنید به داده ی برچسب خورده ی زیادی احتیاج ندارید.


ممنون از توجهتون