مشین لرننگ میں کس حد سے زیادہ فائدہ اٹھانا ہے اور اس سے کیسے بچنا ہے؟



اس مضمون میں مشین لرننگ میں اوورفٹنگ کو مثال کے طور پر اور مشینوں کے سیکھنے کے ماڈل میں اوور فٹنگ کا پتہ لگانے سے بچنے کے لئے کچھ تکنیکوں کی مدد سے بتایا گیا ہے۔

مشین لرننگ ماڈل بنانا صرف اعداد و شمار کو کھانا کھلانا نہیں ہے ، بہت ساری کمییں ہیں جو کسی بھی ماڈل کی درستگی کو متاثر کرتی ہیں۔ میں اوورفٹنگ مشین لرننگ میں ایسی ہی ایک کمی ہے جو ماڈل کی درستگی کے ساتھ ساتھ درستگی میں بھی رکاوٹ ہے۔ اس مضمون میں مندرجہ ذیل موضوعات کا احاطہ کیا گیا ہے۔

مشین لرننگ میں اوورفٹنگ کیا ہے؟

جب ہم اسے ضرورت سے کہیں زیادہ ڈیٹا کھلا دیتے ہیں تو اعداد و شمار کے ماڈل کو زیادہ مناسب سمجھا جاتا ہے۔ اس سے وابستہ ہونے کے ل imagine ، زیادہ سے زیادہ ملبوسات میں فٹ ہونے کی کوشش کرنے کا تصور کریں۔





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



اوورفٹنگ کی مثالیں

مثال 1

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



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

یہ چل رہا ہے بہت لمبے عرصے کے لئے ایک کم لاگت کا مطلب ہوگا لیکن یہ ڈیٹا سیٹ سے شور والے ڈیٹا کو بھی فٹ کرے گا۔ نتیجہ نیچے گراف میں کچھ ایسا ہی نظر آئے گا۔

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

آئیے اب ہم کسی مسئلے کے بیان کی مدد سے ایک مزید وضاحتی مثال پر غور کریں۔

مثال 2

مسئلہ یہ بیان: آئیے اس پر غور کریں کہ ہم پیش گوئی کرنا چاہتے ہیں کہ اگر فٹ بال کا کوئی کھلاڑی ٹائر 2 لیگ میں اس کی موجودہ کارکردگی کی بنیاد پر ٹائیر 1 فٹ بال کلب میں سلاٹ لگائے گا۔

اب سوچئے ، ہم ایسے 10،000 کھلاڑیوں کے ساتھ ماڈل کو ٹریننگ اور فٹ کرتے ہیں جس کے نتائج ہیں۔ جب ہم اصلی اعداد و شمار کے سیٹ پر نتائج کی پیش گوئی کرنے کی کوشش کرتے ہیں ، تو ہم کہتے ہیں کہ ہمیں 99 acc درستگی ملی ہے۔ لیکن مختلف ڈیٹا سیٹ پر درستگی 50 فیصد کے لگ بھگ ہوتی ہے۔ اس کا مطلب یہ ہے کہ ماڈل ہمارے ٹریننگ کے اعداد و شمار اور نہ دیکھے ہوئے ڈیٹا سے بہتر انداز میں آ جاتا ہے۔

یہی چیز زیادہ مناسب دکھائی دیتی ہے۔ مشین لرننگ اور یہاں تک کہ ڈیٹا سائنس میں بھی یہ ایک بہت عام مسئلہ ہے۔ اب ہمیں اشارے اور شور کو سمجھیں۔

سگنل بمقابلہ شور

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

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

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

انڈرفٹنگ کیا ہے؟

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

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

اوورفٹنگ کا پتہ لگانے کا طریقہ

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

اس مسئلے کو حل کرنے کے ل we ، ہم ابتدائی اعداد و شمار کو الگ ٹریننگ اور ٹیسٹ ڈیٹا سیٹ میں تقسیم کرسکتے ہیں۔ اس تکنیک کی مدد سے ، ہم حقیقت میں اندازہ لگا سکتے ہیں کہ ہمارا ماڈل نئے اعداد و شمار کے ساتھ کتنی اچھی کارکردگی کا مظاہرہ کرے گا۔

C ++ میں خلاصہ کیا ہے؟

آئیے ہم اسے ایک مثال کے ساتھ سمجھتے ہیں ، تصور کریں کہ ہمیں تربیت سیٹ پر 90+ فیصد درستگی اور ٹیسٹ سیٹ پر 50 فیصد درستگی ملتی ہے۔ پھر ، خود بخود یہ ماڈل کے لئے سرخ جھنڈا ہوگا۔

اوورفٹنگ کا پتہ لگانے کا دوسرا طریقہ ایک سادہ ماڈل کے ساتھ شروع کرنا ہے جو ایک بینچ مارک کے طور پر کام کرے گا۔

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

مشین لرننگ میں اوور فٹنگ سے کیسے بچیں؟

مشین لرننگ میں زیادہ مناسب سے بچنے کے لئے متعدد تراکیب موجود ہیں جن کی فہرست نیچے دی گئی ہے۔

  1. کراس کی توثیق

  2. مزید ڈیٹا کے ساتھ تربیت

  3. خصوصیات کو ہٹانا

  4. جلدی رکنا

  5. باقاعدہ بنانا

  6. جمع کرنا

1. کراس کی توثیق

اوور فٹنگ سے بچنے / روکنے کے لئے سب سے طاقتور خصوصیات میں سے ایک کراس توثیق ہے۔ اس کے پیچھے خیال یہ ہے کہ ابتدائی تربیت کے اعداد و شمار کو منی ٹرین ٹیسٹ-اسپلٹ پیدا کرنے کے ل use استعمال کریں ، اور پھر ان ماڈلوں کو اپنے ماڈل کے مطابق بنائیں۔

ایک معیاری K- گنا توثیق میں ، ڈیٹا کو K-subts میں تقسیم کیا جاتا ہے جسے فولڈ بھی کہا جاتا ہے۔ اس کے بعد ، الگورتھم کو K-1 گنا پر تکرار سے تربیت دی جاتی ہے جبکہ باقی پرتوں کو ٹیسٹ سیٹ کے طور پر استعمال کرتے ہیں ، جسے ہولڈ آئوٹ فول بھی کہا جاتا ہے۔

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

2. مزید ڈیٹا کے ساتھ تربیت

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

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

3. خصوصیات کو ہٹانا

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

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

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

4. جلدی رکنا

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

لہذا بنیادی طور پر ، جلدی روکنے کا مطلب یہ ہے کہ ماڈل اس مقام سے گزرنے سے پہلے تربیت کے عمل کو روک دے جہاں ماڈل تربیت کے اعداد و شمار کو پورا کرنا شروع کرتا ہے۔ یہ تکنیک زیادہ تر استعمال ہوتی ہے گہری سیکھنے .

5. باقاعدہ بنانا

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

ترتیب دیں لائبریری سی ++

اکثر ، باقاعدگی سے ہائپر پارامیٹر بھی ہوتا ہے۔ اس کا مطلب ہے کہ اسے کراس توثیق کے ذریعہ بھی بنایا جاسکتا ہے۔

6. جمع کرنا

یہ تکنیک بنیادی طور پر مشین لرننگ کے مختلف ماڈلز کی پیش گوئوں کو یکجا کرتی ہے۔ جمع کرنے کے لئے دو عام ترین طریقوں کو ذیل میں درج کیا گیا ہے۔

  • بیگنگ ماڈلز سے زیادہ فائدہ اٹھانے والے موقع کو کم کرنے کی کوشش کرتی ہے

  • آسان ماڈل کی پیش گوئی کرنے والی لچک کو بہتر بنانے کی کوششوں کو فروغ دینا

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

اچھ ؟ی فٹ کیا ہے؟

شماریاتی ماڈلنگ میں ، فٹ کی خوبی سے مراد اس بات کی نشاندہی ہوتی ہے کہ نتائج یا پیش گوئی کی گئی قدریں مشاہدہ شدہ یا حقیقی قدروں سے کتنی قریب سے ملتی ہیں۔ایک ماڈل جس نے سگنل کے بجائے شور سیکھا ہے اس کی افادیت کردی گئی ہے کیونکہ یہ تربیت کے ڈیٹا سیٹ پر فٹ ہوجائے گی لیکن اس میں نئے ڈیٹا سیٹ کے ساتھ غریب کارکردگی ہوگی۔

تعصب اور تغیر کے مابین تجارت بند

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

تعصب - تغیر بخش تجارت کا کسی بھی مشین لرننگ ماڈل کے ل the پیچیدگی ، انڈرفٹنگ اور زیادہ مناسب لگانے کا تعین کرنے پر بہت اہم اثر پڑتا ہے۔

تعصب

یہ ماڈل کی پیش گوئ اقدار اور اصل یا حقیقی قدروں کے مابین فرق کے سوا کچھ نہیں ہے۔ ماڈل کے لئے پیچیدہ اشاروں سے سیکھنا ہمیشہ آسان نہیں ہوتا ہے۔

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

تغیر

اس سے تربیت کے اعداد و شمار میں مخصوص سیٹوں پر ماڈل کی حساسیت کا حوالہ ملتا ہے۔ اعلی تغیر بخش الگورتھم ایک عجیب و غریب ماڈل تیار کرے گا جو تربیت کے سیٹ سے بالکل مختلف ہے۔

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

تعصب - متغیر تجارت

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

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

  • وہ ان ماڈلز کی تربیت کریں گے جو مستقل ، لیکن اوسطا غلط ہیں۔

  • ان میں لکیری یا پیرامیٹرک الگورتھم ، جیسے رجعت ، ، وغیرہ

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

  • وہ ان ماڈلز کی تربیت کریں گے جو اوسطا متضاد لیکن درست ہیں۔

  • ان میں نان لکیری یا غیر پیرامیٹرک الگورتھم جیسے شامل ہیں ، ، وغیرہ

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

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

ہم یہاں آپ کے سفر کے ہر قدم میں آپ کی مدد کرنے اور ایک ایسا نصاب تیار کرتے ہیں جو طلباء اور پیشہ ور افراد کے لئے ڈیزائن کیا گیا ہے جو ایک بننا چاہتے ہیں . کورس آپ کو ازگر کے پروگرامنگ میں آغاز فراہم کرنے اور مختلف اور بنیادی ایڈوانس تصورات کے لئے آپ کو تربیت دینے کے لئے ڈیزائن کیا گیا ہے پسند ہے ، ، وغیرہ

جاوا میں کلائنٹ سرور ساکٹ پروگرامنگ

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