
Полная версия
ИИ. История машины, которая научилась говорить
У механического проекта не было доступной вычислительной платформы, которая могла бы выполнять сложные операции автоматически, а широкого внедрения не последовало. Троянский умер в 1950 году, до того как машинный перевод стал международным исследовательским полем. Его работу позднее нашли и переосмыслили советские исследователи, а историки стали рассматривать её как раннюю попытку разделить перевод на анализ, промежуточное представление и синтез текста на другом языке.
Не стоит делать из Троянского легенду о человеке, который в одиночку «изобрёл Google Translate». Его устройство не было реализованным универсальным переводчиком. Ценность проекта в другом: задолго до массовых вычислений он поставил вопрос, который не исчезнет в цифровую эпоху. Что машина действительно может сделать в переводе, если смысл всё равно должен быть разобран человеком?
Уоррен Уивер предлагает читать язык как код
В июле 1949 года математик Уоррен Уивер подготовил меморандум о возможности компьютерного перевода. Во время Второй мировой войны он руководил работой математиков, занимавшихся прикладными задачами и анализом сообщений. Опыт криптографии подсказал ему аналогию: возможно, незнакомый язык можно рассматривать как код, который компьютер способен расшифровать.
Аналогия не означала, что русский или китайский язык — всего лишь шифр. Уивер понимал, что у естественных языков есть структура, многозначность и разница грамматик. Но сравнение с криптоанализом помогало представить принципиальную возможность: в длинном тексте часть неоднозначности снимается контекстом и повторяющимися закономерностями. Если машина сможет учитывать достаточно большой фрагмент, возможно, она определит, какой вариант слова подходит.
Меморандум был важен не только содержанием, но и положением автора. Уивер работал в Фонде Рокфеллера и располагал влиянием на финансирование науки. Он не написал готовый алгоритм перевода; он сформулировал программу исследований и распространил её среди людей, способных поддержать новое направление. В последующие годы в нескольких американских университетах начали изучать автоматический перевод и формальные свойства естественного языка.
Идея Уивера соединяла два взгляда. Первый был инженерным: разобрать предложение на элементы и преобразовать их по правилам. Второй — статистическим: изучать частоты и контекст, чтобы выбрать вероятное значение. На раннем этапе ни один из подходов не был готов решить задачу целиком, но спор между ними возник почти сразу. Нужно ли вручную записать грамматику? Можно ли получать знание из наблюдений? Должна ли система иметь промежуточный язык? Или перевод можно построить как цепочку специальных операций от одного языка к другому?
В 1952 году Yehoshua Bar-Hillel, философ и логик, работавший в MIT, организовал первую крупную конференцию по машинному переводу. Обсуждали словари, грамматические анализаторы, универсальные языки и способы представления смысла. Уже на этой ранней встрече стало ясно: проблема не сводится к тому, чтобы набрать больше слов в память. Исследователи должны договориться, что именно компьютер будет делать с предложением, прежде чем система сможет выдать перевод.
Казалось, что новые вычислительные машины дадут ключ к задаче, которая веками была человеческой. Но чем ближе исследователи подходили к реальному языку, тем заметнее становилось, что «перевод» состоит из множества решений. Каждый из них можно было сделать отдельной задачей, но все они зависели друг от друга.
Что именно делала машина IBM 701
На демонстрации 1954 года IBM 701 работал с подготовленной русско-английской системой. Лингвистическую часть создавали специалисты Джорджтаунского университета, среди них Пол Гарвин; Леон Достерт был одним из организаторов проекта и его публичного показа. IBM предоставила компьютер и техническую поддержку. Этот состав уже говорит о том, что ранний машинный перевод требовал команды: лингвиста, программиста, инженеров и людей, которые могли определить, какие фразы стоит включить в опыт.
В словаре было около 250 лексических элементов, включая основы и окончания. Это число могло звучать как немало для одной машины, но покрывало лишь крошечную часть русского языка. Правил было шесть основных, и они применялись к заранее выбранным конструкциям. По опубликованным описаниям, в демонстрации использовался небольшой набор фраз, подготовленных так, чтобы показать возможности системы. Поэтому разные источники указывают то более шестидесяти тестовых предложений, то 49 предложений, перечисленных в материалах позднейшего анализа. Эта разница в подсчёте не меняет сути: выборка была маленькой и контролируемой.
Система не просто заменяла каждое русское слово отдельным английским. Она могла использовать словарные соответствия, учитывать отдельные грамматические признаки и переставлять элементы фразы. Это было необходимо, потому что русский и английский по-разному показывают связи внутри предложения. Для демонстрации выбирали содержательные научные и технические высказывания, где ключевое значение можно было выразить сравнительно прямолинейно.
Представим предложение из строго ограниченной области, где встречаются слова «атом», «молекула», «углерод» или «кислород». Если словарь содержит нужные термины, а грамматика фразы соответствует предусмотренной конструкции, система способна получить осмысленный перевод. Она не обязана знать все значения слов, которые никогда не встретятся в этом наборе. Не требуется переводить идиому, шутку, газетную колонку или стихотворение. Ограничения не были помехой демонстрации; они составляли условие, которое сделало демонстрацию возможной.
Это не означает, что исследователи намеренно выдавали узкий эксперимент за готовый продукт. В публичном рассказе о технологии тоньше устроен механизм ожиданий: конкретная фраза «в этих условиях компьютер перевёл подготовленные предложения» легко превращается в общую фразу «компьютер переводит русский». Заголовку неинтересно объяснять, что в памяти 250 лексических единиц и шесть правил. Но читатель, услышав «машина переводит», естественно представляет возможность ввести любой текст.
Так демонстрация одновременно помогла науке и подняла планку будущих обещаний. Она убедительно показала, что машины способны выполнять не только арифметику. И она дала людям простой образ автоматического переводчика раньше, чем инженеры понимали, как обеспечить стабильную работу на реальных текстах.
Система не была бесполезным трюком. Она проверила гипотезу, позволила изучить технологию перевода, дала публике конкретный результат и привлекла внимание к вычислительной лингвистике. Но её успех отвечал на один вопрос: можно ли запрограммировать перевод некоторых подготовленных предложений? Он не отвечал на другой: можно ли переводить тексты, содержание которых неизвестно заранее?
Демонстрация как тщательно поставленный опыт
Публичный показ IBM 701 был рассчитан на то, чтобы сделать новую область видимой. Компьютер находился в центре внимания; приглашённые журналисты могли наблюдать, как подготовленные русские предложения превращаются в английские. В газетном изложении это легко звучало как событие, после которого перевод уже «поручен машине». Но между этим впечатлением и тем, что происходило в лаборатории, оставалась дистанция.
Любая демонстрация нуждается в ясном сюжете. Если показать тысячи страниц, зритель не сможет понять, почему один результат получился лучше другого. Если показать короткий набор фраз, легче увидеть операцию и оценить её. Исследователи выбрали научные и технические предложения, потому что в них можно было ограничить словарь и использовать сравнительно предсказуемую грамматику. Это было разумное экспериментальное решение: проверить конкретный механизм на примерах, а не обещать систему для всего языка.
Подготовленность фраз не делает демонстрацию фикцией. Она означает, что исследователи отвечали на узкий вопрос: можно ли запрограммировать процедуру, которая преобразует структуру определённых русских предложений в английский результат? Ответ был положительным. Компьютер не просто хранил заранее напечатанные ответы; программа применяла словарь и правила к входной фразе. Но из этого опыта нельзя было сделать вывод, что система сможет прочитать любой научный журнал без помощи лингвиста.
В этом различии часто теряется смысл первых публичных показов. Экспериментатор показывает, что механизм может работать при заданных условиях. Реклама и пресса, напротив, склонны описывать будущую возможность как уже доступную услугу. Между «машина обработала эти фразы» и «машина переводит с русского на английский» лежит не одна техническая доработка, а расширение словаря, грамматики, жанров, контекста и способов проверки.
Если бы организаторы демонстрации показали систему, которая часами разбирает одну сложную фразу и в конце выдаёт спорный результат, интерес публики был бы меньше. Поэтому показу помогал отбор, как он помогает любому эксперименту. Этот отбор одновременно позволил увидеть реальную вычислительную идею и создал риск чрезмерного обобщения. Устройство сработало в хорошо очерченной рамке; будущее обещание начиналось там, где рамка заканчивалась.
Для истории ИИ такая сцена знакома. Маленькая система может быть впечатляющей именно потому, что её авторы контролируют условия. Важный вопрос после показа — не только «сработало ли?», но и «какие условия обеспечили успех, что произойдёт при их изменении и сколько человеческой работы осталось за кадром?». С этой точки зрения демонстрация IBM была началом исследований, а не доказательством скорого исчезновения переводческой профессии.
Слово — не маленькая коробка со значением
Перевод слова за словом выглядит заманчиво. Русское слово «лук» — на английском «onion» или «bow», в зависимости от смысла. Слово «ключ» может быть предметом, источником воды, инструментом для настройки или способом решить задачу. Словарь способен перечислить соответствия, но не выбрать правильное без контекста.
Человек использует сразу несколько подсказок. Смотрит на соседние слова, тему абзаца, жанр текста и ситуацию, в которой фраза сказана. В инструкции по инструменту «ключ» скорее окажется металлическим предметом; в музыкальной статье — знаком; в разговоре о загадке — ответом. Точная догадка часто возникает мгновенно, потому что десятилетия языкового опыта работают одновременно.
Для ранней программы каждый такой выбор требовал дополнительных правил. Система могла проверять соседние слова, учитывать грамматическую форму, использовать словарную метку и выбирать значение по установленному критерию. Но сколько контекста достаточно? Если рядом нет очевидной подсказки, нужно ли смотреть на всю фразу, предыдущие предложения, тему главы или знания о мире?
Грамматика также не снимает неоднозначность автоматически. В разных языках грамматическую информацию кодируют разными средствами: окончаниями, служебными словами, порядком слов и согласованием. Переводчик должен определить, какие части фразы связаны, кто действует, на что направлено действие и какое отношение обозначает предлог. Русский язык позволяет менять порядок слов для выделения темы или акцента; английский сильнее опирается на позицию слов. Формально одинаковая последовательность слов может передавать разные смысловые отношения.
Значит, программе нужно сначала получить представление структуры: определить слова и их формы, выделить части предложения, связать их друг с другом, выбрать значения, а затем построить фразу целевого языка. Каждая ступень может ошибиться, и ранняя ошибка часто переходит на следующий шаг. Неверно выбранное значение приводит к неверной структуре; неверная структура — к переводу, который выглядит грамматически правдоподобно, но сообщает не то.
Даже правила согласования и словарь имеют цену. Для каждого нового слова нужно определить формы, значения, грамматические категории и типичные сочетания. Для каждой конструкции — решить, как её обнаружить и что с ней делать. Чем шире язык, тем больше правил пересекаются. Слова живут не в изолированных ячейках; их поведение меняется в зависимости от соседей и контекста.
Лингвисты годами описывают такие различия для людей. Теперь от них требовалось ещё и представить описание так, чтобы компьютер мог его применить. Автоматизация не отменила лингвистический труд — она сделала его частью инженерного процесса.
Как предложение превращалось в программу
Чтобы понять ограничения ранних систем, полезно представить перевод не как кнопку, а как последовательность промежуточных решений. Пусть входная фраза сообщает: «Учёные изучают свойства нового материала». Даже в таком простом примере программа должна распознать словоформы, определить, какие слова относятся к каким частям предложения, решить, что «учёные» выполняют действие, а «свойства» являются его объектом, подобрать соответствия и собрать английскую фразу в привычном порядке.
В русском языке окончание часто помогает определить роль слова. Форма «материала» показывает, что речь идёт о родительном падеже, но это окончание само по себе не сообщает машине, какую именно связь автор имеет в виду. В английском многие грамматические отношения чаще выражаются фиксированным порядком слов и предлогами. Переводчик должен перенести не набор букв, а отношение между участниками фразы. Если он буквально оставит порядок исходного языка, результат может звучать неестественно; если изменит его неверно, изменится и смысл.
Первый возможный этап — морфологический анализ: программа определяет, какая форма слова перед ней и какие грамматические варианты допустимы. Затем синтаксический анализ строит связи. На следующем шаге семантический выбор решает, что значит каждое многозначное слово в данном окружении. После этого система формирует фразу целевого языка, включая порядок слов, артикли, предлоги и согласование. Такая схема выглядит аккуратно, но сами этапы не независимы. Чтобы выбрать значение, часто уже нужно знать структуру; чтобы построить структуру, иногда нужно угадать значение.
Представим слово «ключ» в фразе «ключ открывает дверь». Здесь предмет почти очевиден. Но в сообщении «ключ к новой установке находится в приложении» речь может идти о коде доступа, а не о металлическом инструменте. Если дальше говорится о воде, «ключ» может означать родник. Ранний словарь способен перечислить все варианты; выбор потребует распознавания темы, конструкции и знаний о том, какие предметы что делают.
Даже хороший разбор не всегда даёт единственную версию. «Старый друг учёного» может означать друга, который давно знаком с учёным, или пожилого друга, принадлежащего учёному. Человек использует контекст и интонацию; письменная фраза может не содержать достаточной подсказки. Машине иногда следовало бы сохранить неоднозначность или запросить уточнение, но системы обычно проектировали так, чтобы они всё равно выдавали один вариант. Это превращало неопределённость языка в уверенную ошибку.
В раннем компьютере каждый этап требовал формальной записи. Компьютер не мог «почувствовать» связь между словами; разработчик должен был указать признаки и действия, которыми программа воспользуется. Это превращало общее знание лингвиста в техническое задание: какую форму распознать, какое правило применить, какие варианты считать допустимыми. При добавлении нового явления старые правила могли конфликтовать с новыми.
Здесь возникал эффект накопления. Добавление правила для одного типа конструкции улучшало результат на знакомых примерах, но могло повредить другой разбор. Если правило слишком узкое, система пропускала варианты. Если слишком широкое, оно применялось там, где не должно. Чем больше становилась программа, тем важнее было управлять не только количеством правил, но и их приоритетами, исключениями и совместимостью.
Подобная задача напоминает не заполнение словаря, а создание целого конвейера решений, где ошибка в начале изменяет все следующие операции. Увеличение вычислительной мощности ускоряло обработку, но не подсказывало, какие анализы верны. Именно поэтому перевод стал одновременно испытанием компьютеров и лабораторией для новых идей о формальном представлении языка.
Прямая дорога, перевод через посредника и общий язык
В 1950-х и 1960-х исследователи спорили не только о том, какие правила нужны, но и о том, как должна быть устроена вся система. В одном подходе программа могла анализировать исходное предложение лишь настолько, насколько нужно для непосредственного перевода на конкретный целевой язык. Такой путь часто называют прямым переводом: правила специально связывают один язык с другим.
Этот способ прост в замысле и дешевле, когда пара языков и область применения ограничены. Можно создать систему для русско-английских текстов определённой тематики, не разрабатывая общий анализатор всех языков. Но если затем добавить японский, французский или арабский, потребуются новые словари и правила, а существующие решения нельзя просто переиспользовать без изменений.
Второй подход разделяет перевод на анализ и синтез. Сначала система разбирает исходный язык и строит промежуточное представление, затем по этому представлению создаёт целевой текст. Так работает идея перевода через перенос: единый анализ может быть переиспользован для нескольких языков, но пары языков всё ещё нуждаются в правилах преобразования между структурами.
Третий, более амбициозный вариант — интерлингва, или промежуточный язык смысла. Система сначала переводит предложение в представление, не привязанное к конкретному исходному или целевому языку, а потом по нему формирует любой выходной язык. Если создать хорошую интерлингву, можно не писать отдельную систему для каждой языковой пары. Анализатор русского соединяется с общим представлением, английский генератор — с тем же представлением; новые языки подключаются к уже существующей основе.
На схеме это похоже на транспортный узел. Если у каждого города есть прямой поезд во все остальные города, число маршрутов быстро растёт. Если существует центральная пересадка, достаточно провести линию от каждого города к узлу. Но метафора скрывает главный вопрос: что именно должно находиться в узле? Смысл не выглядит одной простой последовательностью символов. Нужно представить время, отрицание, роли участников, неопределённость, метафоры, культурные понятия и тему, которая может меняться по ходу текста.
Эти архитектурные споры проявились и в советских проектах. Группа Николая Андреева в Ленинграде изучала промежуточные представления. В Москве параллельно работали команды под руководством Дмитрия Панова и Алексея Ляпунова; лингвисты Ольга Кулагина и Игорь Мельчук занимались автоматическим анализом и переводом. Научная среда была разнообразной: одни исследователи уделяли больше внимания формальной лингвистике, другие — словарям и практическому преобразованию текста, третьи — языкам-посредникам.
Ни одна архитектура не устраняла необходимость знать оба языка и содержание текста. Выбор схемы только определял, где разместить знания и сколько частей системы можно использовать повторно. Прямой перевод складывает сложность в наборе правил для каждой языковой пары; интерлингва переносит сложность в разработку представления, достаточно универсального, чтобы через него выражать разные языки. Посредник сокращает число соединений, но сам может оказаться самой трудной частью всего проекта.
Спор о том, что именно нужно знать машине
За архитектурными схемами стоял более глубокий разноголосый спор. Для одних исследователей язык прежде всего был системой грамматических отношений: если научиться надёжно распознавать формы и связи, можно построить правильный перевод. Для других центральной проблемой было значение: грамматически верная фраза не поможет, если система выбрала не то прочтение. Третьи считали, что выбор можно улучшить за счёт контекста и вероятностей, даже если невозможно вручную описать весь мир.
Эти позиции не всегда были взаимоисключающими, но каждая предлагала разный порядок действий. Сторонник грамматического анализа начинал бы с форм и синтаксиса. Сторонник семантического представления спрашивал бы, кто что сделал, чему подвергся и когда это произошло. Статистический подход искал бы регулярности в употреблении и надеялся, что достаточный контекст позволит предпочесть правдоподобный вариант. В 1950-е данных для таких методов было мало, а память и вычислительное время были ограничены. Поэтому первые системы преимущественно полагались на вручную подготовленные словари и правила.
Лингвисты тоже не всегда соглашались между собой. Разные теории по-разному делили слова на категории, описывали грамматические связи и трактовали исключения. Переводческая программа заставляла превратить эту дискуссию в точные решения. Человеку можно сказать: «в этой фразе слово относится к предыдущему предложению». Программа же требует указать, по каким признакам она поймёт, что это именно та фраза и именно та связь.
Проектам приходилось выбирать между полнотой описания и работоспособностью. Если сначала пытаться построить модель всего языка, задача могла остаться на бумаге. Если взять небольшой набор правил, программу можно запустить, но результат останется ограниченным. Демонстрация 1954 года стала заметной потому, что предложила второй путь: вместо завершённой теории языка показать систему, которая выполняет ограниченную, наблюдаемую операцию.
Ранние исследования при этом не были бесполезной подготовкой, которую позже отбросили. Они дали языковой обработке набор вопросов и технических приёмов: как хранить словоформы, как находить границы фраз, как описывать синтаксические связи, как отделять словарный выбор от построения результата. Многие системы позднее соединяли эти приёмы с новыми методами. Разница заключалась в том, где искали недостающую информацию и сколько труда требовалось для её добавления.
Когда исследователи спорили о «понимании», речь часто шла о вполне практическом выборе. Если машине требуется знать, что человек обычно держит книгу в руках, нужно ли записать это правило? Если текст сообщает о том, что книга лежит на столе, достаточно ли выучить словосочетание? Если в контексте появляется новая тема, может ли система вывести значение из окружающих слов? Каждый ответ означал другой объём базы знаний, иной способ обучения и новый тип проверки.
Поэтому история машинного перевода не развивается как простая лестница от плохой системы к хорошей. На каждом этапе менялась ставка: сначала правила для конкретной пары языков; затем разбор и промежуточные структуры; позже большие коллекции примеров и вероятностный выбор. Новые методы решали часть старых проблем, но приносили вопросы о данных, ошибках и контроле качества. Первые спорные решения продолжали влиять на устройство последующих систем.
Советская линия: не сноска к американской демонстрации
Советские исследователи включились в машинный перевод почти сразу после американской демонстрации. Первые группы появились в Москве и Ленинграде в 1955 году; к ним присоединялись специалисты в других научных центрах. Исследования развивались в условиях, отличных от американских, с собственными академическими институтами, вычислительной инфраструктурой и задачами доступа к иностранной литературе.
После смерти Сталина интерес к компьютерам, кибернетике и автоматизации начал расширяться. В ранний советский период машинный перевод связывался не только с отдельными лабораториями, но и с научной политикой и планами обработки растущего массива зарубежной информации. При этом развитие не было ровной государственной программой, в которой одинаково работали все институты. Исследователи спорили о лингвистике, проектировали разные системы и зависели от доступности компьютеров.
В Москве группа Дмитрия Панова строила систему английско-русского перевода для машины BESM, опираясь на ранние американские эксперименты. Алексей Ляпунов организовал работу, в которой участвовали лингвисты Ольга Кулагина и Игорь Мельчук; они изучали перевод с французского на русский и вопросы формального анализа. В Ленинграде группа Николая Андреева развивала собственный подход к промежуточным языковым представлениям. Уже этот краткий перечень показывает, что «советский машинный перевод» не был одним устройством или одной школой.
Именно параллельное развитие важно для истории науки. Американский эксперимент стал известным международным образом машинного перевода, но он не породил все последующие идеи. В СССР шли споры о том, как представить грамматику, каким должен быть язык-посредник и можно ли строить перевод с опорой на глубокий лингвистический анализ. Некоторые советские программы оказались ближе к американскому подходу, некоторые стремились иначе организовать знание о языке.





