کنکاشی عمیق در OpenAI CLIP با نورون‌های چندوجهی

شکل ۱: مدل الکتریکی نورون‌ها منتشر‌شده در towardsdatascience به تاریخ ۱۳ مارس ۲۰۲۱ لینک منبع A Deep Dive into OpenAI CLIP with Multimodal neuronsچند ماه پیش، OpenAI، CLIP را منتشر کرد که یک شبکه عصبی مبتنی بر تبدیل است که از Contrastive Language–Image Pre-training برای طبقه‌بندی تصاویر استفاده می‌کند. عملکردCLIP بسیار چشمگیر بود، زیرا از یک رویکرد غیرمعمول استفاده می‌کرد که هم متن و هم تصاویر را به عنوان ورودی برای طبقه‌بندی تصاویر ترکیب می‌کرد. معمولا، تنها یک مقاله وجود دارد که در مورد عملکرد هنر جدید به خود می‌بالد که برخی از امتیازات واقعا بالا را بایگانی می‌کند و آن همین مقاله است. بهترین چیز در مورد CLIP این است که چند روز پیش، مقاله کوچک دیگری منتشر شد تا قابلیت تفسیر CLIP را بررسی کند.مقاله ما تقریبا یک دهه تحقیق برای تفسیر شبکه‌های کانولوشن ایجاد می‌کند، که با مشاهده این آغاز می‌شود که بسیاری از این تکنیک‌های کلاسیک به طور مستقیم برای CLIP قابل‌اجرا هستند. ما از دو ابزار برای درک فعالیت‌های مدل استفاده می‌کنیم: تصویرسازی ویژگی، که شلیک نورون را با انجام بهینه‌سازی گرادیان محور بر روی ورودی به حداکثر می‌رساند، و نمونه‌های پایگاه‌داده، که به توزیع تصاویر فعال‌کننده بیشینه برای یک نورون از یک مجموعه داده نگاه می‌کند.منبع: OpenAIاین مقاله بسیار جالب است زیرا اطلاعات مفید زیادی را آشکار می‌کند که به توضیح این که چرا CLIP بسیار خوب عمل می‌کند کمک می‌کند. من شخصا به موضوع قابلیت تفسیر شبکه عصبی علاقمندم، تنها به این دلیل که به تازگی متوجه شدم که انتشار یک مدل AI واقعی در تولید بسیار حیاتی است.نویسندگان CLIP با استفاده از تجسم ویژگی (که من در یک بیت به آن خواهم رسید) شروع به بررسی مدل در دو سطح کردند. اولی یک سطح نورون است، بنابراین آن‌ها چند تصویر مشابه را در شبکه عبور می‌دهند و بررسی می‌کنند که آیا همان نورون با مقدار مشابهی فعال می‌شود یا خیر. این بسیار جالب است چون برای مثال اگر شبکه‌ای دارید که حیوانات را طبقه‌بندی می‌کند، تصور کنید که یک «نورون سگ»، یا یک «نورون گربه» دارید. همچنین، اگر شبکه شما در طبقه‌بندی یک حیوان خاص پس از انجام این آنالیز موفق نباشد، خواهید دانست که به کجا نگاه کنید!صحبت‌های زیادی در این مورد وجود دارد و حوزه‌های زیادی وجود دارند که من فکر می‌کنم این مقاله در مورد آن‌ها صحبت می‌کند. یکی از جالب‌ترین چیزها در واقع نگاه کردن به نقشه‌های فعال‌سازی است، من نمی‌توانم آن‌ها را در اینجا به دلیل مسائل صدور مجوز قرار دهم، اما من از شما می‌خواهم که نگاهی به آنها بیاندازید. حوزه جالب دیگر (که من می‌خواهم در اینجا پوشش دهم) جنبه تفسیر‌پذیری شبکه‌های عصبی مبتنی بر تصویر است و این که آن‌ها واقعا چه مزایایی از تجزیه و تحلیل خود به دست آورده‌اند.مطالعه مقاله آیا هوش مصنوعی می‌تواند احساسات داشته باشد؟ توصیه می‌شود.تجسم ویژگی‌هابنابراین من معمولا روی جنبه «اخبار» چیزهایی تمرکز می‌کنم که مهم‌ترین نتیجه مقاله من خلاصه کردن انتشار اخیر یک مدل است. با این حال، می‌خواهم توضیح دهم که چگونه رایج‌ترین تکنیک‌های تفسیرپذیری مدل در اینجا به طور کلی قبل از صحبت در مورد CLIP کار می‌کنند. من فکر می‌کنم که این برای خواننده بسیار مفید خواهد بود زیرا یک توضیح خاص CLIP نخواهد بود (و بنابراین می‌توان آن را برای مدل‌های دیگر نیز به کار برد). اگر علاقه‌مند نیستید، می‌توانید از این بخش «تجسم ویژگی» صرف‌نظر کنید.اولین گام در تفسیر سیستم پیاده‌سازی سه روش زیر از ادبیات موضوع بود. اگرچه حوزه تفسیر شبکه عصبی یک توسعه نسبتا جدید است، این روش‌ها در طیف وسیعی از مشکلات موفق بوده‌اند.۱. نقشه‌های برجستگی کلاساین روش تفسیر مدل شامل رتبه‌بندی پیکسل‌های یک تصویر با توجه به تاثیر آن‌ها بر امتیاز کلاس به‌دست‌آمده توسط آن تصویر می‌باشد. ابتدا یک مثال ساده شده را با استفاده از یک مدل خطی در نظر می‌گیریم. برای یک تصویر Vectorشده I و یک کلاس c، با در نظر گرفتن مشتق، می‌توانیم ببینیم که اهمیت پیکسل‌های تصویرI توسط مولفه‌های بردار وزنwc داده شده است. در اینجا ما ایده کلیدی در این روش را مشاهده می‌کنیم. بزرگی مقادیر وزن نشان می‌دهد که کدام پیکسل‌ها در تصویر باید بیش‌ترین تغییر را داشته باشند تا امتیاز کلاس افزایش یابد.با این حال، ما در واقع از یک سیستم خطی برای پیش‌بینی خود استفاده نمی‌کنیم. در واقع، تابع به کار رفته توسط سی‌ان‌ان بسیار غیر‌خطی است و بنابراین ما باید از بسط تیلور درجه یک برای تقریب تابع امتیاز در همسایگی تصویر استفاده کنیم.با توجه به تصویر I با m ردیف و n ستون، ما ابتدا تصویر را به خاکستری تبدیل می‌کنیم به طوری که هر پیکسل تنها یک مقدار داشته باشد. ماتریس وزن w (که با اجرای یک عبور از انتشار عقب پیدا می‌شود) همچنین دارای ابعاد m به n است. برای هر پیکسل (i، j) در تصویر I، نقشه برجستگی کلاس M Rm * n به صورت زیر تعریف می‌شود:i، j = | wi، j |این روش به طور قابل‌توجهی سریع‌تر از دو روش ذکر شده در زیر است زیرا تنها یک عبور از پس انتشار مورد نیاز است.۲. تولید تصویر کلاس خاصهدف این روش تولید تصویری است که «نماینده کلاس» با توجه به امتیازات ایجاد شده توسط مدل باشد. تصویر ایجاد شده تصویرI است که امتیاز Sc (I) را برای یک کلاس c معین به حداکثر می‌رساند.این تصویر نیز با توجه به نرمL2 منظم شده است. این تصویرI با استفاده از پس انتشار، به شیوه‌ای مشابه با زمان آموزش مدل پیدا می‌شود. تفاوت کلیدی این است که در حال حاضر، به جای نگه داشتن همان ورودی‌ها و بهینه‌سازی وزن‌ها، ما در حال ثابت نگه داشتن وزن‌ها و بهینه‌سازی ورودی‌ها هستیم (یعنی مقادیر پیکسل‌های موجود در تصویر). برای این روش، تصویر مقداردهی اولیه می‌شود تا مقادیر RGB تصادفی برای هر پیکسل داشته باشد.۳. نسل تصویر Deep Dreamتفاوت کلیدی بین تولید تصویرDeep Dream و تولید تصویر کلاس خاص این است که تصویر اولیه دیگر تصادفی نیست. در مورد Deep Dream، یک تصویر واقعی از مجموعه داده‌ها به عنوان تصویر اولیه استفاده می‌شود. بقیه روش مشابه با تولید تصویر کلاس خاص است؛ ما به سادگی پس انتشار را اجرا می‌کنیم و گرادیان را با توجه به تصویر ورودی برای به‌روزرسانی تصویر پیدا می‌کنیم.روش‌هایی که در بالا به آن‌ها اشاره شد در مقالات بیشتر بر روی تصاویری از مجموعه داده‌های ImageNet اجرا شده‌اند. این تصاویر از اشیا روزمره هستند و به طور کلی شامل یک پیش‌زمینه و پس‌زمینه واضح هستند.ممکن است به مطالعه مقاله الگوریتم جدید، محدودیت سرعت را برای حل معادلات خطی درهم می‌شکند علاقمند باشید.نتایج تجزیه و تحلیل قابلیت تفسیرخیلی خوب، حالا برگردیم بهclip. بنابراین نویسندگان قابلیت تفسیر مدل را بررسی کردند و نورون‌ها را به چندین گروه تقسیم کردند: منطقه، مردم، و نورون‌های حرکتی. توجه داشته باشید که بیشتر تحلیل آن‌ها در سمت دیدCLIP بود، نه در سمت متن. تجزیه و تحلیل حاصل ارتباط غیر‌معمول بین تصاویر و معنای آن‌ها را نشان می‌دهد.به عنوان مثال، برای نورون‌های احساسات، خسته شدن برابر است با «استراحت + بدخلق + غروب خورشید». همچنین، این مدل در بسیاری از موارد یک بایاس واضح (به دلیل مجموعه داده) را نشان می‌دهد. به عنوان مثال، به نظر می‌رسد که «مهاجرت غیر‌قانونی» ارتباط زیادی با «آمریکای‌لاتین» دارد. نکته من در اینجا تکرار مثال‌هایی نیست که شما می‌توانید تنها در مقاله آن‌ها بخوانید، بلکه مزیت تحلیل تفسیرپذیری است. چون به عنوان یک توسعه‌دهنده یادگیری ماشین، این اطلاعات بسیار مفیدی است.موارد شکست بسیار خنده‌دارمن مطمئنم که بسیاری از شما احتمالا این را جایی در رسانه‌ها دیده‌اید:شکل ۲. منبع: https://openai.com/blog/multimodal-noons/ اساسا نشان می‌دهد که اگرچهCLIP یک سیب را به درستی طبقه‌بندی می‌کند، اما تنها یک «حمله فعال‌سازی کاغذ و قلم» می‌تواند شبکه را به این فکر بیندازد که این تصویر یک آی‌پد است. این کاملا برای من جالب بود چون نشان می‌داد که اگرچه CLIP یک مدل قدرتمند است، اما می‌تواند به راحتی فریب بخورد. و من فکر می‌کنم که این برای بسیاری از سیستم‌های AI فعلی درست است (و من تعجب می‌کنم که ایلان ماسک چگونه فکر می‌کند که AI جهان را در اختیار خواهد گرفت). من قصد دلسرد کردن ندارم، من فکر می‌کنم این چیز خوبی است که ما از چنین موضوعاتی آگاه هستیم به طوری که بتوانیم آن‌ها را حل کنیم، و این یکی از اهداف اصلی این مقاله، برای ترویج مطالعات تفسیرپذیری است. همچنین، من فکر می‌کنم تجزیه و تحلیل حملاتی که می‌تواند باعث شکست یک شبکه عصبی شود جنبه مهمی از چنین مطالعه‌ای است.میکروسکوپدر نهایت، یکی از جالب‌ترین چیزهایی که آن‌ها منتشر کردند میکروسکوپ OpenAI است. که ابزاری است که می‌توانید از آن برای دیدن این فعالیت‌ها برای خودتان استفاده کنید!نتیجه‌گیریامیدوارم از این مقاله لذت برده باشید، من سعی کردم زیاد طولانی نباشد. من فکر می‌کنم یکی از مهم‌ترین نتایجی که شما از این مقاله گرفته باشید این است که یک بخش قابلیت تفسیر کوچک در پروژه یادگیری ماشین خود داشته باشید. این کار به شما کمک خواهد کرد تا یادگیری عمیق را در عمق درک کنید و تصاویر بسیار ارزشمندی که می‌توانید ارائه دهید (علاوه بر امتیازات و معیارهای خود).این متن با استفاده از ربات مترجم مقاله هوش مصنوعی ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است.در نتیجه می‌تواند دارای برخی اشکالات ترجمه باشد.مقالات لینک‌شده در این متن می‌توانند به صورت رایگان با استفاده از مقاله‌خوان ترجمیار به فارسی مطالعه شوند.