شبکههای پیچشی یا ترنسفورمر؟
همانطور که قبلا بارها در همین کانال گفتیم و تاکید کردیم، نحوه تصمیمگیری و رفتار یک شبکه عصبی تحت تاثیری سوگیری القایی (inductive bias) است و معماریش بر اون بنا شده. در کمتر از یک سال اخیر مدلهای تصویری ترنسفورمری متنوع منتشر شدهاند که رقیب مدلهای cnn ای محسوب میشوند. هر یک از این دو دسته مدلها در تسکها و دیتاستهای مختلف امتیازهای مختلفی رو نسبت به هم گرفتهاند و گاه برتری با cnn بوده و گاه با ترنسفورمر. واضحه که صرف مقایسه بر اساس یک امتیاز دقت نمیتونه معنای زیادی برای تحلیل این دو معماری با سوگیریهای القایی متفاوت باشه. در پست فعلی، براتون مقالهای رو آوردیم (مال همین سه روز پیشه) که سعی کرده به جای موندن در بررسی عدد ارور به عمق ماجرا بره و سعی کنه با تحلیل الگو و سازگاری خطا، مدلهای cnn و ترنسفورمری اون ها رو با هم مقایسه کنه. حالا اینی که گفتیم یعنی چی؟
یک نظری که در مورد cnnها وجود داره اینه که اونها برای تشخیص یک تصویر (برای مثال دستهبندیش) به جای توجه به شکل (shape) اون به بافت (texture) توجه میکنند. این مقاله هم این فرض رو پایه خودش قرار داده و سعی کرده با این فرض جلو بره و ببینه که آیا میتونه نشانهای از برتری ترنسفورمرها و یا cnnها نسبت به هم دیگه پیدا کنه. علاوه بر این، سعی کرده تا معیارهای سازگاری خطا رو هم به بازی اضافه کنه و از اونها کمک بگیره (سازگاری خطا به این مفهومه که چه قدر رفتار اشتباه معقول و مورد انتظاره، فرض کنید مدل پایهای دارید که دقتش ۹۰ درصده و یک درصد گربهها رو به اشتباه سگ تشخیص میده بعد میاید این رو روی یک دیتاست فاین تیون میکنید دقت مدل میشه ۹۸ درصد ولی حالا بیست درصد گربهها رو سگ تشخیص میده، این ناسازگاری خطا بین حالت اول و دوم نشون میده که رفتار این مدل معقول نیست و یک چیزی رو داره از دادگان یاد میگیره که احتمالا میلنگه!)
با توجه به نکات مذکور این مقاله اومده آزمایشهای متنوعی رو برای بررسی تفاوتهای ترنسفورمرها و cnnها طراحی کرده و نتایجشون رو به دست آورده. برای مثال در یک آزمایش (شکل ۵) اومده از دیتاست SIN استفاده کرده. این دیتاست حاوی تصاویریه که بافت و شکلشون با هم نمیخونه (یعنی فرض کنید شکل گربهست ولی بافتش چوبه. به شکل ۱ دقت کنید) سپس مقاله میاد هر کدوم از این تصاویر عجیب غریب رو به مدل ورودی میده و از مدل میخواد پیش بینی کنه که این تصویر چیه؟ (فرض کنید تصویر شکل گربه با بافت چوب یا بالعکس رو میده به مدل، ممکنه مدل بگه این گربه است ممکنه بگه این چوبه یا اصلا ممکنه بگه این قالب صابونه)!
سپس میاد برای هر مدل تصویری، تعداد باری رو که مدل شکل یک تصویر رو درست تشخیص میده (به تصویری که شکلش گربه است میگه که گربهست) تقسیم میکنه به تعداد باری که مدل شکل یا بافت تصویر رو تشخیص میده (به تصویری که شکل یا بافتش گربه است میگه گربه است) و همون طور که در شکل پیوست نگاه میکنید این میزان برای شبکههای ترنسفورمری به عملکرد انسانی روی دسته کلاسهای مختلف نزدیکتر بوده. به معنای بهتر یک انسان در ۱۰۰ درصد مواقعی که یک موتور رو تشخیص میده شکل اون رو تشخیص میده و نه بافتش؛ ولی resnet هنگامی که یک تصویری رو موتور تشخیص میده، هفتاد درصد احتمال داره بافتش موتور بوده باشه و تنها سی درصد مواقع شکلش موتور بوده
در آزمایش دیگهای (شکل ۴) اومده برای هر مدل میزان ناسازگاری خطا بین خطای روی دیتاست عادی و خطای روی دیتاست مریضی مثل SIN رو حساب کرده و نشون داده که مدلهای ترنسفورمری از تناقض کمتری رنج میبرند تا مدلهای cnn ای! در کل در پایان این جوری نتیجهگیری کرده که مدلهای ترنسفورمری نسبت به مدلهای cnnای در ترید آف بین شکل/بافت بیشتر به شکل توجه میکنند (به خاطر سوگیری القایی که میتونند به هر جای تصویر اتنشن بزنند! مقایسه کنید با cnnای که مجبوره به ویژگیهای مجاورتی تکیه کنه) و بیشتر به کار ما انسانها میاد.
مقاله زیبایه، اگر فرصت کردید بخونید، ضرر نمیکنید.
لینک مقاله:
https://arxiv.org/abs/2105.07197
#read
#paper
@nlp_stuff
Post #171
1.57K