پرسش های مصاحبه یادگیری عمیق
آموزش‌های پایه‌ای هوش مصنوعیاصول هوش مصنوعیکتابخانه‌ های یادگیری عمیق

پرسش های مصاحبه یادگیری عمیق که نباید از دست دهید (بخش ۱)

    0
    مدت زمان مطالعه: ۶ دقیقه

    در این نوشتار به بررسی پرسش های مصاحبه یادگیری عمیق خواهم پرداخت. غالباً در جلسه مصاحبه شغلی «مهندسی هوش مصنوعی» این سوالات هستند که مطرح می‌شوند. در واقع، نیازی نیست در همه مصاحبه‌ها از این پرسش‌ها استفاده شود زیرا طرح پرسش به تجربه و پروژه‌های پیشین متقاضی یا مصاحبه‌شونده بستگی دارد. مجموعه‌ای متشکل از ۱۲ پرسش مصاحبه در حوزه یادگیری عمیق، ماحصلِ جلسه‌های متعدد مصاحبه، به ویژه با دانشجویان، است که در مقاله حاضر با خوانندگان به اشتراک خواهیم گذاشت. خب، بیایید بدون اتلاف وقت، کار را شروع کنیم.

    1. بررسی معنی نرمال‌سازی دسته‌ای

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

    پرسش های مصاحبه یادگیری عمیق

    نرمال‌سازی دسته‌ای روش موثری برای آموزش مدل‌های شبکه عصبی است. هدف از بکارگیری این روش، نرمال‌سازی ویژگی‌ها (خروجی هر لایه پس از اتمام فرایند فعال‌سازی) به وضعیت میانگین صفر با انحراف معیار ۱ است. بنابراین، پدیده‌ی خلاف آن «میانگین غیر صفر» است. این روش چگونه بر آموزش مدل تاثیر می‌گذارد؟

    • اولاً باید بدانید که میانگین غیرصفر به پدیده‌ای اطلاق می‌شود که در آن، داده‌ها حول مقدار صفر توزیع نمی‌شوند، اما اکثر مقادیر بزرگتر از صفر یا کمتر از صفر هستند. در کنارِ مسئله‌ی واریانس بالا، داده‌ها بسیار بزرگ یا بسیار کوچک می‌شوند. این مسئله عمدتاً در آموزش شبکه‌های عصبی با اعداد لایه عمیق پیش می‌آید. اگر ویژگی‌ها در بازه‌های ثابت توزیع نشوند، فرایند بهینه‌سازی شبکه تحت تاثیر قرار خواهد گرفت.
    • همه می‌دانیم که بهینه‌سازی شبکه‌های عصبی نیاز به محاسبه مشتق دارد. با فرض اینکه فرمول ساده‌ی محاسبه لایه عبارتست از y = (Wx + b)، مشتق y از w به این ترتیب خواهد بود: dy = dWx. بنابراین، مقدار x به طور مستقیم بر مقدار مشتق تاثیر می‌گذارد (البته، مفهوم گرادیان در مدل‌ شبکه‌های عصبی به این سادگی نیست، اما از دید نظری، x بر مشتق تاثیر خواهد گذاشت.) از این رو، اگر x تغییرات زیادی داشته باشد، ممکن است مشتق خیلی بزرگ یا خیلی کوچک شود. ماحصل آن، مدل یادگیری ناپایدار است. افزون بر این، در هنگام استفاده از نرمال‌سازی دسته‌ای، می‌توان از نرخ یادگیری بالایی در حین آموزش استفاده کرد.
    • نرمال‌سازی دسته‌ای می‌تواند از پدیده‌ای پیشگیری کند که طی آن، مقدار x پس از رویارویی با توابع فعال‌سازی غیرخطی دچار اشباع می‌شود. بنابراین، روش مذکور از این امر اطمینان حاصل می‌کند که فعال‌سازی خیلی بالا یا خیلی پایین نمی­رود. بر این اساس، از میزان وابستگی به مقدار اولیه‌ی پارامترها کاسته می‌شود.
    • نرمال‌سازی دسته‌ای نوعی ابزار قاعده‌سازی به حساب می‌آید که نقش موثری در کاهش حداقلیِ بیش‌برازش دارد. نرمال‌سازی دسته‌ای کمک می‌کند تا از Dropout کمتری استفاده کنیم. این کار منطقی است زیرا در زمان کار با شبکه نیازی نیست نگران از دست دادن اطلاعات باشیم. با این حال، کماکان توصیه می‌شود از ترکیبی از این دو روش استفاده کنید.
    1. ارائه‌ی مفهوم و رابطه میان سوگیری و واریانس؟

    یکی از پرسش های مصاحبه یادگیری عمیق این است: سوگیری چیست؟ سوگیری تفاوت میان پیش‌بینی میانگین مدل فعلی و نتایج واقعی است که باید پیش‌بینی کنیم. مدلی با سوگیری بالا نشان می‌دهد که تمرکز کمتری روی آموزش داده دارد. این پدیده مدل را بسیار کوچک می‌کند و فاقد دقت بالا در امر آموزش و تست است. این پدیده با عنوان کم‌برازش Underfitting نیز شناخته می‌شود.

    واریانس می‌تواند توزیع (یا خوشه‌بندی) خروجی‌های مدل را در نمونه­ها درک کند. هرقدر واریانس بزرگتر باشد، این احتمال بالا می‌رود که مدل توجه بالایی به داده‌های آموزشی کند و در مورد داده‌هایی که هیچ‌گاه با آنها مواجه نشده، اقدام به تعمیم‌سازی نکند. در نتیجه، مدل به نتایج بسیار خوبی در مجموعه‌داده آموزشی دست یافت، اما نتایج ضعیفی با مجموعه‌داده آزمایشی حاصل آمد. این پدیده بیش‌برازش Overfitting نام دارد.

    همبستگی میان دو مفهوم با شکل زیر نشان داده می‌شود:

    پرسش های مصاحبه یادگیری عمیق

    در شکل فوق، مرکز دایره‌ای به مدلی اشاره می‌کند که مقادیر دقیق را پیش‌بینی می‌کند. در واقع، هیچ‌گاه چنین مدل خوبی به دست نمی‌آورید. با دور شدن از مرکز دایره، پیش‌بینی‌ها بدتر و بدتر می‌شوند. امکان تغییر مدل نیز وجود دارد. توازن بین مقادیر واریانس و سوگیری الزامی است. اگر مدل خیلی ساده باشد و پارامترهای کمتری داشته باشد، ممکن است سوگیری زیاد و واریانس کمی داشته باشد. افزون بر این، اگر تعداد پارامترهای مدل زیاد باشد، واریانس زیاد و سوگیری کمی خواهد داشت. این مبنای ما برای محاسبه سطح پیچیدگیِ مدل در زمان طراحی الگوریتم است.

    پرسش های مصاحبه یادگیری عمیق

    1. فرض کنید مدل یادگیری عمیق ۱۰ میلیون بردار چهره یافته است. چطور می‌توان در سریع‌ترین زمان چهره‌ای با کوئری‌ها پیدا کرد.

    این مورد از پرسش های مصاحبه یادگیری عمیق به کاربرد عملیِ الگوریتم‌های یادگیری مربوط می‌شود؛ روش اندیس‌گذاری داده، نکته کلیدی این پرسش به شمار می‌رود. این گام نهایی در مسئله بکارگیریِ روش یادگیری One Shot Learning برای تشخیص چهره است، اما در عین حال مهم‌ترین گام نیز به حساب می‌آید زیرا بکارگیری این روش را در عمل آسان‌تر می‌کند. اساساً، با توجه به این پرسش، باید ابتدا اطلاعاتی کلی از روش تشخیص چهره با One Shot Learning ارائه کنید. این روش با تبدیل هر چهره به یک بردار به سادگی فهمیده می‌شود؛ تشخیص چهره جدید، بردارهایی را که نزدیک‌ترین فاصله را با چهره ورودی دارند، پیدا می‌کند. معمولاً، افراد از مدل یادگیری عمیق با تابع زیان «Triplet loss» استفاده می‌کنند.

    پرسش های مصاحبه یادگیری عمیق

    با این حال، با توجه به افزایش تعداد تصاویر در ابتدای مقاله، محاسبه فاصله تا ۱۰ میلیون بردار در هر مورد شناسایی اقدام هوشمندانه‌ای نیست. این کار به کُندتر شدن سیستم می‌انجامد. باید روش‌های اندیس‌گذاری داده را در فضای بردار واقعی مد نظر قرار دهیم تا عمل پرس‌وجو به راحتی انجام گیرد. هدف اصلی از بکارگیری روش‌های یادشده این است که داده ها به ساختارهای آسانی برای جستجوی داده‌های جدید تبدیل گردد (احتمالاً شبیه به ساختار درختی). در صورتی که داده‌های جدید در دسترس باشد، جستجوی ساختار درختی کمک می‌کند تا برداری که نزدیک‌ترین فاصله را دارد، به سرعت یافت شود.

    پرسش های مصاحبه یادگیری عمیق

    از روش‌های متعددی برای این هدف استفاده می‌شود که از جمله آنها می‌توان به Locality Sensitive Hashing، Annoy Indexing و Faiss اشاره کرد.

    1. آیا شاخص دقت در مسئله طبقه‌بندی کاملاً قابل‌اطمینان است؟ از چه ابزارهایی برای ارزیابی مدل استفاده می‌کنید؟

    این مورد از پرسش های مصاحبه یادگیری عمیق نیاز به دقت ویژه دارد. راهکارهای مختلفی برای ارزیابی مسئله کلاس وجود دارد. صحت برابر است با تعداد نقاط داده پیش‌بینی شده به صورت صحیح که بر کل داده‌ها تقسیم می‌شوند. این اقدام منطقی است، اما در واقعیت، این کمیت برای مسائل داده‌های نامتوازن کفایت نمی‌کند. فرض کنید می‌خواهیم یک مدل پیش‌بینی برای حملات شبکه ایجاد کنیم (با فرض اینکه درخواست حمله حدود ۱۰۰۰۰۰/۱ از حمله‌ها را دربرمی‌گیرد). اگر مدل پیش‌بینی کند که همه درخواست‌ها عادی هستند، صحت تا %۹۹۹۹/۹۹ افزایش می‌یابد. این آمار غالباً در مدل طبقه‌بندی غیرقابل‌اطمینان است. محاسبه دقت در فوق نشان می‌دهد که چند درصد از داده‌ها به درستی پیشنهاد شده است؛ اما به طور جامع نشان می‌دهد که هر دسته چگونه طبقه‌بندی می‌شود. در عوض، می‌توان از ماتریس درهم‌ریختگی Confusion matrix استفاده کرد. اساساً، ماتریس درهم‌ریختگی نشان می‌دهد که چه تعداد نقاط داده به دسته تعلق دارد. این ماتریس به شکل زیر ترسیم می‌گردد:

    پرسش های مصاحبه یادگیری عمیق

    علاوه بر بیان تغییر اندیس‌های مثبت کاذب و منفی کاذب در هر آستانه، نموداری تحت عنوان ROC داریم. بر اساس نمودار مذکور، می‌دانیم که مدل تاثیرگذار است یا خیر.

    پرسش های مصاحبه یادگیری عمیق

    نمودار ایده‌آل ROC این است که هر قدر خط نارنجی به گوشه بالای سمت چپ نزدیک‌باشد، بهتر است.

    این مطلب چه میزان برای شما مفید بوده است؟
    [کل: ۱ میانگین: ۴]

    نخستین شهر هوشمند کشور به تائید اتحادیه بین‌المللی ارتباطات رسید

    مقاله قبلی

    آکادمی ماد برگزار می‌کند: دوره آموزشی تشخیص اشیا

    مقاله بعدی

    شما همچنین ممکن است دوست داشته باشید

    نظرات

    پاسخ دهید

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