یادگیری فعال در یادگیری ماشین


منتشر‌شده در: وبسایت درباره علم داده به تاریخ ۳ آپریل ۲۰۲۰
لینک منبع: Active Learning in Machine Learning

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

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

یادگیری فعال: انگیزه

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

اما چرا ما فقط یک زیرمجموعه تصادفی از داده‌ها را برای برچسب گذاری دستی انتخاب نمی‌کنیم؟

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

پیش‌بینی مدل اگر تمام نقاط داده علامت‌گذاری شده باشند
پیش‌بینی مدل اگر تمام نقاط داده علامت‌گذاری شده باشند

همانطور که دیده می‌شود، هر دو کلاس (قرمز و بنفش) را می توان به خوبی با یک خط آبی عمودی که در ۰ ترسیم شده جدا کرد. مشکل این است که هیچ یک از نقاط داده برچسب نخورده اند، بنابراین داده‌ها مانند نمودار زیر به ما داده می‌شوند:

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

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

مدلی آموزش‌دیده بر روی زیرمجموعه تصادفی نقاط داده علامت‌گذاری شده
مدلی آموزش‌دیده بر روی زیرمجموعه تصادفی نقاط داده علامت‌گذاری شده

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

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

ایجاد یک انتخاب هوشمندانه برای اولویت‌بندی داده‌ها در زمان برچسب زدن می‌تواند باعث صرفه‌جویی در زمان، محاسبه و سردرد تیم‌های علم داده شود!

استراتژی یادگیری فعال

مراحل یادگیری فعال

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

مراحل استفاده از یادگیری فعال در یک مجموعه داده بدون برچسب عبارتند از:

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

اولویت‌بندی امتیازات

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

کم‌ترین اعتماد:

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

بیایید از یک مثال برای بررسی نحوه کار آن استفاده کنیم. فرض کنید داده‌های زیر را با سه کلاس ممکن داریم:

جدول ۱: مثالی از پیش‌بینی‌های احتمال یک مدل در سه کلاس مختلف برای چهار نقطه داده مختلف.
جدول ۱: مثالی از پیش‌بینی‌های احتمال یک مدل در سه کلاس مختلف برای چهار نقطه داده مختلف.

در این حالت، الگوریتم ابتدا حداکثر احتمال را برای هر نقطه داده انتخاب می‌کند، از این رو:

  • X1: 0.9
  • X2: 0.87
  • X3:0.5
  • X4:0.99.

مرحله دوم مرتب‌سازی داده‌ها براساس این احتمال بیشینه (از کوچک‌تر به بزرگ‌تر) و در نتیجه X3، X2، X1 و X4 است.

نمونه‌گیری حاشیه:

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

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

پس از مثال جدول ۱، امتیازات متناظر برای هر نقطه داده به صورت زیر است:

  • X1: 0.9–0.07 = 0.83
  • X2: 0.87–0.1 = 0.86
  • X3: 0.5–0.3 = 0.2
  • X4: 0.99–0.01 = 0.98

بنابراین نقاط داده به صورت زیر نشان داده می‌شوند: X3، X1، X2 و X4. همانطور که می توان دید اولویت در این مورد کمی متفاوت با حداقل اعتماد به نفس است.

آنتروپی:

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

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

به طور رسمی می‌توانیم امتیاز آنتروپی را به صورت زیر اولویت‌بندی کنیم:

اگر امتیاز آنتروپی را برای مثال جدول ۱ به کار ببریم:

  • X1: -0.9*log(0.9)-0.07*log(0.07)-0.03*log(0.03) = 0.386
  • X2: -0.87*log(0.87)-0.03*log(0.03)-0.1*log(0.1) = 0.457
  • X3: -0.2*log(0.2)-0.5*log(0.5)-0.3*log(0.3) =1.03
  • X4: -0*log(0)-0.01*log(0.01)-0.99*log(0.99) = 0.056

توجه داشته باشید که برای X4,0 باید برای یک اپسیلون کوچک (به عنوان مثال ۰.۰۰۰۰۱) برای پایداری عددی تغییر کند.

در این حالت، نقاط داده باید به ترتیب زیر نشان داده شوند: X3، X2، X1 و X4، که با ترتیب روش کم‌ترین اعتماد به نفس منطبق است!


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