یادگیری انتقالی در یادگیری ماشین زمانی است که عناصر یک مدل از پیش آموزش دیده در یک مدل یادگیری ماشین جدید مورد استفاده مجدد قرار می گیرند . اگر این دو مدل برای انجام وظایف مشابه توسعه داده شوند، دانش تعمیم یافته می تواند بین آنها به اشتراک گذاشته شود. این رویکرد برای توسعه یادگیری ماشینی، منابع و مقدار دادههای برچسبگذاری شده مورد نیاز برای آموزش مدلهای جدید را کاهش میدهد. این در حال تبدیل شدن به بخش مهمی از تکامل یادگیری ماشین است و به طور فزاینده ای به عنوان یک تکنیک در فرآیند توسعه استفاده می شود.
یادگیری ماشین در حال تبدیل شدن به بخشی جدایی ناپذیر از دنیای مدرن است. الگوریتم های یادگیری ماشین برای تکمیل وظایف پیچیده در طیف وسیعی از صنایع استفاده می شود. مثالها عبارتند از اصلاح کمپینهای بازاریابی برای بازگشت سرمایه بهتر، بهبود کارایی شبکه، و هدایت تکامل نرمافزار تشخیص گفتار. یادگیری انتقالی نقش مهمی در توسعه مستمر این مدل ها خواهد داشت.
طیف وسیعی از انواع مختلف یادگیری ماشینی وجود دارد، اما یکی از محبوب ترین فرآیندها یادگیری ماشینی تحت نظارت است. این نوع یادگیری ماشینی از داده های آموزشی برچسب گذاری شده برای آموزش مدل ها استفاده می کند. برچسبگذاری صحیح مجموعه دادهها به تخصص نیاز دارد و فرآیند آموزش ماشینها اغلب منابع فشرده و زمانبر است. یادگیری انتقالی راه حلی برای این مسائل است و به همین دلیل در حال تبدیل شدن به یک تکنیک مهم در چشم انداز یادگیری ماشین است.
این راهنما به بررسی یادگیری انتقالی برای یادگیری ماشین میپردازد، از جمله اینکه چیست، چگونه کار میکند و چرا از آن استفاده میشود.
یادگیری انتقالی چیست؟
یادگیری انتقالی برای یادگیری ماشین زمانی است که از مدلهای موجود برای حل یک چالش یا مشکل جدید استفاده مجدد میشود. یادگیری انتقالی یک نوع متمایز از الگوریتم یادگیری ماشینی نیست، در عوض یک تکنیک یا روشی است که در حین آموزش مدل ها استفاده می شود. دانش ایجاد شده از آموزش های قبلی برای کمک به انجام یک کار جدید بازیافت می شود. وظیفه جدید به نوعی با کار آموزش دیده قبلی مرتبط است، که می تواند دسته بندی اشیاء در یک نوع فایل خاص باشد. مدل آموزشدیده اصلی معمولاً به سطح بالایی از تعمیم نیاز دارد تا با دادههای دیده نشده جدید سازگار شود.
یادگیری انتقالی به این معنی است که آموزش برای هر کار جدید نیازی به شروع مجدد از ابتدا نخواهد داشت. آموزش مدلهای یادگیری ماشینی جدید میتواند منابع فشرده باشد، بنابراین یادگیری انتقالی باعث صرفهجویی در منابع و زمان میشود. برچسب گذاری دقیق مجموعه داده های بزرگ نیز زمان زیادی را می طلبد. اغلب دادههایی که سازمانها با آنها مواجه میشوند، اغلب میتوانند بدون برچسب باشند، به خصوص با مجموعه دادههای گسترده مورد نیاز برای آموزش الگوریتم یادگیری ماشین. با یادگیری انتقال، یک مدل میتواند روی یک مجموعه داده برچسبگذاریشده در دسترس آموزش داده شود، سپس برای کار مشابهی که ممکن است شامل دادههای بدون برچسب باشد، اعمال شود.
یادگیری انتقالی برای چه مواردی استفاده می شود؟
یادگیری انتقالی برای یادگیری ماشین اغلب زمانی مورد استفاده قرار می گیرد که آموزش یک سیستم برای حل یک کار جدید به مقدار زیادی از منابع نیاز دارد. این فرآیند بخشهای مرتبط یک مدل یادگیری ماشینی موجود را میگیرد و آن را برای حل یک مشکل جدید اما مشابه به کار میگیرد. بخش کلیدی یادگیری انتقالی، تعمیم است. این بدان معناست که تنها دانشی که می تواند توسط مدل دیگری در سناریوها یا شرایط مختلف استفاده شود منتقل می شود. به جای اینکه مدلها بهشدت به مجموعه دادههای آموزشی متصل شوند، مدلهای مورد استفاده در یادگیری انتقال تعمیمتر خواهند بود. مدل های توسعه یافته به این روش را می توان در شرایط متغیر و با مجموعه داده های مختلف مورد استفاده قرار داد.
به عنوان مثال استفاده از آموزش انتقال با دسته بندی تصاویر است. یک مدل یادگیری ماشینی را می توان با داده های برچسب گذاری شده برای شناسایی و دسته بندی موضوع تصاویر آموزش داد. سپس این مدل میتواند برای شناسایی موضوع خاص دیگر در مجموعهای از تصاویر از طریق یادگیری انتقال، سازگار شود و دوباره مورد استفاده قرار گیرد. عناصر کلی مدل ثابت خواهند ماند و باعث صرفه جویی در منابع می شود. این می تواند قسمت هایی از مدل باشد که لبه یک شی را در یک تصویر مشخص می کند. انتقال این دانش باعث صرفه جویی در آموزش مجدد یک مدل جدید برای رسیدن به همان نتیجه می شود.
به طور کلی از یادگیری انتقالی استفاده می شود:
برای صرفه جویی در زمان و منابع از آموزش چندین مدل یادگیری ماشینی از ابتدا برای انجام کارهای مشابه.
به عنوان یک صرفه جویی در کارایی در زمینه هایی از یادگیری ماشین که به منابع زیادی مانند دسته بندی تصویر یا پردازش زبان طبیعی نیاز دارند.
برای نفی کمبود دادههای آموزشی برچسبگذاری شده توسط یک سازمان، با استفاده از مدلهای از پیش آموزشدیده شده.
یادگیری انتقالی چگونه کار می کند؟
یادگیری انتقالی به این معناست که بخشهای مربوط به یک مدل یادگیری ماشینی از قبل آموزشدیده را در نظر بگیرید و آن را برای یک مشکل جدید اما مشابه به کار ببرید. این معمولاً اطلاعات اصلی برای عملکرد مدل خواهد بود، با جنبه های جدیدی که برای حل یک کار خاص به مدل اضافه می شود. برنامه نویسان باید شناسایی کنند که کدام بخش از مدل با کار جدید مرتبط است و کدام بخش باید دوباره آموزش ببیند. به عنوان مثال، یک مدل جدید ممکن است فرآیندهایی را حفظ کند که به ماشین اجازه می دهد اشیا یا داده ها را شناسایی کند، اما مدل را برای شناسایی یک شی خاص متفاوت دوباره آموزش دهد.
یک مدل یادگیری ماشینی که موضوع خاصی را در مجموعه ای از تصاویر شناسایی می کند، کاندیدای اصلی برای یادگیری انتقالی است. بخش عمده ای از مدل که با نحوه تشخیص موضوعات مختلف سروکار دارد را می توان نگه داشت. بخشی از الگوریتم که موضوع خاصی را برای دسته بندی برجسته می کند، عنصری است که دوباره آموزش داده می شود. در این مورد، نیازی به بازسازی و آموزش مجدد الگوریتم یادگیری ماشینی از ابتدا نیست.
در یادگیری ماشینی نظارت شده، مدلها برای تکمیل وظایف خاص از دادههای برچسبگذاری شده در طول فرآیند توسعه آموزش میبینند. ورودی و خروجی مورد نظر به وضوح نقشه برداری شده و به الگوریتم تغذیه می شود. سپس مدل می تواند روندهای آموخته شده و تشخیص الگو را در داده های جدید اعمال کند. مدلهای توسعهیافته به این روش هنگام حل وظایف در محیطی مشابه دادههای آموزشی آن بسیار دقیق خواهند بود. اگر شرایط یا محیط در کاربردهای دنیای واقعی فراتر از داده های آموزشی تغییر کند، دقت بسیار کمتری خواهد داشت. نیاز به یک مدل جدید مبتنی بر داده های آموزشی جدید ممکن است مورد نیاز باشد، حتی اگر وظایف مشابه باشند.
یادگیری انتقالی تکنیکی برای کمک به حل این مشکل است. به عنوان یک مفهوم، با انتقال هر چه بیشتر دانش از یک مدل موجود به یک مدل جدید طراحی شده برای یک کار مشابه کار می کند. به عنوان مثال، انتقال جنبه های کلی تر یک مدل که فرآیندهای اصلی برای تکمیل یک کار را تشکیل می دهد. این می تواند فرآیند شناسایی یا دسته بندی اشیاء یا تصاویر باشد. لایههای بیشتری از دانش خاصتر را میتوان به مدل جدید اضافه کرد و به آن اجازه میدهد تا وظایف خود را در محیطهای جدید انجام دهد.
مزایای یادگیری انتقالی در یادگیری ماشینی
یادگیری انتقال طیفی از مزایا را برای فرآیند توسعه مدلهای یادگیری ماشین به ارمغان میآورد. مزایای اصلی یادگیری انتقالی شامل صرفه جویی در منابع و بهبود کارایی در هنگام آموزش مدل های جدید است. همچنین زمانی که تنها مجموعه دادههای بدون برچسب در دسترس هستند، به مدلهای آموزشی کمک میکند، زیرا بخش عمده مدل از قبل آموزش داده شده است.
مزایای اصلی یادگیری انتقال برای یادگیری ماشین عبارتند از:
- حذف نیاز به مجموعه بزرگی از داده های آموزشی برچسب گذاری شده برای هر مدل جدید.
- بهبود کارایی توسعه و استقرار یادگیری ماشین برای چندین مدل.
- یک رویکرد کلی تر برای حل مسئله ماشین، استفاده از الگوریتم های مختلف برای حل چالش های جدید.
- مدل ها را می توان در شبیه سازی ها به جای محیط های واقعی آموزش داد.
- صرفه جویی در داده های آموزشی
برای آموزش دقیق الگوریتم یادگیری ماشین معمولاً به طیف وسیعی از داده ها نیاز است. ایجاد داده های آموزشی برچسب گذاری شده به زمان، تلاش و تخصص نیاز دارد. یادگیری انتقال دادههای آموزشی مورد نیاز برای مدلهای جدید یادگیری ماشین را کاهش میدهد، زیرا بیشتر مدل قبلاً آموزش داده شده است.
در بسیاری از موارد، مجموعه های بزرگی از داده های برچسب گذاری شده برای سازمان ها در دسترس نیستند. یادگیری انتقال به این معنی است که مدلها را میتوان بر روی مجموعه دادههای برچسبگذاریشده موجود آموزش داد، سپس روی دادههای مشابهی که برچسبگذاری نشدهاند اعمال کرد.
آموزش کارآمد چندین مدل
مدلهای یادگیری ماشینی که برای تکمیل کارهای پیچیده طراحی شدهاند، ممکن است زمان زیادی طول بکشد تا به درستی آموزش داده شوند. یادگیری انتقالی به این معنی است که سازمان ها مجبور نیستند هر بار که مدل مشابهی مورد نیاز است، از صفر شروع کنند. منابع و زمان صرف شده برای آموزش الگوریتم یادگیری ماشینی را می توان در مدل های مختلف به اشتراک گذاشت. کل فرآیند آموزش با استفاده مجدد از عناصر یک الگوریتم و انتقال دانش از قبل توسط یک مدل کارآمدتر می شود.
استفاده از دانش برای حل چالش های جدید
یادگیری ماشینی تحت نظارت امروزه یکی از محبوب ترین انواع یادگیری ماشینی است. این رویکرد الگوریتمهای بسیار دقیقی را ایجاد میکند که برای تکمیل وظایف خاص با استفاده از دادههای آموزشی برچسبگذاری شده آموزش دیدهاند. با این حال، زمانی که به کار گرفته شود، اگر داده ها یا محیط از داده های آموزشی دور شوند، عملکرد ممکن است آسیب ببیند. یادگیری انتقالی به این معنی است که دانش را می توان از مدل های موجود به جای شروع هر بار از صفر استفاده کرد.
یادگیری انتقال به توسعهدهندگان کمک میکند تا رویکردی ترکیبی از مدلهای مختلف برای تنظیم دقیق راهحلی برای یک مشکل خاص داشته باشند. به اشتراک گذاری دانش بین دو مدل مختلف می تواند منجر به مدلی بسیار دقیق تر و قدرتمندتر شود. این رویکرد به مدلهای ساختمانی به روشی تکراری اجازه میدهد.
آموزش شبیه سازی شده برای آماده شدن برای کارهای دنیای واقعی
یادگیری انتقالی عنصر کلیدی هر فرآیند یادگیری ماشینی است که شامل آموزش شبیه سازی شده است. برای مدلهایی که نیاز به آموزش در محیطها و سناریوهای واقعی دارند، شبیهسازی دیجیتال گزینهای کمهزینه یا وقتگیر است. شبیهسازیها را میتوان برای انعکاس محیطها و اقدامات واقعی ایجاد کرد. مدل ها را می توان برای تعامل با اشیاء در یک محیط شبیه سازی شده آموزش داد.
محیط های شبیه سازی شده به طور فزاینده ای برای تقویت مدل های یادگیری ماشین استفاده می شوند. در این حالت، مدل ها برای انجام وظایف در سناریوهای مختلف، در تعامل با اشیا و محیط ها آموزش می بینند. به عنوان مثال، شبیه سازی در حال حاضر یک گام کلیدی در توسعه سیستم های خودران برای اتومبیل ها است. آموزش اولیه یک مدل در یک محیط دنیای واقعی می تواند خطرناک و زمان بر باشد. بخشهای تعمیمیافتهتر مدل را میتوان با استفاده از شبیهسازیها قبل از انتقال به یک مدل برای آموزش در دنیای واقعی ساخت.
نمونه هایی از یادگیری انتقالی برای یادگیری ماشین
اگرچه یک تکنیک نوظهور است، اما یادگیری انتقالی در حال حاضر در طیف وسیعی از زمینه ها در یادگیری ماشین استفاده می شود. چه تقویت پردازش زبان طبیعی و چه بینایی کامپیوتری، یادگیری انتقالی در حال حاضر طیف وسیعی از استفاده در دنیای واقعی را دارد.
نمونه هایی از حوزه های یادگیری ماشینی که از یادگیری انتقالی استفاده می کنند عبارتند از:
- پردازش زبان طبیعی
- بینایی کامپیوتر
- شبکه های عصبی
یادگیری انتقالی در پردازش زبان طبیعی
پردازش زبان طبیعی توانایی یک سیستم برای درک و تجزیه و تحلیل زبان انسان، چه از طریق فایل های صوتی یا متنی است. این بخش مهمی از بهبود نحوه تعامل انسان و سیستم است. پردازش زبان طبیعی برای سرویسهای روزمره مانند دستیارهای صوتی، نرمافزار تشخیص گفتار، زیرنویسهای خودکار، ترجمهها و ابزارهای زمینهسازی زبان، ذاتی است.
یادگیری انتقالی به روشهای مختلفی برای تقویت مدلهای یادگیری ماشینی که با پردازش زبان طبیعی سروکار دارند، استفاده میشود. مثالها شامل آموزش همزمان مدلی برای تشخیص عناصر مختلف زبان، یا تعبیه لایههای از پیش آموزشدیدهای است که گویشها یا واژگان خاصی را درک میکنند.
همچنین میتوان از یادگیری انتقالی برای تطبیق مدلها در زبانهای مختلف استفاده کرد. جنبههای مدلهای آموزشدیده و اصلاحشده بر اساس زبان انگلیسی را میتوان برای زبانها یا کارهای مشابه تطبیق داد. منابع دیجیتالی زبان انگلیسی بسیار متداول هستند، بنابراین مدل ها را می توان قبل از انتقال عناصر به مدل برای یک زبان جدید، بر روی یک مجموعه داده بزرگ آموزش داد.
یادگیری انتقالی در بینایی کامپیوتر
بینایی کامپیوتری توانایی سیستم ها برای درک و دریافت معنا از قالب های بصری مانند فیلم ها یا تصاویر است. الگوریتمهای یادگیری ماشینی روی مجموعههای عظیمی از تصاویر آموزش داده میشوند تا بتوانند موضوعات تصویر را تشخیص داده و دستهبندی کنند. یادگیری انتقالی در این مورد جنبههای قابل استفاده مجدد یک الگوریتم بینایی کامپیوتری را میگیرد و آن را در یک مدل جدید اعمال میکند.
یادگیری انتقال میتواند مدلهای دقیق تولید شده از مجموعه دادههای آموزشی بزرگ را بگیرد و به اعمال آن در مجموعههای کوچکتر از تصاویر کمک کند. این شامل انتقال جنبه های کلی تر مدل، مانند فرآیند شناسایی لبه های اشیاء در تصاویر است. لایه خاص تر مدل که با شناسایی انواع اشیاء یا اشکال سروکار دارد، می تواند آموزش داده شود. پارامترهای مدل نیاز به اصلاح و بهینه سازی دارند، اما عملکرد اصلی مدل از طریق یادگیری انتقالی تنظیم می شود.
یادگیری انتقالی در شبکه های عصبی
شبکه های عصبی مصنوعی جنبه مهمی از یادگیری عمیق هستند، حوزه ای از یادگیری ماشینی که تلاش می کند عملکردهای مغز انسان را شبیه سازی و تکرار کند. آموزش شبکه های عصبی به دلیل پیچیدگی مدل ها، منابع عظیمی را می طلبد. یادگیری انتقالی برای کارآمدتر کردن فرآیند و کاهش تقاضای منابع استفاده می شود.
هر دانش یا ویژگی قابل انتقالی را می توان بین شبکه ها جابه جا کرد تا توسعه مدل های جدید ساده شود. کاربرد دانش در وظایف یا محیط های مختلف بخش مهمی از ساخت چنین شبکه ای است. یادگیری انتقالی معمولاً به فرآیندها یا وظایف عمومی محدود می شود که در محیط های مختلف قابل اجرا می مانند.
آینده یادگیری انتقالی
آینده یادگیری ماشین به دسترسی گسترده سازمان ها و مشاغل مختلف به مدل های قدرتمند متکی است. برای ایجاد انقلاب در کسب و کارها و فرآیندها، یادگیری ماشینی باید در دسترس و سازگار با نیازها و الزامات محلی سازمان باشد. فقط تعداد کمی از سازمان ها در واقع تخصص یا منابع لازم برای برچسب گذاری داده ها و آموزش یک مدل را خواهند داشت.
مشکل اصلی در به دست آوردن حجم زیادی از داده های برچسب گذاری شده برای فرآیند یادگیری ماشینی نظارت شده است. فرآیند برچسبگذاری دادهها، بهویژه روی آرایههای بزرگی از دادهها، میتواند بسیار کار بر باشد. نیاز به داده های بزرگ برچسب گذاری شده برای توسعه گسترده قدرتمندترین مدل ها بازدارنده است.
احتمالاً الگوریتمها بهطور مرکزی توسط سازمانهایی با دسترسی و منابع به مجموعه عظیمی از دادههای برچسبگذاریشده مورد نیاز توسعه مییابند. اما زمانی که این مدلها توسط سازمانهای دیگر مستقر میشوند، عملکرد میتواند تحتتاثیر قرار گیرد زیرا هر محیط ممکن است کمی با محیطی که مدل برای آن آموزش داده شده متفاوت باشد. در عمل، عملکرد ممکن است تحت تأثیر استقرار حتی بسیار دقیق ترین مدل ها قرار گیرد. این ممکن است مانعی برای محصولات و راه حل های یادگیری ماشینی باشد که به سمت استفاده اصلی می روند.
یادگیری انتقالی نقش کلیدی در حل این موضوع خواهد داشت. تکنیکهای یادگیری انتقالی به این معنی است که مدلهای یادگیری ماشین قدرتمند توسعهیافته در مقیاس میتوانند برای وظایف و محیطهای خاص سازگار شوند. یادگیری انتقالی یک محرک کلیدی برای توزیع مدل های یادگیری ماشین در مناطق و صنایع جدید خواهد بود.
تیم یادگیری ماشین در مجموعه آپکدرز آمادگی کامل برای آموزش شبکه های عصبی مصنوعی و اعمال مدل های یادگیری انتقالی مبتنی بر آن ها را در حوزه های مختلف دارند.