علیرضا مدنی
علیرضا مدنی
خواندن ۴ دقیقه·۴ سال پیش

جاسازی کلمه Word Embeddings

با درک ویژگی بردارها در قسمت اول، می توانیم به نمونه های آموزش داده شده بردار کلمات (که به آنها جاسازی کلمه Word Embeddings نیز گفته می شود) نگاه کنیم و برخی از خصوصیات جالب آنها را بررسی کنیم.

این یک جاسازی کلمه برای کلمه "King" است (بردار GloVe آموزش دیده در ویکی پدیا):

king=[ 0.50451 , 0.68607 , -0.59517 , -0.022801, 0.60046 , -0.13498 , -0.08813 , 0.47377 , -0.61798 , -0.31012 , -0.076666, 1.493 , -0.034189, -0.98173 , 0.68229 , 0.81722 , -0.51874 , -0.31503 , -0.55809 , 0.66421 , 0.1961 , -0.13495 , -0.11476 , -0.30344 , 0.41177 , -2.223 , -1.0756 , -1.0783 , -0.34354 , 0.33505 , 1.9927 , -0.04234 , -0.64319 , 0.71125 , 0.49159 , 0.16754 , 0.34344 , -0.25663 , -0.8523 , 0.1661 , 0.40102 , 1.1685 , -1.0137 , -0.21585 , -0.15155 , 0.78321 , -0.91241 , -1.6106 , -0.64426 , -0.51042 ]

این لیستی از 50 عدد است. با دیدن مقادیر چیزهای زیادی نمی توانیم بگوییم. اما بیایید کمی آن را تجسم کنیم تا بتوانیم سایر بردارهای کلمه را با یکدیگر مقایسه کنیم. بیایید همه این اعداد را در یک ردیف قرار دهیم:

حالا بیایید سلولها را بر اساس مقادیر آنها کدگذاری کنیم (اگر نزدیک به 2 باشد قرمز ، اگر نزدیک به 0 باشد سفید ، اگر نزدیک به 2- باشد آبی):

ما با نادیده گرفتن اعداد و تنها با نگاه کردن به رنگ ها برای نشان دادن مقادیر سلول ها ، کار را ادامه میدهیم. بیایید اکنون "King" را در مقابل کلمات دیگر قرار دهیم:

ببینید که چگونه "man" و "woman" شباهت زیادی به یکدیگر نسبت به "king" دارند؟ این به شما چیزی می گوید. این نمایش های برداری ، کمی از اطلاعات/معنی/ارتباطات این کلمات را نمایش می دهد.

در اینجا یک لیست دیگر از کلمات وجود دارد (ستون عمودی که رنگ های مشابه دارند را با هم مقایسه کنید):

چند نکته برای اشاره به:

  • در همه این کلمات یک ستون قرمز کامل وجود دارد. همه کلمات از نظر ابعاد مشابه هستند (و ما نمی دانیم که هر بعد برای چه چیزی کدگذاری شده است)
  • می بینید که در بسیاری از جاها "woman" و "girl" به یکدیگر شباهت دارند. مثل "man" و "boy"
  • کلمات "boy" و "girl" نیز ستونهایی دارند که شبیه یکدیگر هستند ، اما متفاوت از "woman" یا "man" هستند. آیا از آن می توان برای درک مفهوم جوانی کدنویسی کرد؟ ممکن است.
  • همه به جز آخرین کلمه کلماتی هستند که نمایانگر افراد هستند. من یک شی (آب) اضافه کردم تا تفاوت بین دسته ها را نشان دهد. به عنوان مثال می توانید ببینید که ستون آبی کاملاً پایین می رود و قبل از جاسازی کلمه "آب" متوقف می شود.
  • مکانهای مشخصی وجود دارد که "king" و "queen" شبیه یکدیگر هستند و با بقیه متفاوت است. آیا از آن می توان برای مفهوم پادشاهی کدنویسی کرد؟

تشبیهات Analogies

مثال مشهوری که خاصیت باورنکردنی جاسازی کلمات را نشان می دهد مفهوم تشبیه است. می توانیم جاسازیهای کلمه را اضافه یا کسر کنیم و به نتایج جالبی برسیم. مشهورترین مثال این فرمول است:

“king” - “man” + “woman”:

با استفاده از کتابخانه Gensim در پایتون می توانیم بردارهای کلمات را جمع و یا کم کنیم و شبیه ترین کلمات را به بردار حاصل پبدا کنیم. تصویر زیر لیستی از شبیه ترین کلمات را نشان می دهد که هرکدام از آنها شباهت کسینوس دارند.
با استفاده از کتابخانه Gensim در پایتون می توانیم بردارهای کلمات را جمع و یا کم کنیم و شبیه ترین کلمات را به بردار حاصل پبدا کنیم. تصویر زیر لیستی از شبیه ترین کلمات را نشان می دهد که هرکدام از آنها شباهت کسینوس دارند.


https://virgool.io/d/bbbmt1xynbju/%D9%85%D8%A7%D9%85%DB%8C%D8%AA%D9%88%D8%A7%D9%86%DB%8C%D9%85%D8%A7%DB%8C%D9%86%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87%D8%B1%D8%A7%D9%85%D8%A7%D9%86%D9%86%D8%AF%DA%AF%D8%B0%D8%B4%D8%AA%D9%87%D9%86%D9%85%D8%A7%DB%8C%D8%B4%D8%AF%D9%87%DB%8C%D9%85:
بردار حاصل از
بردار حاصل از


اکنون که به جاساز واژه های آموزش دیده پرداخته ایم ، بیایید درباره روند آموزش بیشتر بیاموزیم. اما قبل از اینکه به word2vec برسیم ، باید به والد مفهومی جاساز واژه ها نگاه کنیم: مدل زبانی عصبی

بخش سوم مقاله در پست بعد مطالعه نمایید.

nlpmlپردازش زبان طبیعییادگیری ماشینword2vec
شاید از این پست‌ها خوشتان بیاید