Distributed Representations of Words and Phrases and their Compositionality Part #2

ارائه کلمات و عبارات توزیع شده و ترکیب آنها (قسمت دوم)

نویسندگان مقاله:

Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado, Jeffrey Dean

متن اصلی این مقاله را از اینجا بخوانید.

2- نمونه گیری منفی (Negative Sampling)

جایگزین hierarchical softmax ، تخمین تضاد نویز (Noise Contrastive Estimation (NCE)) است، که توسط Gutmann و  Hyvarinen معرفی شده است و از مدل‌های زبانی مربوط به Mnih و Teh استفاده شده است. NCE این نکته را متذکر می شود كه يك مدل خوب بايد با استفاده از رگرسيون لجستيك بتواند داده های اصلی را از نویز متمايز كند. این شبیه به از دست رفتن وابستگی‌ها است که توسط Collobert و Weston استفاده شده اند و مدل ها را با درجه بندی داده های بالاتر از نویز آموزش داده اند.

درحالی که NCE می‌تواند با تقریب بالایی لگاریتم احتمال Softmax را به نقطه ماکسیمم برساند، مدل Skip-gram فقط به یادگیری چگونگی بازنمایی بردارها با کیفیت بالا می پردازد، بنابراین ما می‌توانیم تا زمانی که بازنمایی بردارد کیفیت خود را از دست نداده است، NCE را ساده کنیم. نومنه گیری منفی (NEG) را با این هدف تعریف می کنیم.

شکل 2: تصویر کردن بردار 1000 بعدی Skip-gram از کشورها و پایتخت‌ها به PCA دوبعدی. این شکل توانایی مدل در سازمان‌دهی خودکار مفاهیم و آموزش ضمنی روابط بین آنها را نشان می دهد، زیرا ما هیچگونه اطلاعات نظارتی در مورد معنی شهر پایتخت را به آن نداده‌ایم.

در Skip-gram برای جایگزینی از P(W0 | W1) استفاده می‌شود. بنابراین وظیفه تشخیص کلمه هدف W0 برعهده تابع توزیع Pn(W) با استفاده از رگرسیون لجستیک است، که در آن k نمونه‌ی منفی برای نمونه داده وجود دارد. آزمایشات نشان می‌دهد که مقدار k مناسب برای دیتاست‌های آموزشی کوچک بین 5 تا 20 است، درحالی که این مقدار برای دیتا‌ست‌های آموزشی بزرگ میتواند بین 2 تا 5 باشد. تفاوت اصلی NCE و NEG این است که، NCE به نمونه‌برداری و تابع احتمال نویز (هر دو) نیازدارد ولی NGE فقط به نمونه‌برداری نیاز دارد. درحالی که NCE با تقریب بالایی احتمال Softmax را به حداکثر می رساند، ولی این ویژگی برای کاربرد ما هیچ اهمیتی ندارد.

NCE و NEG هردو دارای تابع توزیع نویز Pn(W) به عنوان یک پارامتر آزاد هستند. ما تعدادی از گزینه‌ها را برای Pn(W) مورد بررسی قرار دادیم و دریافتیم که تابع توزیع یونیگرام که (3/4) به قدرت آن اضافه شده باشد (i.e.,U(w)3/4/Z) بطور قابل توجهی بهتراز توزیع‌های یکنواخت بهتر عمل می‌کند که ما سعی کردیم برای هردوی NCE و NEG که شامل مدلسازی زبانی استفاده کنیم. (ولی در اینجا گزارشی نیامده است)

 

2.3. نمونه‌برداری از کلمات پرتکرار

در متن‌های بزرگ ، متداول ترین کلمات به راحتی می توانند صدها میلیون بار تکرار شوند (به عنوان مثال ، “in” ، “the” و “a”). چنین کلماتی معمولاً از اطلاعات کمتری نسبت به کلمات نادر برخوردار هستند. درحالی که مدل Skip-gram از مشاهده‌ی همزمان “France” و “Paris” سود می‌برد، ولی اگر این مشاهده با تکرار فراوان باشد هیچ سودی نخواهد داشت. این ایده همچنین می تواند در جهت مخالف به کار رود. بازنمودهای بردار کلمات مکرر بعد از آموزش در چند میلیون مثال تغییر نمی کند.

برای مقابله با عدم تعادل بین کلمات نادر و پرتکرار، از یک روش ساده به نام sub sampling استفاده کردیم: در دیتاست آموزشی پس از محاسبه احتمال هر کلمه Wi آن کلمه از دیتاست حذف می شود.

جدول 1: دقت‌های محتلف Skip-gram با 300 بعد برای سیستم‌های آنالوگ در NEG-k استاندارد برای نمونه برداری منفی با نمونه‌های منفی K برای هر نمونه مثبت تعریف شده است. NCE مخفف Noise Contrastive Estimation است و HS-Huffman مخفف Hierarchical Softmax با کدهای Huffman مبتنی بر فرکانس است.

از آنجا که f(Wi) تعداد تکرار کلمه Wi و t به عنوان یک آستانه (معمولا در حدود 5-10) درنظر گرفته می‌شود. ما این فرمول نمونه برداری را انتخاب کردیم زیرا کلمات را فاش می کند که در ضمن حفظ رتبه فرکانس ها ، فرکانس آنها از t بیشتر است. اگرچه این فرمول نمونه برداری بطور اکتشافی انتخاب شد ، اما ما به این نتیجه رسیدیم که در عمل خوب عمل می کند. این یادگیری را تسریع می کند و حتی دقت آن را بر روی ناقلهای آموخته شده از کلمات نادر نیز بهبود می بخشد ، همانطور که در بخش های بعدی نشان داده شده است.

 

3. نتایج تجربی

در این بخش ما به ارزیابی Hierarchical Softmax (HS) ، تخمین تضاد نویز ، نمونه گیری منفی و نمونه برداری از کلمات آموزشی می پردازیم. ما از کار استدلال آنالوگ که توسط Mikolov و همکاران معرفی شده استفاده کردیم. این شامل ترکیب‌های همانندی است مثل “Germany” : “Berlin” :: “France” : ?, که با پیدا کردن بردار X حل می شوند، به این شکل که vec(x)  به vec(“Berlin”) – vec(“Germany”)+ vec(“France”)  نزدیکتر است.در این مثال خاص اگر X برابر “Paris” باشد، پاسخ صحیح است. این کار شامل دو دسته‌ی گسترده است: قیاسهای نحوی مانند (“quick”: “quickly” :: “slow” : “slowly”) و قیاس‌های معنایی مانند روابط کشور با پایتخت.

برای آموزش مدلهای Skip-Gram ، از یک مجموعه داده بزرگ متشکل از مقالات مختلف خبری (مجموعه داده داخلی گوگل با یک میلیارد کلمه) استفاده کرده ایم. ما از تمام واژگان موجود، کلماتی را که کمتر از 5 بار در داده های آموزش رخ داده اند دور انداخته ایم ، که منجر به واژگان به ابعاد 692K شد. عملکرد مدلهای مختلف Skip-Gram در مجموعه تست کلمه مشابه در جدول 1 گزارش شده است. جدول نششان می دهد که Negative Sampling در استدلال تشابه بهتر از Hierarchical Softmax عمل می کند و حتی عملکرد بهتری از تخمین تضاد نوی (Noise Contrastive Estimation) دارد. نمونه برداری از کلمات پرتکرار سرعت آموزش را چندین بار بهبود می بخشد و باعث می شود نمایش کلمات به طور قابل توجهی دقیق‌تر شود.

می توان استدلال کرد که خطی بودن مدل skip-gr ، بردارهای آن را برای استدلال آنالوگ چنین خطی مناسب تر می کند ، اما نتایج Mikolov و همکاران. این نشان می دهد که بردارهای آموزش داده شده توسط شبکه های عصبی سیگموئیدی RNN (که بسیار غیرخطی هستند) با افزایش داده‌های آموزشی، بشکل قابل توجهی بهبود می‌یابد و این نشان می‌دهد که مدل‌های غیر خطی در بازنمایی ساختار خطی ترجیه داده می‌شوند.

 

4. عبارات یادگیری

همانطور که در ابتدا گفته شد ، بسیاری از عبارات معنایی دارند که یک ترکیب ساده از معانی تک تک کلمات آن است. برای یادگیری مفهون بردار عبارات ، ابتدا واژه هایی را پیدا می کنیم که غالباً در کنار هم ظاهر می شوند ، و به ندرت در زمینه های دیگر هستند. به عنوان مثال ، “New York Times” و “Toronto Maple Leafs” با نشانه های منحصر به فرد در داده های آموزش جایگزین می شوند ، در حالی که یک همایند دوتایی “this is” بدون تغییر باقی می ماند.

Table 2: Examples of the analogical reasoning task for phrases (the full test set has 3218 examples). The goal is to compute the fourth phrase using the first three.Our best model achieved an accuracy of 72% on this datasets.

به این ترتیب ، ما می توانیم عبارات معقول بسیاری را بدون افزایش اندازه واژگان شکل دهیم. از نظر تئوری ، ما می توانیم مدل Skip-gram را با استفاده از تمام n-grams ها آموزش دهیم ، اما این امر به حافظه‌ی زیادی نیاز دارد. بسیاری از تکنیک ها قبلاً برای شناسایی عبارات موجود در متن ایجاد شده اند. با این حال ، مقایسه این موارد از محدوده کار ما خارج است. ما تصمیم گرفتیم که از یک رویکرد ساده محور داده استفاده کنیم ، جایی که عبارات بر اساس تعداد unigram و bigram ، با استفاده از:

δ به عنوان ضریب تخفیف استفاده می شود و از ایجاد تعداد زیادی عبارات متشکل از کلمات بسیار نادر جلوگیری می کند. بزرگترهای دارای امتیاز بالاتر از آستانه انتخاب شده سپس به عنوان عبارات استفاده می شوند. به طور معمول ، ما 2-4 پاس داده های آموزش را با کاهش مقدار آستانه اجرا می کنیم ، اجازه می دهیم عبارات طولانی تر تشکیل شود که شامل چندین کلمه است. ما کیفیت نمایش عبارت را با استفاده از یک کار جدید استدلال قیاس که شامل عبارات است ارزیابی می کنیم. در جدول 2 نمونه هایی از پنج دسته قیاس های مورد استفاده در این کار نشان داده شده است. این مجموعه داده به صورت عمومی در وب موجود است.

 

4.1. نتایج Skip-gram

ابتدا با همان داده های خبری مانند آزمایش های قبلی ، ابتدا بدنه آموزش مبتنی بر عبارت ساختیم و سپس چندین مدل Skip-Gram را با استفاده از هایپرپارامترهای مختلف آموزش دادیم. مانند گذشته ، ما از بردار 300 بعدی و اندازه متن 5 استفاده کردیم. این تنظیم در حال حاضر به عملکرد خوبی در مجموعه داده عبارات دست پیدا می کند و به ما این امکان را می دهد که به سرعت و با نمونه برداری از نشانه های پرتکرار ، Negative Sample و Hierarchical Softmax را با هم مقایسه کنیم. در جدول 3 خلاصه شده است.

نتایج نشان می دهد که در حالی که نمونه گیری منفی حتی با k = 5 به یک دقت قابل توجه دست می یابد ، با استفاده از k = 15 عملکرد قابل توجهی بهتر به دست می آورد. با کمال تعجب ، در حالی که ما Hierarchical Softmax را برای دستیابی به عملکرد کمتر در هنگام آموزش بدون نمونه برداری پیدا کردیم ، وقتی نمونه های کلمات پرتکرار را پایین آوردیم به بهترین روش تبدیل شد. این نشان می دهد که نمونه برداری می تواند منجر به آموزش سریع تر شود و حداقل در بعضی موارد می تواند دقت را بهبود بخشد.

Table 3: Accuracies of the Skip-gram models on the phrase analogy dateset. The models were trained on approximately one billion words from the news dateset.

Table 4: Examples of the closest entities to the given short phrases, using two different models.

Table 5: Vector compositionality using element-wise addition. Four closest tokens to the sum of two vectors are shown, using the best Skip-gram model.

 

برای به حداکثر رساندن دقت در کار عبارات همانند، مقدار داده های آموزش را با استفاده از یک مجموعه داده با حدود 33 میلیارد کلمه افزایش دادیم. ما از hierarchical softmax و 1000 بعد و کل جمله برای متن استفاده کردیم. این منجر به مدلی شد که به دقت 72٪ رسید. ما هنگامی که اندازه مجموعه داده های آموزشی را به کلمات 6B کاهش دادیم ، 66٪ دقت کمتری کسب کردیم ، که نشان می دهد مقدار زیادی از داده های آموزش بسیار مهم است.

برای به دست آوردن بینش بیشتر در مورد نحوه نمایش بازنمایی های مختلف توسط مدل های مختلف ، ما نزدیکترین همسایگان عبارات نادر با استفاده از مدل های مختلف را به صورت دستی تفسیر نکردیم. در جدول 4 نمونه ای از چنین مقایسه ای را نشان می دهد. مطابق با نتایج قبلی ، به نظر می رسد که بهترین بازنمایی عبارات توسط یک مدل با hierarchical softmax و نمونه برداری آموزش داده می شود.

 

5 ترکیبات افزودنی

ما نشان دادیم که کلمات و عبارتهای یاد گرفته شده توسط مدل Skip-gram ساختار خطی را نشان می دهد که امکان انجام استدلال دقیق آلوژیکی دقیق را با استفاده از حسابی بردار ساده فراهم می کند. جالب اینجاست که ما دریافتیم که نمایشهای Skip-Gram نوع دیگری از ساختار خطی را نشان می دهند که ترکیب کلمات را می توان با افزودنی عینی از عناصر وکتور خود ، ترکیب کرد. این پدیده در جدول 5 نشان داده شده است.

خاصیت افزودنی بردارها با بررسی هدف آموزش قابل توضیح است. کلمه بردارها در رابطه خطی با ورودی های غیرخطی softmax مکمل قرار دارند. همانطور که کلمه بردارها برای پیش بینی کلمات اطراف جمله در این آموزش دیده می شوند ، بردارها می توانند نمایانگر توزیع زمینه ای باشند که یک کلمه در آن ظاهر می شود. این مقادیر به صورت لگاریتمی به احتمالات محاسبه شده توسط لایه خروجی مربوط می شوند ، بنابراین مجموع دو بردار دو کلمه مربوط به محصول دو توزیع متن است. محصول در اینجا به عنوان تابع AND کار می کند: کلماتی که هر دو بردار کلمه ای به آنها احتمال زیاد داده می شود ، احتمال بالایی دارند و کلمات دیگر احتمال کمی دارند. بنابراین ، اگر “Volga River” غالباً با همان جملاتی همراه با کلمات “Russian” و “river” ظاهر شود ، جمع این دو بردار کلمه ای منجر به چنین بردار مشخصه ای می شوند که نزدیک به بردار “Volga River” باشد.

 

6. مقایسه با بردارهای کلمه منتشر شده

بسیاری از نویسندگان که پیش از این در شبکه عصبی کار کرده اند و مبتنی بر کلمات هستند ، مدل های نتیجه گیری خود را برای استفاده و مقایسه بیشتر منتشر کرده اند: در بین مشهورترین نویسندگان کلوبرت و وستون ، توران و همکاران ، و منی و هینتون. ما وکتورهای آنها را از وب بارگیری کردیم. Mikolov و همكاران قبلاً این بازنمودهای كلمه را در مورد وظیفه كلمه آنالوگ ارزیابی كرده اند ، جایی كه مدل های Skip-Gram با حاشیه زیاد ، بهترین عملکرد را به دست آورد.

Table 6: Examples of the closest tokens given various well known models and the Skip-gram model trained on phrases using over 30 billion training words. An empty cell means that the word was not in the vocabulary.

برای ارائه بینش بیشتر در مورد تفاوت کیفیت بردارهای آموخته شده ، ما با نشان دادن نزدیکترین همسایگان به کلمات ناچیز در جدول 6 ، مقایسه تجربی ارائه می دهیم. این مثالها نشان می دهد که مدل بزرگ Skip-Gram که بر روی یک قشر بزرگ آموزش دیده است ، از سایر موارد بهتر است. مدل در کیفیت نمایش های آموخته شده این را می توان تا حدودی به این واقعیت نسبت داد که این مدل با حدود 30 میلیارد کلمه آموزش داده شده است ، یعنی حدود دو تا سه مرتبه از داده بیشتر از اندازه معمولی که در کار قبلی استفاده شده است. جالب اینجاست که اگرچه مجموعه آموزش بسیار بزرگتر است ، اما زمان آموزش مدل Skip-gram فقط بخشی از پیچیدگی زمانی مورد نیاز معماری های مدل قبلی است

 

7. نتیجه

این اثر دارای چندین نقش کلیدی است. ما نشان می دهیم که چگونه می توان بازنمایی های توزیع شده کلمات و عبارات را با مدل Skip-gram آموزش داد و نشان داد که این نمایش ها ساختار خطی دارند که استدلال دقیق آنالوگ را امکان پذیر می کند. از تکنیک های معرفی شده در این مقاله می توان برای آموزش مدل پیوسته کلمات معرفی شده در آن استفاده کرد.

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

انتخاب الگوریتم آموزش و انتخاب هایپرپارامتر یک تصمیم خاص برای کار است ، زیرا دریافتیم که مشکلات مختلف دارای پیکربندی هایپرپارامتر بهینه متفاوت هستند. در آزمایشات ما ، مهمترین تصمیماتی که بر عملکرد تأثیر می گذارد ، انتخاب معماری مدل ، اندازه بردارها ، میزان نمونه برداری و اندازه پنجره آموزش است.

نتیجه بسیار جالب این کار این است که کلمه بردارها را می توان با استفاده از یک بردار ساده فقط به طرز معناداری ترکیب کرد. روش دیگر برای یادگیری بازنمایی عبارات ارائه شده در این مقاله ، بیان ساده عبارات با یک نشان واحد است. ترکیبی از این دو رویکرد به یک روش قدرتمند و در عین حال ساده نشان می دهد که چگونه می توانید قطعات طولانی تر متن را نشان دهید ، در حالی که دارای حداقل پیچیدگی محاسباتی است. بنابراین ، کار ما می تواند به عنوان مکمل رویکرد موجود که تلاش می کند عبارات را با استفاده از عملیات بردار ماتریس بازگشتی نشان دهد ، مشاهده شود.

سایر مقالات Tomas Mikolov را از اینجا بخوانید.

یک دیدگاه بگذارید

آدرس ایمیل شما منتشر نخواهد شد.


*