40 گام به سوی آینده‌ای هوشمند - مجموعه وبینارهای رایگان در حوزه هوش مصنوعی
Filter by دسته‌ها
chatGTP
آموزش هوش مصنوعی و انواع آن
آموزش‌های پایه‌ای هوش مصنوعی
اصول هوش مصنوعی
پایتون و ابزارهای یادگیری عمیق
کتابخانه‌ های یادگیری عمیق
یادگیری با نظارت
یادگیری بدون نظارت
یادگیری تقویتی
یادگیری عمیق
یادگیری نیمه نظارتی
آموزش‌های پیشرفته هوش مصنوعی
بینایی ماشین
پردازش زبان طبیعی
پردازش گفتار
چالش‌های عملیاتی
داده کاوی و بیگ دیتا
رایانش ابری و HPC
سیستم‌‌های امبدد
علوم شناختی
دیتاست
اخبار
تیتر یک
رسانه‌ها
آموزش پردازش زبان طبیعی
آموزش علوم داده
اینفوگرافیک
پادکست
ویدیو
رویدادها
کاربردهای هوش مصنوعی
کسب‌و‌کار
تحلیل بازارهای هوش مصنوعی
کارآفرینی
هوش مصنوعی در ایران
هوش مصنوعی در جهان
 تفسیر تشابه معنایی متون از مدل‌های ترانسفورمر

تفسیر تشابه معنایی متون از مدل‌های ترانسفورمر

مدل‌های مبتنی بر ترانسفورمرTransformer-based models برای جست‌وجوی اسناد متنی به کار برده می‌شوند. امروزه کتابخانه‌ huggingface  روند اجرا را آسان‌تر کرده و نتایج فوق‌العاده‌ای رقم زده است. پیشتر در پی بررسی این موضوع بودم که چرا فلان نتیجه به دست آمد. در ابتدا، مقاله‌ها و پست‌های وبلاگی بسیاری را زیر و رو کردم، تا بینش بهتری درباره سازوکارهای توجه Attention mechanisms درون ترانسفورمرها کسب کنم، چرا که این سازوکارها می‌توانند نقش مؤثری داشته باشند. در نوشتار حاضر، روش بسیار ساده‌ای برای بررسی تشابهات محتوایی در پیش گرفته‌ایم. در این راستا، از چند بردار استفاده کرده‌ایم.

مدلی از کتابخانه‌ «sentence-transformers» به کار گرفته شده که به‌ منظور جست‌وجوی تشابهات معنایی متون بهینه‌سازی شده است. این مدل می‌تواند بردار بردار بازنمایی۱۰۲۴ بُعدی۱۰۲۴-dimensional embedding برای هر جمله ایجاد کند. تشابه بین دو جمله با تشابه کسینوسی بین دو بردار قابل محاسبه است. فرض کنید دو پرسش به نام A و B داریم که به ترتیب در بردارهای ۱۰۲۴ بُعدیِ A و B بازنمایی می‌شوند. تشابه کسینوسی بین جملات به‌صورت زیر محاسبه می‌شود:

بر این اساس، تشابه کسینوسی ۱ به معنای یکسان بودنِ پرسش‌ها است (زاویه صفر). تشابه کسینوسی ۱- نیز از متفاوت بودن پرسش‌ها حکایت دارد. برای درک بهتر این مسئله، مجموعه‌ای متشکل از ۱۷۰۰ پرسش از دیتاست طبقه‌بندی پرسش ARCARC question classification dataset تعبیه شده است. کل نوت‌بوک در google colab قابل دسترس است. بخش اصلیِ بازنمایی جمله در رشته کد زیر نشان داده شده است:

به این ترتیب، می‌توان پایگاه داده‌ پرسش‌ها را به آسانی جست‌وجو کرد. فرض کنید پایگاه داده‌ای متشکل از ۱۷۰۰ پرسش داریم که با استفاده از رشته کد فوق در ماتریس تعبیه گردیده است. در گام نخست باید هر سطر را نرمال‌سازی کرد. به تعبیری، هر بردار پرسش به‌ منظور برخورداری از طول ۱ نرمال‌سازی می‌شود. لذا معادله پیشین به‌ نحوی ساده‌سازی می‌شود که تشابه کسینوسی بین A و B حاصل‌ضرب داخلیِ دو بردار باشد. پس از اتمام کار فرایند تعبیه در رشته کد پیشین، می‌توان این چنین وانمود کرد که پرسش اولِ دیتاست نقش « کوئری Query یا پرس‌ و جو» را دارد. در وهله بعدی، باید نزدیک‌ترین ورودی را از بقیه پرسش‌ها پیدا کرد:

پرسش اول در دیتاست نمونه‌ما این بود: «چه عاملی می‌تواند در بروز تب در فرد نقش داشته باشد؟» مشابه‌ترین پرسشِ شناسایی شده نیز این بود: «چه دلایلی به بهترین نحو نشان می‌دهند که چرا فرد مبتلا به علائم باکتریایی تب دارد؟» این دو پرسش تطابق خوبی با هم دارند. هر دو جمله به فردی اشاره می‌کنند که با تب دست و پنجه نرم می‌کند. با این حال، از کجا می‌توان فهمید که الگوریتم این دو جمله را به خاطر  شروع یکسان دو جمله با کلمه «چه» انتخاب نکرده است؟

باید این موضوع را به خاطر سپرد که مدل‌های ترانسفورمر برداری ۱۰۲۴ بعدی , برای هر توکن از جمله خروجی می دهد. این بازنمایی ها از فیلتر mean-pooling عبور میکنند تا بازنمایی جمله حاصل شود ..برای کسب اطلاعات بیشتر در خصوص مفاد مورد استفاده در راستای یافتن مطابقت در فرایند جست‌وجو، می‌توان فاصله کسینوسی بین هر توکن را محاسبه کرد و نتیجه را در ماتریس دو بعدی نمایش داد:

لذا، نمودار زیر به دست می‌آید:

Interpreting Semantic Text Similarity

اکنون، می‌توان تشابه کسینوسی میان هر توکن را در پرس‌ و جو (کوئری) و هر توکن در بهترین نتیجه‌ جست‌وجو مشاهده کرد. مبرهن است که کلیدواژه‌«تب» انتخاب شده و بخش مهمی از بافت معناییSemantic context به حساب می‌آید که نتیجه‌ جست‌وجو را رقم زده است. با این حال، نمودار فوق نشان می‌دهد که مؤلفه‌های بیشتری می‌توانند وارد بافت معنایی شوند؛ برای نمونه، « توسعه یکto develop a …» و « داشتنِ یک have a …» دارای نمره تشابه کسینوسی بالایی هستند. کلیدواژه‌ « فرد person» نیز مدنظر قرار دارد. این در حالی است که واژه « چه which» که در هر دو جمله دیده می‌شود، اهمیت کمتری دارد.

این روش ساده‌ محاسبه‌ تشابه کسینوسی بین توکن‌ها می‌تواند بینش بهتری درباره نقش هر توکن در نمره تشابه نهایی فراهم کند. پس، می‌توان این موضوع را به‌ راحتی توضیح داد که وقتی مدل به نتیجه جست‌وجوی معینی می‌رسد، دقیقاً چه پروسه‌ای را پشت سر می‌گذارد. باید به این نکته اشاره کرد که وقتی نوبت به جست‌وجو می‌رسد، باید میانگین کلیه توکن‌ها را پیش از محاسبه تشابه کسینوسی بین جملات مختلف به دست آورد. که با کاری که ما اینجا انجام دادیم متفاوت است و دانش در زمینه این که کدام توکن در جمله مورد جستجو مخالف کدام توکن در جمله خروجی جستجو  است میتواند بینشی در زمینه اینکه چجوری بازنمایی جمله مورد نیاز برای جستجوی معنایی ساخته میشود را, به ما بدهد.

میانگین امتیاز / ۵. تعداد ارا :

مطالب پیشنهادی مرتبط

اشتراک در
اطلاع از
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
[wpforms id="48325"]