Word2vec

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

CBOW و skip grams 
Word2vec از هر دو ساختار مدل برای تولید یک نمایش توزیع‌شده از کلمات استفاده می‌کند:مدل بسته کلمات(CBOW) یا ان-گرم. در بسته کلمات پیوسته، مدل، کلمه فعلی را از یک پنجره از کلمات متنی اطراف پیش‌بینی می‌کند. ترتیب کلمات متن بر پیش‌بینی تأثیر نمی‌گذارد. در معماری اسکیپ پیوسته، این مدل از کلمه فعلی برای پیش‌بینی پنجره اطراف کلمات متن استفاده می‌کند. در این معماری وزن این کلمات به مراتب بیشتر از کلمه متن فاصله است. طبق تحقیقاتی، CBOW سریعتر است، در حالی که skip-gram کندتر است، اما کارهای بهتر برای کلمات نادرست انجام می‌دهد.

پارامتریزاسیون 
نتایج آموزش word2vec می‌تواند به پارامتریزاسیون حساس باشد. در زیر برخی از پارامترهای مهم در آموزش word2vec آورده شده‌است.

الگوریتم آموزش 
یک مدل Word2vec می‌تواند با نمونه‌برداری بیشینه هموار و / یا نمونه‌برداری منفی آموزش داده شود. برای تخمین تقریبی لگاریتم درست‌نمایی-احتمال یک مدل به دنبال حداکثر سازی است و روش بیشینه هموار از کدگذاری هافمن برای کاهش محاسبه استفاده می‌کند. روش نمونه‌گیری منفی، از سوی دیگر، با به حداقل رساندن تابع درست‌نمایی احتمالِ ورود به نمونه‌های منفی، به حداکثر سازی می‌رسد. به گفته نویسندگان، بیشینه هموار سلسله مراتبی برای کلمات نادر بهتر عمل می‌کند در حالی که نمونه‌گیری منفی برای کلمات مکرر بهتر عمل می‌کند و با بردارهای تک‌بعدی بهتر کار می‌کند. همان‌طور که دوره‌های آموزشی افزایش می‌یابد، بیشینه هموار سلسله مراتبی می‌تواند مفید باشد.

ساب-نمونه‌گیری 
کلمات با فرکانس بالا اغلب اطلاعات کمی را ارائه می‌دهند. کلمات با فرکانس بالای یک آستانه خاص ممکن است به منظور افزایش سرعت آموزش مورد استفاده قرارگیرد.

ابعاد 
کیفیت نصب کلمه با ابعاد بالاتر افزایش می‌یابد. اما بعد از رسیدن به نقطه‌ای، سود نهایی کم می‌شود. به‌طور معمول، ابعاد بردارها قرار است بین ۱۰۰ تا ۱۰۰۰ باشد.

پنجره محتوا 
اندازه پنجره متن مشخص می‌کند که چند کلمه قبل و بعد از یک کلمه معین، به عنوان کلمات متن کلمه معین در نظر گرفته می‌شود. با توجه به نوشتار نویسندگان، ارزش پیشنهادی ۱۰ برای هر اسکیپ گرام و ۵ برای CBOW است.

برنامه‌های افزودنی 
یک فرمت word2vec برای ساختن جاسازی از کل اسناد (به جای کلمات فردی) پیشنهاد شده‌است. این تمدید به نام paragraph2vec یا doc2vec خوانده می‌شود و در ابزارهای C، پیتون و جاوا / Scala اجراشده‌است (متن زیر را ببینید)، با نسخه‌های جاوا و پیتون نیز از استنباط سند در اسناد جدید پشتیبانی می‌کنند.

بردارهای کلمه برای بیوانفورماتیک: BioVectors 
بسط بردارهای حرفه‌ای برای n در توالی‌های زیست دارویی (به عنوان مثال دی ان ای، آر ان ای و پروتیین‌ها) برای کاربردهای بیوانفورماتیک توسط عسگری و مفرد پیشنهاد شده‌است. نتایج نشان می‌دهند که BioVectors می‌تواند توالی‌های زیستی را برحسب تفاسیر بیوشیمیایی و بیوفیزیکی الگوهای زیربنایی توصیف کند. یک متغیر مشابه، dna2vec نشان داده‌است که همبستگی بین امتیاز شباهت الگوریتم نیدلمن-وانچ و شباهت کسینوسی با بردارهای حرفه‌ای dna2vec وجود دارد.

بردارهای حرفه‌ای برای رادیولوژی: کلمه هوشمند درون‌سازی شده (IWE) 
یک بسط بردارهای کلمه برای ایجاد یک بردار متراکم از گزارش رادیولوژی غیر ساختاری توسط بانجری مطرح شد. یکی از بزرگ‌ترین چالش‌ها با Word2Vec، چگونگی رسیدگی به کلمات ناشناخته یا خارج از دایره لغات و از لحاظ مورفولوژیکی شبیه کلمات است. این موضوع به خصوص در زمینه‌هایی مثل پزشکی که در آن کلمات مترادف و مرتبط می‌توانند بسته به سبک ترجیح داده‌شده توسط رادیولوژیست استفاده شوند، می‌تواند به ندرت در یک پیکره زبانی بزرگ مورد استفاده قرار گیرد. اگر مدل word2vec قبل از این با یک واژه خاص مواجه نشده باشد، مجبور به استفاده از یک بردار تصادفی خواهد شد، که به‌طور کلی از نمایش ایدئال خود دور است. IWE الگوریتم word2vecرا با یک تکنیک نقشه‌برداری فرهنگ معنایی برای مقابله با چالش‌های عمده استخراج اطلاعات از متون بالینی ترکیب می‌کند، که شامل ابهام سبک روایت متن آزاد، تغییرات واژگانی، استفاده از دوره‌های تلگرافی و استفاده مکرر از کلمات و ظهور مکرر اختصارات و لغات مخفف است. به‌طور خاص، مدل IWE (که بر روی یک مجموعه داده سازمانی آموزش‌دیده‌است) با موفقیت به مجموعه داده سازمانی متفاوتی ترجمه شده‌است که تعمیم پذیری مناسب رویکرد در موسسات را نشان می‌دهد.

تحلیل و بررسی 
دلایل استفاده از یادگیری کلمه جاسازی در چارچوب word2vec به خوبی درک نشده‌است. گلدبرگ و لوی خاطرنشان می‌کند که تابع هدف word2vec باعث می‌شود که کلمات در شرایط مشابه به صورت مشابه (مانند اندازه‌گیری شباهت‌های کوزینوس) رخ دهند که این امر با فرضیه توزیعی J. R. Firth مطابقت دارد. با این حال، آن‌ها توجه دارند که این توضیح " بسیار دستی " است و استدلال می‌کند که توضیح رسمی تری ترجیح داده خواهد شد.

حفظ روابط معنایی و نحوی 
رویکرد کلمه جاسازی می‌تواند چندین درجه متفاوت از تشابه بین کلمات را ثبت کند. Mikolov و همکاران در سال ۲۰۱۳ دریافتند که الگوهای معنایی و نحو با استفاده از محاسبات بردار قابل تولید می‌باشند. الگوهایی مانند «مرد به زن به عنوان برادر به خواهر» است که می‌تواند از طریق عملیات جبری بر روی نمایشگرهای بردار این کلمات ایجاد شود به طوری که نمایش برداری «برادر»- «مرد» + « زن» نتیجه را تولید می‌کند که به نمایش برداری «خواهر» در مدل نزدیک‌تر است.

ارزیابی کیفیت مدل 
Mikolov و همکاران (۲۰۱۳) رویکردی برای ارزیابی کیفیت یک مدل word2vec که از الگوهای معنایی و معنایی در بالا استفاده می‌کنند، توسعه دادند. آن‌ها مجموعه‌ای از روابط معنایی و معنایی را توسعه دادند که از آن به عنوان یک معیار برای تست صحت مدل استفاده کردند. هنگامی که کیفیت مدل برداری را ارزیابی می‌کنیم، کاربر می‌تواند از این تست برای دقت استفاده کند که در word2vec اجرا می‌شود، یا مجموعه تست خودشان را توسعه می‌دهد که برای پیکره زبانی که مدل را می‌سازد، معنادار است. این رویکرد آزمون چالش‌برانگیز تری را ارائه می‌دهد تا اینکه به سادگی استدلال کند، کلماتِ شبیه به کلمه آزمون داده‌شده، به‌طور مستقیم قابل قبول هستند.

پارامترها و کیفیت مدل 
استفاده از پارامترهای مدل مختلف و اندازه‌های مختلف پیکره زبانی می‌تواند تا حد زیادی بر کیفیت یک مدل word2vec تأثیر بگذارد. دقت می‌تواند به چند روش، از جمله انتخاب معماری مدل (CBOW یا اسکیپ گرام)، افزایش تعداد برداری داده، افزایش تعداد ابعاد برداری، و افزایش اندازه پنجره در نظر گرفته‌شده توسط الگوریتم بهبود یابد. هر یک از این پیشرفت‌ها با هزینه افزایش پیچیدگی محاسباتی همراه است و بنابراین زمان تولید مدل افزایش می‌یابد. مدل اسکیپ گرام با استفاده از پیکره‌های بزرگ و تعداد زیادی از ابعاد، بالاترین دقت کلی را به دست می‌دهد و همواره بالاترین دقت را در روابط معنایی به همراه دارد و بالاترین دقت نحوی را در اغلب موارد ارائه می‌دهد. با این حال، CBOW در محاسبات کم هزینه است و نتایج دقت مشابهی دارد. دقت به‌طور کلی افزایش می‌یابد زیرا تعداد کلمات مورد استفاده و ابعاد افزایش می‌یابد. Mikolov و همکاران گزارش کرده‌اند که دو برابر کردن مقدار داده‌های آموزشی منجر به افزایش پیچیدگی محاسباتی معادل دو برابر کردن تعداد ابعاد برداری می‌شود.Altszyler و همکاران (۲۰۱۷) عملکرد Word2vec را در دو تست معنایی برای اندازه پیکره زبانی مختلف مورد مطالعه قرار دادند. آن‌ها متوجه شدند که Word2vec دارای منحنی تدریجی یادگیری است، که در صورت تمرکز با اندازه کروی متوسط و بزرگ (بیش از ۱۰ میلیون کلمه) آموزش داده می‌شود. با این حال، با یک مجموعه آموزشی کوچک، lsa عملکرد بهتری را نشان داد. علاوه بر این، آن‌ها نشان می‌دهند که بهترین تنظیمات پارامتر به کار و مجموعه آموزشی بستگی دارد. با این وجود، برای مدل‌های اسکیپ گرام آموزش‌دیده در پیکره‌های سایز متوسط، با ابعاد ۵۰، اندازه پنجره ۱۵ و ۱۰ نمونه منفی، یک تنظیمات پارامتر خوب به نظر می‌رسد.

جستارهای وابسته 

 خودرمزگذار
 ماتریس دوره سند
 استخراج ویژگی
 یادگیری مشخصه
 مدل زبان
 مدل فضای برداری
 بردار تفکر
 fastText
 GloVe (machine learning)

منابع 

https://www.researchgate.net/publication/339512877_A_Brief_Introduction_into_Word2Vec_Neural_Network_Application_in_NLP_-_Persian
https://en.wikipedia.org/wiki/Word2vec

نرم‌افزارهای علمی آزاد
ابزارهای پردازش زبان طبیعی
شبکه‌های عصبی مصنوعی
یادگیری ماشینی