Difference between revisions of "Курсы машинного перевода для языков России/Раздел 0"
(Created page with '<center><big>Session 0: Обзор</big></center> {{TOCD}} This session will give a short overview of the field of rule-based machine translation, and introduce how the free open…') |
Hectoralos (talk | contribs) |
||
(66 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
<center><big>Session 0: Обзор</big></center> |
|||
{{TOCD}} |
{{TOCD}} |
||
В данном разделе будет дан краткий обзор такого метода перевода как машинный перевод, основанного на использовании введенных правил и представлена работа открытой платформы свободного машинного перевода Apertium |
|||
This session will give a short overview of the field of rule-based machine translation, and introduce how the free open/source rule-based machine translation platform Apertium is used. |
|||
Существуют два принципиально отличающихся друг от друга вида машинного перевода: |
|||
There are two principal types of machine translation: |
|||
* Машинный перевод, основанный на правилах (Rule Based Machine Translation), его также называют символьным машинным переводом; Apertium как раз относится к данному виду и этот раздел посвящен подвиду машинного перевода, основанного на правилах |
|||
* Rule-based machine translation (RBMT), also called symbolic MT; Apertium falls into this category and this session focusses on the sub-types of RBMT |
|||
* Корпусный машинный перевод; при таком переводе для перевода новых предложений переводчик обращается к пулу из ранее переведенных предложений. |
|||
* Corpus-based machine translation; uses collections of previously translated sentences to propose translations of new sentences. |
|||
Если кратко представить корпусный МП, то его можно разделить на две главные подгруппы: подгруппа, в основе которой лежат статистические данные, и подгруппа, основанная на примерах. Теоретически, основной принцип работы статистического машинного перевода заключается в следующем: берется набор ранее переведенных предложений (параллельный корпус) и подсчитывается какие символы совпадают наиболее часто. Всем символам, которые совпадают, присваивается признак вероятности. При переводе нового предложения переводчик рассматривает все слова (символы), которым присвоен признак вероятности, их вероятности комбинируется, делается несколько вариантов возможных переводов и затем выбирается вариант перевода с самой высокой степенью вероятности. Первые системы статистического МП учитывали только совпадение слов, но более новые системы могут учитывать совпадения последовательных рядов слов (фраз) и иерархических деревьев. |
|||
A brief overview of corpus-based MT would split it into two main subgroups, statistical and example based. In theory, the basic approach to statistical machine translation works by taking a collection of previously translated sentence (a parallel corpus) and calculating which tokens co-occur most frequently. All of the tokens that co-occur are assigned a probability. When translating a new sentence, these words are looked up, their probabilities combined, many possible translations are made and then the translation with the highest probability may be selected. The first statistical machine translation systems used coocurrences of words, but newer systems can use sequences of words (sometimes called phrases), and hierarchical trees. |
|||
В противовес этому, машинный перевод, основанный на анализе примеров, может быть назван переводом по аналогии. В нем также используется параллельные корпуса, но, вместо того чтобы обращаться к признакам вероятности слов, переводчик учится делать анализ на основе примеров. Например, если будет дана пара предложений (Девочке нравятся кошки. {{slc|ru}} → Кызга мышыктар жагат. {{slc|ky}} и Девочке нравятся слоны. → Кызга пилдер жагат.) переводчик может предложить следующий пример перевода (AДевочке нравятся X → Кызга X жагат). При переводе нового предложения, переводчик обращается и анализирует данные части предложения и заменяет их. |
|||
By contrast example-based machine translation can be thought to be translation by analogy. It still uses a parallel corpus, but instead of assigning probabilities to words, it tries to learn by example. For example, given the sentence pairs (A la chica le gustan los gatos(es) → Das Mädchen mag Katzen(de) and A la chica le gustan los elefantes → Das Mädchen mag Elefanten) it might produce a translation example of (A la chica le gustan X → Das Mädchen mag X). When translating a new sentence, the parts are looked up and substituted. |
|||
Автоматическое применение большего пула переводных текстов (переводной памяти) к тексту может быть также названо видом машинного перевода с использованием корпуса. На самом деле, границы между статистическим машинным переводом и переводом, которые использует и анализирует примеры, достаточно размыты. И в том и в другом методе есть свои недостатки и преимущества. При использовании методов машинного перевода с использованием корпуса, переводной текст обычно выглядит более естественным, но может страдать сам смысл перевода, при использовании систем, которые используют метод, основанный на применении правил, перевод выглядит не таким гладким, но более точно передает смысл с языка оригинала. |
|||
Automatically applying a large translation memory to a text may also be considered a form of corpus-based machine translation. |
|||
In practice, the lines between statistical and example-based MT are more blurry. Both rule-based and corpus-based methods have advantages and disadvantges. Corpus-based methods may produce translations which sound more fluent, but the meaning may be less faithfully reproduced. Rule-based systems tend to produce translations which are less fluent, but more preserving of the source language meaning. |
|||
Системы, основанные на правилах, и системы, в которых используются корпус, могут быть объединены различными способами и представлять собой смешанную систему. Например, можно создать смешанную систему, где корпусный машинный перевод помогает найти эквиваленты, а затем применяется метод, основанный на правилах, в случае, если не найдено ни одного совпадающего образца. |
|||
Rule-based and corpus-based systems can also be combined in various ways as hybrid systems. For example, one might make a hybrid system that uses an example-based system to find equivalences, and then uses a rule-based system as backoff — when no pattern is found. |
|||
==Виды систем машинного перевода== |
|||
==Types of machine translation systems== |
|||
=== |
===Прямой=== |
||
Прямой, или пословный машинный перевод осуществляется следующим образом: из языка источника считывается по одному слову за один раз, затем слово ищется в двуязычном списке слов поверхностной формы (surface forms). Слова могут быть удалены или не учтены, и, могут быть переведены одним или несколькими словами. Грамматический анализ не проводится, так что даже такие простые ошибки, как соглашение в роде и числе между существительным и определением к нему останется в языке перевода на выходе. |
|||
Direct, or word-for-word machine translation works by reading words in the source language one at a time, and looking them up in a bilingual word list of surface forms. Words may also be deleted, or left out, and maybe translated to one or more words. No grammatical analysis is done, so even simple errors, such as agreement in gender and number between a determiner and head noun will remain in the target language output. |
|||
[[File:Session0 primer1.svg|center]] |
|||
:EXEMPLE 1 |
|||
===Перенос=== |
|||
:Heinrich köpeğine bir parça et verir. |
|||
:<< TXUVAIX AQUÍ >> |
|||
:Генрих сетö яй кусöк аслас понлы. <!-- Heinrich gives piece meat his dog.DAT --> |
|||
:Heinrich antoi lihapalan koiralleen. <!-- Heinrich gives meat.piece.ACC dog.HIS.TO --> |
|||
:Генрих даёт кусок мяса своей собаке. |
|||
Машинный перевод, основанный на переносе, работает таким образом, что, сначала язык-источник преобразовывается в зависимую от языка промежуточную репрезентацию, а затем правила применяются уже к этой промежуточной репрезентации с целью преобразования структуры языка-источника в структуру языка перевода. Перевод осуществляется с этой репрезентации с использованием как двуязычных словарей, так и грамматических правил. |
|||
===Transfer=== |
|||
[[File:Session0 primer2.svg|300px|right]] |
|||
Transfer-based machine translation works by first converting the source language to a language-dependent intermediate representation, and then rules are applied to this intermediate representation in order to change the structure of the source language to the structure of the target language. The translation is generated from this representation using both bilingual dictionaries and grammatical rules. |
|||
Различия могут быть в уровне абстракции этой промежуточной репрезентации. Можно выделить две большие группы: неглубокая передача и глубокая передача. При неглубоком переносе машинного перевода промежуточная репрезентация, как правило, основывается или на морфологии или на поверхностном синтаксисе. При глубокой передачи МП промежуточная репрезентация обычно включает в себя что-то похожее на дерево разбора или графическую структуру (см. изображение справа) |
|||
There can be differences in the level of abstraction of the intermediate representation. We can distinguish two broad groups, shallow transfer, and deep transfer. In shallow-transfer MT the intermediate representation is usually either based on morphology or shallow syntax. In deep-transfer MT the intermediate representation usually includes some kind of parse tree or graph structure (see images on the right). |
|||
Машинный перевод, основанный на переносе обычно работает следующим образом: сначала текст перевода анализируется и снимается морфологическая неоднозначность (а в случае глубокой передачи, синтаксическая) с целью получения промежуточной репрезентации исходного языка. Процесс переноса затем преобразует эту финальную репрезентацию (все еще на языке оригинала) в репрезентацию на том же уровне абстракции в языке перевода. Из репрезентации языка перевода, генерируется язык перевода. |
|||
:EXEMPLE 2 |
|||
===Язык-посредник=== |
|||
Transfer-based MT usually works as follows: The original text is first analysed and disambiguated morphologically (and in the case of deep transfer, syntactically) in order to obtain the source language intermediate representation. The transfer process then converts this final representation (still in the source language) to a representation of the same level of abstraction in the target language. From the target language representation, the target language is generated. |
|||
В машинном переводе, основанном на переносе, правила написаны по принципу пара-на-пару, что делает их особенными для языковой пары. В подходе "язык-посредник", промежуточная репрезентация полностью независима от языка. Есть ряд преимуществ такого подхода, но также и недостатки. Преимущества в том, что есть возможность добавить новый язык в существующую систему МП, необходимо лишь написать анализатор и генератор для нового языка, а не правила переноса между новым языком и всеми существующими языками. Недостаток в том, что очень трудно определить язык-посредник, который может действительно представлять все нюансы всех естественных языков, и на практике, язык-посредник используются только для ограниченных областей перевода. |
|||
===Interlingual=== |
|||
==Проблемы машинного перевода== |
|||
In transfer-based machine translation, rules are written on a pair-by-pair basis, making them specific to a language pair. In the interlingua approach, the intermediate representation is entirely language independent. There are a number of benefits to this approach, but also disadvantages. The benefits are that in order to add a new language to an existing MT system, it is only necessary to write an analyser and generator for the new language, and not transfer rules between the new language and all the existing languages. The drawbacks are that it is very hard to define an interlingua which can truely represent all nuances of all natural languages, and in practice, interlingua systems are only used for limited translation domains. |
|||
===Анализ=== |
|||
==Problems in machine translation== |
|||
<center>'''Форма не полностью определяет содержание.'''</center> |
|||
===Analysis=== |
|||
Это также называется проблемой омонимии. Проблема состоит в том, что многие предложения на одном языке могут иметь более чем одну интерпретацию и эти интерпретации могут быть переведены по разному на разные языки. Рассмотрим следующий пример на финнском языке: |
|||
<center>'''Form does not entirely determine content.'''</center> |
|||
* Tuovatko he uutisia Kreikasta? (Греция как предмет) |
|||
This is also called the problem of ambiguity. The problem is that many sentences in natural language can have more than one interpretation, and these interpretations may be translated differently in different languages. Consider the following example: |
|||
** → Они приносили новости о Грецие? {{slc|ru}} |
|||
** → Греция жөнүндө жаңылык алып келди. {{slc|ky}} |
|||
* Tuovatko he uutisia Kreikasta? (Греция как источник) |
|||
** → Они приносили новости из Греции? {{slc|ru}} |
|||
** → Грециядан жаңылык алып келди. {{slc|ky}} |
|||
Но иногда эта многозначность может быть сохранена, например, при переводе этой же фразы на другой тюркский язык: |
|||
:EXEMPLE 3 |
|||
:'''Здесь нужен пример синтаксической неоднозначности на русском или на чувашском языке (чем проще, тем лучше)''' |
|||
:Вот друг Саша, которого я вчера встретил. |
|||
* Traían noticias de Grecia? (Греция как предмет и источник) |
|||
===Synthesis=== |
|||
** → Traían notícias de Grecía? {{slc|es}} |
|||
<center>'''Content does not entirely determine form.''' </center> |
|||
This is the problem that in a given language there is usually more than one way to communicate the same meaning for any given meaning. |
|||
===Синтез=== |
|||
:EXEMPLE 4 |
|||
<center>'''Содержание не полностью определяет форму.''' </center> |
|||
:Эсир мӗнле пурӑнатӑр? |
|||
Проблема в том, что в данном языке не один способ передачи одного и того же значения. На пр. на чувашском языке: "сколько времени?"/"который час?"... |
|||
:Эсир мӗнле пурӑнатӑр? |
|||
:Мӗнле пурнӑҫсем? |
:Мӗнле пурнӑҫсем? |
||
:Мӗнле халсем? |
:Мӗнле халсем? |
||
:Мӗнле еҫсем? |
:Мӗнле еҫсем? |
||
Все эти вопросы требуют одинакового ответа, но их частотность и место употребления могут различаться. |
|||
All of these questions demand the same answer (how are you), but they may be more or less frequently used, or emphasise different things. |
|||
В Apertium, на каждое введенное предложение, предлагается один вариант. От создателя системы зависит, какой вариант перевода будет предлагать система. Часто мы рекомендуем, чтобы это был наиболее литературный перевод, так как это снижает необходимость в правилах переноса. |
|||
In Apertium, for a given input sentence, one output sentence is produced. It is up to the designer of the translation system to choose which translation they want the system to produce. Often we recommend the most literal translation possible, as this reduces the necessity of transfer rules. |
|||
=== |
===Перенос=== |
||
<center>''' |
<center>'''Одно и тоже содержание по разному представлено в разных языках. '''</center> |
||
В языках существуют различные способы передачи одного и того же значения. И эти значения обычно несовместимы между языками. Рассмотрите следующие примеры предложений, которые выражают одно и то же значение: |
|||
Languages have different ways of expressing the same meaning. These ways are often incompatible between languages. Consider the following examples expressing the same content: |
|||
* Мен (сууга) сүзгөндү жакшы көрөм. |
|||
:EXEMPLE 5 |
|||
** Мен = {{sc|subject}}, сүзгөндү = {{sc|dir. object}}, жакшы.көрөм = {{sc|verb}} |
|||
* Маған (суда) жүзу ұнайды. |
|||
** Маған = {{sc|ind. object}}, жүзу = {{sc|subject}}, ұнайды = {{sc|verb}}. |
|||
* Minä pidän uimisesta |
|||
** Minä = {{sc|subject}}, pidän = {{sc|verb}}, uimisesta = {{sc|adverbial}} |
|||
В системе Apertium, применяются правила, которые трансформируют структуру языка источника в структуру целевого языка, используя последовательность лексических форм в качестве промежуточной репрезентации. Более подробная информация в разделе 5: Основы структурного переноса. |
|||
In Apertium, rules are applied which convert source language structure to target language structure using sequences of lexical forms as an intermediate representation. For further information see: Session 5: Structural transfer basics. |
|||
=== |
===Описание=== |
||
<center>''' |
<center>'''Как отразить информация о процессе перевода на языке компьютера.'''</center> |
||
Последней проблемой является проблема описания. Чтобы создать систему машинного перевода, люди со знанием обоих языков должны систематизировать-кодировать свои знания в таком виде, чтобы компьютер смог их обработать. |
|||
The final problem is that of description. In order to build a machine translation system it is necessary for people with knowledge of both languages to sit down and codify that knowledge in a form explicit and declarative enough for the machine to be able to process it. |
|||
Так как перевод часто является бессознательным процессом, мы переводим не задумываясь о правилах, которыми мы пользуемся. Компьютеры не имеют такой способности, им нужны конкретные инструкции что именно нужно делать. Перевод не получится, если в компьютер не будет занесена информация по переводу. |
|||
While translation is often an unconscious process, we translate without reflecting on the rules that we use to translate, the machine does not have this unconsciousness, and must be told exactly what operations to perform. If these operations rely on information that the machine does not have, or cannot have, then a machine translation will not be possible. |
|||
Но для многих предложений данная информация необязательна: |
|||
But for many sentences, this information is not necessary: |
|||
Например, на славянских языках: |
|||
:EXEMPLE 6 |
|||
* Апертиум - система машинного перевода. {{slc|ru}} |
|||
* Apertium je sistem za mašinskoga prevođenja. {{slc|sh}} |
|||
* Apertium je sistem za računalniško prevajanje. {{slc|sl}} |
|||
И на тюркских языках: |
|||
==Practice== |
|||
* Apertium bir makine çevirisi sistemidir. {{slc|tr}} |
|||
* Апертиум - машиналык котормо системасы. {{slc|ky}} |
|||
* Апертиум - машиналық аудару системасы. {{slc|kk}} |
|||
* Апертиум - машина тәрҗемәләве системасы. {{slc|tt}} |
|||
* Апертиум - машина тәржемәләүе системаһы. {{slc|ba}} |
|||
и на уральских языках: |
|||
===Installation=== |
|||
* Apertium on konekäännösjärjestelmä. {{slc|fi}} |
|||
==Практика== |
|||
For guidance on the installation process of Apertium, HFST and Constraint grammar, see the hand out. |
|||
=== |
===Установка=== |
||
Для руководства по установке Apertium, HFST и грамматике ограничений, смотрите раздаточный материал. |
|||
To use Apertium, first open up a terminal. Now <code>cd</code> into the directory of the language pair you want to test. |
|||
===Применение=== |
|||
Чтобы пользоваться системой Apertium, сначала откройте терминал. Теперь зайдите в раздел языковой пары (через <code>cd</code>), которую хотите протестировать. |
|||
<pre> |
<pre> |
||
Line 104: | Line 121: | ||
</pre> |
</pre> |
||
Вы можете протестировать ее при помощи следующей команды: |
|||
You can test it with the following command: |
|||
<pre> |
<pre> |
||
$ echo " |
$ echo "Текст, который вы хотите перевести." | apertium -d . aa-bb |
||
</pre> |
</pre> |
||
Например, из турецкого в киргизский: |
|||
For example, from Turkish to Kyrgyz: |
|||
<pre> |
<pre> |
||
Line 117: | Line 134: | ||
</pre> |
</pre> |
||
===Структура раздела=== |
|||
===Directory layout=== |
|||
Ниже приведена таблица, в которой дано описание основных файлов с данными, которые присутствуют в типичной языковой паре и ссылки на разделы в которых они описаны. |
|||
Below is a table which gives a description of the main data files that can be found in a typical language pair, and links to the sessions where they are described. |
|||
<center> |
<center> |
||
{|class=wikitable |
{|class=wikitable |
||
! |
! Файл !! Вид !! Описание !! Раздел(ы) |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt.lexc</code> || Словарь || Словарь морфотактики татарского языка, для анализа и формирования || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt.twol</code> || Фонологические правила || Морфонологические правила татарского языка || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Session 2|2]] |
||
|- |
|||
| <code>apertium-tt-ba.ba.lexc</code> || Словарь || Словарь морфотактики башкирского языка, для анализа и формирования || [[Машинный перевод для языков России/Раздел 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
|||
|- |
|||
| <code>apertium-tt-ba.ba.twol</code> || Фонологические правила || Морфонологические правила башкирского языка || [[Машинный перевод для языков России/Session 1|1]] [[Машинный перевод для языков России/Раздел 2|2]] |
|||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt.rlx</code> || Правила по разрешению неоднозначности || Грамматика ограничений татарского языка для снятия морфологической неоднозначности || [[Машинный перевод для языков России/Раздел 3|3]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.ba.rlx</code> || Правила по разрешению неоднозначности || Грамматика ограничений башкирского языка для снятия морфологической неоднозначности || [[Машинный перевод для языков России/Раздел 3|3]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt-ba.dix</code> || Словарь || Татарско—башкирский двуязычный словарь для лексического переноса || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt.lrx</code> || Правила лексической выборки || Правила лексической выборки для татарского языка || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.ba.lrx</code> || Правила лексической выборки || Правила лексической выборки для башкирского языка || [[Машинный перевод для языков России/Раздел 4|4]] |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.tt-ba.t1x</code> || Правила переноса || Татарско-башкирский файл с правилами первого уровня для структурного переноса || [[Машинный перевод для языков России/Раздел 5|5]] [[Машинный перевод для языков России/Раздел 6|6]] |
||
|- |
|- |
||
|- |
|- |
||
| <code>apertium- |
| <code>apertium-tt-ba.ba-tt.t1x</code> || Правила переноса || Башкирско-татарский файл с правилами первого уровня для структурного переноса || [[Машинный перевод для языков России/Раздел 5|5]] [[Машинный перевод для языков России/Раздел 6|6]] |
||
|- |
|- |
||
|} |
|} |
Latest revision as of 09:26, 2 February 2012
В данном разделе будет дан краткий обзор такого метода перевода как машинный перевод, основанного на использовании введенных правил и представлена работа открытой платформы свободного машинного перевода Apertium
Существуют два принципиально отличающихся друг от друга вида машинного перевода:
- Машинный перевод, основанный на правилах (Rule Based Machine Translation), его также называют символьным машинным переводом; Apertium как раз относится к данному виду и этот раздел посвящен подвиду машинного перевода, основанного на правилах
- Корпусный машинный перевод; при таком переводе для перевода новых предложений переводчик обращается к пулу из ранее переведенных предложений.
Если кратко представить корпусный МП, то его можно разделить на две главные подгруппы: подгруппа, в основе которой лежат статистические данные, и подгруппа, основанная на примерах. Теоретически, основной принцип работы статистического машинного перевода заключается в следующем: берется набор ранее переведенных предложений (параллельный корпус) и подсчитывается какие символы совпадают наиболее часто. Всем символам, которые совпадают, присваивается признак вероятности. При переводе нового предложения переводчик рассматривает все слова (символы), которым присвоен признак вероятности, их вероятности комбинируется, делается несколько вариантов возможных переводов и затем выбирается вариант перевода с самой высокой степенью вероятности. Первые системы статистического МП учитывали только совпадение слов, но более новые системы могут учитывать совпадения последовательных рядов слов (фраз) и иерархических деревьев.
В противовес этому, машинный перевод, основанный на анализе примеров, может быть назван переводом по аналогии. В нем также используется параллельные корпуса, но, вместо того чтобы обращаться к признакам вероятности слов, переводчик учится делать анализ на основе примеров. Например, если будет дана пара предложений (Девочке нравятся кошки. (ru
) → Кызга мышыктар жагат. (ky
) и Девочке нравятся слоны. → Кызга пилдер жагат.) переводчик может предложить следующий пример перевода (AДевочке нравятся X → Кызга X жагат). При переводе нового предложения, переводчик обращается и анализирует данные части предложения и заменяет их.
Автоматическое применение большего пула переводных текстов (переводной памяти) к тексту может быть также названо видом машинного перевода с использованием корпуса. На самом деле, границы между статистическим машинным переводом и переводом, которые использует и анализирует примеры, достаточно размыты. И в том и в другом методе есть свои недостатки и преимущества. При использовании методов машинного перевода с использованием корпуса, переводной текст обычно выглядит более естественным, но может страдать сам смысл перевода, при использовании систем, которые используют метод, основанный на применении правил, перевод выглядит не таким гладким, но более точно передает смысл с языка оригинала.
Системы, основанные на правилах, и системы, в которых используются корпус, могут быть объединены различными способами и представлять собой смешанную систему. Например, можно создать смешанную систему, где корпусный машинный перевод помогает найти эквиваленты, а затем применяется метод, основанный на правилах, в случае, если не найдено ни одного совпадающего образца.
Виды систем машинного перевода[edit]
Прямой[edit]
Прямой, или пословный машинный перевод осуществляется следующим образом: из языка источника считывается по одному слову за один раз, затем слово ищется в двуязычном списке слов поверхностной формы (surface forms). Слова могут быть удалены или не учтены, и, могут быть переведены одним или несколькими словами. Грамматический анализ не проводится, так что даже такие простые ошибки, как соглашение в роде и числе между существительным и определением к нему останется в языке перевода на выходе.
Перенос[edit]
Машинный перевод, основанный на переносе, работает таким образом, что, сначала язык-источник преобразовывается в зависимую от языка промежуточную репрезентацию, а затем правила применяются уже к этой промежуточной репрезентации с целью преобразования структуры языка-источника в структуру языка перевода. Перевод осуществляется с этой репрезентации с использованием как двуязычных словарей, так и грамматических правил.
Различия могут быть в уровне абстракции этой промежуточной репрезентации. Можно выделить две большие группы: неглубокая передача и глубокая передача. При неглубоком переносе машинного перевода промежуточная репрезентация, как правило, основывается или на морфологии или на поверхностном синтаксисе. При глубокой передачи МП промежуточная репрезентация обычно включает в себя что-то похожее на дерево разбора или графическую структуру (см. изображение справа)
Машинный перевод, основанный на переносе обычно работает следующим образом: сначала текст перевода анализируется и снимается морфологическая неоднозначность (а в случае глубокой передачи, синтаксическая) с целью получения промежуточной репрезентации исходного языка. Процесс переноса затем преобразует эту финальную репрезентацию (все еще на языке оригинала) в репрезентацию на том же уровне абстракции в языке перевода. Из репрезентации языка перевода, генерируется язык перевода.
Язык-посредник[edit]
В машинном переводе, основанном на переносе, правила написаны по принципу пара-на-пару, что делает их особенными для языковой пары. В подходе "язык-посредник", промежуточная репрезентация полностью независима от языка. Есть ряд преимуществ такого подхода, но также и недостатки. Преимущества в том, что есть возможность добавить новый язык в существующую систему МП, необходимо лишь написать анализатор и генератор для нового языка, а не правила переноса между новым языком и всеми существующими языками. Недостаток в том, что очень трудно определить язык-посредник, который может действительно представлять все нюансы всех естественных языков, и на практике, язык-посредник используются только для ограниченных областей перевода.
Проблемы машинного перевода[edit]
Анализ[edit]
Это также называется проблемой омонимии. Проблема состоит в том, что многие предложения на одном языке могут иметь более чем одну интерпретацию и эти интерпретации могут быть переведены по разному на разные языки. Рассмотрим следующий пример на финнском языке:
- 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? (
Синтез[edit]
Проблема в том, что в данном языке не один способ передачи одного и того же значения. На пр. на чувашском языке: "сколько времени?"/"который час?"...
- Эсир мӗнле пурӑнатӑр?
- Мӗнле пурнӑҫсем?
- Мӗнле халсем?
- Мӗнле еҫсем?
Все эти вопросы требуют одинакового ответа, но их частотность и место употребления могут различаться. В Apertium, на каждое введенное предложение, предлагается один вариант. От создателя системы зависит, какой вариант перевода будет предлагать система. Часто мы рекомендуем, чтобы это был наиболее литературный перевод, так как это снижает необходимость в правилах переноса.
Перенос[edit]
В языках существуют различные способы передачи одного и того же значения. И эти значения обычно несовместимы между языками. Рассмотрите следующие примеры предложений, которые выражают одно и то же значение:
- Мен (сууга) сүзгөндү жакшы көрөм.
- Мен = subject, сүзгөндү = dir. object, жакшы.көрөм = verb
- Маған (суда) жүзу ұнайды.
- Маған = ind. object, жүзу = subject, ұнайды = verb.
- Minä pidän uimisesta
- Minä = subject, pidän = verb, uimisesta = adverbial
В системе Apertium, применяются правила, которые трансформируют структуру языка источника в структуру целевого языка, используя последовательность лексических форм в качестве промежуточной репрезентации. Более подробная информация в разделе 5: Основы структурного переноса.
Описание[edit]
Последней проблемой является проблема описания. Чтобы создать систему машинного перевода, люди со знанием обоих языков должны систематизировать-кодировать свои знания в таком виде, чтобы компьютер смог их обработать.
Так как перевод часто является бессознательным процессом, мы переводим не задумываясь о правилах, которыми мы пользуемся. Компьютеры не имеют такой способности, им нужны конкретные инструкции что именно нужно делать. Перевод не получится, если в компьютер не будет занесена информация по переводу.
Но для многих предложений данная информация необязательна:
Например, на славянских языках:
- Апертиум - система машинного перевода. (
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
)
Практика[edit]
Установка[edit]
Для руководства по установке Apertium, HFST и грамматике ограничений, смотрите раздаточный материал.
Применение[edit]
Чтобы пользоваться системой Apertium, сначала откройте терминал. Теперь зайдите в раздел языковой пары (через cd
), которую хотите протестировать.
$ cd apertium-aa-bb
Вы можете протестировать ее при помощи следующей команды:
$ echo "Текст, который вы хотите перевести." | apertium -d . aa-bb
Например, из турецкого в киргизский:
$ echo "En güzel kız evime geldi." | apertium -d . tr-ky Эң жакшынакай кыз үйүмө келди.
Структура раздела[edit]
Ниже приведена таблица, в которой дано описание основных файлов с данными, которые присутствуют в типичной языковой паре и ссылки на разделы в которых они описаны.
Файл | Вид | Описание | Раздел(ы) |
---|---|---|---|
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 |
Правила лексической выборки | Правила лексической выборки для татарского языка | 4 |
apertium-tt-ba.ba.lrx |
Правила лексической выборки | Правила лексической выборки для башкирского языка | 4 |
apertium-tt-ba.tt-ba.t1x |
Правила переноса | Татарско-башкирский файл с правилами первого уровня для структурного переноса | 5 6 |
apertium-tt-ba.ba-tt.t1x |
Правила переноса | Башкирско-татарский файл с правилами первого уровня для структурного переноса | 5 6 |