ترجمه ماشینی عصبی

**ترجمه ماشینی عصبی** (**NMT**) رویکردی در ترجمه ماشینی است که از یک شبکه عصبی مصنوعی برای پیش‌بینی احتمال یک توالی از کلمات استفاده می‌کند و معمولاً جملات کامل را در یک مدل یکپارچه پردازش می‌کند.

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

## مرور کلی
در وظیفه ترجمه، یک جمله \mathbf{x} = x_{1,I} (شامل I توکن x_i) در زبان مبدأ باید به یک جمله \mathbf{y} = x_{1,J} (شامل J توکن x_j) در زبان مقصد ترجمه شود. توکن‌های مبدأ و مقصد (که در ساده‌ترین حالت برای یکدیگر استفاده می‌شوند) به‌صورت بردار نمایش داده می‌شوند تا بتوان آن‌ها را به‌صورت ریاضی پردازش کرد.

مدل‌های NMT یک احتمال P(y|x) را به ترجمه‌های احتمالی y اختصاص می‌دهند و سپس زیرمجموعه‌ای از ترجمه‌های ممکن را برای یافتن ترجمه‌ای با بالاترین احتمال جستجو می‌کنند. بیشتر مدل‌های NMT *خودبازگشتی* هستند: آن‌ها احتمال هر توکن مقصد را به‌عنوان تابعی از جمله مبدأ و توکن‌های مقصد پیش‌بینی‌شده قبلی مدل‌سازی می‌کنند. احتمال کل ترجمه سپس حاصل‌ضرب احتمالات توکن‌های پیش‌بینی‌شده فردی خواهد بود:

P(y|x) = \prod_{j=1}^{J} P(y_j | y_{1,i-1}, \mathbf{x})

مدل‌های NMT در نحوه مدل‌سازی این تابع P تفاوت دارند، اما بیشتر آن‌ها از نوعی معماری *رمزگذار-رمزگشا* استفاده می‌کنند: ابتدا یک شبکه رمزگذار برای پردازش \mathbf{x} و تبدیل آن به یک بردار یا ماتریس نمایشی از جمله مبدأ به کار گرفته می‌شود. سپس یک شبکه رمزگشا استفاده می‌شود که معمولاً یک کلمه مقصد را در هر مرحله تولید می‌کند، با در نظر گرفتن نمایش مبدأ و توکن‌هایی که قبلاً تولید شده‌اند.

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

## تاریخچه
### رویکردهای اولیه
در سال ۱۹۸۷، رابرت بی. آلن استفاده از شبکه‌های عصبی پیش‌خور را برای ترجمه جملات انگلیسی تولیدشده خودکار با واژگان محدود ۳۱ کلمه‌ای به اسپانیایی نشان داد. در این آزمایش، اندازه لایه‌های ورودی و خروجی شبکه به‌گونه‌ای انتخاب شد که فقط برای طولانی‌ترین جملات در زبان مبدأ و مقصد کافی باشد، زیرا شبکه هیچ مکانیزمی برای رمزگذاری توالی‌هایی با طول دلخواه در یک نمایش با اندازه ثابت نداشت. در خلاصه‌اش، آلن همچنین به امکان استفاده از مدل‌های خودهمبسته اشاره کرد، یکی برای رمزگذاری مبدأ و دیگری برای رمزگشایی مقصد.

لونی کریسمن در سال ۱۹۹۱ بر اساس کار آلن، شبکه‌های حافظه خودهمبسته بازگشتی (RAAM) جداگانه‌ای را آموزش داد که توسط جردن بی. پولاک توسعه یافته بود، برای زبان مبدأ و مقصد. هر یک از شبکه‌های RAAM آموزش داده شدند تا یک جمله با طول دلخواه را به یک نمایش پنهان با اندازه ثابت رمزگذاری کنند و سپس جمله اصلی را از آن نمایش رمزگشایی کنند. علاوه بر این، دو شبکه همچنین آموزش داده شدند تا نمایش پنهان خود را به اشتراک بگذارند؛ به این ترتیب، رمزگذار مبدأ می‌تواند نمایشی تولید کند که رمزگشای مقصد قادر به رمزگشایی آن باشد. فورکادا و نکو در سال ۱۹۹۷ این روش را ساده کردند تا مستقیماً یک رمزگذار مبدأ و یک رمزگشا برای مقصد را در چیزی که آن را *حافظه ناهمبسته بازگشتی* نامیدند، آموزش دهند.

همچنین در سال ۱۹۹۷، کاستانیو و کاساکوبرتا از شبکه عصبی بازگشتی المان در یک وظیفه دیگر ترجمه ماشینی با واژگان و پیچیدگی بسیار محدود استفاده کردند.

با وجود شباهت این رویکردهای اولیه به NMT مدرن، منابع محاسباتی آن زمان برای پردازش مجموعه داده‌هایی که به اندازه کافی بزرگ باشند تا پیچیدگی محاسباتی مسئله ترجمه ماشینی در متون واقعی را مدیریت کنند، کافی نبود. در عوض، روش‌های دیگر مانند ترجمه ماشینی آماری در دهه‌های ۱۹۹۰ و ۲۰۰۰ به عنوان فناوری پیشرو مطرح شدند.

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

به‌عنوان مثال، در پژوهش‌های مختلف همراه با سایر محققان، هولگر شوئنک مدل معمول مدل زبانی n-gram را با یک مدل عصبی جایگزین کرد و احتمال ترجمه عبارات را با استفاده از یک شبکه پیش‌خور تخمین زد.

### سک۲سک

در سال‌های ۲۰۱۳ و ۲۰۱۴، ترجمه ماشینی عصبی انتها به انتها با استفاده از روش‌های جدید به موفقیت چشمگیری دست یافت. کالچبرنر و بلانسوم از یک شبکه عصبی پیچشی (CNN) برای رمزگذاری مبدأ استفاده کردند، در حالی که چو و همکاران و سوتسکِوِر و همکاران از یک شبکه عصبی بازگشتی (RNN) بهره بردند. هر سه مدل از یک RNN که بر اساس یک رمزگذاری ثابت از مبدأ تنظیم شده بود، به‌عنوان رمزگشا برای تولید ترجمه استفاده کردند.

با این حال، این مدل‌ها در ترجمه جملات طولانی عملکرد ضعیفی داشتند. این مشکل زمانی برطرف شد که باهداناو و همکاران مکانیزم توجه را به معماری رمزگذار-رمزگشا معرفی کردند: در هر مرحله رمزگشایی، وضعیت رمزگشا برای محاسبه یک نمایش از مبدأ که بر بخش‌های مختلف آن تمرکز دارد، استفاده می‌شود و این نمایش در محاسبه احتمالات توکن بعدی به کار می‌رود.

بر اساس این معماری‌های مبتنی بر RNN، بایدو در سال ۲۰۱۵ اولین «سیستم ترجمه ماشینی عصبی در مقیاس بزرگ» را راه‌اندازی کرد، و در سال ۲۰۱۶ ترجمه ماشینی عصبی گوگل معرفی شد. از آن سال به بعد، مدل‌های عصبی به انتخاب غالب در کنفرانس اصلی ترجمه ماشینی، یعنی کارگاه ترجمه ماشینی آماری، تبدیل شدند.

گهرینگ و همکاران در سال ۲۰۱۷ یک رمزگذار CNN را با مکانیزم توجه ترکیب کردند، که وابستگی‌های بلندمدت در مبدأ را بهتر از رویکردهای قبلی مدیریت می‌کرد و همچنین سرعت ترجمه را افزایش داد، زیرا رمزگذار CNN قابلیت پردازش موازی دارد، در حالی که رمزگذار RNN به دلیل ماهیت بازگشتی خود باید هر توکن را به‌صورت جداگانه رمزگذاری کند.

### ترانسفورمر

یکی از معماری‌های شبکه‌ای که امکان پردازش موازی را فراهم می‌کند، ترانسفورمر است که توسط واسوانی و همکاران در سال ۲۰۱۷ معرفی شد. مانند مدل‌های قبلی، ترانسفورمر همچنان از مکانیزم توجه برای وزن‌دهی خروجی رمزگذار در مراحل رمزگشایی استفاده می‌کند. با این حال، شبکه‌های رمزگذار و رمزگشای ترانسفورمر خودشان نیز بر اساس توجه طراحی شده‌اند، نه بازگشت یا پیچش: هر لایه خروجی لایه قبلی را در فرآیندی به نام *توجه به خود* وزن‌دهی و تبدیل می‌کند.

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

مدل ترانسفورمر به‌سرعت به انتخاب غالب برای سیستم‌های ترجمه ماشینی تبدیل شد و همچنان در سال‌های ۲۰۲۲ و ۲۰۲۳ پرکاربردترین معماری در کارگاه ترجمه ماشینی آماری بود.

معمولاً وزن‌های مدل‌های NMT به‌صورت تصادفی مقداردهی اولیه می‌شوند و سپس با آموزش روی مجموعه داده‌های موازی یادگرفته می‌شوند. با این حال، از آنجا که استفاده از مدل‌های زبانی بزرگ (LLMs) مانند BERT که روی حجم زیادی از داده‌های تک‌زبانه از پیش آموزش دیده‌اند، به‌عنوان نقطه شروع برای یادگیری وظایف دیگر در NLP بسیار موفق بوده است، این پارادایم در NMT نیز رایج‌تر شده است. این روش به‌ویژه برای زبان‌های کم‌منبع که مجموعه داده‌های موازی بزرگی ندارند، مفید است. نمونه‌ای از این رویکرد مدل mBART است که ابتدا یک ترانسفورمر را روی یک مجموعه داده چندزبانه برای بازیابی توکن‌های ماسک‌شده در جملات آموزش می‌دهد و سپس رمزگذار خودکار حاصل را برای وظیفه ترجمه ریزتنظیم می‌کند.

#### مدل‌های سازنده LLM
به‌جای ریزتنظیم یک مدل زبانی از پیش آموزش‌دیده برای وظیفه ترجمه، مدل سازنده به‌اندازه کافی بزرگ می‌توانند مستقیماً برای ترجمه یک جمله به زبان موردنظر فراخوانی شوند. این رویکرد نخستین بار در سال ۲۰۲۳ توسط هندی و همکاران برای جی‌پی‌تی ۳.۵ به‌طور جامع آزمایش و ارزیابی شد. آن‌ها دریافتند که «سیستم‌های GPT می‌توانند خروجی‌های ترجمه‌ای بسیار روان و رقابتی تولید کنند، حتی در تنظیم zero-shot، به‌ویژه برای ترجمه‌های زبان‌های دارای منابع غنی».

WMT23 همین رویکرد را (اما با استفاده از جی‌پی‌تی ۴) ارزیابی کرد و دریافت که این مدل در ترجمه به زبان انگلیسی با فناوری‌های پیشرفته هم‌سطح است، اما در ترجمه به زبان‌های کم‌منبع عملکرد ضعیف‌تری دارد. این مسئله منطقی به نظر می‌رسد، زیرا مدل‌های GPT عمدتاً بر روی متون انگلیسی آموزش دیده‌اند.
## مقایسه با ترجمه ماشینی آماری
NMT چندین چالش موجود در ترجمه ماشینی آماری (SMT) را برطرف کرده است:
* اتکای کامل NMT به نمایش پیوسته توکن‌ها، مشکلات ناشی از کمبود داده‌های مربوط به کلمات یا عبارات نادر را برطرف کرد. مدل‌ها توانستند به‌طور مؤثرتری تعمیم دهند.
* طول محدود n-gram در مدل‌های زبانی SMT باعث از دست رفتن بخشی از زمینه معنایی می‌شد. سیستم‌های NMT این مشکل را با حذف محدودیت سخت‌گیرانه در تعداد توکن‌ها و استفاده از مکانیزم توجه برای انتخاب توکن‌های مهم در تولید توکن بعدی برطرف کردند.
* آموزش انتها به انتهای یک مدل واحد، عملکرد ترجمه را بهبود بخشید و همچنین کل فرایند را ساده‌تر کرد.
* مدل‌های عظیم n-gram (تا ۷-gram) در SMT به مقدار زیادی حافظه نیاز داشتند، در حالی که NMT به حافظه کمتری نیاز دارد.

## روش آموزش
### تابع زیان آنتروپی متقاطع
مدل‌های NMT معمولاً برای بیشینه‌سازی احتمال مشاهده داده‌های آموزشی آموزش داده می‌شوند. به‌عبارت دیگر، برای مجموعه‌ای از T جملات مبدأ X = \mathbf{x}^{(1)}, ..., \mathbf{x}^{(T)} و جملات مقصد متناظر Y = \mathbf{y}^{(1)}, ..., \mathbf{y}^{(T)}، هدف یافتن پارامترهای مدل \theta^* است که مجموع احتمال هر جمله مقصد در داده‌های آموزشی را با توجه به جمله مبدأ متناظر بیشینه کند:

\theta^* = \underset{\theta}{\operatorname{arg\,max}} \sum_i^T P_{\theta}(\mathbf{y}^{(i)}|\mathbf{x}^{(i)})

گسترش به سطح توکن به‌صورت زیر خواهد بود:

\theta^* = \underset{\theta}{\operatorname{arg\,max}} \sum_i^T \prod_{j=1}^{J^{(i)}} P(y_j^{(i)} | y_{1,j-1}^{(i)}, \mathbf{x}^{(i)})

از آنجا که تنها بیشینه مقدار موردنظر است، می‌توان به‌جای آن بیشینه لگاریتم را جستجو کرد (که مزیت آن جلوگیری از خطای محاسباتی ناشی از مقادیر بسیار کوچک است).

\theta^* = \underset{\theta}{\operatorname{arg\,max}} \sum_i^T \log\prod_{j=1}^{J^{(i)}} P(y_j^{(i)} | y_{1,j-1}^{(i)}, \mathbf{x}^{(i)})

با استفاده از این واقعیت که لگاریتم حاصل‌ضرب برابر با مجموع لگاریتم‌های عوامل آن است و تغییر علامت، تابع زیان کلاسیک آنتروپی متقاطع حاصل می‌شود:

\theta^* = \underset{\theta}{\operatorname{arg\,min}} - \sum_i^T \log\sum_{j=1}^{J^{(i)}} P(y_j^{(i)} | y_{1,j-1}^{(i)}, \mathbf{x}^{(i)})

در عمل، این کمینه‌سازی به‌صورت تکراری بر روی زیرمجموعه‌های کوچک (مینی‌بچ‌ها) از مجموعه آموزشی با استفاده از گرادیان نزولی تصادفی انجام می‌شود.

### اجبار تدریس

در زمان استنتاج، رمزگشاهای خودبازگشتی از توکن تولیدشده در مرحله قبلی به‌عنوان ورودی استفاده می‌کنند. با این حال، واژگان توکن‌های مقصد معمولاً بسیار بزرگ است؛ بنابراین، در ابتدای مرحله آموزش، مدل‌های آموزش‌ندیده تقریباً همیشه توکن اشتباه را انتخاب می‌کنند؛ و مراحل بعدی باید با ورودی‌های اشتباه کار کنند که باعث کاهش سرعت آموزش می‌شود.

به‌جای این روش، در مرحله آموزش از *اجبار تدریس* استفاده می‌شود: مدل (که در این استعاره نقش «دانش‌آموز» را دارد) همیشه توکن‌های صحیح قبلی را به‌عنوان ورودی برای تولید توکن بعدی دریافت می‌کند، صرف‌نظر از آنچه در مرحله قبلی پیش‌بینی کرده است.

## ترجمه با مهندسی پرسش در مدل‌های زبانی بزرگ

همان‌طور که در بخش تاریخچه توضیح داده شد، به‌جای استفاده از یک سیستم NMT که بر روی متن‌های موازی آموزش دیده است، می‌توان یک مدل زبانی سازنده را برای ترجمه متن فراخوانی کرد. این مدل‌ها از سیستم‌های NMT مبتنی بر رمزگذار-رمزگشا در چندین جنبه متفاوت هستند:

* مدل‌های زبانی سازنده برای وظیفه ترجمه آموزش ندیده‌اند، چه برسد به مجموعه داده‌های موازی. در عوض، آن‌ها بر روی یک هدف مدل‌سازی زبانی آموزش داده می‌شوند، مانند پیش‌بینی کلمه بعدی در یک توالی که از یک مجموعه داده بزرگ متون استخراج شده است. این مجموعه داده می‌تواند شامل اسناد به زبان‌های مختلف باشد، اما در عمل عمدتاً شامل متون انگلیسی است. پس از این مرحله پیش‌آموزش، آن‌ها برای یک وظیفه دیگر ریزتنظیم می‌شوند، که معمولاً شامل پیروی از دستورالعمل‌ها است.
* از آنجا که این مدل‌ها برای ترجمه آموزش ندیده‌اند، معماری رمزگذار-رمزگشا ندارند. در عوض، فقط شامل رمزگشای ترانسفورمر هستند.
* برای رقابت در وظیفه ترجمه ماشینی، مدل‌های زبانی بزرگ باید بسیار بزرگ‌تر از سایر سیستم‌های NMT باشند. به‌عنوان مثال، GPT-3 دارای ۱۷۵ میلیارد پارامتر است، در حالی که mBART دارای ۶۸۰ میلیون و ترانسفورمر بزرگ اصلی تنها ۲۱۳ میلیون پارامتر دارد. این بدان معناست که آموزش و استفاده از آن‌ها از نظر محاسباتی هزینه‌برتر است.

یک مدل زبانی سازنده را می‌توان به‌صورت zero-shot فراخوانی کرد، یعنی فقط از آن خواسته شود که یک متن را به زبان دیگر ترجمه کند بدون ارائه مثال‌های بیشتر در درخواست. یا می‌توان یک یا چند نمونه ترجمه را در درخواست گنجاند و سپس از مدل خواست که متن موردنظر را ترجمه کند. این روش به‌ترتیب یادگیری تک‌نمونه‌ای یا چندنمونه‌ای نامیده می‌شود. به‌عنوان مثال، درخواست‌های زیر توسط هندی و همکاران (۲۰۲۳) برای ترجمه بدون نمونه و تک‌نمونه‌ای استفاده شده‌اند:


```
### این جمله را از [زبان مبدأ] به [زبان مقصد] ترجمه کن، مبدأ:
[جمله مبدأ]
### مقصد:
```



```
این را به ۱. [زبان مقصد] ترجمه کن:
[نمونه ۱ مبدأ]
۱. [نمونه ۱ ترجمه]
این را به ۱. [زبان مقصد] ترجمه کن:
[ورودی]
۱.
```


## جستارهای وابسته
* توجه
* ترنسفورمر
* سک۲سک

## منابع

رده:ترجمه ماشینی
رده:زبان‌شناسی رایانشی
رده:کاربردهای هوش مصنوعی
رده:وظیفه‌های پردازش زبان‌های طبیعی