خاطرات بهینه‌سازانه
این Ù‡ÙØªÙ‡â€ŒÛŒ اخیر پوست‌ام بگی Ù†Ú¯ÛŒ کنده شد. در واقع قانون Ú©Ù„ÛŒ این است Ú©Ù‡ هر Ú†Ù‡ به آخر ترم نزدیک‌تر می‌شوم، سرعت پوست‌کندگی هم بیش‌تر می‌شود. البته این برای یک برنامه‌ی ØªØØµÛŒÙ„ات تکمیلی تقریبا طبیعی است (مثلا در دانش‌گاه تهران هم همین‌طور بود دقیقا. یک ماه اول اولین ترم‌ام بسیار زندگی شیرین بود، بعد به تدریج ÙØ´Ø±Ø¯Ù‡â€ŒØªØ± شد). طبیعی می‌نماید Ú©Ù‡ در لیسانس هم همین‌طوری باشد اما تا جایی Ú©Ù‡ به خاطر دارم دقیقا این‌طوری نبود. آخرهای ترم‌ها معمولا خیلی کار داشتم ولی قابل مقایسه با دوره‌های بعدی نبود. در دوران لیسانس کلا کارهای خیلی بیش‌تری می‌کردم: انجمن علمی، Ùلان جلسات ادبی Ùˆ … ! بگذریم …
آخرین پروژه‌ی این دست بهینه‌سازی مربوط می‌شد بهینه‌سازی‌ی مقید. باید یک SVM را تعلیم می‌دادیم Ú©Ù‡ تعلیم آن منجر می‌شد به یک quadratic problem با قیدهای تساوی Ùˆ ناتساوی‌ی خطی. تا به ØØ§Ù„ مسایل بهینه‌سازی‌ی مقید را با روش‌های کلاسیک ØÙ„ نکرده بودم. تجربه‌ی جالبی بود Ùˆ البته Ú©Ù…ÛŒ دردسردار. چند نکته باعث شده بود Ú©Ù‡ این تکلی٠کمی بیش‌تر از تکلیÙ‌های پیشین اذیت‌ام کند: چند جلسه‌ای دیر Ø±ÙØªÙ‡ بودم سر جلسه‌ها Ùˆ جزوه‌های‌ این بخش‌ام خیلی کامل Ùˆ دقیق نبود. هم‌چنین کم‌تر از بخش‌های دیگر هم بلدش بودم. به نظر می‌رسد پیاده‌سازی‌ی مناسب این روش‌ها پیچیده‌تر باشد از روش‌های بهینه‌سازی‌ی بدون قید. یعنی برای این‌که این روش‌ها درست کار کند نه تنها الگوریتم‌های نامقیدتان باید درست کار کند (Ú©Ù‡ مثلا برای روش‌ای مثل نیوتون همیشه آسان نیست)ØŒ بلکه با دردسرهای طبیعی‌ی روش‌های مقید -Ú©Ù‡ باعث می‌شود مسایل از نظر عددی پیچیده Ùˆ Ø¨Ø¯Ø±ÙØªØ§Ø±- نیز سر Ùˆ کار داریم. مهم‌تر از این‌ها این Ú©Ù‡ وقت خیلی کم‌تری برای این تکلی٠داشتم. عملا چهارشنبه شب شروع کردم به برنامه‌نوشتن Ùˆ گزارش‌اش را هم بعد از تمام شدن مهلت مقرر شروع کردم به نوشتن!!! نتیجه‌اش این شد Ú©Ù‡ تا Ù‡ÙØª ØµØ¨Ø Ø¨ÛŒØ¯Ø§Ø± بودم. Ø¯ÙØ¹Ù‡â€ŒÛŒ اول ØØ¯ÙˆØ¯ یک Ù‡ÙØªÙ‡ قبل از سر رسیدن مهلت، برنامه‌های‌ام کار می‌کردند. البته خیلی هم تقصیر من نیست چون نمی‌شود Ú¯ÙØª خیلی تنبلی هم کرده‌ام.
اما خوش‌بختانه در آخرین Ù„ØØ¸Ø§Øª روش‌های‌ام تا ØØ¯ÙˆØ¯ قابل قبولی کار کردند. البته باز هم باید مقایسه شود ولی Ùکر کنم قابل قبول باشند.
اندکی راجع به روش‌هایی Ú©Ù‡ پیاده‌سازی کردم بنویسم. با این‌که با این کارم از ÙØ±Ù… معمول ضدخاطرات خارج می‌شوم اما تا این‌جای‌اش هم به اندازه‌ی کاÙÛŒ Ù…ØªÙØ§ÙˆØª شده است Ú©Ù‡ نوشتن دو تا اسم عجیب Ùˆ غریب را توجیه کند. یکی از روش‌های‌ام Ø§Ø³ØªÙØ§Ø¯Ù‡ از augmented Lagrangian بود Ú©Ù‡ یک روش exterior point بر اساس penalization است. این را با دو بهینه‌سازی‌ی نامقید steepest descent Ùˆ damped newton ØÙ„ کردم. روش دیگر اسم‌اش خارق‌العاده است: primal-dual interior point log-barrier!!! روش دوست‌داشتنی Ùˆ هوش‌مندانه‌ای است Ú©Ù‡ خیلی هم خوب کار می‌کند اما عیب‌اش این است Ú©Ù‡ باید از یک راه‌ØÙ„ÛŒ شروع کرد Ú©Ù‡ قیدها را از همان ابتدا تامین کند. در نتیجه به کارگیری‌ی این روش Ú©Ù…ÛŒ مشکل‌دار می‌شود. اما گویا ملت از این روش خوش‌شان می‌آید Ùˆ Ø§ØªÙØ§Ù‚ا جدیدا بسیار Ø§Ø³ØªÙØ§Ø¯Ù‡ می‌شود.
به‌ترین پاسخ به دست آمده از آن روش دوم بود Ùˆ روش augmented Lagrangian با damped Newton هم به‌تر از آن دیگری -Ú©Ù‡ تقریبا پرت بود- کار کرد. دیگر چه؟! همین! آها … یک مقدار خاطره‌ی بی‌ربط:
این‌جا سرد شده است. در ØØ¯ÙˆØ¯ -Û±Ûµ تا -Û²Û² درجه‌ی سانتیگراد است. خب، جالب است! هوا جوری سرد است Ú©Ù‡ به نظرم می‌اید در بینی‌ام کریستال تشکیل می‌شود. ØØ§Ù„ا باید یک‌بار آینه با خودم ببرم بیرون ببینم دقیقا Ú†Ù‡ Ø§ØªÙØ§Ù‚ÛŒ Ù…ÛŒâ€ŒØ§ÙØªØ¯ اما ØØ³â€ŒØ§Ø´ این‌طوری است Ùˆ به نظر یک چیزهایی جدا آن تو یخ می‌زند. خب، البته خیلی هم بد نیست. ÙØ¹Ù„ا می‌توان زنده ماند.
2 thoughts on “خاطرات بهینه‌سازانه”
لابد زندگي هم ÙŠÚ© بهينه‌سازي مقيده….(:
Ùکر کنم این‌طوری هم می‌شود به‌اش نگاه کرد. در واقع اکثر مسائل همین‌طورند. اما نکته‌ی جالب این است Ú©Ù‡ معمولا نمی‌دانیم تابع‌ای Ú©Ù‡ باید بهینه شود دقیقا چیست. Ùقط تعدادی نمونه از آن Ø¯Ø±ÛŒØ§ÙØª می‌کنیم Ùˆ گاهی امتیازی بابت کاری Ú©Ù‡ کرده‌ایم.