вторник, 1 юли 2008 г.

Google Translate и автоматичният превод


Мина доста време, откакто Google включиха българския към езиците, които се поддържат от набралата популярност услуга Google Translate. Оттогава направих някои експерименти с въпросния инструмент и реших да опиша впечатленията си.


Какво казва Мрежата

Не е трудно да намериш в интернет куп подигравателни статийки, коментари и дискусии, посветени на машинния превод. Кой например не е чел така популярния превод на кухненски аспиратор Taurus, увековечил съчетаното използване на думичките смокиня и шибалка? Малко ли са и тези, които отвориха Google Translate, разочароваха се дълбоко поради факта, че не може им да преведе на английски „на баба ти хвърчилото“ и го затвориха с презрение?

Е време е да дадем и една малко по-различна гледна точка.

Няколко думи за машинния превод
Българската статия за Машинния превод в Уикипедия описва по много добър начин и с малко по-сложни научни термини какво точно е това чудо. Ето определението на Уикипедия:

Машинен превод е дисциплина от компютърната лингвистика, която се занимава със задачата за автоматично превеждане на писмен текст или реч от един естествен език на друг чрез компютърен софтуер.

Google, както обикновено, са намерили далеч по-лаконичен начин да изразят същото.

What is "automatic translation"?
It's translation produced by state-of-the-art technology, without the intervention of human translators. Automatic translation is also often referred to as machine translation.

Тоест: превод без човешка намеса.


Опити за „такова животно“ със сигурност има от самата зора на компютрите. Към момента според най-различни източници, машинният (автоматичният) превод може да постигне максимална точност от 85%. Не мога да се сетя къде точно видях тази оценка, но година-две след като за пръв път прочетох тези данни, започнах да практикувам т.нар. „превод с помощта на компютър“ (англ. computer-aided translation или computer-assisted translation – CAT). Без да се впускам в много подробности, стандартните настройки на CAT инструмента, който ползвам сега, предвиждат наказателно отнемане (penalty) на точно 15% от точността на сегмент, произлязъл от машинен превод. Значи бихме могли да приемем, че един машинен превод може да предостави МАКСИМАЛНА ТОЧНОСТ от 85%.


Приносът на Google


Както е известно, Google дължат огромния успех на своята търсачка на патентования си алгоритъм PageRank™. Беше въпрос на време да разпрострат изследователската си дейност и в областта на компютърната лингвистика и по-точно в един от най-комерсиалните й клонове - машинния превод. Коментаторите бележат началото на гугълската ера в автоматичния превод със статията Statistical machine translation live, пусната в официалния блог на Google на 28 април 2006 г. от Franz Och. (Преди това пак е имало автоматичен превод, предлаган от Google, но той е бил базиран на продукта Systran, от който също се възползва Babelfish (Altavista). )


Какво е новото?
Google вече говорят за статистически машинен превод


What is statistical machine translation?
Most state-of-the-art, commercial machine-translation systems in use today have been developed using a rule-based approach, and require a lot of work to define vocabularies and grammars.
Our system takes a different approach: we feed the computer billions of words of text, both monolingual text in the target language, and aligned text consisting of examples of human translations between the languages. We then apply statistical learning techniques to build a translation model. We've achieved very good results in research evaluations.

С други думи: Google са заредили безброй много паралелни текстове, въвели са няколко правила (грубо казано разбира се) и ето ти най-успешния (че и безплатен) софтуер за машинен превод (една статия на френски с малко статистика).


Какво научих АЗ от кратките си експерименти с Google Translate:


1. Поддържа се превод освен между български-английски, но и между български-гръцки. Отне ми известно време да разбера, че двойката български-гръцки всъщност използва английския като междинен, но това е факт. Много добър финт - можеха просто да кажат, че не поддържат тези двойки и да си навлекат малко мрънкане, но Google просто добавят една стъпка, която се изпълнява на заден фон - и ето ти доволен потребител.


2. Google Translate се справя много добре с текстове от сфери като финанси, счетоводство, право, Европейски съюз и т.н. Това ме кара да си мисля, че са били „подравнени“ (aligned) доста текстове именно от безбройните преводи на ЕС или други подобни. Много добре:) Самият ЕС не е заредил в IATE почти нищо за български (за разлика от гръцки), но пък Google са се сетили. Още веднъж: браво на Google.


3. Google Translate върши отлична работа при превод на имена на държави, най-различни съкращения (знае например, че ΑΞΕ (Άμεσες ξένες επενδύσεις) e FDI (Foreign Direct Investment) и ПЧИ (Преки чуждестранни инвестиции) ) , химични вещества (знае и какво са „PCB or PCT“ - сега е моментът да тествате:)).
Тоест, Google Translate може да се ползва изключително успешно като речник за масов превод на несвързан текст и нерядко на доста специфични термини от различни сфери.


4. Специално за български учудващо често се улучва и правилната пунктуация (?!).


5. Google Translate не се справя никак добре при художествени текстове, фразеологични словосъчетания, остарели изрази, всекидневна реч, неграмотни текстове с правописни и пунктуационни грешки. Е - простено да му е.


6. Google са оставили потребителя да даде своя принос чрез линка „Предложете по-добър превод“. Тоест всеки, който разполага с паралелни текстове на два езика, може да ги зареди по най-елементарен начин в отварящото се поленце и така да подпомогне каузата за създаване на един по-добър машинен превод. Аз лично вече редовно давам своята лепта при комбинациите между трите ми езика, макар че ако за български-гръцки се минава през английски, едва ли предложенията ми биват отчитани... Я да видим...


В заключение с радост мога да отбележа, че машинният превод е направил решителна крачка напред благодарение на Google. Според изследването на bytelevel (плюс още) по-малко от 30% от потребителите на интернет са носители на английския език с тенденция да стават все по-малко. В същото време Европа развива езикова политика, която цели до навършването на пълнолетие всеки европейски гражданин да владее на добро ниво два езика в допълнение към майчиния, като със съжаление се отбелязва, че практиката да се изучава само английски се дължи на „принципа на минималното усилие“. Ето затова аз съм „за“ машинния превод. Той може да не е пълно решение на проблема „езикова бариера“, но определено вече започва да помага.


А що се отнася до това, дали машинният превод ще замести човешкия - мисля, че е тотално невъзможно. Единственият начин машина да преведе със 100% точност един текст е той да е съставен от друга машина. Защото хората използват безброй синоними, стилови окраски, тавтология, грешки, жаргон, обратен словоред и т.н., а машините биха могли да владеят само „книжовен“ език в прав словоред и съставен от думи, които имат точно една аналогична дума на изходния език, за да се избягват евентуални обърквания.


Линкове:

Google Translate: http://google.com/translate_t

За технологията на Google Translate: http://www.google.com/intl/en/help/faq_translation.html