Предыстория
Первая в мире удачная попытка автоматического перевода случилась в 1954 году в Нью-Йорке при поддержке Джорджтаунского университета — она получила название «Джорджтаунский эксперимент». С помощью большой вычислительной машины IBM 701 (на тот период одного из самых производительных компьютеров) 60 предложений были переведены с русского на английский язык. Хотя эти предложения были заготовлены заранее и система не могла переводить произвольный текст, эксперимент стал сенсацией: большинство авторитетных учёных прежде доказывали, что машинный перевод невозможен. Джорджтаунский эксперимент дал импульс для разработки автоматических систем по всему миру.
Демонстрация процедуры первого машинного перевода на IBM, январь 1954 года
Спустя пару месяцев, в апреле 1954-го, начинается работа по машинному переводу (далее — МП) в Москве, в Институте научной информации (сейчас — ВИНИТИ), и продолжается в Институте точной механики и вычислительной техники АН СССР. В 1955 году были получены первые автоматические переводы с английского на русский. Но поскольку разработчики решили отказаться от структурных методов, это направление существовало изолированно и не привело к заметным успехам [4].
Примерно в это же время в Математическом институте АН СССР (сейчас — Институт прикладной математики имени М. В. Келдыша РАН) собирает рабочую группу А. А. Ляпунов, математик и основоположник кибернетики — науки о хранении, передаче и обработки информации в системах. Он считал, что МП — задача преимущественно математико-кибернетическая, а не лингвистическая [2] (глядя на современные системы можно сказать, что Ляпунов был прав). Группе удалось с нуля за полтора года получить первые результаты автоматического перевода с французского языка на русский. Расскажем об этом подробнее.
Как всё начиналось: из воспоминаний
Благодаря организаторским способностям и ораторскому таланту А. А. Ляпунову удалось преодолеть недоверие старших коллег, а также заинтересовать и объединить вокруг себя молодых математиков и лингвистов.
А. А. Ляпунов. Источник: http://globalmmf.iis.nsk.su/node/44 (Архив музея истории НГУ)
В группу по разработке системы МП изначально входило несколько человек, но затем работа сфокусировалась в руках математика О. С. Кулагиной и лингвиста И. А. Мельчука, впоследствии создателя модели СМЫСЛ <=> ТЕКСТ.
По воспоминаниям Мельчука можно понять, насколько задумка с автоматической системой МП была нетривиальной. Он рассказывает, как приятель по университету предложил присоединиться к работе: «Какой-то там человек хочет сделать так, чтобы какие-то машины переводили с одного языка на другой» [3]. Для него (тогда ещё студента филологического факультета) это звучало как «абсолютный бред, полная бессмыслица», потому что «слова „компьютер” не было отродясь» [3]. В СССР разработка ЭВМ, электронно-вычислительных машин, велась секретно для военных целей. Но решив, что ничем не рискует, Мельчук всё-таки встретился с рабочей группой аспирантов и руководителем проекта. «Ляпунов меня просто купил с потрохами. Ничего более интересного я никогда в жизни не слышал», — вспоминает Мельчук [3]. Так началась работа по разработке системы МП. Кстати, недавно «Системный Блокъ» взял у Игоря Мельчука интервью — почитайте его, если хотите узнать об этой истории больше.
И. А. Мельчук примерно в 1956 году (где ему 24 года). Источник: https://arzamas.academy/mag/739-melchuk (Личный архив А. А. Зализняка)
Как производился первый автоматический перевод?
В самом начале разработок Ляпунов говорил ученикам о переводе через извлечение смысла и его передачи на другом языке, то есть о переводе через семантическую структуру текста. Однако в 50-х гг. это было невозможно: область семантики была недостаточно изучена (позже эти идеи были испробованы в интерлингвистических системах машинного перевода, но развития не получили).
Первая система переводила текст последовательно от фразы к фразе, отдельными предложениями, и семантические связи между ними не учитывались. Самым главным «ключом» к переводу был словарь. Все возможности системы определялись его размером, зависящим от памяти компьютера.
Чтобы облегчить задачу перевода, были выбраны тексты из области математики: в них ограниченный набор слов, конструкции не слишком разнообразны, отсутствует игра слов [1].
Для перевода составили два словаря. Первый состоял из 1200 основ слов: частотных в математических текстах, служебных и дополнительных терминов. Второй словарь, специальный, насчитывал 250 оборотов, которые нельзя перевести дословно. Французские и русские слова сопровождались морфологическими, техническими и другим важными для перевода указаниями (например, о наличии омонимов).
Все операции осуществлялись на вычислительной машине «Стрела». Кратко процедуру можно описать так:
- поиск слов в словаре;
- обработка оборотов;
- различение омонимов и многозначных слов;
- анализ всех глаголов, предлогов, существительных, местоимений, причастий, прилагательных: проверка формы французского слова или его положения среди других слов фразы;
- конструирование русских слов;
- составление фразы на русском языке.
Чтобы реализовать этот алгоритм, необходимо было 17 программ, состоящих из 7 000 приказов. Перевод фразы из 8–10 слов занимал около 1,5–2 минут.
Чем отличается первый машинный перевод от современного?
Проблема первой системы сводились к ограниченности: словари нуждались в доработке, потому что изначально удавалось учесть не все случаи. Алгоритм можно было расширять, система не была закрытой, но она плохо распространялась на новый, ранее не обработанный материал, на сложные случаи.
Современный машинный перевод демонстрирует значительные успехи и даже работает практически синхронно. Сравним результаты переводов первой системы машинного перевода [1] и переводы современного автоматического «Яндекс.Переводчика», опирающегося на нейросетевые и статистические алгоритмы.
Ввод на французском языке | Вывод на русском языке первой автоматической системой | Вывод на русском языке «Яндекс.Переводчика» |
(1) Ensembles et éléments sont désignés dans les raisonnements par les symboles, qui sont en général les lettres ou les combinaisons de lettres. | Множества и элементы обозначаются в рассуждениях через символы, которые, вообще говоря, буквы или сочетания (комбинации) букв. | Множества и элементы в рассуждениях обозначаются символами, которые обычно представляют собой буквы или комбинации букв. |
(2) Le théorème qui vient d’être établi subsiste dans ces nouvelles conditions. | Теорема, которая только что была установлена, существует в этих новых условиях. | Только что установленная теорема сохраняется и в этих новых условиях. |
(3) Les solutions précédentes tendent vers zéro quand t augmente indéfiniment. | Предыдущие решения стремятся к нулю, когда t возрастает неограниченно. | Предыдущие решения стремятся к нулю, когда t увеличивается бесконечно. |
(4) On peut conserver seulement deux membres de série. | Мы могем сохранить только два члена ряда. | Мы можем сохранить только двух серийных участников. |
(5) La considération d’une telle expression ne peut présenter aucun intérêt particulier. | Рассмотрение такого выражения не может настоящим никакой частный (особый) интерес. | Рассмотрение такого выражения не может представлять особого интереса. |
Переводы фраз 1–3 оценены создателями первой системы МП как корректные [1]. Современный переводчик предлагает практически идентичные варианты.
С предложениями 4–5 у первой системы возникли проблемы. В четвёртом предложении для перевода глагола pouvoir в словаре были указаны основы «мог» и «мож», из-за ошибки в программе основа была выбрана неправильно. В пятой фразе неточность произошла из-за неучтённых омонимов: основа present может быть либо основой глагола (presenter — представлять), либо основой прилагательного (present — настоящий).
Что касается современного переводчика, в четвёртом случае он предлагает не самый предпочтительный вариант: казалось бы, смысл передан верно и предложение построено грамматически правильно, но вырванные из контекста словосочетания становятся оторванными от формулировок, бытующих в математических текстах. О том, какие ещё ошибки совершают нейросети при переводе, мы писали здесь.
Первая система автоматического перевода работала неидеально, сама постановка задачи вскрыла пробелы в лингвистическом знании: структура языка была недостаточно изучена и описана. Это стало толчком для появления математической, или структурной, лингвистики. Стали развиваться не только сфера автоматического перевода, но и другие области автоматической обработки текста.
Источники
- Кулагина О. С. Машинный перевод с французского языка // Известия высших учебных заведений. Математика. 1958. №. 5. С. 46–51. URL: https://lab314.brsu.by/kmp-lite/kmp2/Translation/History-Theory/kulagina.pdf (дата обращения 21.06.2024).
- Кулагина О. С. А. А. Ляпунов и машинный перевод // Очерки истории информатики в России. 1998. С. 341–350. URL: https://www.computer-museum.ru/books/Essays_on_hist_of_CS.pdf#page=341 (дата обращения 21.06.2024).
- Мельчук И. А. Как начиналась математическая лингвистика // Очерки истории информатики в России. 1998. С. 358–370. URL: https://computer-museum.ru/books/Essays_on_hist_of_CS.pdf#page=358 (дата обращения 21.06.2024).
- Успенский В. А. Серебряный век структурной, прикладной и математической лингвистики в СССР и В. Ю. Розенцвейг: Как это начиналось (заметки очевидца)// Очерки истории информатики в России. 1990. С. 273–309. URL: https://computer-museum.ru/books/Essays_on_hist_of_CS.pdf#page=273 (дата обращения 21.06.2024).