HyperOpt Demystified

HyperOpt کے ساتھ ماڈل ٹیوننگ کو خودکار کرنے کا طریقہ

کیا آپ کو ٹیوننگ ماڈل پسند ہیں؟ اگر آپ کا جواب "ہاں" ہے، تو یہ پوسٹ ہے۔ نوٹ آپ کے لئے.

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
میرے دادا کا ایک کارٹون - ویب سائٹ.

اس بلاگ میں ہم انتہائی مقبول خودکار ہائپر پیرامیٹر ٹیوننگ الگورتھم کا احاطہ کریں گے۔ درخت پر مبنی پارزن تخمینہ لگانے والے (TPE)۔ ٹی پی ای کو اوپن سورس پیکج ہائپر اوپٹ سے تعاون حاصل ہے۔ HyperOpt اور TPE کا فائدہ اٹھا کر، مشین لرننگ انجینئر کر سکتے ہیں۔ بغیر کسی دستی ٹیوننگ کے انتہائی بہتر ماڈلز کو تیزی سے تیار کریں۔.

مزید اڈو کے بغیر ، آئیے غوطہ لگائیں!

HyperOpt ایک اوپن سورس python پیکیج ہے جو Tree-based Parzen Esimtors (TPE) نامی الگورتھم استعمال کرتا ہے تاکہ ماڈل ہائپر پیرامیٹر کو منتخب کیا جا سکے جو صارف کے متعین مقصد کے فنکشن کو بہتر بناتا ہے۔ صرف ہر ایک ہائپر پیرامیٹر کی فنکشنل شکل اور حدود کی وضاحت کرتے ہوئے، TPE اچھی طرح سے ابھی تک مؤثر طریقے سے پیچیدہ ہائپر اسپیس کے ذریعے بہترین تک پہنچنے کے لیے تلاش کرتا ہے۔

TPE ایک ترتیب وار الگورتھم ہے جو بایسیئن اپڈیٹنگ کا فائدہ اٹھاتا ہے اور ذیل کی ترتیب کی پیروی کرتا ہے۔

  1. تصادفی طور پر منتخب کردہ ہائپر پیرامیٹرس کے کئی سیٹوں کے ساتھ ایک ماڈل کو تربیت دیں، معروضی فنکشن کی قدروں کو واپس کرتے ہوئے۔
  2. کچھ حد گاما (γ) کے مطابق، ہمارے مشاہدہ شدہ معروضی فنکشن اقدار کو "اچھے" اور "خراب" گروپوں میں تقسیم کریں۔
  3. "امید بخش" سکور کا حساب لگائیں، جو کہ منصفانہ ہے۔ P(x|اچھا) / P(x|خراب).
  4. ہائپرپیرامیٹرس کا تعین کریں جو مکسچر ماڈلز کے ذریعے امید افزا کو زیادہ سے زیادہ بناتے ہیں۔
  5. مرحلہ 4 سے ہائپر پیرامیٹرز کا استعمال کرتے ہوئے ہمارے ماڈل کو فٹ کریں۔
  6. روکنے کے معیار تک 2-5 مراحل کو دہرائیں۔

یہاں ایک ہے فوری کوڈ کی مثال.

ٹھیک ہے یہ بہت بڑے الفاظ تھے۔ آئیے آہستہ کریں اور واقعی سمجھیں کہ کیا ہو رہا ہے۔

1.1 — ہمارا مقصد

ڈیٹا سائنسدان مصروف ہیں۔ ہم واقعی اچھے ماڈلز تیار کرنا چاہتے ہیں، لیکن ایسا موثر اور مثالی طور پر ہینڈ آف طریقے سے کریں۔

تاہم، ML ماڈلنگ لائف سائیکل میں کچھ اقدامات خودکار کرنا بہت مشکل ہیں۔ ایکسپلوریٹری ڈیٹا اینالیسس (EDA) اور فیچر انجینئرنگ، مثال کے طور پر، عام طور پر موضوع سے متعلق ہوتے ہیں اور اس کے لیے انسانی وجدان کی ضرورت ہوتی ہے۔ دوسری طرف، ماڈل ٹیوننگ ایک تکراری عمل ہے جہاں کمپیوٹر ایکسل کر سکتے ہیں۔

اس پوسٹ میں ہمارا مقصد یہ سمجھنا ہے کہ ماڈل ٹیوننگ کے عمل کو خودکار کرنے کے لیے الگورتھم کا فائدہ کیسے اٹھایا جائے۔

اس مقصد کے بارے میں سوچنے میں ہماری مدد کرنے کے لیے، آئیے ایک تشبیہ استعمال کریں: ہم قزاق ہیں جو دفن شدہ خزانہ کی تلاش میں ہیں۔ یہ نوٹ کرنا بھی ضروری ہے کہ ہم بہت موثر قزاق ہیں جو دفن شدہ خزانے کی تلاش میں اپنا وقت کم سے کم کرنے کی کوشش کر رہے ہیں۔ تو، ہمیں تلاش میں گزارے گئے وقت کو کیسے کم کرنا چاہیے؟ جواب ہے ایک نقشہ استعمال کریں!

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
اعداد و شمار 1: مثال کے طور پر 3D ہائپر پیرامیٹر تلاش کی جگہ۔ خزانے کے سینے کا مقام عالمی سطح پر بہترین ہے۔ مصنف کی طرف سے تصویر.

شکل 1 میں، ہمارے پاس ایک فرضی نقشہ ہے جو دکھاتا ہے کہ ہمارا خزانہ کہاں واقع ہے۔ بہت سی چڑھائی اور کھدائی کے بعد، اس خزانے تک پہنچنا زیادہ مشکل نہیں ہوگا کیونکہ ہم بخوبی جانتے ہیں کہ یہ کہاں واقع ہے۔

لیکن جب ہمارے پاس نقشہ نہ ہو تو کیا ہوتا ہے؟

جب کسی ماڈل کو ٹیوننگ کرنے کا کام سونپا جاتا ہے، تو بدقسمتی سے ہمیں نقشہ نہیں دیا جاتا ہے۔ ہمارا خطہ، جو کہ ہائپرپرمیٹر تلاش کی جگہ سے مماثل ہے، نامعلوم ہے۔ مزید برآں، ہمارے خزانے کا مقام، جو کہ ہائپر پیرامیٹر کے بہترین سیٹ سے مطابقت رکھتا ہے، بھی نامعلوم ہے۔

اس سیٹ اپ کے ساتھ، آئیے اس جگہ کو مؤثر طریقے سے دریافت کرنے اور کچھ خزانہ تلاش کرنے کے کچھ ممکنہ طریقوں کے بارے میں بات کرتے ہیں!

1.2 - ممکنہ حل

ماڈل ٹیوننگ کا اصل طریقہ "دستی" ہے — انجینئر دراصل بہت سی مختلف کنفیگریشنز کو دستی طور پر جانچے گا اور دیکھے گا کہ کون سا ہائپر پیرامیٹر امتزاج بہترین ماڈل تیار کرتا ہے۔ معلوماتی ہونے کے باوجود، یہ عمل غیر موثر ہے۔ کوئی بہتر طریقہ ہونا چاہیے…

1.2.1 — گرڈ تلاش (بدترین)

ہمارا پہلا آپٹیمائزیشن الگورتھم گرڈ سرچ ہے۔ گرڈ کی تلاش تکراری طور پر صارف کے مخصوص گرڈ کے اندر ہائپر پیرامیٹر کے تمام ممکنہ امتزاج کی جانچ کرتی ہے۔

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 2: گرڈ سرچ لے آؤٹ کی مثال۔ مصنف کی طرف سے تصویر

مثال کے طور پر، شکل 2 میں، جہاں بھی آپ کو ایک سرخ نقطہ نظر آئے گا وہیں ہم اپنے ماڈل کو دوبارہ تربیت دیں گے اور اس کا اندازہ کریں گے۔ یہ فریم ورک غیر موثر ہے کیونکہ یہ خراب ہائپرپیرامیٹر کو دوبارہ استعمال کرتا ہے۔. مثال کے طور پر، اگر ہائپر پیرامیٹر 2 کا ہمارے معروضی فعل پر بہت کم اثر پڑتا ہے، تب بھی ہم اس کی اقدار کے تمام امتزاج کی جانچ کریں گے، اس طرح تکرار کی مطلوبہ تعداد میں 10x اضافہ ہوگا (اس مثال میں)۔

لیکن آگے بڑھنے سے پہلے، یہ نوٹ کرنا ضروری ہے کہ گرڈ کی تلاش اب بھی کافی مقبول ہے کیونکہ یہ صحیح طریقے سے متعین گرڈ کے ساتھ ایک بہترین تلاش کرنے کی ضمانت دیتا ہے۔ اگر آپ طریقہ استعمال کرنے کا فیصلہ کرتے ہیں، اس بات کو یقینی بنائیں کہ آپ اپنے ہائپرپیرامیٹر کی فعال شکل کو ظاہر کرنے کے لیے اپنے گرڈ کو تبدیل کرتے ہیں۔ مثال کے طور پر، a کے لیے max_depth بے ترتیب جنگل کا درجہ بندی کرنے والا ایک عدد عدد ہے — اسے مسلسل جگہ پر تلاش کرنے نہ دیں۔ یہ بھی امکان نہیں ہے کہ اس کی یکساں تقسیم ہو — اگر آپ اپنے ہائپر پیرامیٹر کی فعال شکل کو جانتے ہیں تو اس کی عکاسی کرنے کے لیے گرڈ کو تبدیل کریں۔

خلاصہ، گرڈ تلاش جہتی کی لعنت کے تابع ہے اور تشخیص کے درمیان معلومات کو دوبارہ گنتی ہے، لیکن پھر بھی وسیع پیمانے پر استعمال ہوتی ہے۔

1.2.2 — بے ترتیب تلاش (اچھی)

ہمارا دوسرا الگورتھم بے ترتیب تلاش ہے۔ بے ترتیب تلاش صارف کے مخصوص گرڈ کے اندر بے ترتیب اقدار کی کوشش کرتی ہے۔ گرڈ تلاش کے برعکس، ہمیں ہائپرپیرامیٹر کے ہر ممکنہ امتزاج کی جانچ کرنے کے لیے نہیں چھوڑا جاتا، جس سے کارکردگی میں اضافہ ہوتا ہے۔

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 3: بے ترتیب تلاش کی مثال۔ مصنف کی طرف سے تصویر.

یہاں ایک ٹھنڈی حقیقت ہے: بے ترتیب تلاش میں (اوسط طور پر) ایک اعلی 5% ہائپر پیرامیٹر ترتیب مل جائے گی 60 تکرار. اس نے کہا، جیسا کہ گرڈ سرچ کے ساتھ آپ کو ہر ہائپرپرم کی فعال شکل کی عکاسی کرنے کے لیے اپنی تلاش کی جگہ کو تبدیل کرنا ہوگا۔

بے ترتیب تلاش ہائپر پیرامیٹر کی اصلاح کے لیے ایک اچھی بنیاد ہے۔

1.2.3 — Bayesian Optimization (بہتر)

ہمارا تیسرا امیدوار ہمارا پہلا سیکوینشل ماڈل بیسڈ آپٹیمائزیشن (SMBO) الگورتھم ہے۔ پہلے کی تکنیکوں سے کلیدی تصوراتی فرق ہم ہیں۔ مستقبل کی تلاش کے نکات کا تعین کرنے کے لیے تکراری طور پر پہلے کی دوڑیں استعمال کریں۔

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 4: بایسیئن اصلاح کی مثال — ایسآرسی. مصنف کی طرف سے تصویر.

Bayesian hyperparameter optimization ہمارے ہائپر پیرامیٹر کی تلاش کی جگہ کی ممکنہ تقسیم کو تیار کرتی نظر آتی ہے۔ وہاں سے، یہ ایک حصول فنکشن کا استعمال کرتا ہے، جیسے کہ متوقع بہتری، ہماری ہائپر اسپیس کو مزید "تلاش کے قابل" بنانے کے لیے۔ آخر میں، یہ ایک اصلاحی الگورتھم کا استعمال کرتا ہے، جیسے کہ اسٹاکسٹک گریڈینٹ ڈیسنٹ، ایک ایسے ہائپر پیرامیٹر کو تلاش کرنے کے لیے جو ہمارے حصول کے فنکشن کو زیادہ سے زیادہ بناتے ہیں۔ وہ ہائپرپیرامیٹر ہمارے ماڈل کو فٹ کرنے کے لیے استعمال کیے جاتے ہیں اور اس عمل کو کنورجنس ہونے تک دہرایا جاتا ہے۔

Bayesian اصلاح عام طور پر بے ترتیب تلاش سے بہتر کارکردگی کا مظاہرہ کرتی ہے، تاہم اس میں کچھ بنیادی حدود ہیں جیسے کہ عددی ہائپر پیرامیٹرز کی ضرورت ہوتی ہے۔

1.2.4 — درخت پر مبنی پارزن تخمینہ لگانے والے (بہترین)

آخر میں، آئیے شو کے ستارے کے بارے میں بات کرتے ہیں: ٹری بیسڈ پارزن اسٹیمیٹرز (TPE)۔ ٹی پی ای ایک اور ایس ایم بی او الگورتھم ہے جو عام طور پر بنیادی بایسیئن آپٹیمائزیشن سے بہتر کارکردگی کا مظاہرہ کرتا ہے، لیکن اہم فروخت پوائنٹ یہ ہے کہ یہ درخت کی ساخت کے ذریعے پیچیدہ ہائپر پیرامیٹر تعلقات کو سنبھالتا ہے۔

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 5: TPE کے لیے درجہ بندی کی ساخت کی مثال — ایسآرسی. مصنف کی طرف سے تصویر.

آئیے اس کو سمجھنے کے لیے شکل 5 کا استعمال کرتے ہیں۔ درخت کی ساخت. یہاں ہم ایک سپورٹ ویکٹر مشین (SVM) درجہ بندی کی تربیت دے رہے ہیں۔ ہم دو دانا کی جانچ کریں گے: linear اور RBF. A linear کرنل چوڑائی کا پیرامیٹر نہیں لیتا لیکن RBF کرتا ہے، لہذا ایک نیسٹڈ ڈکشنری کا استعمال کرکے ہم اس ڈھانچے کو انکوڈ کرنے کے قابل ہو جاتے ہیں اور اس طرح تلاش کی جگہ کو محدود کر دیتے ہیں۔

TPE واضح متغیرات کی بھی حمایت کرتا ہے جو روایتی Bayesian آپٹیمائزیشن نہیں کرتا ہے۔

آگے بڑھنے سے پہلے فوری دستبرداری، وہاں موجود ہیں۔ بہت سے دوسرے ہائپر پیرامیٹر ٹیوننگ پیکجز. ہر ایک مختلف قسم کے الگورتھم کی حمایت کرتا ہے، جن میں سے کچھ میں بے ترتیب جنگل، گاوسی عمل، اور جینیاتی الگورتھم شامل ہیں۔ TPE ایک بہت مقبول اور عام مقصد کا الگورتھم ہے، لیکن ضروری نہیں کہ بہترین ہو۔

عام طور پر، TPE واقعی ایک مضبوط اور موثر ہائپر پیرامیٹر آپٹیمائزیشن حل ہے۔

اب جب کہ ہمیں کچھ مشہور ہائپر پیرامیٹر آپٹیمائزیشن الگورتھم کی عمومی سمجھ ہے، آئیے اس بات پر گہرائی سے غور کریں کہ TPE کیسے کام کرتا ہے۔

اپنی مشابہت کی طرف لوٹتے ہوئے، ہم قزاق ہیں جو دفن شدہ خزانہ کی تلاش میں ہیں۔ لیکن نقشہ نہیں ہے. ہمارے کپتان کو جلد از جلد خزانے کی ضرورت ہے، اس لیے ہمیں مستقبل کی کھدائی کے مقام کا تعین کرنے کے لیے پیشگی کھدائی کا استعمال کرتے ہوئے ایسے اسٹریٹجک مقامات کی کھدائی کرنے کی ضرورت ہے جن میں خزانہ ہونے کا زیادہ امکان ہو۔

2.1 - آغاز

شروع کرنے کے لئے، ہم ہماری جگہ کی رکاوٹوں کی وضاحت کریں۔. جیسا کہ اوپر بیان کیا گیا ہے، ہمارے ہائپر پیرامیٹرس میں اکثر ایک فنکشنل شکل، زیادہ سے زیادہ/منہ قدریں، اور دوسرے ہائپر پیرامیٹرس سے درجہ بندی کا تعلق ہوتا ہے۔ اپنے ایم ایل الگورتھم اور اپنے ڈیٹا کے بارے میں اپنے علم کا استعمال کرتے ہوئے، ہم اپنی تلاش کی جگہ کی وضاحت کر سکتے ہیں۔

اگلا، ہمیں چاہئے ہمارے مقصدی فنکشن کی وضاحت کریں۔، جس کا استعمال یہ جانچنے کے لیے کیا جاتا ہے کہ ہمارا ہائپر پیرامیٹر مجموعہ کتنا "اچھا" ہے۔ کچھ مثالوں میں کلاسک ML نقصان کے افعال شامل ہیں، جیسے RMSE یا AUC۔

زبردست! اب جب کہ ہمارے پاس تلاش کی ایک محدود جگہ ہے اور کامیابی کی پیمائش کرنے کا ایک طریقہ ہے، ہم تلاش شروع کرنے کے لیے تیار ہیں…

2.2 — تکراری بایسیئن آپٹیمائزیشن

Bayesian optimization ایک ترتیب وار الگورتھم ہے جو کسی مقصدی فنکشن کے مطابق "کامیاب" ہونے کے اعلی امکان کے ساتھ ہائپر اسپیس میں پوائنٹس تلاش کرتا ہے۔ TPE بایسیئن آپٹیمائزیشن کا فائدہ اٹھاتا ہے لیکن کارکردگی کو بہتر بنانے اور تلاش کی جگہ کی پیچیدگی کو سنبھالنے کے لیے کچھ ہوشیار چالوں کا استعمال کرتا ہے…

2.2.0 — تصوراتی ترتیب

پہلی چال ماڈلنگ ہے۔ P(x|y) بجائے P(y|x)…

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 6: مشروط امکان جسے TPE حل کرتا نظر آتا ہے۔ مصنف کی طرف سے تصویر.

Bayesian اصلاح عام طور پر ماڈل کی طرف نظر آتی ہے۔ P(y|x)، جو ایک مقصدی فنکشن ویلیو کا امکان ہے (y) دیے گئے ہائپر پیرامیٹر (x)۔ TPE اس کے برعکس کرتا ہے - یہ ماڈل کی طرح لگتا ہے۔ P(x|y)، جو کہ ہائپرپیرامیٹر کا امکان ہے (x), مقصد فنکشن کی قدر کو دیکھتے ہوئے (y).

مختصراً، TPE بہترین معروضی فنکشن ویلیوز تلاش کرنے کی کوشش کرتا ہے، پھر متعلقہ ہائپر پیرامیٹر کا تعین کرتا ہے۔

اس بہت اہم سیٹ اپ کے ساتھ، آئیے اصل الگورتھم میں آتے ہیں۔

2.2.1 — ہمارے ڈیٹا کو "اچھے" اور "خراب" گروپس میں تقسیم کریں۔

یاد رکھیں، ہمارا مقصد کچھ معروضی فنکشن کے مطابق بہترین ہائپر پیرامیٹر اقدار کو تلاش کرنا ہے۔ تو، ہم کیسے فائدہ اٹھا سکتے ہیں P(x|y) ایسا کرنے کے لئے؟

سب سے پہلے، TPE ہمارے مشاہدہ شدہ ڈیٹا پوائنٹس کو دو گروپوں میں تقسیم کرتا ہے: اچھا، اشارہ کیا گیا ہے۔ g(x)، اور بری، اشارہ کیا گیا ہے۔ l(x). اچھے اور برے کے درمیان کٹ آف کا تعین صارف کے بیان کردہ پیرامیٹر گاما (γ) سے ہوتا ہے، جو مقصدی فنکشن پرسنٹائل سے مطابقت رکھتا ہے جو ہمارے مشاہدات کو تقسیم کرتا ہے (y*).

لہذا، γ = 0.5 کے ساتھ، ہماری معروضی فنکشن ویلیو جو ہمارے مشاہدات کو تقسیم کرتی ہے (y*) ہمارے مشاہدہ شدہ پوائنٹس کا میڈین ہوگا۔

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 7: p(x|y) کو دو سیٹوں میں تقسیم کریں۔ مصنف کی طرف سے تصویر.

جیسا کہ شکل 7 میں دکھایا گیا ہے، ہم رسمی شکل دے سکتے ہیں۔ p(x|y) مندرجہ بالا فریم ورک کا استعمال کرتے ہوئے. اور، سمندری ڈاکو مشابہت کے ساتھ رول کرنے کے لیے…

سمندری ڈاکو کا نقطہ نظر: ان جگہوں کو دیکھتے ہوئے جنہیں ہم پہلے ہی دریافت کر چکے ہیں، l(x) بہت کم خزانے والی جگہوں کی فہرست بناتا ہے اور g(x) بہت سارے خزانے والی جگہوں کی فہرست بناتا ہے۔

2.2.32— "امید بخش" اسکور کا حساب لگائیں۔

دوسرا، TPE اس بات کی وضاحت کرتا ہے کہ ہمیں کس طرح غیر مشاہدہ شدہ ہائپر پیرامیٹر کے امتزاج کا جائزہ لینا چاہئے "امید" سکور.

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 8: امید افزا سکور کی تعریف۔ مصنف کی طرف سے تصویر.

شکل 8 ہمارے امید افزا سکور کی وضاحت کرتی ہے (P)، جو درج ذیل اجزاء کے ساتھ صرف ایک تناسب ہے…

  • عدد: ہائپرپیرامیٹرس کے سیٹ کا مشاہدہ کرنے کا امکان (x)، متعلقہ مقصد کے فنکشن کی قدر ہے "اچھا".
  • ڈینومینیٹر: ہائپرپیرامیٹرس کے سیٹ کا مشاہدہ کرنے کا امکان (x)، متعلقہ مقصد کے فنکشن کی قدر ہے "بری".

"امید" کی قدر جتنی بڑی ہوگی، ہمارے ہائپر پیرامیٹر کا امکان اتنا ہی زیادہ ہوگا۔ x ایک "اچھا" مقصدی فنکشن تیار کرے گا۔

سمندری ڈاکو کا نقطہ نظر: امید افزا ظاہر کرتا ہے کہ ہمارے علاقے میں دیئے گئے مقام میں بہت زیادہ خزانہ ہونے کا امکان کتنا ہے۔

آگے بڑھنے سے پہلے جلدی سے ایک طرف، اگر آپ Bayesian آپٹیمائزیشن سے واقف ہیں، تو یہ مساوات ایک حصول فنکشن کے طور پر کام کرتی ہے اور اس کے متناسب ہے۔ متوقع بہتری (EI).

2.2.3— ایک امکانی کثافت کا تخمینہ بنائیں

تیسرا، TPE بذریعہ "امید بخش" سکور کا جائزہ لیتا ہے۔ مرکب ماڈل. مکسچر ماڈلز کا خیال یہ ہے کہ ایک سے زیادہ امکانی تقسیم کو لے کر انہیں ایک لکیری امتزاج کا استعمال کرتے ہوئے ایک ساتھ رکھنا ہے۔ ایسآرسی. ان مشترکہ امکانی تقسیم کو پھر امکانی کثافت کے تخمینے تیار کرنے کے لیے استعمال کیا جاتا ہے۔

عام طور پر، مرکب ماڈلنگ کا عمل ہے…

  1. ہمارے پوائنٹس کی تقسیم کی قسم کی وضاحت کریں۔ ہمارے معاملے میں، اگر ہمارا متغیر واضح ہے تو ہم دوبارہ وزنی زمرہ بندی کا استعمال کرتے ہیں اور اگر اس کے عددی ہیں تو ہم گاوسی (یعنی نارمل) یا یکساں تقسیم کا استعمال کرتے ہیں۔
  2. ہر نقطہ پر اعادہ کریں اور اس مقام پر تقسیم داخل کریں۔
  3. امکانی کثافت کا تخمینہ حاصل کرنے کے لیے تمام تقسیموں کے بڑے پیمانے کو جمع کریں۔

نوٹ کریں کہ یہ عمل دونوں سیٹوں کے لیے انفرادی طور پر چلایا جاتا ہے۔ l(x) اور g(x)۔

آئیے تصویر 9 میں ایک مثال کے ذریعے چلتے ہیں…

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 9: کٹی ہوئی گاوسی تقسیم کی مثال 3 ہائپر پیرامیٹر مشاہدات پر فٹ ہے۔ مصنف کی طرف سے تصویر.

ہر مشاہدے کے لیے (ایکس محور پر نیلے نقطے)، ہم ایک عام تقسیم ~N(μ,σ) بناتے ہیں، جہاں…

  • μ (mu) ہماری عام تقسیم کا مطلب ہے۔ اس کی قدر x محور کے ساتھ ہمارے نقطہ کا مقام ہے۔
  • σ (سگما) ہماری عام تقسیم کا معیاری انحراف ہے۔ اس کی قیمت قریب ترین پڑوسی نقطہ کا فاصلہ ہے۔.

اگر پوائنٹس ایک دوسرے کے قریب ہیں تو، معیاری انحراف چھوٹا ہوگا اور اس طرح تقسیم بہت لمبی ہوگی اور اس کے برعکس، اگر پوائنٹس کو الگ الگ پھیلایا جائے تو تقسیم فلیٹ ہوگی (شکل 10)…

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 10: عام تقسیم کی شکل پر معیاری انحراف کے اثرات کی مثال۔ مصنف کی طرف سے تصویر.

بحری قزاقوں کا نقطہ نظر: NA - بحری قزاق مرکب ماڈل کے ساتھ بہت اچھے نہیں ہیں۔

آگے بڑھنے سے پہلے ایک اور فوری طور پر: اگر آپ لٹریچر پڑھ رہے ہیں تو آپ دیکھیں گے کہ TPE "ٹرنکیٹڈ" گاوسیز کا استعمال کرتا ہے، جس کا سیدھا مطلب ہے کہ گاوسی اس حد کے پابند ہیں جو ہم نے اپنی ہائپر پیرامیٹر کنفیگریشن میں +/- لامحدودیت تک بڑھانے کے بجائے بیان کیا ہے۔ .

2.2.4 — دریافت کرنے کے لیے اگلے نقطہ کا تعین کرنا!

آئیے ان ٹکڑوں کو اکٹھا کریں۔ اب تک، ہم نے 1) معروضی فنکشن مشاہدات حاصل کیے ہیں، 2) اپنے "امید بخش" فارمولے کی وضاحت کی ہے، اور 3) پیشگی اقدار پر مبنی مرکب ماڈلز کے ذریعے امکانی کثافت کا تخمینہ بنایا ہے۔ ہمارے پاس دیئے گئے نقطہ کا اندازہ کرنے کے لئے تمام ٹکڑے ہیں!

ہمارا پہلا قدم دونوں کے لیے اوسط امکان کثافت فنکشن (پی ڈی ایف) بنانا ہے۔ g(x) اور l(x).

ہائپر پیرامیٹر ہائپر پیرامیٹر ٹیوننگ ماڈل ٹیوننگ مشین لرننگ ڈیٹا سائنس سکلیرن ماڈل ایم ایل آئی بی اسپارک ہائپر اپٹ ٹری پارزن تخمینہ لگانے والا ٹی پی ای ٹری بیسڈ پارزن ایسمٹیٹر ایم ایل فلو ڈیٹا برکس
شکل 11: 3 مشاہدہ شدہ پوائنٹس دیے گئے اوسط امکانی کثافت کا اوورلے۔ مصنف کی طرف سے تصویر.

ایک مثال کے عمل کو شکل 11 میں دکھایا گیا ہے — سرخ لکیر ہماری اوسط PDF ہے اور صرف تمام PDFs کا مجموعہ ہے جسے PDFs کی تعداد سے تقسیم کیا گیا ہے۔

اوسط پی ڈی ایف کا استعمال کرتے ہوئے، ہم کسی بھی ہائپر پیرامیٹر قدر کا امکان حاصل کر سکتے ہیں (x) میں ہونا g(x) or l(x).

مثال کے طور پر، ہم کہتے ہیں کہ شکل 11 میں مشاہدہ شدہ اقدار کا تعلق "اچھے" سیٹ سے ہے، g(x). ہماری اوسط پی ڈی ایف کی بنیاد پر، اس بات کا امکان نہیں ہے کہ 3.9 یا 0.05 کی ہائپر پیرامیٹر ویلیو "اچھے" سیٹ سے تعلق رکھتی ہو۔ اس کے برعکس، ~ 1.2 کی ایک ہائپر پیرامیٹر قدر کا "اچھے" سیٹ سے تعلق ہونے کا بہت امکان ہے۔

اب یہ تصویر کا صرف ایک آدھا حصہ ہے۔ ہم "خراب" سیٹ کے لیے وہی طریقہ کار لاگو کرتے ہیں، l(x) چونکہ ہم زیادہ سے زیادہ کرنا چاہتے ہیں۔ g(x) / l(x), امید افزا پوائنٹس کہاں واقع ہونے چاہئیں g(x) اعلی ہے اور l(x) کم ہے.

بہت اچھا ، ٹھیک ہے؟

ان احتمالی تقسیموں کے ساتھ، ہم اپنے درختوں سے بنائے گئے ہائپر پیرامیٹرس سے نمونہ لے سکتے ہیں اور ہائپر پیرامیٹرس کا مجموعہ تلاش کر سکتے ہیں جو زیادہ سے زیادہ "امید بخشتا ہے" اور اس طرح تلاش کرنے کے قابل ہے۔

سمندری ڈاکو کا نقطہ نظر: اگلا مقام جسے ہم کھودتے ہیں وہ مقام ہے جو (بہت سا خزانہ رکھنے کا امکان) / (تھوڑا خزانہ رکھنے کا امکان) کو زیادہ سے زیادہ کرتا ہے۔

اب جب کہ آپ جانتے ہیں کہ یہ کیسے کام کرتا ہے، یہاں اوپن سورس پیکج HyperOpt کے ذریعے TPE کو لاگو کرنے کے لیے کچھ عملی تجاویز ہیں۔

3.1 — ہائپر اوپٹ ایپ کا ڈھانچہ

عام طور پر، HyperOpt کا فائدہ اٹھاتے وقت تین اہم اقدامات ہوتے ہیں…

  1. تلاش کی جگہ کی وضاحت کریں، جو کہ صرف ان ہائپرپیرامیٹرس کی حدود اور فنکشنل شکلیں ہیں جنہیں آپ بہتر بنانا چاہتے ہیں۔
  2. فٹنگ فنکشن کی وضاحت کریں، جو آپ کو کال کرتا ہے۔ model.fit() دی گئی ٹرین/ٹیسٹ اسپلٹ پر فنکشن۔
  3. مقصدی فنکشن کی وضاحت کریں، جو کہ کوئی بھی کلاسک درستگی میٹرکس ہے، جیسے RMSE یا AUC۔

بدقسمتی سے، ان خودکار ٹیوننگ طریقوں کو اب بھی ڈیٹا سائنسدان سے ڈیزائن ان پٹ کی ضرورت ہوتی ہے - یہ مکمل طور پر مفت لنچ نہیں ہے۔ تاہم، کہانی کے مطابق TPE ہائپر پیرامیٹر کی غلط تصریح (وجہ کے اندر) کے لیے کافی مضبوط ہے۔

3.2— ٹپس اینڈ ٹرکس

  • HyperOpt دونوں کے ذریعے متوازی ہے۔ اپاچی چمک اور منگو ڈی بی. اگر آپ ایک سے زیادہ کور کے ساتھ کام کر رہے ہیں، چاہے وہ کلاؤڈ میں ہو یا آپ کی مقامی مشین پر، یہ رن ٹائم کو ڈرامائی طور پر کم کر سکتا ہے۔
  • اگر آپ اپاچی اسپارک کے ذریعے ٹیوننگ کے عمل کو متوازی کر رہے ہیں تو، a کا استعمال کریں۔ SparkTrialsسنگل نوڈ ایم ایل ماڈلز کے لیے آبجیکٹ (سکلیرن) اور اے Trails متوازی ایم ایل ماڈلز (MLlib) کے لیے آبجیکٹ۔ کوڈ نیچے ہے۔
  • ایم ایل فلو آپ کے ماڈل کے رنز کو ٹریک کرنے کا ایک اوپن سورس طریقہ ہے۔ یہ آسانی سے HyperOpt کے ساتھ ضم ہوجاتا ہے۔
  • بہت جلد تلاش کی جگہ کو تنگ نہ کریں۔ ہائپرپیرامیٹر کے کچھ مجموعے حیرت انگیز طور پر موثر ہوسکتے ہیں۔
  • تلاش کی جگہ کی وضاحت مشکل ہو سکتی ہے، خاص طور پر اگر آپ کو معلوم نہیں ہے۔ آپ کے ہائپرپیرامیٹر کی فعال شکل. تاہم، ذاتی تجربے سے TPE ان فنکشنل شکلوں کی غلط وضاحت کے لیے کافی مضبوط ہے۔
  • ایک اچھے مقصدی فنکشن کا انتخاب ایک طویل سفر طے کرتا ہے۔ زیادہ تر معاملات میں، غلطی برابر نہیں بنائی جاتی ہے۔ اگر کسی خاص قسم کی خرابی زیادہ پریشانی کا باعث ہے تو اس منطق کو اپنے فنکشن میں شامل کرنا یقینی بنائیں۔

3.3— ایک ضابطہ مثال

HyperOpt کو تقسیم شدہ طریقے سے چلانے کے لیے یہاں کچھ کوڈ ہے۔ اسے کتاب کے کوڈ سے اخذ کیا گیا تھا، مشین لرننگ انجینئرنگ ان ایکشن - یہاں ہے گٹ ریپو.

اس ٹکڑوں کی کچھ اچھی خصوصیات میں متوازی کے ذریعے شامل ہیں۔ اپاچی چمک اور ماڈل لاگنگ کے ذریعے ایم ایل فلو. یہ بھی نوٹ کریں کہ یہ ٹکڑا ایک sklearn RandomForestRegressor کو بہتر بناتا ہے — آپ کو اپنی ضروریات کے مطابق ماڈل اور فٹنگ فنکشن کو تبدیل کرنا پڑے گا۔

اور آپ کے پاس یہ ہے — HyperOpt تمام شان میں!

امید کے اہم نکات کو ہتھوڑا کرنے کے لیے، آئیے جلدی سے دوبارہ جائزہ لیں۔

ہائپر پیرامیٹر ٹیوننگ ایم ایل ماڈل لائف سائیکل کا ایک ضروری حصہ ہے، لیکن اس میں وقت لگتا ہے۔ سیکوینشل ماڈل پر مبنی آپٹیمائزیشن (SMBO) الگورتھم آپٹیممز کے لیے پیچیدہ ہائپر اسپیسز کو تلاش کرنے میں سبقت لے جاتے ہیں، اور انہیں ہائپر پیرامیٹر ٹیوننگ پر لاگو کیا جا سکتا ہے۔ درختوں پر مبنی پارزن تخمینہ ساز (TPE) ایک بہت ہی موثر SMBO ہے اور Bayesian Optimization اور Random Search دونوں کو پیچھے چھوڑتا ہے۔

TPE مندرجہ ذیل اقدامات کو روکنے کے معیار تک دہراتی ہے:

  1. مشاہدہ شدہ پوائنٹس کو "اچھے" اور "خراب" سیٹوں میں تقسیم کریں، کچھ ہائپر پیرامیٹر، گاما کے مطابق۔
  2. امکانی کثافت کا اوسط تخمینہ تیار کرنے کے لیے ایک مرکب ماڈل کو "اچھے" اور "خراب" سیٹ دونوں پر فٹ کریں۔
  3. وہ نقطہ منتخب کریں جو "امید بخش" سکور کو بہتر بناتا ہے، جو "اچھے" اور "خراب" سیٹوں میں ہونے کے امکان کا اندازہ لگانے کے لیے مرحلہ 2 کا فائدہ اٹھاتا ہے۔

آخر میں، ہمارے پاس واقعی ایک زبردست کوڈ کا ٹکڑا ہے جو دکھاتا ہے کہ SparkTrials کے ذریعے HyperOpt کو کیسے متوازی بنایا جائے۔ یہ ہماری تمام تکرار کو MLflow میں بھی لاگ کرتا ہے۔

HyperOpt Demystified ماخذ سے دوبارہ شائع کیا گیا https://towardsdatascience.com/hyperopt-demystified-3e14006eb6fa?source=rss—-7f60cf5620c9—4 بذریعہ https://towardsdatascience.com/feed

<!–

->

ٹائم اسٹیمپ:

سے زیادہ بلاکچین کنسلٹنٹس