Difference between revisions of "Курсы машинного перевода для языков России/Раздел 0"
Firespeaker (talk | contribs) (→Анализ) |
|||
Line 10: | Line 10: | ||
Если кратко представить корпусный МП, то его можно разделить на две главные подгруппы: подгруппа, в основе которой лежат статистические данные, и подгруппа, основанная на примерах. Теоретически, основной принцип работы статистического машинного перевода заключается в следующем: берется набор ранее переведенных предложений (параллельный корпус) и подсчитывается какие символы совпадают наиболее часто. Всем символам, которые совпадают, присваивается признак вероятности. При переводе нового предложения переводчик рассматривает все слова (символы), которым присвоен признак вероятности, их вероятности комбинируется, делается несколько вариантов возможных переводов и затем выбирается вариант перевода с самой высокой степенью вероятности. Первые системы статистического МП учитывали только совпадение слов, но более новые системы могут учитывать совпадения последовательных рядов слов (фраз) и иерархических деревьев. |
Если кратко представить корпусный МП, то его можно разделить на две главные подгруппы: подгруппа, в основе которой лежат статистические данные, и подгруппа, основанная на примерах. Теоретически, основной принцип работы статистического машинного перевода заключается в следующем: берется набор ранее переведенных предложений (параллельный корпус) и подсчитывается какие символы совпадают наиболее часто. Всем символам, которые совпадают, присваивается признак вероятности. При переводе нового предложения переводчик рассматривает все слова (символы), которым присвоен признак вероятности, их вероятности комбинируется, делается несколько вариантов возможных переводов и затем выбирается вариант перевода с самой высокой степенью вероятности. Первые системы статистического МП учитывали только совпадение слов, но более новые системы могут учитывать совпадения последовательных рядов слов (фраз) и иерархических деревьев. |
||
В противовес этому, машинный перевод, основанный на анализе примеров, может быть назван переводом по аналогии. В нем также используется параллельные корпуса, но, вместо того чтобы обращаться к признакам вероятности слов, переводчик учится делать анализ на основе примеров. Например, если будет дана пара предложений (Девочке нравятся кошки. {{slc|ru}} → Кызга мышыктар жагат. {{slc|ky}} и Девочке нравятся слоны. → Кызга пилдер жагат.) переводчик может |
В противовес этому, машинный перевод, основанный на анализе примеров, может быть назван переводом по аналогии. В нем также используется параллельные корпуса, но, вместо того чтобы обращаться к признакам вероятности слов, переводчик учится делать анализ на основе примеров. Например, если будет дана пара предложений (Девочке нравятся кошки. {{slc|ru}} → Кызга мышыктар жагат. {{slc|ky}} и Девочке нравятся слоны. → Кызга пилдер жагат.) переводчик может предложить следующий пример перевода (AДевочке нравятся X → Кызга X жагат). При переводе нового предложения, переводчик обращается и анализирует данные части предложения и заменяет их. |
||
Автоматическое применение большего пула переводных текстов (переводной памяти) к |
Автоматическое применение большего пула переводных текстов (переводной памяти) к тексту может быть также названо видом машинного перевода с использованием корпуса. На самом деле, границы между статистическим машинным переводом и переводом, которые использует и анализирует примеры, достаточно размыты. И в том и в другом методе есть свои недостатки и преимущества. При использовании методов машинного перевода с использованием корпуса, переводной текст обычно выглядит более естественным, но может страдать сам смысл перевода, при использовании систем, которые используют метод, основанный на применении правил, перевод выглядит не таким гладким, но более точно передает смысл с языка оригинала. |
||
Системы, основанные на |
Системы, основанные на правилах, и системы, в которых используются корпус, могут быть объединены различными способами и представлять собой смешанную систему. Например, можно создать смешанную систему, где корпусный машинный перевод помогает найти эквиваленты, а затем применяется метод, основанный на правилах, в случае, если не найдено ни одного совпадающего образца. |
||
==Виды систем машинного перевода== |
==Виды систем машинного перевода== |
||
===Прямой=== |
===Прямой=== |
||
Прямой, или пословный машинный перевод осуществляется следующим образом: из языка источника считывается по одному слову за один раз, затем слово ищется в двуязычном списке слов |
Прямой, или пословный машинный перевод осуществляется следующим образом: из языка источника считывается по одному слову за один раз, затем слово ищется в двуязычном списке слов поверхностной формы (surface forms). Слова могут быть удалены или не учтены, и, могут быть переведены одним или несколькими словами. Грамматический анализ не проводится, так что даже такие простые ошибки, как соглашение в роде и числе между существительным и определением к нему останется в языке перевода на выходе. |
||
[[File:Session0 primer1.svg|center]] |
[[File:Session0 primer1.svg|center]] |
||
Line 35: | Line 35: | ||
===Язык-посредник=== |
===Язык-посредник=== |
||
В машинном переводе, |
В машинном переводе, основанном на переносе, правила написаны по принципу пара-на-пару, что делает их особенными для языковой пары. В подходе "язык-посредник", промежуточная репрезентация полностью независима от языка. Есть ряд преимуществ такого подхода, но также и недостатки. Преимущества в том, что есть возможность добавить новый язык в существующую систему МП, необходимо лишь написать анализатор и генератор для нового языка, а не правила переноса между новым языком и всеми существующими языками. Недостаток в том, что очень трудно определить язык-посредник, который может действительно представлять все нюансы всех естественных языков, и на практике, язык-посредник используются только для ограниченных областей перевода. |
||
==Проблемы машинного перевода== |
==Проблемы машинного перевода== |
||
Line 45: | Line 45: | ||
Это также называется проблемой омонимии. Проблема состоит в том, что многие предложения на одном языке могут иметь более чем одну интерпретацию и эти интерпретации могут быть переведены по разному на разные языки. Рассмотрим следующий пример на финнском языке: |
Это также называется проблемой омонимии. Проблема состоит в том, что многие предложения на одном языке могут иметь более чем одну интерпретацию и эти интерпретации могут быть переведены по разному на разные языки. Рассмотрим следующий пример на финнском языке: |
||
* Tuovatko he uutisia Kreikasta? (Греция |
* Tuovatko he uutisia Kreikasta? (Греция как предмет) |
||
** → Они приносили новости о Грецие? {{slc|ru}} |
** → Они приносили новости о Грецие? {{slc|ru}} |
||
** → Греция жөнүндө жаңылык алып келди. {{slc|ky}} |
** → Греция жөнүндө жаңылык алып келди. {{slc|ky}} |
||
* Tuovatko he uutisia Kreikasta? (Греция |
* Tuovatko he uutisia Kreikasta? (Греция как источник) |
||
** → Они приносили новости из Греции? {{slc|ru}} |
** → Они приносили новости из Греции? {{slc|ru}} |
||
** → Грециядан жаңылык алып келди. {{slc|ky}} |
** → Грециядан жаңылык алып келди. {{slc|ky}} |
||
Но иногда эта многозначность может быть сохранена, например, при переводе этой же фразы на другой тюркский язык: |
|||
But sometimes these ambiguities can be preserved in translation, for example: |
|||
* Traían noticias de Grecia? (Греция |
* Traían noticias de Grecia? (Греция как предмет и источник) |
||
** → Traían notícias de Grecía? {{slc|es}} |
** → Traían notícias de Grecía? {{slc|es}} |
||
===Синтез=== |
===Синтез=== |
||
<center>'''Содержание не полностью определяет форму.''' </center> |
<center>'''Содержание не полностью определяет форму.''' </center> |
||
Проблема в том, что в данном языке |
Проблема в том, что в данном языке не один способ передачи одного и того же значения. На пр. на чувашском языке: "сколько времени?"/"который час?"... |
||
:Эсир мӗнле пурӑнатӑр? |
:Эсир мӗнле пурӑнатӑр? |
||
Line 66: | Line 66: | ||
:Мӗнле еҫсем? |
:Мӗнле еҫсем? |
||
Все эти вопросы требуют одинакового ответа, но их |
Все эти вопросы требуют одинакового ответа, но их частотность и место употребления могут различаться. |
||
В Apertium, на каждое введенное предложение, предлагается один вариант. От создателя системы зависит, какой вариант перевода будет предлагать система. Часто мы рекомендуем чтобы это был наиболее литературный перевод, так как это снижает необходимость в правилах переноса. |
В Apertium, на каждое введенное предложение, предлагается один вариант. От создателя системы зависит, какой вариант перевода будет предлагать система. Часто мы рекомендуем, чтобы это был наиболее литературный перевод, так как это снижает необходимость в правилах переноса. |
||
===Перенос=== |
===Перенос=== |
||
Line 116: | Line 116: | ||
===Применение=== |
===Применение=== |
||
Чтобы пользоваться системой Apertium, сначала откройте терминал. Теперь |
Чтобы пользоваться системой Apertium, сначала откройте терминал. Теперь зайдите в раздел языковой пары (через <code>cd</code>), которую хотите протестировать. |
||
<pre> |
<pre> |
||
Line 122: | Line 122: | ||
</pre> |
</pre> |
||
Вы можете протестировать |
Вы можете протестировать ее при помощи следующей команды: |
||
<pre> |
<pre> |
||
Line 143: | Line 143: | ||
! Файл !! Вид !! Описание !! Раздел(ы) |
! Файл !! Вид !! Описание !! Раздел(ы) |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt.lexc</code> || Словарь || |
| <code>apertium-tt-ba.tt.lexc</code> || Словарь || Словарь морфотактики татарского языка, для анализа и формирования || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt.twol</code> || Фонологические правила || |
| <code>apertium-tt-ba.tt.twol</code> || Фонологические правила || Морфонологические правила татарского языка || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Session 2|2]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.ba.lexc</code> || Словарь || |
| <code>apertium-tt-ba.ba.lexc</code> || Словарь || Словарь морфотактики башкирского языка, для анализа и формирования || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.ba.twol</code> || Фонологические правила || |
| <code>apertium-tt-ba.ba.twol</code> || Фонологические правила || Морфонологические правила башкирского языка || [[Машинный перевод для языков России/Session 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt.rlx</code> || |
| <code>apertium-tt-ba.tt.rlx</code> || Правила расстановки тэгов || Грамматика ограничений татарского языка для снятия морфологической неоднозначности || [[Машинный перевод для языков России/Раздел 3|3]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.ba.rlx</code> || |
| <code>apertium-tt-ba.ba.rlx</code> || Правила расстановки тэгов || Грамматика ограничений башкирского языка для снятия морфологической неоднозначности || [[Машинный перевод для языков России/Раздел 3|3]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt-ba.dix</code> || Словарь || |
| <code>apertium-tt-ba.tt-ba.dix</code> || Словарь || Татарско—башкирский двуязычный словарь для лексического переноса || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt.lrx</code> || |
| <code>apertium-tt-ba.tt.lrx</code> || Правила лексической выборки || Tatar lexical selection rules || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.ba.lrx</code> || |
| <code>apertium-tt-ba.ba.lrx</code> || Правила лексической выборки || Bashkir lexical selection rules || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium-tt-ba.tt-ba.t1x</code> || Правила по переносу || Tatar→Bashkir first-level rule file, for structural transfer || [[Машинный перевод для языков России/Раздел 5|5]] [[Машинный перевод для языков России/Раздел 6|6]] |
| <code>apertium-tt-ba.tt-ba.t1x</code> || Правила по переносу || Tatar→Bashkir first-level rule file, for structural transfer || [[Машинный перевод для языков России/Раздел 5|5]] [[Машинный перевод для языков России/Раздел 6|6]] |
Revision as of 20:36, 22 January 2012
В данном разделе будет дан краткий обзор такого метода перевода как машинный перевод, основанного на использовании введенных правил и представлена работа открытой платформы свободного машинного перевода Apertium
Существуют два принципиально отличающихся друг от друга вида машинного перевода:
- Машинный перевод, основанный на правилах (Rule Based Machine Translation), его также называют символьным машинным переводом; Apertium как раз относится к данному виду и этот раздел посвящен подвиду машинного перевода, основанного на правилах
- Корпусный машинный перевод; при таком переводе для перевода новых предложений переводчик обращается к пулу из ранее переведенных предложений.
Если кратко представить корпусный МП, то его можно разделить на две главные подгруппы: подгруппа, в основе которой лежат статистические данные, и подгруппа, основанная на примерах. Теоретически, основной принцип работы статистического машинного перевода заключается в следующем: берется набор ранее переведенных предложений (параллельный корпус) и подсчитывается какие символы совпадают наиболее часто. Всем символам, которые совпадают, присваивается признак вероятности. При переводе нового предложения переводчик рассматривает все слова (символы), которым присвоен признак вероятности, их вероятности комбинируется, делается несколько вариантов возможных переводов и затем выбирается вариант перевода с самой высокой степенью вероятности. Первые системы статистического МП учитывали только совпадение слов, но более новые системы могут учитывать совпадения последовательных рядов слов (фраз) и иерархических деревьев.
В противовес этому, машинный перевод, основанный на анализе примеров, может быть назван переводом по аналогии. В нем также используется параллельные корпуса, но, вместо того чтобы обращаться к признакам вероятности слов, переводчик учится делать анализ на основе примеров. Например, если будет дана пара предложений (Девочке нравятся кошки. (ru
) → Кызга мышыктар жагат. (ky
) и Девочке нравятся слоны. → Кызга пилдер жагат.) переводчик может предложить следующий пример перевода (AДевочке нравятся X → Кызга X жагат). При переводе нового предложения, переводчик обращается и анализирует данные части предложения и заменяет их.
Автоматическое применение большего пула переводных текстов (переводной памяти) к тексту может быть также названо видом машинного перевода с использованием корпуса. На самом деле, границы между статистическим машинным переводом и переводом, которые использует и анализирует примеры, достаточно размыты. И в том и в другом методе есть свои недостатки и преимущества. При использовании методов машинного перевода с использованием корпуса, переводной текст обычно выглядит более естественным, но может страдать сам смысл перевода, при использовании систем, которые используют метод, основанный на применении правил, перевод выглядит не таким гладким, но более точно передает смысл с языка оригинала.
Системы, основанные на правилах, и системы, в которых используются корпус, могут быть объединены различными способами и представлять собой смешанную систему. Например, можно создать смешанную систему, где корпусный машинный перевод помогает найти эквиваленты, а затем применяется метод, основанный на правилах, в случае, если не найдено ни одного совпадающего образца.
Виды систем машинного перевода
Прямой
Прямой, или пословный машинный перевод осуществляется следующим образом: из языка источника считывается по одному слову за один раз, затем слово ищется в двуязычном списке слов поверхностной формы (surface forms). Слова могут быть удалены или не учтены, и, могут быть переведены одним или несколькими словами. Грамматический анализ не проводится, так что даже такие простые ошибки, как соглашение в роде и числе между существительным и определением к нему останется в языке перевода на выходе.
Перенос
Машинный перевод, основанный на переносе, работает таким образом, что, сначала язык-источник преобразовывается в зависимую от языка промежуточную репрезентацию, а затем правила применяются уже к этой промежуточной репрезентации с целью преобразования структуры языка-источника в структуру языка перевода. Перевод осуществляется с этой репрезентации с использованием как двуязычных словарей, так и грамматических правил.
Различия могут быть в уровне абстракции этой промежуточной репрезентации. Можно выделить две большие группы: неглубокая передача и глубокая передача. При неглубоком переносе машинного перевода промежуточная репрезентация, как правило, основывается или на морфологии или на поверхностном синтаксисе. При глубокой передачи МП промежуточная репрезентация обычно включает в себя что-то похожее на дерево разбора или графическую структуру (см. изображение справа)
Машинный перевод, основанный на переносе обычно работает следующим образом: сначала текст перевода анализируется и снимается морфологическая неоднозначность (а в случае глубокой передачи, синтаксическая) с целью получения промежуточной репрезентации исходного языка. Процесс переноса затем преобразует эту финальную репрезентацию (все еще на языке оригинала) в репрезентацию на том же уровне абстракции в языке перевода. Из репрезентации языка перевода, генерируется язык перевода.
Язык-посредник
В машинном переводе, основанном на переносе, правила написаны по принципу пара-на-пару, что делает их особенными для языковой пары. В подходе "язык-посредник", промежуточная репрезентация полностью независима от языка. Есть ряд преимуществ такого подхода, но также и недостатки. Преимущества в том, что есть возможность добавить новый язык в существующую систему МП, необходимо лишь написать анализатор и генератор для нового языка, а не правила переноса между новым языком и всеми существующими языками. Недостаток в том, что очень трудно определить язык-посредник, который может действительно представлять все нюансы всех естественных языков, и на практике, язык-посредник используются только для ограниченных областей перевода.
Проблемы машинного перевода
Анализ
Это также называется проблемой омонимии. Проблема состоит в том, что многие предложения на одном языке могут иметь более чем одну интерпретацию и эти интерпретации могут быть переведены по разному на разные языки. Рассмотрим следующий пример на финнском языке:
- Tuovatko he uutisia Kreikasta? (Греция как предмет)
- Tuovatko he uutisia Kreikasta? (Греция как источник)
Но иногда эта многозначность может быть сохранена, например, при переводе этой же фразы на другой тюркский язык:
- Traían noticias de Grecia? (Греция как предмет и источник)
- → Traían notícias de Grecía? (
es
)
- → Traían notícias de Grecía? (
Синтез
Проблема в том, что в данном языке не один способ передачи одного и того же значения. На пр. на чувашском языке: "сколько времени?"/"который час?"...
- Эсир мӗнле пурӑнатӑр?
- Мӗнле пурнӑҫсем?
- Мӗнле халсем?
- Мӗнле еҫсем?
Все эти вопросы требуют одинакового ответа, но их частотность и место употребления могут различаться. В Apertium, на каждое введенное предложение, предлагается один вариант. От создателя системы зависит, какой вариант перевода будет предлагать система. Часто мы рекомендуем, чтобы это был наиболее литературный перевод, так как это снижает необходимость в правилах переноса.
Перенос
В языках существуют различные способы передачи одного и того же значения. И эти значения обычно несовместимы между языками. Рассмотрите следующие примеры предложений, которые выражают одно и то же значение:
- Мен (сууга) сүзгөндү жакшы көрөм.
- Мен = subject, сүзгөндү = dir. object, жакшы.көрөм = verb
- Маған (суда) жүзу ұнайды.
- Маған = ind. object, жүзу = subject, ұнайды = verb.
- Minä pidän uimisesta
- Minä = subject, pidän = verb, uimisesta = adverbial
В системе Apertium, применяются правила, которые трансформируют структуру языка источника в структуру целевого языка, используя последовательность лексических форм в качестве промежуточной репрезентации. Более подробная информация в разделе 5: Основы структурного переноса.
Описание
Последней проблемой является проблема описания. Чтобы создать систему машинного перевода, люди со знанием обоих языков должны систематизировать-кодировать свои знания в таком виде, чтобы компьютер смог их обработать.
Так как перевод часто является бессознательным процессом, мы переводим не задумываясь о правилах, которыми мы пользуемся. Компьютеры не имеют такой способности, им нужны конкретные инструкции что именно нужно делать. Перевод не получится, если в компьютер не будет занесена информация по переводу.
Но для многих предложений данная информация необязательна:
Например, на славянских языках:
- Апертиум - система машинного перевода. (
ru
) - Apertium je sistem za mašinskoga prevođenja. (
sh
) - Apertium je sistem za računalniško prevajanje. (
sl
)
И на тюркских языках:
- Apertium bir makine çevirisi sistemidir. (
tr
) - Апертиум - машиналык котормо системасы. (
ky
) - Апертиум - машиналық аудару системасы. (
kk
) - Апертиум - машина тәрҗемәләве системасы. (
tt
) - Апертиум - машина тәржемәләүе системаһы. (
ba
)
и на уральских языках:
- Apertium on konekäännösjärjestelmä. (
fi
)
Практика
Установка
Для руководства по установке Apertium, HFST и грамматике ограничений, смотрите раздаточный материал.
Применение
Чтобы пользоваться системой Apertium, сначала откройте терминал. Теперь зайдите в раздел языковой пары (через cd
), которую хотите протестировать.
$ cd apertium-aa-bb
Вы можете протестировать ее при помощи следующей команды:
$ echo "Текст, который вы хотите перевести." | apertium -d . aa-bb
Например, из турецкого в киргизский:
$ echo "En güzel kız evime geldi." | apertium -d . tr-ky Эң жакшынакай кыз үйүмө келди.
Структура раздела
Ниже приведена таблица, в которой дано описание основных файлов с данными, которые присутствуют в типичной языковой паре и ссылки на разделы в которых они описаны.
Файл | Вид | Описание | Раздел(ы) |
---|---|---|---|
apertium-tt-ba.tt.lexc |
Словарь | Словарь морфотактики татарского языка, для анализа и формирования | 1 2 |
apertium-tt-ba.tt.twol |
Фонологические правила | Морфонологические правила татарского языка | 1 2 |
apertium-tt-ba.ba.lexc |
Словарь | Словарь морфотактики башкирского языка, для анализа и формирования | 1 2 |
apertium-tt-ba.ba.twol |
Фонологические правила | Морфонологические правила башкирского языка | 1 2 |
apertium-tt-ba.tt.rlx |
Правила расстановки тэгов | Грамматика ограничений татарского языка для снятия морфологической неоднозначности | 3 |
apertium-tt-ba.ba.rlx |
Правила расстановки тэгов | Грамматика ограничений башкирского языка для снятия морфологической неоднозначности | 3 |
apertium-tt-ba.tt-ba.dix |
Словарь | Татарско—башкирский двуязычный словарь для лексического переноса | 4 |
apertium-tt-ba.tt.lrx |
Правила лексической выборки | Tatar lexical selection rules | 4 |
apertium-tt-ba.ba.lrx |
Правила лексической выборки | Bashkir lexical selection rules | 4 |
apertium-tt-ba.tt-ba.t1x |
Правила по переносу | Tatar→Bashkir first-level rule file, for structural transfer | 5 6 |
apertium-tt-ba.ba-tt.t1x |
Правила по переносу | Bashkir→Tatar first-level rule file, for structural transfer | 5 6 |