Український пошук: переклад сторінок у результатах пошуку

20 cічня 2011, 10:52

2011 рік в Україні ми починаємо запуском чергового технологічного проекту. Це бета-версія сервісу автоматичного перекладу результатів пошуку з російської на українську і навпаки.

Чому цей сервіс такий важливий? З його допомогою можемо ще краще відповідати на питання користувачів, наприклад, якщо доречна відповідь на питання користувача з України знайшлася російською, користувач зможе прочитати її, навіть якщо не розуміє російської або йому комфортніше читати веб-сторінки рідною мовою. Сторінки перекладаються «на льоту», а якість перекладу невпинно поліпшуватиметься.

Ось як це виглядає:


Як бачите, якщо мова інтерфейсу сторінки з результатами пошуку – українська, поруч зі сніпетами російськомовних сайтів з'явиться посилання «Переклад». Клікніть на ньому, і побачите текст відповідної сторінки, перекладений з російської на українську.


Навпаки теж працює. Ось як Яндекс переклав з української рецепт куті.

В основі сервісу лежить статистичний машинний переклад. Кому цікаво, розповімо докладніше.

Як випливає з назви, цей переклад базується на статистиці. Зіставляючи тексти різними мовами, можна побудувати ймовірнісні моделі перекладу фраз з однієї мови на іншу. Завдяки прориву в науковій галузі та бурхливому розвитку обчислювальної техніки, за останні 5 років на IT-ринку з’явилося кілька систем статистичного машинного перекладу. Наприклад, Google і Microsoft зараз намагаються створити глобальні сервіси автоматичного перекладу текстів для усіх мов світу. Перекладач Google з'явився першим і вже досяг певної зрілості, перекладач Microsoft активно розвивається, але поки ще перебуває в статусі бети.

Cучасний статистичний машинний переклад зазвичай включає в себе три складові — модель перекладу, модель мови і декодер. Модель перекладу з мови А на мову Б — це таблиця найвірогідніших перекладів для усіх уживаних фраз мови А і будується за великими корпусами так званих паралельних текстів, що складаються з пар речень мовами А і Б. Модель мови містить перелік усіх вживаних фраз мови Б і будується за корпусом текстів мовою Б. Декодер — програма для перекладу речень з мови А на мову Б, яка підбирає з безлічі варіантів, запропонованих моделлю перекладу, найкращий (з точки зору відповідної моделі мови).
Тож усе, що потрібно для створення машинного перекладу — це зібрати якомога більше паралельних текстів, навчити модель перекладу, потім за великим корпусом текстів побудувати модель мови, а на закінчення написати програму-декодер. Усі розуміють, що в сучасному Інтернеті зосереджені мільйони паралельних документів і сотні мільйонів документів мовою призначення. Багато інструментів, необхідних для вирівнювання перекладу за словами і реченнями, вже давно у відкритому доступі у вигляді готових програм і навіть цілих платформ.

Щоб розпочати експерименти з машинним перекладом, не потрібно багато ресурсів — усе поміститься на невеликий за сьогоднішніми мірками сервер. Проте, щоб зробити промисловий сервіс перекладу, який би відповідав сучасним стандартам якості, треба побудувати моделі мови та перекладу, що містять сотні мільйонів фраз. Для цього доведеться зібрати й обробити десятки мільйонів документів, знадобиться багато дискового простору, багато оперативної пам'яті та багато процесорного часу. Саме тому наявні системи машинного перекладу наразі можна перерахувати на пальцях.
Зайняти своє місце у цьому почесному строю має намір і Яндекс. Першою ми випустили українсько-російську перекладну пару, слідом за нею має з'явитися англійсько-російська. Пізніше до сервісу перекладу веб-сторінок додадуться переклад тексту та інші функції.

Нагадаємо, що в Яндексі вже працює сервіс перекладу з кількох європейських мов на російську, заснований на технології компанії Промт.

Новий сервіс російсько-українського перекладу зовні багато в чому схожий на теперішній, проте є кілька принципових відмінностей. Головна з них полягає в техніці розбору веб сторінки. Теперішній сервіс розбирає сторінку на сервері, перекладає і надсилає перекладену сторінку користувачеві. Новий сервіс закачує сторінку на сервер і відразу ж надсилає її користувачеві, браузер якого сам розбирає html-код сторінки і надсилає текст на сервер перекладу невеликими частинками.

У беті нового сервісу відключені таймаути на завантаження і переклад сторінки, однак деякі обмеження залишилися — щоб даремно не перевантажувати сервери непотрібними перекладами, поки що не перекладатимуться занадто великі сторінки.

 
 

Наталія Журавльова, Олексій Байтін, Андрій Ярошевський та группа розробки відділу лінгвістичних технологій, розширюємо Уанет


3 коментарі
Підписатися на коментарі до посту

Дуже вдячна вам за вашу роботу. Отримую величезне задоволення від користування Яндекс.

Дуже приємно, дякуємо!
А скриншоты в .png так и не научились делать ;)