ہمارے ساتھ رابطہ

متن کی درجہ بندی کیسے کام کرتی ہے؟

اے آئی 101

متن کی درجہ بندی کیسے کام کرتی ہے؟

mm

متن کی درجہ بندی متن کی ترتیب کا تجزیہ کرنے اور انہیں ایک لیبل تفویض کرنے، ان کے مواد کی بنیاد پر ایک گروپ میں ڈالنے کا عمل ہے۔ متن کی درجہ بندی تقریباً کسی بھی AI یا مشین لرننگ کے کام پر مشتمل ہے جس میں نیچرل لینگویج پروسیسنگ (NLP) شامل ہے۔ متن کی درجہ بندی کے ساتھ، ایک کمپیوٹر پروگرام مختلف کاموں کی ایک وسیع اقسام کو انجام دے سکتا ہے جیسے اسپام کی شناخت، جذبات کا تجزیہ، اور چیٹ بوٹ کے افعال۔ متن کی درجہ بندی بالکل کیسے کام کرتی ہے؟ متن کی درجہ بندی کرنے کے مختلف طریقے کیا ہیں؟ ہم ذیل میں ان سوالات کے جوابات تلاش کریں گے۔

متن کی درجہ بندی کی وضاحت

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

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

متن کی درجہ بندی کیسے کام کرتی ہے؟

تصویر: Quinn Dombrowski بذریعہ Flickr، CC BY SA 2.0، (https://www.flickr.com/photos/quinnanya/4714794045)

متن کی درجہ بندی کے زیادہ تر طریقوں کو تین مختلف زمروں میں سے ایک میں رکھا جا سکتا ہے: اصول پر مبنی طریقے یا مشین سیکھنے کے طریقے۔

اصول پر مبنی درجہ بندی کے طریقے

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

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

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

مشین لرننگ سسٹمز

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

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

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

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

بیگ آف ورڈز

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

تصویر: gk_ بذریعہ Machinelearning.co، (https://machinelearnings.co/text-classification-using-neural-networks-f5cd7b8765c6)

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

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

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

ٹرم فریکوئنسی-الٹی دستاویز کی فریکوئنسی (TF-IDF)

اس میں موجود الفاظ کی بنیاد پر کسی دستاویز کی نمائندگی کرنے کا ایک اور طریقہ ڈب کیا جاتا ہے۔ ٹرم فریکوئنسی-الٹی دستاویز کی فریکوئنسی (TF-IDF). TF-IDF نقطہ نظر ایک ویکٹر بھی بناتا ہے جو اس میں موجود الفاظ کی بنیاد پر دستاویز کی نمائندگی کرتا ہے، لیکن Bag-of-words کے برعکس یہ الفاظ ہیں ان کی فریکوئنسی سے زیادہ وزنی. TF-IDF دستاویزات میں الفاظ کی اہمیت پر غور کرتا ہے، یہ معلوم کرنے کی کوشش کرتا ہے کہ وہ لفظ دستاویز کے موضوع سے کتنا متعلقہ ہے۔ دوسرے لفظوں میں، TF-IDF تعدد کے بجائے مطابقت کا تجزیہ کرتا ہے اور فیچر ویکٹر میں الفاظ کی گنتی کو TF-IDF سکور سے بدل دیا جاتا ہے جس کا حساب پورے ڈیٹا سیٹ کے حوالے سے کیا جاتا ہے۔

ایک TF-IDF نقطہ نظر پہلے تعدد کی اصطلاح کا حساب لگا کر کام کرتا ہے، مخصوص دستاویز میں منفرد اصطلاحات کے ظاہر ہونے کی تعداد۔ تاہم، TF-IDF اثر و رسوخ کو محدود کرنے کا بھی خیال رکھتا ہے کہ انتہائی عام الفاظ جیسے "the"، "یا"، اور "اور"، کیونکہ یہ "اسٹاپ ورڈز" بہت عام ہیں لیکن دستاویز کے مواد کے بارے میں بہت کم معلومات فراہم کرتے ہیں۔ ان الفاظ کو رعایت دینے کی ضرورت ہے، جس سے مراد TF-IDF کا "الٹا دستاویز فریکوئنسی" حصہ ہے۔ ایسا اس لیے کیا جاتا ہے کہ جتنی زیادہ دستاویزات میں ایک مخصوص الفاظ ظاہر ہوتے ہیں، اس لفظ کو تمام دستاویزات کی فہرست میں موجود دیگر دستاویزات سے ممتاز کرنے میں اتنا ہی کم مفید ہوتا ہے۔ TF-IDF کسی لفظ کی اہمیت کا حساب لگانے کے لیے جو فارمولہ استعمال کرتا ہے وہ ان الفاظ کو محفوظ رکھنے کے لیے ڈیزائن کیا گیا ہے جو سب سے زیادہ متواتر اور سب سے زیادہ معنی خیز ہیں۔

TF-IDF اپروچ کے ذریعے بنائے گئے فیچر ویکٹرز میں معمول کی اقدار ہوتی ہیں جو کہ ایک کے برابر ہوتی ہیں، ہر لفظ کو ایک وزنی قدر تفویض کرتے ہیں جیسا کہ TF-IDF فارمولے کے حساب سے کیا جاتا ہے۔

لفظ ایمبیڈنگس۔

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

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

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

نتیجے کے طور پر، الفاظ کی سرایت ایک جملے کے اندر الفاظ کے سیاق و سباق کو پکڑنے میں بہتر ہے۔

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

پرتوں کو سرایت کرنا

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

لفظ سرایت کرنے کے نقطہ نظر میں، ملتے جلتے الفاظ ایک جیسے ہوں گے اور مختلف الفاظ کے مقابلے ایک دوسرے کے قریب ہوں گے۔

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

Word2Vec

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

دستانے

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

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