AI-For-Beginners/translations/ur/lessons/4-ComputerVision/08-TransferLearning
leestott c6463675e6 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00
..
lab 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00
AdversarialCat_TF.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00
Dropout.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00
README.md 🌐 Update translations via Co-op Translator 2025-08-26 12:09:18 +00:00
TrainingTricks.md 🌐 Update translations via Co-op Translator 2025-08-26 12:09:18 +00:00
TransferLearningPyTorch.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00
TransferLearningTF.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 04:44:09 +00:00

README.md

پہلے سے تربیت یافتہ نیٹ ورکس اور ٹرانسفر لرننگ

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

لیکچر سے پہلے کا کوئز

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

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

پہلے سے تربیت یافتہ ماڈلز بطور فیچر ایکسٹریکٹرز

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

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

  • VGG-16/VGG-19 جو نسبتاً سادہ ماڈلز ہیں لیکن پھر بھی اچھی درستگی دیتے ہیں۔ اکثر VGG کو پہلی کوشش کے طور پر استعمال کرنا ایک اچھا انتخاب ہوتا ہے تاکہ دیکھا جا سکے کہ ٹرانسفر لرننگ کیسے کام کر رہی ہے۔
  • ResNet مائیکروسافٹ ریسرچ کی طرف سے 2015 میں تجویز کردہ ماڈلز کا ایک خاندان ہے۔ ان میں زیادہ تہیں ہوتی ہیں، اور اس لیے زیادہ وسائل لیتے ہیں۔
  • MobileNet ماڈلز کا ایک خاندان ہے جس کا سائز کم ہوتا ہے، موبائل ڈیوائسز کے لیے موزوں۔ انہیں استعمال کریں اگر آپ کے پاس وسائل کم ہیں اور آپ تھوڑی سی درستگی قربان کر سکتے ہیں۔

یہاں VGG-16 نیٹ ورک کے ذریعے بلی کی تصویر سے نکالی گئی خصوصیات کی مثال دی گئی ہے:

VGG-16 کے ذریعے نکالی گئی خصوصیات

بلیوں اور کتوں کا ڈیٹاسیٹ

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

✍️ مشق: ٹرانسفر لرننگ

آئیے متعلقہ نوٹ بکس میں ٹرانسفر لرننگ کو عملی طور پر دیکھتے ہیں:

ایڈورسریل بلی کو بصری بنانا

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

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

تصویری آپٹیمائزیشن لوپ

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

نتیجہ بہتر بنانے کے لیے، ہم نقصان کے فنکشن میں ایک اور اصطلاح شامل کر سکتے ہیں، جسے ویریئشن لاس کہا جاتا ہے۔ یہ ایک میٹرک ہے جو دکھاتا ہے کہ تصویر کے پڑوسی پکسلز کتنے مماثل ہیں۔ ویریئشن لاس کو کم کرنے سے تصویر ہموار ہو جاتی ہے، اور شور ختم ہو جاتا ہے - اس طرح زیادہ بصری طور پر دلکش پیٹرنز ظاہر ہوتے ہیں۔ یہاں ایسی "مثالی" تصاویر کی مثال دی گئی ہے، جنہیں بلی اور زیبرا کے طور پر اعلیٰ امکان کے ساتھ درجہ بندی کیا گیا ہے:

مثالی بلی مثالی زیبرا
مثالی بلی مثالی زیبرا

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

کتے کی تصویر بلی کے طور پر درجہ بندی کی گئی کتے کی تصویر
کتے کی اصل تصویر بلی کے طور پر درجہ بندی کی گئی کتے کی تصویر

اوپر کے نتائج کو دوبارہ پیدا کرنے کے لیے کوڈ دیکھیں درج ذیل نوٹ بک میں:

نتیجہ

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

🚀 چیلنج

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

لیکچر کے بعد کا کوئز

جائزہ اور خود مطالعہ

اپنے ماڈلز کو تربیت دینے کے کچھ دیگر طریقوں کے بارے میں اپنے علم کو گہرا کرنے کے لیے TrainingTricks.md کو پڑھیں۔

اسائنمنٹ

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

ڈس کلیمر:
یہ دستاویز AI ترجمہ سروس Co-op Translator کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستگی ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے لیے ہم ذمہ دار نہیں ہیں۔