آموزش شبکه های عصبی عمیق با داده های اندک

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

در نتیجه، یک روش معمول استفاده مجدد از ویژگی های استخراج شده در شبکه های کانولوشن است ( به عنوان مثال ResNet و VGG که در مجموعه داده های آموزش دارای برچسب در مقیاس بزرگ آموزش دیده اند  ( برای به دست آوردن حداکثر دقت، این شبکه ها اغلب باید با داده های اختصاصی متناسب با موضوع مورد نظر تحت آموزش اختصاصی قرار گیرند و با وظیفه جدید وفق داده شوند.

در بسیاری از مواقع، داده های آموزشی برای وفق دادن ویژگی های عمومی با یک کار مشخص کافی نیست. به عنوان مثال، در موضوع های پیش بینی بدون داده آموزشی و یا با داده های آموزشی اندک، کمبود داده های آموزش ما را به استفاده از  همان شبکه های استخراج ویژگی عمومی مجبور می کند.

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

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

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

همانطور که در شکل ۱ نشان داده شده است تحول ویژگی با یک یادگیرنده فراگیر، که پارامترهای لایه های استخراج ویژگی را در زیرشبکه طبقه بندی کننده تولید می کند، انجام می شود. با استفاده از این ایده، می توانیم یک طبقه بندی کننده باینری ساده اتخاذ کنیم تا یک مرز خطی مستقل از کار را یاد بگیریم که می تواند مثال های مثبت و منفی را از هم جدا کند و به کارهای جدید تعمیم دهد.

تحول ویژگی در شبکه عصبی
شکل۱ : یک تصور از ایده شبکه استخراج ویژگی آگاهانه ی پویا. در این نمونه دو وظیفه وجود دارد، وجود گربهریال و وجود سگ. ایده شبکه استخراج ویژگی آگاهانه ی پویا به این معنی است یک تصویر برای وظایف مختلف ویژگی های متفاوتی را دارد.
معماری شبکه استخراج ویژگی آگاهانه پویا
شکل ۲ : طراحی معماری شبکه استخراج ویژگی آگاهانه ی پویا را نشان می دهد. شبکه استخراج ویژگی آگاهانه ی پویا یک یادگیرنده فراگیر دارد که پارامتر های لایه های انتقال ویژگی های های عام را به TAFE تولید می کند. وزن های تولید شده به دو دسته تقسیم می شوند. دسته نخست وزن هایی با بعد کم که بر ای هر وظیفه اختصاصی است و دسته دوم وزن هایی با بعد زیاد که میان همه وظایف مشترک است. یک طبقه بند مشترک بری همه وظایف در نظر گرفته شده است که ورودی آن TAFE است.

استخراج ویژگی مبتنی بر وظیفه

استخراج ویژگی ها، عناصر اساسی ساخت بسیاری از برنامه ها در بینایی رایانه است. در این کار، ما استخراج ویژگی های آگاهانه مبتنی بر وظیفه ( TAFEs ) را معرفی می کنیم، نوعی ارائه ویژگی های پویا تصویر که با کار تعیین شده سازگار است. نشان می دهیم که این بازنمایی ویژگی های پویایی در یادگیری با صفرداده آموزشی، یادگیری با چند داده آموزشی و تشخیص جفت شی-توصیف کننده موثر است.

مدل TAFE-Net

همان گونه که در شکل ۲ نشان داده شده است دو زیرشبکه وجود دارد. یادگیرنده فراگیر مبتنی بروظیفه ی G و شبکه پیش بینی F. یادگیرنده فراگیر یک توصیف از وظیفه t∈T را می پذیرد و وزن های لایه ویژگی را در شبکه ی پیش بینی تولید می کند. برای یک تصویر ورودی  x شبکه پیش بینی به این صورت عمل می کند:

f(x;θt) = y

یک برچسب y تولید می کند که نشان می دهد که آیا تصویر ورودی x با وظیفه t همخوانی دارد یا خیر. ما از یک شبکه استخراج کننده از پیش آموزش داده شده بر روی مجموعه داده ImageNet که پارامتر های آن ثابت اند و قابل آموزش نیستند، برای تولید ویژگی های عام تصویر ورودی استفاده می کنیم و آن ها را به عنوان ورودی لایه های ویژگی پویا که پارامتر های آن با θt نمایش داده می شود و توسط شبکه  G(t) تولید شده اند، ارسال می شوند. خروجی این شبکه پویا استخراج ویژگی آگاهانه یی مبتنی بر وظیف (TAFE) نامیده می شود. پس خروجی این شبکه پویا برای یک تصویر واحد برای وظایف مختلف متفاوت است. توصیف گر وظیفه t پارامتر های لایه های شبکه F را کنترل می کند و اطلاعات وظیفه تعیین شده را به استخراج کننده ویژگی تزریق می کند.

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

یادگیرنده فراگیر G که با Ƞ پارامتریزه می شود از دو بخش تشکیل شده است نخست یک شبکه استخراج ویژگی T(t) که وظیفه  et را تولید می کند و دوم یک تولید کنند وزن که پارامتر های لایه k را در شبکه پویا تحت وظیفه et تولید می کند.

تولید وزن

در این بخش قصد داریم فرایند تولی وزن را در F توضیح دهیم. لایه های ویژگی که استخراج ویژگی آگاهانه (TAFE) را می سازند میتوانند لایه های کانولوشنی یا لایه های تمام متصل باشند. برای تولید وزن های لایه ویژگی، خروجی ما باید به اندازه ابعاد gi باشد تا وزن ها با لایه ویژگی سنخیت داشته باشند. تعداد وزن مورد نیاز برای برآورد فرا یادگیرنده اغلب بسیار بیشتر از تعداد توصیف های وظایف است. بنابراین، یادگیری تولید وزن از تعداد کمی از وظایف ممکن نیست .علاوه بر این، پارامتر سازی تولیدکننده های وزن می تواند مقدار زیادی حافظه مصرف کنند، که باعث می شود آموزش پر هزینه و حتی غیر ممکن باشد.

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

فاکتوریزه کردن وزن برای کانولوشن: خروجی یک لایه کانولوشن برای ورودی x بصورت زیر خواهد بود.

xi+1 = Wi * xi + bi

که * نشان دهنده کانولوشن، Wi وزن لایه i و xi ورودی لایه i و bi بایاس لایه i است. با تقریب خوبی ما بایاس را حذف می کنیم. پس خروجی تولید کننده وزن i را بصورت زیر می نویسیم.

Wi = Wis *cout Wi

Wis پارامتر مشترک برای تمامی وظایف، Wt پارامتر مخصوص وظیفه ورودی t و cout* نشان دهنده کانولوشن گروهی مطابق با ابعاد خروجی است. با این تئوری ابعاد تولید کننده وزن i از k × k × cin × cout به cout کاهش می یابد.

فاکتوریزه کردن وزن برای لایه های تمام متصل: مشابه حالت کانولوشنی برای وزن های لایه تمام متصل i می توان نوشت

Wi = Wis . diag(Wit)

Wis پارامتر های مشترک برای تمامی وظایف و Wit پارامتر مخصوص وظیفه t است.

خطا یادگیرنده فراگیر

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

فرمول شبکه عصبی عمیق

که در آن

فرمول شبکه عصبی عمیق 2

کاربرد ها

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

یادگیری بدون داده آموزش : در این حوزه مجموعه کلاس هایی که در طول آموزش دیده می شوند از کلاس های مورد ارزیابی مجزا هستند. در مجموعه داده های CUB و AWA که این پژوهش مورد آزمایش روی این داده ها قرار گرفته است، هر تصویر با یک بردار ویژگی بصورت لغوی توصیف شده است که این بردار به عنوان وظیفه مورد نظر در نظر گرفته می شود.

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

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

ساختار شبکه

شبکه استخراج ویژ گی از وظیفه، یک شبکه تمام متصل ۳ لایه با ۲۰۴۸ نرون مخفی است. در مجموعه دادهaPY، برای جلو گیری از بیش برازش شبکه را ۲ لایه ای با ۲۰۴۸ نرون مخفی در هر لایه در نظر گرفتیم. شبکه تولید وزن را یک شبکه تک لایه با ابعاد خروجی به اندازه وزن های شبکه پ.ویا F که باید تولید شوند، انتخاب کردیم. شبکه پویا  TAFE نیز ۳ لایه با ۲۰۴۸ نرون مخفی در هر لایه در نظر گرفتیم. برای استخراج ویژگی از تصویر نیز ساختار های مختلف ResNet-101, VGG-16, VGG-19 , .. انتخاب کردیم.

ارزیابی

ارزیابی آموزش بدون داده آموزشی: در این کاربرد هدف طراحی یک طبقه بندی است که کلاس هایی را که در فرآیند آموزش دخیل نبوده اند را یاد بگیرد. برای این منظور از مجموعه داده های SUN,CUB,AWA استفاده شده است و همان گونه که پیش تر توضیح داده شد از کلماتی که هر تصویر را توصیف می کنند به عنوان وظیفه استفاده شد. در جدول۱ میتوانید مشخصات کامل مجموعه داده و اینکه چه تعداد از کلاس ها در فرآیند آموزش دخیل بودند را ببینید.

مجموعه داده SUN : مجموعه داده حاوی تصاویر مختلف که پیکسل ها آن برای نواحی مختلف برچسب گذاری شده اند.

تصاویر مجموعه داده sun
شکل ۳ : تصاویر از مجموعه داده SUN

مجموعه داده CUB : مجموعه داده ای حاوی تصاویر پرندگان مختلف که پیکسل های ها برپسب گذاری شده اند.هم چنین هر تصویر با چند گلمه نیز توصیف شده است

تصاویر مجموعه داده CUB
شکل ۴ : تصاویر مجموعه داده CUB

AWA1,AWA2 : مجموعه داده ای از تصاویر حیوانات مختلف که با شش کلمه یا ویژگی توصیف شده اند.

تصاویر مجموعه داده AWA
شکل ۵ : تصاویر مجموعه داده AWA1

aPY : مجموعه داده ای شامل تصاویری از سه کلاس اصلی حیوانات، اشیا و وسایل نقلیه که هر کلاس شامل زیر کلاس هایی است. هر تصویر با چند ویژگی توصیف شده است.

تصاویر مجموعه داده AWA
شکل ۶ : تصاویر مجموعه داده AWA
مقایسه مجموعه داده های تصاویر
جدول ۱: مشخصات مجموعه داده ها در آموزش برای یادگیری بدون داده آموزشی

نتایج ارزیابی این روش و مقایسه با سایر روش ها را می توانید در جدول دو ملاحظه کنید.

جدول مقایسه آموزش مجموعه تصاویر به شبکه های عصبی
جدول ۲ : رنگ قرمز نشان دهنده بهترین نتیجه و رنگ آبی نشان دهنده آخرین دقت گزارش شده است.

در تصویر ۷ بصورت بصری نشان داده شده است که یک تصویر برای وظایف مختلف ویژگی های متفاوتی را از خود نشان می دهد.

ویژگی های مختلف تحت تاثیر شبکه عصبی
تصویر۷ : ویژگی های مختلف تحت تاثیر تغییر وظیفه از یک تصویر یکسان

ارزیابی با کاربرد توصیف تصویر: هدف از این کاربرد طراحی یک شبکه است که ویژگی های یک تصویر که دارای برچسبی ناآشنا برای طبقه بند است را بیان کند. چالش این کاربرد از کاربرد یادگیری کلاس جدید بدون داده آموزشی بیشتر خواهد بود. برای ارزیابی این کاربرد از مجموعه داده های MITStates, StanfordVRD   استفاده شده است.

مجموعه داده MITStates: مجموعه تصاویری از ۲۴۵ شی که با یکی یا چند ویژگی توصیف شده اند. مجموع توصیف ها ۱۱۵ عدد است و مجموعه داده دارای ۵۳۰۰۰ تصویر است.در فرآیند آموزش از ۳۴۰۰۰ تصویر و ۱۹۹۲ ویژگی استفاده شد و در فرایند تست با۱۹۰۰ هزار تصویر و ۷۰۰ توصیف ارزیابی شد.

مجموعه داده StanfordVRD : شامل ۷۷۰۱ تصویر از ۱۰۰ کلاس مختلف که هر تصویر با یک سه گانه ی موضوع، پیش بینی و شی توصیف شده است.تعداد ۱۰۲۹ تصویر در فرایند آموزش دخیل بودند.

نتایج ارزیابی برای این کاربرد در جدول۳ قابل مشاهده است. نتیجه بصورت  top-k ارائه شده است به این معنی که پیش بینی صحیح جزو k حدس اول شبکه بوده است.

نتایج ارزیابی کاربرد توصیف تصویر
جدول ۳ : نتایج ارزیابی کاربرد توصیف تصویر

کاربرد طبقه بندی با داده اندک: برای ارزیابی این کاربرد از مجموعه داده ImageNet که به دودسته کلاس های پایه و کلاس های جدید تقسیم شده است استفاده شد. هدف یادگیری کلاس های جدید با داده اندک بدون کاهش دقت روی کلاس های پایه است. نتایج برای آموزش با یک و دو تصویر آموزشی از کلاس های جدید در جدول ۴ قابل مشاهده است.

نتایج آموزش با داده های اندک
جدول ۴ : نتایج آموزش با داده های اندک

نتیجه گیری

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

بیشتر بخوانید :

منبع TAFE-Net: Task-Aware Feature Embeddings for Low Shot Learning

درباره‌ی رضا حاجی محمدی

همچنین ببینید

شبکه های بازگشتی

آشنایی با شبکه های عصبی بازگشتی (RNNs)

این مقاله به طور کامل شبکه های بازگشتی ، نحوه عملکرد حافظه آن ها و …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *