Курсы машинного перевода для языков России/Раздел 1
Данный раздел имеет две цели. Первая цель - дать теоретические представления о морфологии, как слова склоняются и как формируются новые слова. И вторая цель - показать, как происходит анализ и морфологический разбор в системе Apertium.
Tеория
Данный теоретический раздел разбит на три подраздела. В первом разделе речь пойдет о "морфотактике", т.е.как морфемы (части слова) возникают и затем соединяются. Во втором разделе более подробно будет говориться о "морфонологии", т.е. о том, какие изменения происходят в морфемах в результате их соединения. И в последнем подразделе мы расскажем о том, как с этими процессами работает компьютер.
Морфотактика
Морфотактика языка - это способ, которым морфемы в данном языке соединяются для формирования слов. Морфемы - наименьшие смыслообразующие части. Морфемы могут быть свободными или связанными. Свободные морфемы - это морфемы, которые могут встречаться сами по себе (например, как, один, компьютер), а связанные - которые должны быть связаны с другим словом (например, -ность (→ способность, влажность, личность) мо- (→ мой, моя, моей, и т.д.), -ей (→ моей, семьей, словарей, и т.д.)). Одна морфема может иметь несколько алломорфов, которые обозначают одно и то же, но пишутся или произносятся по-разному. Например, дательные падеж (обозначает направление по отношению к предмету) в Чувашском языке имеет несколько алломорфов, употребление которых зависит от качества гласного в основе слова, после которой он употребляется.
aчама | ача·м·а | "к моему ребенку" |
ачамсене | ача·м·сен·е | "к моим детям" |
ӗҫӗме | ӗҫ·ӗм·е | "к моей работе" |
каҫмана | каҫма·на | "переходу" |
Дальше морфемы могут быть разделены на два подтипа, флективные и деривационные. В примерах, знак · указывает на деривационный стык, а » - на флективный стык.
ӗҫ | ӗҫ | "работ·а" |
ӗҫсем | ӗҫ·сем | "работ·ы" |
ĕçчен | ĕç»чен | "работ»ник" |
ĕçченсем | ĕç»чен·сем | "работ»ник·и" |
ӗҫле | ӗҫ»ле | "работа»ть" |
ӗҫле | ӗҫ»ле»тер | "заставить (кого-то) работать" |
Флексия изменение формы слова)
Флективные морфемы являются носителями грамматических категорий, таких как число, падеж, время, и тд.,но не не изменяют категорию слова (часть речи), не изменяют основного семантического значения. Например в чувашском языке ӗҫ и ӗҫсем имеют одно и тоже основное семантическое значение, но если добавить деривационный аффикс -лЕ, ӗҫле, тогда значение изменится и станет "делать ӗҫ".
Примерами флективных морфем являются -lar, -сем и -и множественное число (kitap·lar (tr
), ача·сем (cv
), книг·и (ru
)), и окончания падежей -ран (аблятив), -ті (транслатив), и -де (местный падеж): уй·ран (cv
), кань·ті (kv
), үй·де (kk
))
При переводе часто именно форма слова подвергается изменениям, то есть, существуют правила, которые определяют как различные окончания слова изменяются при переводе.
Деривация
Деривационные морфемы в свою очередь изменяют основное семантическое значение слова, а также могут изменять категорию слова. В зависимости от языковой пары, деривационные морфемы обычно подвергаются меньшим изменениям, чем флективные, так как семантические изменения, вызываемые разными деривационными морфемами, более непредсказуемы.
Следующие слова могут служить примерами деривации -LIK на кыргызском (ай "месяц" + LIK = айлык "месячная оплата"), -LA на кыргызском (ай "месяц" + LA = айла- "пройти месяц"), и -ja на финском (kirjoitta+ja "писать" + "действующее лицо" = "писатель").
Словосложение
Словосложение - это процесс, при котором два или более слов соединяются и образуют одно слово. Среди языков Европы, наиболее часто этот процесс заметен в германских языках и не индоевропейских языках.
Примеры словосложений:
- Tietokoneanimaatioelokuva = Tietokone+animaatio+elo+kuva (
fi
) - Kontaktlinsenverträglichkeitstest = Kontakt+Linsen+Verträglichkeit(s)+Test (
de
) - Еlmegyógyintézet = Elme+gyógy+intézet (
hu
) - Giellamovttidanplána = Giella+movttidan+plána (
se
)
В языках, где словосложение очень развито, желательно, чтобы составные слова анализировались и автоматически переводились. Это позволяет сократить морфемный лексикон, а также работать с ранее не встречающимися формами.
Клитика
Клитика (а clitic) - это синтаксически независимое слово, которое фонологически ведет себя как аффикс другого слова. Для целей машинного перевода между письменными языками, нас особенно интересует аффиксы, которые пишутся орфографически либо вместе с другим словом, либо отдельно, но их форма обусловлена другим словом.
В тюркских языках (в некоторых угорских языках) есть вопросительное слово (иногда его называют частица), в турецком mA, Kyrgyz -BI, казахском MA, финском -kO, северо-саамском North Sámi -go. Примеры: келесің бе? (kk
) келесиңби? (ky
) tuletko? (fi
) boađátgo? (se
) "ты идешь?". Данная фонема является клитикой (a clitic) потому что ее фонологическая форма зависит от предыдущего слова, но синтаксически (а иногда орфографически) она самостоятельна.
В таджикском языке, есть вариант слова для союза "и" который, синтаксический ведет себя как союз, присоединяется к предыдущему слова, каким бы оно не было. Он может иметь форму -у (после согласных) и -ву (после гласных). Альтернативным примером выражения чой ва шароб "чай и вино ": будет чою шароб.
Морфонология
Морфонология изучает фонологические изменения, которые происходят с морфемами при присоединении. Морфонология четко прослеживается в любом наборе морфем любого языка, но в данном разделе мы объясним этот процесс на примере суффикса множественного числа в татарском языке, -/LAr/.
Суффикс имеет четыре формы, выбор которых зависит от существительного, к которому он присоединяется: -лар, -ләр, -нар, -нәр. Например, алма·лар "яблоки", тел·ләр "языки", урам+нар "улицы", көн·нәр "дни". В данных примерах, первый согласный это /л/ или /н/ в зависимости от звука, на который заканчивается слово; /н/ если суффикс следует непосредственно после носового согласного (м, н, ң), a /л/ после других звуков. Гласный /A/ изменяется в зависимости от последней гласной слова: после гласных заднего ряда "back/твёрдые гласные" (а, о, ы, у) это /а/, а после гласных переднего ряда "front/мягкие гласные" (ә, э, ө, и, ү) это /ә/.
Компьютерные репрезентации
Компьютерные морфологические модели обычно пользуются инструментами под названием "конечные преобразователи" (finite-state transducers) для создания морфотактики и морфонологии. Конечный преобразователь немного похож на схему, в которой в зависимости от части слова которую вы считываете вы уже решаете какая у него флексия или деривация. Но в отличии от обыкновенной схемы, решение может вести к множеству заключений!
Вышеупомянутый преобразователь, в более расширенном виде сложен для полного ознакомления, но, если мы удалим категорию принадлежности, нам будет проще более детально посмотреть как он работает.
Из нашего примера башкирское слово мәктәп "школа" изменяется по числам (единственное, множественное) и падежам (именительный, родительный, дательный, винительный, местный и творительный). Если посмотреть на вышеуказанный преобразователь, каждая кривая на графике имеет обозначение (пометку). Она состоит из двух частей, левая часть (слева от :
) и правая (справа от :
). При чтении слева направо мы можем провести анализ слова.
Ед.число | Множественное | |
---|---|---|
Именительный | мәктәп | мәктәптәр |
Винительный | мәктәпте | мәктәптәрҙе |
Родительный | мәктәптең | мәктәптәрҙең |
Местный | мәктәптә | мәктәптәрҙә |
Творительный | мәктәптән | мәктәптәрҙән |
Дательный | мәктәпкә | мәктәптәргә |
Вы можете попробовать проделать такую же работу со словом из таблицы склонений справа. Например, мәктәптәрҙән "из школ". Нам следует получить следующий анализ мәктәп<n><pl><abl>
. Процесс выглядит примерно следующим образом:
- read
м
, writeм
(input:м
, оutput:м
) - read
ә
, writeә
(input:мә
, оutput:мә
) - read
к
, writeк
(input:мәк
, оutput:мәк
) - read
т
, writeт
(input:мәкт
, оutput:мәкт
) - read
ә
, writeә
(input:мәктә
, оutput:мәктә
) - read
п
, writeп
(input:мәктәп
, оutput:мәктәп
) - read
0
, write<n>
(input:мәктәп0
, оutput:мәктәп
<n>
) - read
т
, write<pl>
(input:мәктәп0т
, оutput:мәктәп
<n>
<pl>
) - read
ә
, write0
(input:мәктәп0тә
, оutput:мәктәп
<n>
<pl>
0) - read
p
, write0
(input:мәктәп0тәp
, оutput:мәктәп
<n>
<pl>
00) - read
0
, write<abl>
(input:мәктәп0тәp0
, оutput:мәктәп
<n>
<pl>
00<abl>
) - read
ҙ
, write0
(input:мәктәп0тәp0ҙ
, оutput:мәктәп
<n>
<pl>
00<abl>
0
) - read
ә
, write0
(input:мәктәп0тәp0ҙә
, оutput:мәктәп
<n>
<pl>
00<abl>
00
) - read
н
, write0
(input:мәктәп0тәp0ҙән
, оutput:мәктәп
<n>
<pl>
00<abl>
000
)
Заметьте, что чтение и написание 0 означает ничего не читать и не записывать.
Практическая часть
Для практической части есть два раздаточных материала,
- Как использовать HFST, чтобы разработать новый морфологический анализатор
- Как использовать lttoolbox, чтобы разработать новый морфологический анализатор
Для дальнейшего чтения
- Kenneth R. Beesley and Lauri Karttunen (2003) Конечная морфология / Finite-State Morphology (CSLI Publications)
- Richard Sproat (1992) Морфология и Компьютерные вычисления / Morphology and Computation (MIT Press)
- Francis M. Tyers (2007) "Руководство по созданию новой языковой пары" (Apertium Wiki)