Способ и сервер для обучения алгоритма машинного обучения для перевода

Группа изобретений относится к области машинного обучения и может быть использована для перевода между редким языком и целевым языком. Техническим результатом является повышение качества перевода с редкого языка на целевой язык. Способ содержит этапы: получение сервером определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения; генерирование сервером, применяющим функцию транслитерации, первого синтетического предложения, тем самым генерируя синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение; получение сервером третьего предложения на целевом языке; генерирование сервером четвертого предложения на редком языке для третьего предложения с использованием обратного перевода, причем четвертое предложение и третье предложение образуют определенный искусственный пример; генерирование сервером, применяющим функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для упомянутого определенного искусственного примера, тем самым генерируя синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение; обучение сервером модели перевода на основе синтетического реального примера и синтетического искусственного примера. 2 н. и 20 з.п. ф-лы, 8 ил.

 

ОБЛАСТЬ ТЕХНИКИ

[01] Настоящая технология относится к машинному обучению в целом и, в частности, к способу и серверу для обучения алгоритма машинного обучения для перевода.

УРОВЕНЬ ТЕХНИКИ

[02] С ростом числа пользователей, осуществляющих доступ в Интернет, появилось огромное количество Интернет-служб. К таким службам относятся, например, службы поисковых систем (например, поисковые системы Яндекс™ и Google™), которые позволяют пользователям получать ин формацию, отправляя запросы в поисковую систему. Кроме того, службы социальных сетей, а также мультимедийные службы позволяют большому количеству пользователей с различными социальными и культурными происхождениями взаимодействовать на унифицированных платформах для обмена контентом и информацией. Цифровой контент и другая информация, которыми пользователи обмениваются, могут представляться на различных языках. По этой причине из-за постоянно растущего объема информации, которой обмениваются в Интернете, часто используются службы перевода такие как, например, Яндекс.Переводчик™.

[03] Последняя упомянутая служба является особенно полезной, поскольку она позволяет пользователям с легкостью переводить текст (или даже речь) с одного языка, который пользователь не понимает, на другой язык, который он понимает. Это означает, что службы перевода обычно предназначены для предоставления переведенной версии контента на понятном пользователю языке, чтобы сделать этот контент доступным для восприятия пользователем.

[04] Системы перевода обычно обучаются на основе большого количества примеров параллельных предложений между исходным языком и целевым языком. По этой причине системы перевода хорошо подходят для перевода предложений между «популярными языками», поскольку для обучения доступен очень большой корпус параллельных предложений.

[05] Однако традиционные компьютерные системы, обеспечивающие службы перевода, по-прежнему имеют много недостатков, например, когда речь идет о переводе с языка, для которого доступен ограниченный корпус параллельных предложений, этот язык можно считать «редким» языком с точки зрения доступности параллельных предложений, которые могут быть использованы для обучения алгоритма перевода.

[06] Патентная заявка Китая №. 110717341, озаглавленная «Method and device for constructing old-Chinese bilingual corpus with Thai as pivot» и опубликованная 21 января 2020 года, относится, согласно ее машинному переводу на английский язык, к способу и устройству для построения древнекитайского двуязычного корпуса с тайским языком в качестве основы, что принадлежит к области обработки естественного языка. Сначала, выполняют обработку сегментации слов тайского языка над данными китайско-тайского параллельного корпуса; строят лаосско-тайский двуязычный словарь и переводят тайские предложения в слова подпоследовательностей лаосских предложений с использованием лаосско-тайского двуязычного словаря для получения возможных пар лаосско-тайских параллельных предложений; строят двустороннюю основанную на LSTM модель классификации лаосско-тайских пар параллельных предложений, классифицируют возможные пары лаосско-тайских параллельных предложений и получают лаосско-тайские двуязычные пары параллельных предложений; и сопоставляют лаосский язык с китайским языком посредством использования тайского языка в качестве основного языка для построения лаосско-китайского двуязычного параллельного корпуса.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[07] Разработчики настоящей технологии осознали некоторые технические проблемы, связанные с существующими службами перевода. Целью настоящей технологии является устранение по меньшей мере некоторых неудобств, имеющихся в предшествующем уровне техники.

[08] Традиционные системы хорошо подходят для служб перевода между «популярными» языками. Некоторые примеры популярных языков включают в себя английский, французский, русский, немецкий, турецкий и подобные. Это связано с тем, что традиционные системы имеют доступ к большим корпусам параллельных предложений между такими языками, что позволяет лучше обучать алгоритмы машинного обучения (MLA) для целей перевода.

[09] Однако, традиционные системы плохо подходят для перевода предложений с «редких» языков. Некоторые примеры редких языков включают в себя чувашский, фарерский, галисийский и подобные. Это объясняется ограниченным числом параллельных предложений, которые доступны между некоторым определенным редким языком и целевым языком.

[10] В по меньшей мере некоторых вариантах осуществления настоящей технологии были разработаны способы и системы для генерирования «искусственных» примеров, в отличие от «реальных» примеров, из параллельных предложений между определенным редким языком и целевым языком. Разработчики настоящей технологии осознали, что генерирование искусственных примеров может позволить повысить качество служб перевода, которое может быть достигнуто традиционными системами при переводе предложения с редкого языка. В некоторых вариантах осуществления настоящей технологии наборы обучающих данных, генерируемые на основе искусственных примеров перевода, могут быть помечены как таковые, чтобы позволить модели перевода различать во время фазы обучения реальные примеры перевода и искусственные примеры перевода.

[11] Как станет очевидно из приведенного ниже описания, разработчики настоящей технологии также разработали способы и системы, которые позволяют использовать знания о популярных языках, которые являются частью той же группы или семейства языков, что и редкий язык, для повышения качества перевода с редкого языка на целевой язык.

[12] В по меньшей мере некоторых вариантах осуществления настоящей технологии обеспечивается модель перевода, которая выполнена с возможностью получения входного предложения, которое было транслитерировано с одного языка из некоторой определенной группы языков в «систему синтетического письма», и обеспечения переведенного выходного предложения на целевом языке. Входное предложение может быть сгенерировано моделью транслитерации на основе исходного предложения на одном языке из упомянутой определенной группы языков.

[13] То, как модель транслитерации реализуется, конкретным образом не ограничивается. В одном варианте осуществления модель транслитерации может быть реализована как модель статистического машинного перевода (SMT), обученная транслитерировать предложения с любого одного языка из некоторой определенной группы языков в систему синтетического письма. Например, тюркская группа или семья языков содержит, среди прочих, турецкий, киргизский, узбекский и чувашский языки. В этом примере, в зависимости от конкретного тюркского исходного языка, слово «серебро» может быть записано как «gümüş», «көмөш», «көмеш», «күміс», «күмүш», «gümüş», «kumush» и «кӗмӗл». Таким образом, модель транслитерации обучается таким образом, что определенное слово записывается одинаково в системе синтетического письма, независимо от того, какой из тюркских языков является исходным языком для данного определенного слова. Следует отметить, что в некоторых вариантах осуществления настоящей технологии система синтетического письма может быть системой письма одного из языков упомянутой группы языков. В некоторых вариантах осуществления настоящей технологии использование системы синтетического письма позволяет сделать процесс обучения алгоритма машинного обучения (MLA) более эффективным путем устранения фонетических или орфографических различий между языками из упомянутой группы языков.

[14] Таким образом, в некоторых вариантах осуществления настоящей технологии можно сказать, что модель перевода может быть некоторой определенной моделью, которая способна переводить предложения с любого языка из некоторой определенной группы языков на целевой язык. В частности, исходное предложение на любом языке из группы языков может быть принято компьютерной системой, транслитерировано в систему синтетического письма через модель транслитерации, введено в модель перевода и использовано, таким образом, для генерирования выходного предложения на целевом языке.

[15] В первом широком аспекте настоящей технологии обеспечен способ обучения модели перевода для выполнения перевода между редким языком из группы языков и целевым языком. Способ является исполняемым посредством сервера. Сервер имеет доступ к множеству реальных примеров параллельных предложений между языками упомянутой группы и целевым языком. Число реальных примеров между редким языком и целевым языком сравнительно невелико по сравнению с числом реальных примеров между другими языками из упомянутой группы языков и целевым языком. Способ содержит получение сервером определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным (фактическим) переводом первого предложения. Способ содержит генерирование сервером, применяющим функцию транслитерации, первого синтетического предложения на основе первого предложения для упомянутого определенного реального примера, тем самым генерируя синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение. Первым синтетическим предложением является транслитерация первого предложения в систему синтетического письма. Способ содержит получение сервером третьего предложения на целевом языке. Способ содержит генерирование сервером, применяющим другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода. Четвертым предложением является искусственный перевод третьего предложения. Четвертое предложение и третье предложение образуют некоторый определенный искусственный пример. Способ содержит генерирование сервером, применяющим функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для упомянутого определенного искусственного примера, тем самым генерируя синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение. Четвертым синтетическим предложением является транслитерация четвертого предложения в систему синтетического письма. Способ содержит обучение сервером модели перевода на основе синтетического реального примера и синтетического искусственного примера. Обучение предназначено для приема определенного используемого предложения на редком языке, генерирования синтетического используемого предложения на основе упомянутого определенного используемого предложения с применением функции транслитерации и перевода с использованием модели перевода используемого синтетического предложения в соответствующее используемое предложение на целевом языке.

[16] В некоторых вариантах осуществления способа способ дополнительно содержит генерирование сервером набора обучающих данных на основе синтетического искусственного примера. Причем набор обучающих данных содержит метку, указывающую, что четвертое синтетическое предложение сгенерировано на основе искусственного перевода третьего предложения. Обучение модели перевода содержит ввод сервером набора обучающих данных в модель перевода. Модель перевода использует метку для различения между (i) наборами обучающих данных, сгенерированными на основе реальных переводов, и (ii) наборами обучающих данных, сгенерированными на основе искусственных переводов.

[17] В некоторых вариантах осуществления способа генерирование синтетического реального примера содержит генерирование сервером множества синтетических реальных примеров для соответствующих из упомянутого множества реальных примеров. Третьим предложением является одно из множества третьих предложений. Генерирование синтетического искусственного примера содержит генерирование сервером множества синтетических искусственных примеров для соответствующих из множества искусственных примеров. Обучение модели перевода содержит обучение сервером модели перевода на основе упомянутого множества синтетических реальных примеров и упомянутого множества синтетических искусственных примеров.

[18] В некоторых вариантах осуществления способа способ дополнительно содержит генерирование сервером функции транслитерации путем обучения модели статистического машинного перевода (SMT) на основе выровненных корпусов текста между языками в упомянутой группе языков. Модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков упомянутой группы и синтетическими предложениями в системе синтетического письма.

[19] В некоторых вариантах осуществления способа упомянутая группа языков представляет собой тюркскую группу языков, причем тюркская группа языков содержит турецкий язык, узбекский язык, чувашский язык и киргизский язык. Редким языком является чувашский язык.

[20] В некоторых вариантах осуществления способа упомянутая группа языков представляет собой германскую группу языков, причем германская группа языков содержит английский язык, немецкий язык, голландский язык и фарерский язык. Редким языком является фарерский язык.

[21] В некоторых вариантах осуществления способа упомянутая группа языков представляет собой романскую группу языков, причем романская группа языков содержит французский язык, итальянский язык, испанский язык и галисийский язык. Редким языком является галисийский язык.

[22] В некоторых вариантах осуществления способа упомянутая другая модель перевода обучается на основе реальных примеров между редким языком и целевым языком.

[23] В некоторых вариантах осуществления способа способ дополнительно содержит прием сервером определенного используемого предложения на редком языке, генерирование сервером, применяющим модель транслитерации, синтетического используемого предложения на основе упомянутого определенного используемого предложения и генерирование сервером, применяющим модель перевода, соответствующего используемого предложения на целевом языке на основе используемого синтетического предложения.

[24] В некоторых вариантах осуществления способа упомянутой другой моделью перевода является упомянутая модель перевода и обучение содержит обучение сервером модели перевода на основе синтетических реальных примеров, генерирование сервером, применяющим модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода; и дополнительное обучение сервером модели перевода на основе синтетического искусственного примера.

[25] В некоторых вариантах осуществления способа третьим предложением является чистое предложение на целевом языке, причем чистое предложение предварительно выбирается человеком-оператором.

[26] Во втором широком аспекте настоящей технологии обеспечен сервер для обучения модели перевода для выполнения перевода между редким языком из группы языков и целевым языком. Сервер имеет доступ к множеству реальных примеров параллельных предложений между языками упомянутой группы и целевым языком. Число реальных примеров между редким языком и целевым языком сравнительно невелико по сравнению с числом реальных примеров между другими языками из упомянутой группы языков и целевым языком. Сервер выполнен с возможностью получения определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения. Сервер выполнен с возможностью генерирования, применяя функцию транслитерации, первого синтетического предложения на основе первого предложения для упомянутого определенного реального примера, тем самым генерируя синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение. Первым синтетическим предложением является транслитерация первого предложения в систему синтетического письма. Сервер выполнен с возможностью получения третьего предложения на целевом языке. Сервер выполнен с возможностью генерирования, применяя другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода. Четвертым предложением является искусственный перевод третьего предложения. Четвертое предложение и третье предложение образуют некоторый определенный искусственный пример. Сервер выполнен с возможностью генерирования, применяя функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для упомянутого определенного искусственного примера, тем самым генерируя синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение. Четвертым синтетическим предложением является транслитерация четвертого предложения в систему синтетического письма. Сервер выполнен с возможностью обучения модели перевода на основе синтетического реального примера и синтетического искусственного примера. Сервер выполнен с возможностью обучения для приема определенного используемого предложения на редком языке, генерирования синтетического используемого предложения на основе упомянутого определенного используемого предложения с применением функции транслитерации и перевода с использованием модели перевода используемого синтетического предложения в соответствующее используемое предложение на целевом языке.

[27] В некоторых вариантах осуществления сервера сервер дополнительно выполнен с возможностью генерирования набора обучающих данных на основе синтетического искусственного примера. Причем набор обучающих данных содержит метку, указывающую, что четвертое синтетическое предложение сгенерировано на основе искусственного перевода третьего предложения. Сервер, выполненный с возможностью обучения модели перевода, представляет собой сервер, выполненный с возможностью ввода набора обучающих данных в модель перевода. Модель перевода использует метку для различения между (i) наборами обучающих данных, сгенерированными на основе реальных переводов, и (ii) наборами обучающих данных, сгенерированными на основе искусственных переводов.

[28] В некоторых вариантах осуществления сервера для генерирования синтетического реального примера сервер выполнен с возможностью генерирования множества синтетических реальных примеров для соответствующих из упомянутого множества реальных примеров. Третьим предложением является одно из множества третьих предложений и для генерирования синтетического искусственного примера сервер выполнен с возможностью генерирования множества синтетических искусственных примеров для соответствующих из множества искусственных примеров. Сервер, выполненный с возможностью обучения модели перевода, представляет собой сервер, выполненный с возможностью обучения модели перевода на основе упомянутого множества синтетических реальных примеров и упомянутого множества синтетических искусственных примеров.

[29] В некоторых вариантах осуществления сервера сервер дополнительно выполнен с возможностью генерирования функции транслитерации путем обучения модели статистического машинного перевода (SMT) на основе выровненных корпусов текста между языками в упомянутой группе языков. Модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков упомянутой группы и синтетическими предложениями в системе синтетического письма.

[30] В некоторых вариантах осуществления сервера упомянутая группа языков представляет собой тюркскую группу языков, причем тюркская группа языков содержит турецкий язык, узбекский язык, чувашский язык и киргизский язык. Редким языком является чувашский язык.

[31] В некоторых вариантах осуществления сервера упомянутая группа языков представляет собой германскую группу языков, причем германская группа языков содержит английский язык, немецкий язык, голландский язык и фарерский язык. Редким языком является фарерский язык.

[32] В некоторых вариантах осуществления сервера упомянутая группа языков представляет собой романскую группу языков, причем романская группа языков содержит французский язык, итальянский язык, испанский язык и галисийский язык. Редким языком является галисийский язык.

[33] В некоторых вариантах осуществления сервера упомянутая другая модель перевода обучается на основе реальных примеров между редким языком и целевым языком.

[34] В некоторых вариантах осуществления сервера сервер дополнительно выполнен с возможностью приема определенного используемого предложения на редком языке, генерирования, применяя модель транслитерации, синтетического используемого предложения на основе упомянутого определенного используемого предложения и генерирования, применяя модель перевода, соответствующего используемого предложения на целевом языке на основе используемого синтетического предложения.

[35] В некоторых вариантах осуществления сервера другой моделью перевода является упомянутая модель перевода. Сервер, выполненный с возможностью обучения, представляет собой сервер, выполненный с возможностью обучения модели перевода на основе синтетических реальных примеров, генерирования, применяя модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода, и дополнительного обучения модели перевода на основе синтетического искусственного примера.

[36] В некоторых вариантах осуществления сервера третьим предложением является чистое предложение на целевом языке. Чистое предложение предварительно выбирается человеком-оператором.

[37] В контексте настоящего описания «сервер» представляет собой компьютерную программу, которая работает на надлежащем аппаратном обеспечении и способна принимать запросы (например, от клиентских устройств) по сети и выполнять эти запросы, или вызывать выполнение этих запросов. Аппаратное обеспечение может быть одним физическим компьютером или одной физической компьютерной системой, но ни то, ни другое не является обязательным для настоящей технологии. В настоящем контексте использование выражения «сервер» не предполагает, что каждая задача (например, принятые инструкции или запросы) или какая-либо конкретная задача будут приняты, выполнены или вызваны для выполнения одним и тем же сервером (т.е. тем же самым программным обеспечением и/или аппаратным обеспечением); данное выражение предполагает, что любое число программных элементов или аппаратных устройств может быть задействовано в приеме/отправке, выполнении или вызове для выполнения любой задачи или запроса, или последствий любой задачи или запроса; и все это программное обеспечение и аппаратное обеспечение может быть одним сервером или многочисленными серверами, причем оба данных случая включены в выражение «по меньшей мере один сервер».

[38] В контексте настоящего описания «клиентское устройство» представляет собой любое компьютерное оборудование, которое способно выполнять программное обеспечение, которое является надлежащим для релевантной поставленной задачи. Таким образом, некоторые (неограничивающие) примеры клиентских устройств включают в себя персональные компьютеры (настольные ПК, ноутбуки, нетбуки и т.д.), смартфоны и планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует отметить, что устройство, выступающее в качестве клиентского устройства в настоящем контексте, не исключается из возможности выступать в качестве сервера для других клиентских устройств. Использование выражения «клиентское устройство» не исключает использования многочисленных клиентских устройств при приеме/отправке, выполнении или вызове для выполнения какой-либо задачи или запроса, или последствий любой задачи или запроса, или этапов любого описанного в данном документе способа.

[39] В контексте настоящего описания «база данных» представляет собой любую структурированную совокупность данных, независимо от ее конкретной структуры, программное обеспечение для администрирования базы данных, или компьютерное оборудование, на котором данные хранятся, реализуются или их делают доступными для использования иным образом. База данных может находиться на том же оборудовании, что и процесс, который хранит или использует информацию, хранящуюся в базе данных, или она может находиться на отдельном аппаратном обеспечении, например на выделенном сервере или множестве серверов.

[40] В контексте настоящего описания выражение «информация» включает в себя информацию любого характера или вида, который способен храниться в базе данных любым образом. Таким образом, информация включает в себя, но без ограничения, аудиовизуальные произведения (изображения, фильмы, звуковые записи, презентации и т.д.), данные (данные о местоположении, численные данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, электронные таблицы, списки слов и т.д.

[41] В контексте настоящего описания, если специально не указано иное, подразумевается, что термин «компонент» включает в себя программное обеспечение (соответствующее конкретному аппаратному контексту), которое является как необходимым, так и достаточным для реализации конкретной функции (функций), на которую ссылаются.

[42] В контексте настоящего описания предполагается, что выражение «используемый компьютером носитель хранения информации» включает в себя носители любого характера и вида, в том числе RAM, ROM, диски (CD-ROM, DVD, дискеты, накопители на жестких дисках и т.д.), USB-ключи, твердотельные накопители, ленточные накопители и т.д.

[43] В контексте настоящего описания слова «первый», «второй», «третий» и т.д. используются в качестве прилагательных только для того, чтобы позволить отличать существительные, которые они модифицируют, друг от друга, а не для описания какой-либо особой взаимосвязи между такими существительными. Таким образом, например, следует понимать, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо конкретного порядка, типа, хронологии, иерархии или ранжирования (например) таких серверов, равно как и их использование (само по себе) не означает, что какой-либо «второй сервер» должен обязательно существовать в любой определенной ситуации. Кроме того, как обсуждается в других контекстах данного документа, ссылка на «первый» элемент и «второй» элемент не исключает того, что эти два элемента фактически являются одним и тем же элементом реального мира. Таким образом, например, в некоторых случаях «первый» сервер и «второй» сервер могут быть одним и тем же программным и/или аппаратным обеспечением, в других случаях они могут быть разными программными и/или аппаратными обеспечениями.

[44] Каждая из реализаций настоящей технологии обладает по меньшей мере одним из вышеупомянутых аспектов и/или цели, но не обязательно имеет их все. Следует понимать, что некоторые аспекты настоящей технологии, которые возникли в попытке достичь вышеупомянутой цели, могут не удовлетворять этой цели и/или удовлетворять другим целям, которые явным образом в данном документе не описаны.

[45] Дополнительные и/или альтернативные признаки, аспекты и преимущества реализаций настоящей технологии станут очевидными из нижеследующего описания, сопроводительных чертежей и приложенной формулы изобретения.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[46] Для лучшего понимания настоящей технологии, а также других аспектов и ее дополнительных признаков, ссылка приводится на нижеследующее описание, которое должно использоваться в сочетании с сопроводительными чертежами, на которых:

[47] Фигура 1 иллюстрирует систему, подходящую для реализации неограничивающих вариантов осуществления настоящей технологии.

[48] Фигура 2 иллюстрирует представление трех групп языков в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[49] Фигура 3 иллюстрирует представление множества реальных примеров перевода между некоторой определенной группой языков с Фигуры 2 и некоторым определенным целевым языком, хранимым системой с Фигуры 1, и представление множества чистых предложений на целевом языке, хранимом системой с Фигуры 1, в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[50] Фигура 4 иллюстрирует представление определенной модели перевода упомянутой системы с Фигуры 1 и то, как данная модель перевода используется для выполнения обратного перевода множества чистых предложений на целевом языке, в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[51] Фигура 5 иллюстрирует представление того, как определенный реальный пример и определенный искусственный пример обрабатываются системой с Фигуры 1 для генерирования наборов обучающих данных для обучения другой модели перевода упомянутой системы с Фигуры 1 в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[52] Фигура 6 иллюстрирует представление двух отдельных итераций обучения другой модели перевода в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[53] Фигура 7 иллюстрирует представление отдельной итерации использования другой модели перевода в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

[54] Фигура 8 иллюстрирует схематичное блочное представление способа, выполняемого системой с Фигуры 1, в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.

ПОДРОБНОЕ ОПИСАНИЕ

[55] Со ссылкой на Фигуру 1 проиллюстрировано схематичное представление системы 100, причем система 100 подходит для реализации неограничивающих вариантов осуществления настоящей технологии. Следует четко понимать, что изображенная система 100 является лишь иллюстративной реализацией настоящей технологии. Таким образом, нижеследующее описание предназначено лишь для того, чтобы использоваться в качестве описания иллюстративных примеров настоящей технологии. Это описание не предназначено для определения объема или установления границ настоящей технологии. В некоторых случаях то, что считается полезными примерами модификаций системы 100, также может быть изложено ниже. Это делается просто для помощи в понимании и, опять же, не для определения объема или установления границ настоящей технологии. Эти модификации не являются исчерпывающим списком и, как будет понятно специалисту в данной области техники, возможны другие модификации. Кроме того, те случаи, когда этого не было сделано (т.е. когда не было представлено примеров модификаций), не следует интерпретировать так, что никакие модификации не возможны и/или что описанное является единственным способом реализации такого элемента в настоящей технологии. Специалисту в данной области будет понятно, что это, вероятно, не так. Кроме того, следует понимать, что система 100 может обеспечивать в некоторых случаях простые реализации настоящей технологии, и что в таком случае они были представлены для помощи в понимании. Специалисты в данной области поймут, что различные реализации настоящей технологии могут иметь большую сложность.

[56] Вообще говоря, система 100 выполнена с возможностью обеспечения служб электронного перевода для пользователя 102 электронного устройства 104. Например, система 100 может быть выполнена с возможностью получения предложения на исходном языке и обеспечения переведенной версии этого предложения на целевом языке. Теперь будут описаны по меньшей мере некоторые компоненты системы 100, однако следует понимать, что другие компоненты, помимо тех, что проиллюстрированы на Фигуре 1, могут быть частью системы 100, не выходя за рамки объема настоящей технологии.

Электронное устройство

[57] Система 100 содержит электронное устройство 104, причем электронное устройство 104 ассоциировано с пользователем 102. Как таковое, электронное устройство 104 иногда может именоваться «клиентским устройством», «конечным пользовательским устройством», «клиентским электронным устройством» или просто «устройством». Следует отметить, что тот факт, что устройство 104 связано с пользователем 102, не обязательно предполагает или подразумевает какой-либо режим работы - например необходимость входа в систему, необходимость регистрации или тому подобное.

[58] Реализация устройства 104 особым образом не ограничена, но, в качестве примера, устройство 104 может быть реализовано в виде персонального компьютера (настольных компьютеров, ноутбуков, нетбуков и т.д.), устройства беспроводной связи (такого как смартфон, мобильный телефон, планшет и тому подобное), а также сетевого оборудования (такого как маршрутизаторы, коммутаторы и шлюзы). Устройство 104 содержит аппаратное обеспечение и/или программное обеспечение и/или микропрограммное обеспечение (или их комбинацию), которое известно в данной области техники, для исполнения приложения браузера.

[59] Вообще говоря, назначением приложения браузера является предоставление пользователю 102 возможности доступа к одному или более сетевым ресурсам, таким как, например, веб-страницы. То, как приложение браузера реализуется, конкретным образом не ограничивается. Один пример приложения браузера может быть воплощен как браузер Яндекс™.

[60] Пользователь 102 может использовать приложение браузера для осуществления доступа к системе 160 перевода для перевода одного или более предложений с исходного языка на целевой язык. Например, электронное устройство 104 может быть выполнено с возможностью генерирования запроса 180, указывающего одно или более предложений, которые пользователь 102 желает перевести. Кроме того, электронное устройство 104 может быть выполнено с возможностью приема ответа 190 для отображения пользователю 102 переведенной версии одного или более предложений на целевом языке.

Сеть связи

[61] Устройство 104 соединено с возможностью связи с сетью 110 связи для доступа к системе 160 перевода сервера 112. Например, устройство 104 может быть соединено с возможностью связи с сервером 112 через сеть 110 связи для обеспечения пользователю 102 служб перевода, упомянутых выше. Сеть 110 связи выполнена с возможностью передачи, среди прочего, запроса 180 и ответа 190.

[62] В некоторых неограничивающих вариантах осуществления настоящей технологии сеть 110 связи может быть реализована как Интернет. В других вариантах осуществления настоящей технологии сеть 110 связи может быть реализована иначе, например как какая-либо глобальная сеть связи, локальная сеть связи, частная сеть связи и тому подобное. То, как реализована линия связи (отдельно не пронумерована) между устройством 104 и сетью 110 связи, будет зависеть, среди прочего, от того, как реализовано устройство 104.

[63] Просто как пример, а не как ограничение, в тех вариантах осуществления настоящей технологии, в которых устройство 104 реализовано как устройство беспроводной связи (например, как смартфон), линия связи может быть реализована как линия беспроводной связи (такая как, но без ограничения, линия сети связи 3G, линия сети связи 4G, Wireless Fidelity или WiFi® для краткости, Bluetooth® и подобные). В тех примерах, в которых устройство 104 реализовано как ноутбук, линия связи может быть либо беспроводной (такой как Wireless Fidelity или WiFi® для краткости, Bluetooth® или подобной), либо проводной (такой как Ethernet-соединение).

Сервер и База данных

[64] Возвращаясь к описанию Фигуры 1, система 100 также содержит сервер 112, который может быть реализован как обычный компьютерный сервер. В проиллюстрированном неограничивающем варианте осуществления настоящей технологии сервер 112 является единственным сервером. В альтернативных неограничивающих вариантах осуществления настоящей технологии функциональные возможности сервера 112 могут быть распределены и могут быть реализованы посредством многочисленных серверов. Сервер 112 может включать в себя один или более процессоров, одно или более энергонезависимых запоминающих устройств, считываемые компьютером инструкции и/или дополнительные аппаратные компоненты, дополнительные программные компоненты и/или их комбинацию для реализации различных функциональных возможностей сервера 112, не выходя за рамки объема настоящей технологии.

[65] Система 100 также содержит базу 150 данных, которая соединена с возможностью связи с сервером 112 и выполнена с возможностью хранения информации, извлекаемой, или иным образом определяемой или генерируемой сервером 112. Вообще говоря, база 150 данных может принимать данные от сервера 112, которые были извлечены, или иным образом определены или сгенерированы сервером 112 во время обработки, для их временного и/или постоянного хранения, и может обеспечивать сохраненные данные серверу 112 для их использования. Предполагается, что база 150 данных может быть разделена на несколько распределенных баз данных без выхода за рамки объема настоящей технологии.

[66] База 150 данных может быть выполнена с возможностью хранения данных 170 для поддержки служб перевода, обеспечиваемых системой 160 перевода сервера 170. То, какие данные могут быть частью данных 170, будет более подробно описано в данном документе ниже со ссылкой на Фигуру 3.

[67] Вообще говоря, сервер 112 может находиться под контролем и/или управлением поставщика службы перевода (не показан), например оператора служб перевода Яндекс™. Предполагается, что поставщик служб перевода и поставщик приложения браузера могут быть одним и тем же поставщиком. Например, приложение браузера (например, браузер Яндекс™) и службы перевода (например, службы перевода Яндекс™) могут предоставляться, контролироваться и/или управляться одним и тем же оператором или организацией.

[68] Как упоминалось выше, сервер 112 размещает систему 160 перевода. Вообще говоря, система 160 перевода воплощается как множество реализуемых компьютером процедур, которые выполнены с возможностью перевода одного или более предложений с исходного языка на целевой язык.

[69] Следует отметить, что система 160 перевода может быть выполнена с возможностью исполнения одного или более алгоритмов машинного обучения (MLA). Вообще говоря, MLA могут учиться по обучающим выборкам и делать прогнозы на основе новых (неизвестных) данных. MLA обычно используются для изначального построения модели на основе обучающих входных данных, чтобы затем делать прогнозы или принимать основанные на данных решения, выражаемые в виде выходных данных, а не следовать статичным считываемым компьютером инструкциям.

[70] MLA обычно используются в качестве моделей оценки, моделей перевода, моделей классификации и подобного. Следует понимать, что разные типы MLA, имеющих разные структуры или топологии, могут использоваться для различных задач.

[71] Один конкретный тип MLA включает в себя нейронные сети (NN). Вообще говоря, определенная NN состоит из взаимосвязанной группы искусственных «нейронов», которые обрабатывают информацию, используя коннекционистский подход к вычислению. NN используются для моделирования сложных взаимосвязей между входными и выходными данными (без фактического знания этих взаимосвязей) или для поиска закономерностей в данных. NN сначала подготавливаются во время фазы обучения, во время которой им обеспечивается некоторый известный набор «входных данных» и информации для адаптации NN к генерированию надлежащих выходных данных (для некоторой определенной ситуации, которую пытаются смоделировать). Во время этой фазы обучения эта NN адаптируется к изучаемой ситуации и меняет свою структуру так, чтобы данная NN могла обеспечивать разумные прогнозные выходные данные для определенных входных данных во время некоторой новой ситуации (на основе того, что было изучено). Таким образом, вместо того, чтобы пытаться определить сложные статистические схемы или математические алгоритмы для некоторой определенной ситуации; определенная NN пытается дать «интуитивный» ответ, основанный на «восприятии» ситуации.

[72] NN обычно используются во многих таких ситуациях, в которых важно знать лишь выходные данные, основанные на некоторых определенных входных данных, но то, как именно эти выходные данные были получены, имеет меньшее значение или значения не имеет. Например, NN обычно используются для оптимизации распределения веб-трафика между серверами, автоматического перевода текста на разные языки, обработки данных, включая фильтрацию, кластеризацию, векторное представление и подобное.

[73] В некоторых вариантах осуществления настоящей технологии сервер 112 может быть выполнен с возможностью исполнения модели типа кодер-декодер. Например, кодирующая часть таких моделей может быть предназначена для исходных языков, в то время как декодирующая часть таких моделей может быть предназначена для целевых языков. В других вариантах осуществления сервер 112 может быть выполнен с возможностью исполнения модели типа трансформера.

[74] Кроме того, реализацию определенной MLA сервером 112 можно в общем разделить на две фазы - фазу обучения и фазу использования. Сначала, определенный MLA обучают во время фазы обучения. Затем, как только определенный MLA узнает, какие данные следует ожидать в качестве входных данных и какие данные следует обеспечивать в качестве выходных данных, определенный MLA фактически прогоняют с использованием используемых данных во время фазы использования.

[75] Как показано на Фигуре 1, сервер 112 выполнен с возможностью исполнения первой модели 120 перевода, второй модели 130 перевода и модели 140 транслитерации. В некоторых вариантах осуществления настоящей технологии первая модель 120 перевода, вторая модель 130 перевода и модель 140 транслитерации могут быть реализованы сервером 112 как соответствующие MLA, обученные для выполнения соответствующих компьютерных задач. То, как первая модель 120 перевода, вторая модель 130 перевода и модель 140 транслитерации могут быть реализованы сервером 112, будет дополнительно описано ниже в данном документе.

[76] Со ссылкой на Фигуру 2 проиллюстрировано представление 200 трех групп языков, а именно первой группы 210 языков, второй группы 220 языков и третьей группы 230 языков. Вообще говоря, некоторая определенная группа языков содержит один или более языков из языкового семейства и связаны через происхождение от общего предкового языка или родительского языка, обычно называемого протоязыком этого семейства.

[77] Как показано, (i) первая группа 210 языков содержит языки 211, 212, 213 и 214, (ii) вторая группа 220 языков содержит языки 221, 222, 223 и 224 и (iii) третья группа 230 языков содержит языки 231, 232, 233 и 234. Для иллюстрации предположим, что первая группа 210 языков 210 представляет собой тюркскую группу языков, вторая группа 220 языков представляет собой германскую группу языков, а третья группа 230 языков представляет собой романскую группу языков. В таком примере:

языками 211, 212, 213 и 214 в тюркской группе языков соответственно могут быть чувашский язык, узбекский язык, киргизский язык и турецкий языки;

языками 221, 222, 223 и 224 в германской группе языков соответственно могут быть английский язык, немецкий язык, голландский язык и фарерский язык; и

языками 231, 232, 233 и 234 в романской группе языков соответственно могут быть французский язык, итальянский язык, испанский язык и галисийский язык.

[78] Сервер 112 может быть выполнен с возможностью выполнения первой модели 120 перевода, выполненной с возможностью перевода предложений с любого языка из некоторой определенной группы языков на некоторый определенный целевой язык. Предположим, что модель 120 перевода выполнена с возможностью перевода между языками первой группы 210(тюркской группы языков) и русским языком (целевой язык). В таком случае сервер 112 может быть выполнен с возможностью использования модели 120 перевода для перевода предложений на любом из чувашского языка, узбекского языка, киргизского языка и турецкого языка на русский язык. В этом примере модель 120 перевода можно назвать моделью перевода «c пантюркского на русский».

[79] Следует отметить, что некоторая определенная группа языков может содержать некоторый определенный язык, который имеет ограниченное число реальных примеров перевода между этим языком и целевым языком. В контексте настоящей технологии некоторый определенный язык, имеющий ограниченное число реальных примеров перевода между этим языком и целевым языком, называется «редким» языком.

[80] Например, в тюркской группе языков редким языком может быть чувашский язык, поскольку существует ограниченное число реальных примеров перевода с чувашского языка на русский язык (или наоборот). В германской группе языков редким языком может быть фарерский язык, поскольку существует ограниченное число реальных примеров перевода с фарерского языка на русский язык (или наоборот). В романской группе языков редким языком может быть галисийский язык, поскольку существует ограниченное число реальных примеров перевода с галисийского языка на русский язык (или наоборот).

[81] Как будет обсуждаться в данном документе более подробно ниже, можно сказать, что число реальных примеров, доступных между редким языком и целевым языком, сравнительно невелико по сравнению с числом реальных примеров между другими языками из некоторой определенной группы языков и целевым языком.

[82] Как упомянуто выше, сервер 112 выполнен с возможностью исполнения модели 140 транслитерации. Вообще говоря, модель 140 транслитерации выполнена с возможностью транслитерации предложений с любого языка из некоторой определенной группы языков в «систему синтетического письма». Например, тюркская группа или семья языков содержит, среди прочих, турецкий, киргизский, узбекский и чувашский языки. В этом примере, в зависимости от конкретного тюркского исходного языка, слово «серебро» может быть записано как «gümüş», «көмөш», «көмеш», «күміс», «күмүш», «gümüş», «kumush» и «кӗмӗл». Таким образом, модель 140 транслитерации выполнена с возможностью вывода одинаковой транслитерации некоторого определенного слова в системе синтетического письма, независимо от того, какой из тюркских языков является исходным языком для данного определенного слова.

[83] То, как модель 140 транслитерации реализуется, конкретным образом не ограничивается. В одном варианте осуществления модель 140 транслитерации может быть реализована как модель статистического машинного перевода (SMT), обученная транслитерировать предложения с любого одного языка из некоторой определенной группы языков в систему синтетического письма.

[84] В некоторых вариантах осуществления настоящей технологии предполагается, что сервер 112 может быть выполнен с возможностью генерирования некоторой определенной функции транслитерации путем обучения модели SMT на основе выровненных корпусов текста между языками в некоторой определенной группе языков. В этих вариантах осуществления модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков этой определенной группы и синтетическими версиями этих предложений в системе синтетического письма.

[85] В по меньшей мере некоторых вариантах осуществления настоящей технологии функция транслитерации может быть сгенерирована сервером 112 с использованием параллельных корпусов текста, извлеченных из литературных произведений, содержащих точно выровненные предложения. Такие литературные произведения могут содержать Библию, Коран, Тору и подобные, где каждое предложение однозначно идентифицируется в своих соответствующих лингвистических версиях.

[86] Со ссылкой на Фигуру 3 проиллюстрировано представление 300 по меньшей мере некоторых данных, хранящихся посредством базы 150 данных. Более конкретно, на ней проиллюстрировано представление 350 множества 310 реальных примеров параллельных предложений. Проиллюстрированы первый реальный пример 322, второй реальный пример 324, третий реальный пример 326 и четвертый реальный пример 328. Множество 310 реальных примеров параллельных предложений является частью данных 170, хранящихся посредством базы 150 данных.

[87] Следует отметить, что база 150 данных хранит множество 310 реальных примеров для группы 210 языков. Другими словами, множество 310 реальных примеров содержит реальные примеры параллельных предложений между языками в группе 210 языков и целевым языком.

[88] Например, предположим, что:

в первом реальном примере 322 есть предложение 302 на чувашском языке и предложение 312 на русском языке;

во втором реальном примере 324 есть предложение 304 на узбекском языке и предложение 314 на русском языке;

в третьем реальном примере 326 есть предложение 306 на киргизском языке и предложение 316 на русском языке; и

в четвертом реальном примере 328 есть предложение 308 на турецком языке и предложение 318 на русском языке.

[89] Как упоминалось выше, чувашский язык является редким языком в группе 210 языков, поскольку ограниченное число реальных примеров доступно в базе 150 данных. Это означает, что число реальных примеров во множестве 310 примеров, которые имеются между чувашским языком и русским языком, значительно меньше, чем число реальных примеров между другими языками из группы 210 языков и русским языком. Как станет очевидно из приведенного ниже описания, множество 310 реальных примеров может использоваться сервером 112 для обучения модели 120 перевода.

[90] На Фигуре 3 также проиллюстрировано представление 380 множества 390 «чистых» предложений на целевом языке. Предложения во множестве 390 чистых предложений могут быть выбраны людьми-оценщиками, например, которым поручено идентифицировать предложения на целевом языке, которые написаны аккуратно. Как будет дополнительно описано в данном документе ниже, множество 390 чистых предложений на целевом языке может быть использовано сервером 112 для генерирования «искусственных» примеров перевода между некоторым определенным редким языком и целевым языком, которые могут использоваться для дополнительного обучения модели 120 перевода.

[91] Со ссылкой на Фигуру 4 проиллюстрировано представление 400 того, как вторая модель 130 перевода может быть использована сервером 112 для выполнения перевода с исходного языка на целевой язык, и представление 450 того, как вторая модель 130 перевода используется сервером 112 для выполнения «обратного перевода» с целевого языка на исходный язык в контексте настоящей технологии.

[92] Вторая модель 130 перевода может быть обучена сервером 112 на основе реальных примеров между редким языком (то есть исходным языком) и целевым языком из множества 310 реальных примеров. Например, во время ее фазы обучения сервер 112 может быть выполнен с возможностью использования некоторого определенного предложения на чувашском языке в качестве входных данных во вторую модель 130 перевода, а выходные данные второй модели 130 перевода могут сравниваться с параллельным предложением на русском языке для подстройки второй модели 130 перевода. По существу, вторая модель 130 перевода может быть обучена для приема, во время фазы ее использования, некоторого определенного предложения 402 на чувашском языке и вывода используемого предложения 404 на русском языке.

[93] Следует отметить, что качество перевода обученной таким образом второй модели 130 перевода может быть ограничено из-за числа реальных примеров перевода между чувашским языком и русским языком, доступных для целей обучения, поскольку чувашский язык является редким языком.

[94] Однако в контексте настоящей технологии предполагается, что сервер 112 может быть выполнен с возможностью использования второй модели 130 перевода для выполнения обратного перевода с целевого языка (например, русского) на редкий язык (например, чувашский). Как показано на Фигуре 4, несмотря на то, что сервер 112 может обучать вторую модель 130 перевода переводить предложения в направлении 410 (с редкого на целевой), сервер 112 может быть выполнен с возможностью использования второй модели 130 перевода для перевода в направлении 420 (с целевого на редкий), противоположном направлению 410.

[95] Сервер 112 может быть выполнен с возможностью использования второй модели 130 перевода в направлении 420 для генерирования искусственных примеров перевода между редким языком и целевым языком. С этой целью сервер 112 может быть выполнен с возможностью извлечения множества 390 чистых предложений на целевом языке (например, аккуратно написанных предложений на русском языке) и ввода их во вторую модель 130 перевода для выполнения обратного перевода на чувашский язык. Таким образом, сервер 112 может быть выполнен с возможностью генерирования искусственного предложения 451 для предложения 391, искусственного предложения 452 для предложения 392 и искусственного предложения 453 для предложения 393.

[96] Сервер 112 может быть выполнен с возможностью генерирования множества 480 искусственных примеров между редким языком и целевым языком. Как показано на Фигуре 4 упомянутое множество искусственных примеров 480 содержит:

искусственный пример 481 с искусственным предложением 451 и предложением 391;

искусственный пример 482 с искусственным предложением 452 и предложением 392; и

искусственный пример 483 с искусственным предложением 453 и предложением 393.

[97] Сервер 112 может быть выполнен с возможностью использования множества 480 искусственных примеров в дополнение к упомянутому множеству 310 реальных примеров для обучения первой модели 120 перевода. Как теперь будет описано со ссылкой на Фигуру 5, сервер 112 может быть выполнен с возможностью использования модели 140 транслитерации для того, чтобы генерировать множество синтетических реальных примеров на основе упомянутого множества 310 реальных примеров и множества синтетических искусственных примеров, основанных на упомянутом множестве 480 искусственных примеров.

[98] На Фигуре 5 проиллюстрировано представление 500 того, как сервер 112 может быть выполнен с возможностью генерирования синтетического реального примера 560 на основе реального примера 322, и представление 550 того, как сервер 112 может быть выполнен с возможностью генерирования синтетического искусственного примера 570 на основе искусственного примера 481.

[99] Сервер 112 выполнен с возможностью ввода предложения 302 из реального примера 322 в модель 140 транслитерации, которая выполнена с возможностью вывода синтетического предложения 502, написанного в системе синтетического письма. Сервер 112 выполнен с возможностью генерирования синтетического реального примера 560 путем объединения в пару синтетического предложения 502 с предложением 312 из реального примера 322. Следует отметить, что сервер 112 может быть выполнен с возможностью генерирования множества синтетических реальных примеров на основе соответствующих примеров из упомянутого множества 310 реальных примеров аналогично тому, как синтетический реальный пример 560 генерируется на основе реального примера 322.

[100] Сервер 112 выполнен с возможностью ввода искусственного предложения 451 из искусственного примера 481 в модель 140 транслитерации, которая выполнена с возможностью вывода синтетического предложения 551, написанного в системе синтетического письма. Сервер 112 выполнен с возможностью генерирования синтетического искусственного примера 570 путем объединения в пару синтетического предложения 551 с предложением 391 из искусственного примера 481. Следует отметить, что сервер 112 может быть выполнен с возможностью генерирования множества синтетических искусственных примеров на основе соответствующих примеров из упомянутого множества 480 искусственных примеров аналогично тому, как синтетический искусственный пример 570 генерируется на основе искусственного примера 481.

[101] Со ссылкой на Фигуру 7 проиллюстрировано представление 600 отдельной итерации обучения, выполняемой в отношении первой модели 120 перевода на основе синтетического реального примера 560, и представление 602 отдельной итерации обучения, выполняемой в отношении первой модели 120 перевода на основе синтетического искусственного примера 570.

[102] Сервер 112 может использовать синтетический реальный пример 560 для генерирования синтетического реального обучающего набора 610. Сервер 112 может быть выполнен с возможностью ввода синтетического предложения 502 в первую модель 120 перевода, а первая модель 120 перевода выполнена с возможностью вывода предложения 612 на целевом языке. Сервер 112 выполнен с возможностью сравнения предложения 612 с предложением 312 из синтетического реального обучающего набора 610 и выполнен с возможностью, основываясь на этом сравнении, подстройки первой модели 120 перевода. С этой целью сервер 112 может быть выполнен с возможностью применения одного или более методов подстройки, например метода обратного распространения ошибки. Однако могут использоваться другие методы подстройки, известные в данной области техники.

[103] Сервер 112 может быть выполнен с возможностью генерирования множества синтетических реальных обучающих наборов на основе множества синтетических реальных примеров, аналогично тому, как сервер 112 выполнен с возможностью генерирования синтетического реального обучающего набора 610. Сервер 112 может быть выполнен с возможностью выполнения большого числа итераций обучения на основе соответствующих примеров из упомянутого множества синтетических реальных примеров, аналогично тому, как сервер 112 выполнен с возможностью выполнения итерации обучения на основе синтетического реального обучающего набора 610.

[104] Помимо использования множества синтетических реальных примеров для обучения первой модели 120 перевода, сервер 112 также выполнен с возможностью использования множества синтетических искусственных примеров для обучения первой модели 120 перевода. Это может позволить повысить качество перевода первой модели 120 перевода, когда исходное предложение написано на редком языке.

[105] Сервер 112 может использовать синтетический искусственный пример 570 для генерирования синтетического искусственного обучающего набора 620. В некоторых вариантах осуществления сервер 112 может быть выполнен с возможностью генерирования метки 625, указывающей, что синтетический искусственный обучающий набор 620 сгенерирован на основе некоторого определенного искусственного примера, в отличие от некоторого определенного реального примера.

[106] Сервер 112 может быть выполнен с возможностью ввода синтетического предложения 551 в первую модель 120 перевода, а первая модель 120 перевода выполнена с возможностью вывода предложения 622 на целевом языке. Сервер 112 выполнен с возможностью сравнения предложения 622 с предложением 391 из синтетического искусственного обучающего набора 620 и выполнен с возможностью, основываясь на этом сравнении, подстройки первой модели 120 перевода. С этой целью сервер 112 может быть выполнен с возможностью применения одного или более методов подстройки, например метода обратного распространения ошибки. Однако могут использоваться другие методы подстройки, известные в данной области техники.

[107] Следует отметить, что в некоторых вариантах осуществления настоящей технологии сервер 112 может быть дополнительно выполнен с возможностью ввода метки 625, указывающей, что обучающий набор основан на искусственном примере перевода, а не на реальном примере перевода. Это может позволить первой модели 120 перевода различать искусственные и реальные примеры перевода. То, что первая модель 120 перевода способна различать искусственные и реальные примеры, может позволить первой модели 120 перевода минимизировать эффект итераций обучения, выполняемых на основе искусственных примеров, по сравнению с итерациями обучения, выполняемыми на основе реальных примеров.

[108] Сервер 112 может быть выполнен с возможностью генерирования множества синтетических искусственных обучающих наборов на основе множества синтетических искусственных примеров, аналогично тому, как сервер 112 выполнен с возможностью генерирования синтетического искусственного обучающего набора 620. Сервер 112 может быть выполнен с возможностью выполнения большого числа итераций обучения на основе соответствующих примеров из упомянутого множества синтетических искусственных примеров, аналогично тому, как сервер 112 выполнен с возможностью выполнения итерации обучения на основе синтетического искусственного обучающего набора 620.

[109] В некоторых вариантах осуществления настоящей технологии сервер 112 может быть выполнен с возможностью исполнения фазы использования модели 120 перевода. Со ссылкой на Фигуру 7 проиллюстрировано представление 700 того, как сервер 112 может быть выполнен с возможностью генерирования предложения 706 на целевом языке на основе некоторого определенного используемого предложения 702 на редком языке.

[110] Сервер 112 выполнен с возможностью приема используемого предложения 702 на редком языке. Например, сервер 112 может быть выполнен с возможностью получения указания используемого предложения 702 от электронного устройства 104, связанного с пользователем 102, через сеть 110 связи. Сервер 112 выполнен с возможностью применения модели 140 транслитерации для того, чтобы сгенерировать синтетическое используемое предложение 704 на основе используемого предложения 702. Сервер 112 выполнен с возможностью ввода синтетического используемого предложения 704 в модель 120 перевода, которая выполнена с возможностью генерирования предложения 706, которое является переводом используемого предложения 702 с редкого языка на целевой язык.

[111] Со ссылкой на Фигуру 8 проиллюстрировано схематичное представление способа 800 обучения модели 120 перевода. Способ 800 выполняется сервером 112. Различные этапы реализуемого компьютером способа 800 теперь будут описаны более подробно.

ЭТАП 802: получение некоторого определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения

[112] Способ 800 начинается с этапа 802, на котором сервер 112 выполнен с возможностью получения некоторого определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения.

[113] Например, сервер 112 может быть выполнен с возможностью получения некоторого определенного примера из числа множества 310 реальных примеров (см. Фигуру 3). Предположим, что целевым языком является русский, а упомянутой группой языков является тюркская группа языков. Таким образом, сервер 112 может быть выполнен с возможностью получения некоторого примера из числа первого реального примера 322, второго реального примера 324, третьего реального примера 326 и четвертого реального примера 328.

[114] В некоторых вариантах осуществления группа языков представляет собой тюркскую группу языков. Тюркская группа языков содержит турецкий язык, узбекский язык, чувашский язык и киргизский язык. Чувашский язык является редким языком в тюркской группе языков.

[115] В других вариантах осуществления группа языков представляет собой германскую группу языков. Германская группа языков содержит английский язык, немецкий язык, голландский язык и фарерский язык. Фарерский язык является редким языком в германской группе языков.

[116] В дополнительных вариантах осуществления группа языков представляет собой романскую группу языков. Романская группа языков содержит французский язык, итальянский язык, испанский язык и галисийский язык. Галисийский язык является редким языком в романской группе языков.

ЭТАП 804: генерирование, применяя функцию транслитерации, первого синтетического предложения на основе первого предложения для определенного реального примера

[117] Способ 800 переходит на этап 804, на котором сервер 112 выполнен с возможностью генерирования, применяя функцию транслитерации, первого синтетического предложения на основе первого предложения для определенного реального примера. Первым синтетическим предложением является транслитерация первого предложения в систему синтетического письма. Тем самым сервер 112 генерирует синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение.

[118] Предположим, что первым предложением и вторым предложением упомянутого определенного реального примера являются предложение 302 и предложение 312 первого реального примера 322. Таким образом, сервер 112 выполнен с возможностью генерирования синтетического предложения 502 на основе предложения 302. Сервер 112 тем самым генерирует синтетический реальный пример 560, имеющий синтетическое предложение 502 и предложение 312.

[119] В некоторых вариантах осуществления настоящей технологии сервер 112 может быть выполнен с возможностью генерирования функции транслитерации путем обучения модели SMT на основе выровненных корпусов текста между языками в определенной группе языков. Модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков упомянутой группы и синтетическими предложениями в системе синтетического письма.

ЭТАП 806: получение третьего предложения на целевом языке

[120] Способ 800 переходит на этап 806, на котором сервер 112 выполнен с возможностью получения третьего предложения на целевом языке. Например, сервер 112 может быть выполнен с возможностью получения одного из множества 390 чистых предложений на целевом языке. Предположим, что сервер 112 получает из базы 150 данных предложение 391. Можно сказать, что предложение 391 является предложением высокого качества на целевом языке. Предложение 391 может быть предварительно выбрано человеком-оператором и сохранено в базе 150 данных.

ЭТАП 808: генерирование, применяя другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода

[121] Способ 800 переходит на этап 808, на котором сервер 112 выполнен с возможностью генерирования, применяя другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода. Четвертым предложением является искусственный перевод третьего предложения. Четвертое предложение и третье предложение образуют некоторый определенный искусственный пример. Например, сервер 112 может быть выполнен с возможностью использования модели 130 перевода в направлении 420 (обратный перевод) для перевода предложения 391 и, таким образом, генерирования предложения 451.

[122] В некоторых вариантах осуществления упомянутая другая модель перевода может обучаться на основе реальных примеров между редким языком и целевым языком.

[123] В других вариантах осуществления другой моделью перевода может быть упомянутая модель перевода. Другими словами, сервер 112 может быть выполнен с возможностью использования модели 120 перевода для выполнения обратного перевода предложения 391 для генерирования предложения 451. Это означает, что в таких вариантах осуществления упомянутой другой моделью перевода может быть модель 120 перевода, обучаемая сервером 112 с помощью способа 800. В таком варианте осуществления сервер 112 может быть выполнен с возможностью сначала обучения модели 120 перевода на основе синтетических реальных примеров, затем использования модели 120 перевода для генерирования синтетических искусственных примеров посредством обратного перевода, а затем дополнительного обучения модели 120 перевода на основе синтетических искусственных примеров.

ЭТАП 810: генерирование, применяя функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для определенного искусственного примера

[124] Способ 800 переходит на этап 810, на котором сервер 112 выполнен с возможностью генерирования, применяя функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для определенного искусственного примера. Четвертым синтетическим предложением является транслитерация четвертого предложения в систему синтетического письма. Тем самым сервер 112 генерирует синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение.

[125] Например, сервер 112 может быть выполнен с возможностью генерирования синтетического предложения 551 на основе предложения 451. Таким образом сервер 112 может быть выполнен с возможностью генерирования синтетического искусственного примера 570, имеющего синтетическое предложение 551 и предложение 391.

ЭТАП 812: обучение модели перевода на основе синтетического реального примера и синтетического искусственного примера

[126] Способ 800 переходит на этап 812, на котором сервер 112 выполнен с возможностью обучения модели 120 перевода на основе синтетического реального примера и синтетического искусственного примера. Например, сервер 112 может быть выполнен с возможностью использования синтетического реального примера 560 и синтетического искусственного примера 570 для обучения модели 120 перевода. Сервер 112 выполнен с возможностью обучения модели 120 перевода для приема некоторого определенного используемого предложения на редком языке, генерирования синтетического используемого предложения на основе упомянутого определенного используемого предложения с применением функции транслитерации и перевода с использованием модели 120 перевода используемого синтетического предложения в соответствующее используемое предложение на целевом языке.

[127] В некоторых вариантах осуществления сервер 112 может быть выполнен с возможностью генерирования набора 620 обучающих данных на основе синтетического искусственного примера 570. Набор 620 обучающих данных содержит метку 625, указывающую, что четвертое синтетическое предложение 551 сгенерировано на основе искусственного перевода третьего предложения 391. Сервер 112 может вводить набор 625 обучающих данных в модель 120 перевода, а модель 120 перевода может использовать метку 625 для различения между (i) наборами обучающих данных, сгенерированными на основе реальных переводов, и (ii) наборами обучающих данных, сгенерированными на основе искусственных переводов.

[128] Например, во время фазы использования модели 120 перевода сервер 112 может быть выполнен с возможностью приема используемого предложения 702 на редком языке, генерирования синтетического используемого предложения 704 на основе используемого предложения 702 и генерирования используемого предложения 706 на целевом языке на основе используемого синтетического предложения 704.

[129] Модификации и улучшения вышеописанных реализаций настоящей технологии могут стать очевидными для специалистов в данной области техники. Предшествующее описание предназначено для того, чтобы быть примерным, а не ограничивающим. Поэтому подразумевается, что объем настоящей технологии ограничен лишь объемом прилагаемой формулы изобретения.

1. Способ обучения модели перевода для выполнения перевода между редким языком из группы языков и целевым языком, причем способ является исполняемым посредством сервера, сервер имеет доступ к множеству реальных примеров параллельных предложений между языками упомянутой группы и целевым языком, число реальных примеров между редким языком и целевым языком является сравнительно небольшим по сравнению с числом реальных примеров между другими языками из упомянутой группы языков и целевым языком, причем способ содержит:

получение сервером определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения;

генерирование сервером, применяющим функцию транслитерации, первого синтетического предложения на основе первого предложения для упомянутого определенного реального примера, причем первое синтетическое предложение является транслитерацией первого предложения в систему синтетического письма,

тем самым генерируя синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение;

получение сервером третьего предложения на целевом языке;

генерирование сервером, применяющим другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода, четвертое предложение является искусственным переводом третьего предложения, причем четвертое предложение и третье предложение образуют определенный искусственный пример;

генерирование сервером, применяющим функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для упомянутого определенного искусственного примера, причем четвертое синтетическое предложение является транслитерацией четвертого предложения в систему синтетического письма,

тем самым генерируя синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение;

обучение сервером упомянутой модели перевода на основе синтетического реального примера и синтетического искусственного примера, причем обучение проводят для:

приема определенного используемого предложения на редком языке;

генерирования синтетического используемого предложения на основе упомянутого определенного используемого предложения с применением функции транслитерации, и

перевода с использованием модели перевода используемого синтетического предложения в соответствующее используемое предложение на целевом языке.

2. Способ по п. 1, при этом способ дополнительно содержит:

генерирование сервером набора обучающих данных на основе синтетического искусственного примера,

причем набор обучающих данных содержит метку, указывающую, что четвертое синтетическое предложение сгенерировано на основе искусственного перевода третьего предложения;

и при этом обучение модели перевода содержит:

ввод сервером набора обучающих данных в модель перевода,

причем модель перевода использует метку для различения между (i) наборами обучающих данных, сгенерированными на основе реальных переводов, и (ii) наборами обучающих данных, сгенерированными на основе искусственных переводов.

3. Способ по п. 1, в котором генерирование синтетического реального примера содержит:

генерирование сервером множества синтетических реальных примеров для соответствующих из упомянутого множества реальных примеров;

и в котором третьим предложением является одно из упомянутого множества третьих предложений, и в котором генерирование синтетического искусственного примера содержит:

генерирование сервером множества синтетических искусственных примеров для соответствующих из упомянутого множества искусственных примеров;

и при этом обучение модели перевода содержит:

обучение сервером упомянутой модели перевода на основе упомянутого множества синтетических реальных примеров и упомянутого множества синтетических искусственных примеров.

4. Способ по п. 1, при этом способ дополнительно содержит:

генерирование сервером функции транслитерации путем обучения модели статистического машинного перевода (SMT) на основе выровненных корпусов текста между языками в упомянутой группе языков,

причем модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков упомянутой группы и синтетическими предложениями в системе синтетического письма.

5. Способ по п. 1, в котором упомянутая группа языков представляет собой тюркскую группу языков, причем тюркская группа языков содержит турецкий язык, узбекский язык, чувашский язык и киргизский язык, причем редким языком является чувашский язык.

6. Способ по п. 1, в котором упомянутая группа языков представляет собой германскую группу языков, причем германская группа языков содержит английский язык, немецкий язык, голландский язык и фарерский язык, причем редким языком является фарерский язык.

7. Способ по п. 1, в котором упомянутая группа языков представляет собой романскую группу языков, причем романская группа языков содержит французский язык, итальянский язык, испанский язык и галисийский язык, причем редким языком является галисийский язык.

8. Способ по п. 1, в котором упомянутая другая модель перевода обучается на основе реальных примеров между редким языком и целевым языком.

9. Способ по п. 1, при этом способ дополнительно содержит:

прием сервером определенного используемого предложения на редком языке;

генерирование сервером, применяющим модель транслитерации, синтетического используемого предложения на основе упомянутого определенного используемого предложения; и

генерирование сервером, применяющим модель перевода, соответствующего используемого предложения на целевом языке на основе используемого синтетического предложения.

10. Способ по п. 1, в котором упомянутой другой моделью перевода является упомянутая модель перевода, и при этом обучение содержит:

обучение сервером модели перевода на основе синтетических реальных примеров;

генерирование сервером, применяющим модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода; и

дополнительное обучение сервером модели перевода на основе синтетического искусственного примера.

11. Способ по п. 1, в котором третьим предложением является чистое предложение на целевом языке, причем чистое предложение предварительно выбирается человеком-оператором.

12. Сервер для обучения модели перевода для выполнения перевода между редким языком из группы языков и целевым языком, причем сервер имеет доступ к множеству реальных примеров параллельных предложений между языками упомянутой группы и целевым языком, число реальных примеров между редким языком и целевым языком является сравнительно небольшим по сравнению с числом реальных примеров между другими языками из упомянутой группы языков и целевым языком, причем сервер выполнен с возможностью:

получения определенного реального примера, имеющего первое предложение на одном языке из группы языков и соответствующее второе предложение на целевом языке, являющееся реальным переводом первого предложения;

генерирования, применяя функцию транслитерации, первого синтетического предложения на основе первого предложения для упомянутого определенного реального примера, причем первое синтетическое предложение является транслитерацией первого предложения в систему синтетического письма,

тем самым генерируя синтетический реальный пример, имеющий первое синтетическое предложение и соответствующее второе предложение;

получения третьего предложения на целевом языке;

генерирования, применяя другую модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода, четвертое предложение является искусственным переводом третьего предложения, причем четвертое предложение и третье предложение образуют определенный искусственный пример;

генерирования, применяя функцию транслитерации, четвертого синтетического предложения на основе четвертого предложения для упомянутого определенного искусственного примера, причем четвертое синтетическое предложение является транслитерацией четвертого предложения в систему синтетического письма,

тем самым генерируя синтетический искусственный пример, имеющий четвертое синтетическое предложение и третье предложение;

обучения упомянутой модели перевода на основе синтетического реального примера и синтетического искусственного примера, причем сервер выполнен с возможностью обучения для:

приема определенного используемого предложения на редком языке;

генерирования синтетического используемого предложения на основе упомянутого определенного используемого предложения с применением функции транслитерации, и

перевода с использованием модели перевода используемого синтетического предложения в соответствующее используемое предложение на целевом языке.

13. Сервер по п. 12, при этом сервер дополнительно выполнен с возможностью:

генерирования набора обучающих данных на основе синтетического искусственного примера,

причем набор обучающих данных содержит метку, указывающую, что четвертое синтетическое предложение сгенерировано на основе искусственного перевода третьего предложения;

и при этом для обучения модели перевода сервер выполнен с возможностью:

ввода набора обучающих данных в модель перевода,

причем модель перевода использует метку для различения между (i) наборами обучающих данных, сгенерированными на основе реальных переводов, и (ii) наборами обучающих данных, сгенерированными на основе искусственных переводов.

14. Сервер по п. 12, в котором для генерирования синтетического реального примера сервер выполнен с возможностью:

генерирования множества синтетических реальных примеров для соответствующих из упомянутого множества реальных примеров;

и в котором третьим предложением является одно из множества третьих предложений, и в котором для генерирования синтетического искусственного примера сервер выполнен с возможностью:

генерирования множества синтетических искусственных примеров для соответствующих из множества искусственных примеров;

и при этом для обучения модели перевода сервер выполнен с возможностью:

обучения упомянутой модели перевода на основе упомянутого множества синтетических реальных примеров и упомянутого множества синтетических искусственных примеров.

15. Сервер по п. 12, при этом сервер дополнительно выполнен с возможностью:

генерирования функции транслитерации путем обучения модели статистического машинного перевода (SMT) на основе выровненных корпусов текста между языками в упомянутой группе языков,

причем модель SMT обучается для определения правил транслитерации между предложениями на каждом из языков упомянутой группы и синтетическими предложениями в системе синтетического письма.

16. Сервер по п. 12, в котором упомянутая группа языков представляет собой тюркскую группу языков, причем тюркская группа языков содержит турецкий язык, узбекский язык, чувашский язык и киргизский язык, причем редким языком является чувашский язык.

17. Сервер по п. 12, в котором упомянутая группа языков представляет собой германскую группу языков, причем германская группа языков содержит английский язык, немецкий язык, голландский язык и фарерский язык, причем редким языком является фарерский язык.

18. Сервер по п. 12, в котором упомянутая группа языков представляет собой романскую группу языков, причем романская группа языков содержит французский язык, итальянский язык, испанский язык и галисийский язык, причем редким языком является галисийский язык.

19. Сервер по п. 12, в котором упомянутая другая модель перевода обучается на основе реальных примеров между редким языком и целевым языком.

20. Сервер по п. 12, при этом сервер дополнительно выполнен с возможностью:

приема определенного используемого предложения на редком языке;

генерирования, применяя модель транслитерации, синтетического используемого предложения на основе упомянутого определенного используемого предложения; и

генерирования, применяя модель перевода, соответствующего используемого предложения на целевом языке на основе используемого синтетического предложения.

21. Сервер по п. 12, в котором упомянутой другой моделью перевода является упомянутая модель перевода, и для обучения сервер выполнен с возможностью:

обучения модели перевода на основе синтетических реальных примеров;

генерирования, применяя модель перевода, четвертого предложения на редком языке для третьего предложения с использованием обратного перевода; и

дополнительного обучения модели перевода на основе синтетического искусственного примера.

22. Сервер по п. 12, в котором третьим предложением является чистое предложение на целевом языке, причем чистое предложение предварительно выбирается человеком-оператором.



 

Похожие патенты:

Изобретение относится к области вычислительной техники. Технический результат заключается в повышении скорости и точности выявления эксплуатируемых уязвимостей в программном коде.

Изобретение относится к области информационной безопасности. Техническим результатом является повышение достоверности полученных сведений об угрозах и уязвимостях, относящихся к информационному ресурсу.

Изобретение относится к области вычислительной техники. Технический результат заключается в снижении вычислительной нагрузки при определении цифрового контента, который должен быть предоставлен пользователям рекомендательного сервиса.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении результативности защиты вычислительных сетей.

Изобретение относится к способу и электронному устройству для выполнения офлайнового перевода исходного слова в целевое слово. Технический результат заключается в повышении точности машинного перевода.

Использование: изобретение относится к области информационной безопасности. Технический результат: обеспечение автоматизированного выявления факта информационной атаки, а также своевременное информирование ответственных лиц об обнаружении атаки.

Изобретение относится к области вычислительной техники и предназначено для защиты кода UEFI BIOS, расположенного на микросхеме SPI Flash, от несанкционированных изменений. Техническим результатом является повышение защиты UEFI BIOS от несанкционированных изменений.

Изобретение относится к способам и устройствам отслеживания, обнаружения и идентификации лиц. Технический результат заключается в снижении требуемых вычислительных возможностей автономной системы видеоаналитики, уменьшении числа ошибок при распознавании, повышении скорости идентификации интересующих лиц, обеспечении защиты нейронной сети.

Изобретение относится к медицине, а именно к хирургической стоматологии, челюстно-лицевой хирургии и может быть использовано в клинической практике при проектировании и изготовлении индивидуальных имплантатов. Предложен способ, который заключается в создании, по данным компьютерной томографии, виртуальной компьютерной 3D-модели челюсти пациента, содержащей базовые точки для позиционирования её относительно имеющихся зубов-антагонистов, либо цифровых прототипов зубов или зеркального отображения моделей имеющихся зубов пациента с противоположной стороны челюсти, либо сканирования моделей прототипов зубов, выполненных из различных материалов для их моделирования.

Изобретение относится к системе и способу подписания транзакций. Техническим результатом является повышение безопасности транзакций.

Настоящая технология относится к алгоритмам машинного обучения для формирования обучающего набора для алгоритма машинного обучения в поисковых системах. Способ выполняется сервером и включает в себя извлечение из базы данных журнала поиска на сервере первого запроса, ранее отправленного на сервер, первой страницы SERP, связанной с первым запросом, второго запроса, отличного от первого запроса и отправленного после первого запроса, и второй страницы SERP, связанной со вторым запросом, причем первый запрос и второй запрос были отправлены электронным устройством, первая страница SERP содержит первый набор результатов поиска, а вторая страница SERP содержит второй набор результатов поиска. В ответ на второй запрос, отправленный в том же сеансе поиска, что и первый запрос, формируется обучающий набор для использования в качестве отрицательных обучающих примеров при обучении алгоритма MLA. Технический результат – обеспечение определения релевантных данных по близким родственным запросам и документам с целью повышения контрастности примером при обучении, повышая качество обучения MLA. 2 н. и 18 з.п. ф-лы, 5 ил.
Наверх