سمینٹک ایمبیڈنگز، جیسے Word2Vec اور GloVe، دراصل زبان ماڈلنگ کی طرف پہلا قدم ہیں - ایسے ماڈلز بنانا جو کسی طرح زبان کی فطرت کو سمجھتے (یا نمائندگی کرتے) ہیں۔
زبان ماڈلنگ کے پیچھے بنیادی خیال یہ ہے کہ انہیں بغیر لیبل والے ڈیٹا سیٹس پر غیر نگرانی شدہ طریقے سے تربیت دی جائے۔ یہ اس لیے اہم ہے کیونکہ ہمارے پاس بغیر لیبل والے متن کی بڑی مقدار دستیاب ہے، جبکہ لیبل والے متن کی مقدار ہمیشہ محدود ہوگی کیونکہ لیبلنگ پر خرچ ہونے والی محنت محدود ہوتی ہے۔ اکثر اوقات، ہم ایسے زبان ماڈلز بنا سکتے ہیں جو غائب الفاظ کی پیش گوئی کر سکیں، کیونکہ متن میں کسی بھی بے ترتیب لفظ کو ماسک کرنا اور اسے تربیتی نمونے کے طور پر استعمال کرنا آسان ہے۔
پچھلی مثالوں میں، ہم نے پہلے سے تربیت یافتہ سمینٹک ایمبیڈنگز استعمال کیں، لیکن یہ دیکھنا دلچسپ ہے کہ یہ ایمبیڈنگز کیسے تربیت دی جا سکتی ہیں۔ کئی ممکنہ خیالات ہیں جو استعمال کیے جا سکتے ہیں:
- N-Gram زبان ماڈلنگ، جہاں ہم N پچھلے ٹوکنز کو دیکھ کر ایک ٹوکن کی پیش گوئی کرتے ہیں (N-gram)۔
-
Continuous Bag-of-Words (CBoW)، جہاں ہم ٹوکن سیکوئنس
$W_{-N}$ , ...,$W_N$ میں درمیانی ٹوکن$W_0$ کی پیش گوئی کرتے ہیں۔ -
Skip-gram، جہاں ہم درمیانی ٹوکن
$W_0$ سے پڑوسی ٹوکنز {$W_{-N},\dots, W_{-1}, W_1,\dots, W_N$} کی پیش گوئی کرتے ہیں۔
تصویر اس پیپر سے لی گئی ہے۔
اپنی تعلیم کو درج ذیل نوٹ بکس میں جاری رکھیں:
پچھلے سبق میں ہم نے دیکھا کہ الفاظ کی ایمبیڈنگز جادو کی طرح کام کرتی ہیں! اب ہم جانتے ہیں کہ الفاظ کی ایمبیڈنگز کی تربیت کوئی بہت پیچیدہ کام نہیں ہے، اور اگر ضرورت ہو تو ہم اپنے مخصوص ڈومین کے متن کے لیے اپنی ایمبیڈنگز تربیت دے سکتے ہیں۔
- PyTorch کی آفیشل زبان ماڈلنگ ٹیوٹوریل۔
- TensorFlow کی آفیشل Word2Vec ماڈل تربیت کی ٹیوٹوریل۔
- gensim فریم ورک کا استعمال کرتے ہوئے چند لائنز کوڈ میں سب سے زیادہ استعمال ہونے والی ایمبیڈنگز کی تربیت اس دستاویز میں بیان کی گئی ہے۔
لیب میں، ہم آپ کو چیلنج دیتے ہیں کہ اس سبق کے کوڈ میں ترمیم کریں تاکہ CBoW کی بجائے Skip-Gram ماڈل تربیت دی جا سکے۔ تفصیلات پڑھیں۔
