ببین، اگه به هوش مصنوعی و شبکههای عصبی علاقه داشته باشی، احتمالاً اسم Neural Architecture Search یا همون NAS رو شنیدی. خلاصهش اینه که باید کلی مدل مختلف رو بچینی، یکی یکی آموزش بدی و تست کنی تا آخرش به یه ساختار توپ برای شبکه عصبیات برسی. ولی مشکل اینجاست که همین کار، یعنی جستوجوی NAS، واقعاً کامپیوتر قوی میخواد و ممکنه هفتهها زمان ببره. خیلی از بچههای دانشگاه و حتی محققهای حرفهای هم مجبور میشن بیخیال بعضی تجربهها بشن، چون هزینه سختافزاری و زمانی زیادی داره.
حالا یه عده آمدن یه راه حل باحال و هوشمندانه از ریاضیات تصمیمگیری رو پیشنهاد دادن که بهش میگن Optimal Stopping Theory. این تئوری یعنی بهینه وایسادن یا همون اینکه کِی باید جستوجو رو متوقف کنیم و دیگه ادامه ندیم. یکی از معروفترین مثالهاش هم “مسئله منشی” یا Secretary Problem ـه. توضیح ساده: تو باید چندتا منشی رو مصاحبه کنی، اما فقط یه بار میتونی یکی رو انتخاب کنی. راه حل ریاضی میگه تقریباً ۳۷٪ اولها رو فقط ببین و رد کن، بعد از اون به اولین نفر بهتری که دیدی، پیشنهاد کار بده!
پژوهشگرا اومدن همین ترفند رو آوردن تو دنیای NAS. تو این مقاله، ۶۷۲ مدل مختلف شبکه عصبی رو گرفتن و هرکدوم رو چندین هزار بار روی دیتاستهای معروف مثل MNIST و CIFAR-10 (اینا دیتاستهایی هستن که معمولاً برای آموزش و امتحان شبکههای عصبی تصویر استفاده میشن) آموزش دادن و بررسی کردن. کلاً ۶۷۲۰ مدل آموزش داده شده داشتن و ۲۰،۰۰۰ بار این پروسه رو تکرار کردن، که یعنی واقعاً حسابی وقت گذاشتن!
نتیجه این بود که لازم نیست کل فضای جستوجوی NAS رو زیر و رو کنی. تقریباً اگه حدود ۳۷٪ از مدلهای ممکن رو تصادفی بررسی کنی و بعدش روی اولین مدل خوب دست بذاری، به احتمال خیلی زیاد به یه مدل خفن میرسی. یعنی این که میتونی کلی توی زمان و هزینه صرفهجویی کنی و همچنان به نتیجه مطلوب برسی.
اما اینا اونجا وای نستادن! یه نسخه پیشرفتهتر از Secretary Problem هم تست کردن؛ بهش میگن “good enough” یا همون وقتی که یه مدل «به اندازه کافی خوب» بود، دیگه ادامه نمیدیم. با این ترفند میتونن اندازه جستوجو رو به ۱۵٪ برسونن! باحالترش اینه که یه ویژگی «call back» گذاشتن: یعنی بعداً اگه دیدی مدل بهتری بوده، میتونی بری سراغش! اینجوری مقدار جستوجو به فقط ۴٪ میرسه که عالیه!
برای اینکه مطمئن بشن این ترفندها الکی نیستن و یه جا خوب جواب نمیدن، اومدن این روشها رو روی جمعیتهای مختلف از مدلها (مثلاً از ۱۰۰ تا ۳۵۰۰ نوع معماری مختلف، هربار با افزایش ۵۰تایی) و باز هم توی ۲۰ هزار سناریو امتحان کردن. جواب همه جا، طبق بررسی آماری، درست و محکم بود.
در آخر مقاله هم کلی روایت و راهنمایی داده که محققها چجوری این ترفندها رو بدون دردسر پیاده کنن، به جای اینکه بیخودی کلی کامپیوتر قوی بخرن یا وقتشون رو هدر بدن. البته گفته همیشه یه سری نکات و محدودیتها هست که باید حواست بهشون باشه، مثل اینکه هیچ روشی ۱۰۰٪ بینقص نیست.
خلاصهش این میشه: اگه دنبال پیدا کردن ساختار شبکه عصبی بهینهای، نیازی نیست هر چیزی رو تست کنی. یه مقدار هوشمندی (و ریاضی شیک!) میتونه کلی از وقت و هزینهات رو نجات بده. حالا بیا دست به کار شو و NAS رو با خیال راحتتر شروع کن!
منبع: +