Abbas Nosrat
Abbas Nosrat
خواندن ۳ دقیقه·۲ سال پیش

Layer-Wise Contrastive Unsupervised Representation Learning

آموزش شبکه های عصبی و مدل های یادگیری عمیق عموما به صورت Supervised انجام می شود. بدین صورت که یک ورودی و یک برچسب متناظر با آن ورودی وجود دارد و مدل یاد می گیرد تا به ویژگی هایی دست یابد که با دریافت تصویر ورودی، به برچسب خروجی دست یابد. اما برچسب گذاری بر داده، کار هزینه بری است و در بسیاری از موارد، ممکن نیست. این مشکل، سبب روی آوردن به روش های Unsupervised، Semi-supervised و self-supervised در سال های اخیر شده است. یکی از پر طرفدارترین روش های یادگیری نوین، Contrastive learning است. در این روش از توابع هزینه ای چون Triplet loss، Contrastive loss یا center loss استفاده می شود. با استفاده از این توابع، تلاش می شود تا شبکه تشابهات و تفاوت های موجود بین تصاویر را، فارق از برچسب آنها، یاد بگیرد و به درک کلی تری از داده برسد. با بهینه سازی این توابع، فاصله بین تصاویر مشابه کمینه، و فاصله بین تصاویر متفاوت، بیشینه می شود. در مقالات Contrastive Unsupervised Representation Learning، ابتدا هر تصویر ورودی را از چند اختلال متفاوت مانند کراپ کردن، چرخش یا اختلال در رنگ عبور می دهند. سپس تصاویر مختل شده را مشابه و سایر تصاویر را متفاوت برچسب می زنند و به شبکه می دهند تا روی آن ها آموزش ببیند. نشان داده شده است که ویژگی های بدست آمده از این روش یادگیری، می تواند بهتر از ویژگی های حاصل از مدل های از قبل آموزش دیده شده روی داده های دیگر همچون ImageNet باشد. این روش یادگیری، موجب می شود که مدل بتواند اجسام را حتی با دیدی ناقص و مختل، تشخیص دهد چرا که مدل به درکی بالا و کلی از داده رسیده است. این مقاله، تلاش کرده تا یادگیری کانترستیو را به صورت لایه لایه انجام دهد و ادعا می کند که آموزش لایه لایه، سریعتر از یادگیری کلی(end to end) است.

روش یادگیری در این مقاله بدین صورت است که ابتدا پچ های کوچک متوالی از یک تصویر را بر می دارند و به فیلتر کانولوشنال می دهند. پس از این فیلتر از یک max pool استفاده کرده و سپس، خروجی را به یک Triplet loss می دهند.( پچ های گرفته شده از تصویر می توانند با هم هم پوشانی داشته باشند) این روش مانند این است که یک تصویر بزرگ به یک لایه کانولوشنال داده شده و آن لایه با یک طول گامی در طی تصویر حرکت کرده و در تصویر کانوالو می شود. استفاده از لایه max pool بدلیل مقاومت به ویژگی های جزیی تصویر برای لایه های اولیه که ویژگی های کلی مانند لبه ها را تشخیص می دهند الزامی است. به بیانی دیگر استفاده از لایه مکس پول، به domain agnosticism شبکه کمک می کند.

نویسندگان مقاله، روش خود را بر داده CIFAR100 آموزش دادند و مشاهده می شود که فیلتر لایه های اولیه مانند روش supervised آموزش دیده شده است. پس از آموزش، شبکه را به صورت transfer learning بر داده CIFAR10 آزموده اند. این ازمایش به دو صورت انجام شده. ابتدا وزن های قسمت transfer شده منجمد است. در مرحله بعد، وزن ها روی داده CIFAR10 fine tune می شوند. مشاهده می شود که وزن های فاین تیون شده از شبکه آموزش داده شده از صفر بهتر عمل می کنند. در حالت منجمد، مقایسه با شبکه ای صورت گرفت که به صورت supervised روی CIFAR100 آموزش داده شده است، صورت گرفت. مشاهده می شود که شبکه supervised عملکرد بهتری نسبت به شبکه unsupervised دارد. دلیل این عملکرد بهتر آن است که CIFAR 10و 100، ویژگی های مشترک بسیاری دارند.

شبکه‌های عصبییادگیری عمیقcontrastive unsupervised representationunsupervised representation learningآموزش
شاید از این پست‌ها خوشتان بیاید