40
Об одном методе автоматической транскрипции Варвара Логачева Институт прикладной математики им. М.В.Келдыша г. Москва

Об одном методе автоматической транскрипции

  • Upload
    -

  • View
    1.025

  • Download
    0

Embed Size (px)

DESCRIPTION

Варвара ЛогачеваИнститут прикладной математики им. М.В.Келдыша

Citation preview

Page 1: Об одном методе автоматической транскрипции

Об одном методе автоматической транскрипции

Варвара Логачева

Институт прикладной математики

им. М.В.Келдыша

г. Москва

Page 2: Об одном методе автоматической транскрипции

Задача

Передать иноязычное имя собственное с

сохранением его фонетического облика

Ivangoe – Айвенго

Samhain – Савань

Jorge – Хорхе

Page 3: Об одном методе автоматической транскрипции

ТерминологияПрактическая транскрипция (термин введен

А.М.Сухотиным в 1935 году) – запись иноязычных имен и названий с использованием исторически сложившейся орфографической системы языка-приемника, способ включения слов одного языка в текст другого с приблизительным сохранением звукового облика этих слов, но также с возможным учетом написания в оригинале и сложившихся традиций.

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

В зарубежной науке термин «transcription» используется только в генетике. Задача практической транскрипции в англоязычной научной литературе обозначается как transliteration.

Page 4: Об одном методе автоматической транскрипции

Смежные задачи транслитерация

Charles Aznavour – Шарль Азнавур

восстановление правильного написания имениSent Francisco Sant Fransisko San FranciscoSen Frantsisca

обратная транслитерацияДжордж Буш – George Bush (а не Boosh, Boushe и пр.)

определение языка, на котором написано имяSinger (нем.) – Зингер Francois (фр.) – Франсуа Singer (фр.) – Сенже Francois (исп.) – Франкоис

выделение заимствованных слов в тексте

Page 5: Об одном методе автоматической транскрипции

Основные тенденции соответствие букв / фонем статистические модели / модели,

основанные на правилах ручное / автоматическое

(автоматизированное) формирование обучающего корпуса

Page 6: Об одном методе автоматической транскрипции

Существующие методытранскрипции (Knight and Grael)K. Knight and J. Graehl. 1998. Machine transliteration.Computational Linguistics, 24(4):599–612.

WFSA-A – разделение входа на слова WFST-B – генерация фонемного состава английского языкаWFST-C – преобразование в фонемный японского языкаWFST-D – преобразование в азбуку катаканаНа каждом этапе используется вероятностная информация

Статистический метод – обучение конечного автоматаЗадача обратной транслитерации (японский → английский)

Page 7: Об одном методе автоматической транскрипции

Российские системы практической транскрипции http://nano.yandex.ru/project/anthroponym/ http://transcriptor.ru/ http://www.artlebedev.ru/tools/transcriptor/ http://www.lingvoconverter.com/

Page 8: Об одном методе автоматической транскрипции

Система «Трансскриба»•Правила составляются вручную экспертом

•поддержка 32 языков

•высокая точность передачи

•Относительно невысокая скорость, зависящая от количества правил для данного языка

Page 9: Об одном методе автоматической транскрипции

Усовершенствование системы «Трансскриба» Увеличение скорости преобразования строк

Построение конечного автомата на основе системы правил Конечный автомат обеспечивает линейное время разбора строк,

не зависящее от количества правил

Автоматическое порождение правил транскрипции Обучение на параллельном корпусе (имя+перевод) Метод не зависит от языка, может быть использован для

порождения правил для любой пары языков (при наличии тестовых данных)

Page 10: Об одном методе автоматической транскрипции

Усовершенствование системы «Трансскриба» Увеличение скорости преобразования строк

Построение конечного автомата на основе системы правил Конечный автомат обеспечивает линейное время разбора строк,

не зависящее от количества правил

Автоматическое порождение правил транскрипции Обучение на параллельном корпусе (имя+перевод) Метод не зависит от языка, может быть использован для

порождения правил для любой пары языков (при наличии тестовых данных)

Page 11: Об одном методе автоматической транскрипции

Конечный автомат

Page 12: Об одном методе автоматической транскрипции

Конечный автоматg = <VI, VO, Q, q0, F, δ>VI – входной алфавит (алфавит языка оригинала);

VO – выходной алфавит (алфавит языка перевода);Q – множество состояний автомата;

q0 – начальное состояние автомата;F – множество конечных состояний;

δ – функция переходов Q×VI → <Q, a>.a – действие, совершаемое при переходе:

сдвиг на n символов по входной строке приписывание к выходу автомата цепочки символов выходного

алфавита

Page 13: Об одном методе автоматической транскрипции

Преобразование системы правил в конечный автоматПравило имеет вид M α N → β, гдеα – цепочка символов входного алфавитаβ – цепочка символов выходного алфавита

(возможно, пустая)M, N – контексты: множества цепочек символов

входного алфавита. Цепочка α может быть преобразована в цепочку β только при условии, что одна из цепочек из множества M (N) предшествует α (следует за α). M и N могут быть пусты (правило без контекстов)

Page 14: Об одном методе автоматической транскрипции

Правило без контекста α → β Переход из состояния n в состояние n+1 по каждому

символу из α Переход в заключительное состояние по последнему

символу из α Переходу по последнему символу приписывается

выходная строка β

e (1): «» a (1): «» u(1): «о»

eau → о

1 2 3 z

Page 15: Об одном методе автоматической транскрипции

Правило с контекстом MαN → β

i (1)l (1) e(0): «й»

1 2 6 z

{ai, ei}ll{e} → й

3

5l (-2) 7l (1)

4

a (1) i (1)

e (1)

Переход из начального состояния по первому символу α, сдвиг на |m| символов влево ( m M )

Переходы из состояния А' в состояние A'' по каждой цепочке из M Переход из состояния A'' в состояние A''' по каждому символу из α Переходы из состояния A''' в состояние z по каждой цепочке из N,

последнему переходу приписано выходное значение β

Page 16: Об одном методе автоматической транскрипции

Детерминированный конечный автомат (ДКА)Если в системе существует два или более правил, начинающихся на одну и ту же букву, автомат будет недетерминированным.

a → а

ai → е

au → о

l → л

l{b, d, g, m, >} → ль

{i}ll → й

а: «а»

а

аu: «о»

i: «е»

l(1): «л»

l(1)

l(-1)l(1): «й»

b,d,g,m,>(1): «ль»

i(1) l(1)

Page 17: Об одном методе автоматической транскрипции

Детерминированный конечный автомат (ДКА)

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

Существует два способа построения ДКА: Система правил → НКА → ДКА Система правил → ДКА

Page 18: Об одном методе автоматической транскрипции

Преобразование недетерминированного автомата в детерминированныйИз вершины A исходит n дуг в вершины B1,…,Bn, помеченных одним

символом: Создается новая вершина A', в которую входит дуга из вершины A,

помеченная тем же символом Из вершины A' проводятся все дуги, которые выходили из вершин B1,

…,Bn

Вершины B1,…,Bn удаляются

а: «а»

а

аu: «о»

i: «е»*(0): «а»

а(1)

u(1): «о»

i(1): «е»

Page 19: Об одном методе автоматической транскрипции

Построение ДКА

*(0)

а(1)

u(1)

i(1)

•Если из текущего состояния А не существует перехода по текущему символу, создается новое состояние B и переход в него;

•Если из текущего состояния A существует переход по текущему символу в состояние B, состояние B становится текущим;

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

a{*} → «а» ai → «е»au → «о»

ai → «аи»

«а»

«е»

«о»

«аи»

Page 20: Об одном методе автоматической транскрипции

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

l → л {*}l{*} → л

{i}ll → й {i}ll{*} → й

l{b, d, g, m, >} → ль {*} l{b, d, g, m, >} → ль

Page 21: Об одном методе автоматической транскрипции

Унификация системы правилЕсли для буквы нет ни одного правила без контекстов, составляется правило по умолчанию – самое распространенное правило для этой буквы с пустым контекстом:

c{e, i} → с – встретилось 100 раз

c{a, o, u} → к – встретилось 200 раз c → к

Page 22: Об одном методе автоматической транскрипции

Унификация системы правил

l(1): «л»

l(1)

l(-1)l(1): «й»

b,d,g,m,>(1): «ль»

i(1) l(1)

l(-1)

l(1): «й»

*(1) l(1)

*(0): «л»

b,d,g,m,>(1): «ль»

i(1)

l(1)

*(0): «л»

T A M LI A

При добавлении в автомат правил с правыми контекстами или с входной строкой длиннее одного символа из всех неконечных состояний добавляется переход в конечное состояние с приписыванием к выходной строке значения по умолчанию для первой буквы правила

Page 23: Об одном методе автоматической транскрипции

Результат работы автоматаaldema альдемаaldena альденаaldenaide альденедaldenaise альденез альденесaldenare альденарaldeneige альденежaldenore альденорaldera альдера

alderianna альдерьианна альдерианна альдерьянна альдеряннаalmanzor альманзорalmea альмеаalmeda альмедаalmedina альмединаalmedine альмединalmeida альмеда

almeline альмельен альмелен альмельин альмелинamber амбер амбеambra амбраambre амбрambrine амбринambroise амбруаз амбруас

Page 24: Об одном методе автоматической транскрипции

Усовершенствование системы «Трансскриба» Увеличение скорости преобразования строк

Построение конечного автомата на основе системы правил Конечный автомат обеспечивает линейное время разбора строк,

не зависящее от количества правил

Автоматическое порождение правил транскрипции Обучение на параллельном корпусе (имя+перевод) Метод не зависит от языка, может быть использован для

порождения правил для любой пары языков (при наличии тестовых данных)

Page 25: Об одном методе автоматической транскрипции

Генерация правилA → АAE → А{<}AI → Э{*}AI{*} → Е{<}AY → Э{*}AY → ЕAIL{>} → АЙAILL{*} → АЙAILLE{>} → АЙ

adria;адрияadrian;адрианadriana;адрианаadriane;адрианadrianna;адрианнаadrianne;адрианнadrien;адрианadriene;адриенadrienn;адрианнadrienna;адрианнаaldema;альдемаaldena;альденаaldenaide;альденедaldenaise;альденез

Page 26: Об одном методе автоматической транскрипции

Этапы генерации правилРазделение слов на группы

гласных и согласных

Порождение первичных правил

Разделение слов на слоги

Пробный разбор

Пополнение системы правил

Обучающая выборка

Система правил

Page 27: Об одном методе автоматической транскрипции

Первичные правилаПРЕДПОЛОЖЕНИЕ: Имя в оригинале и переводе должно состоять из

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

буквами или их комбинациями, согласные звуки – согласными буквами или комбинациями букв

ВЫВОД: На первом этапе будем считать, что согласные

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

Page 28: Об одном методе автоматической транскрипции

Первичные правила

Слово w = l1l2…ln

Граница группы – между li и li+1 такими, что

isVowel (li) ≠ isVowel (li+1)

R | u | gg | ie | r | o M | a | cch | i R | u | dzh | e | r | o M | a | kk | i

isVowel ( l ) = true, если l – гласная

false, если l – согласная

Page 29: Об одном методе автоматической транскрипции

Первичные правила Удаляются правила, встретившиеся менее 3 раз Удаляются правила, левая часть которых длиннее

3 символов, при условии, что правая часть длиннее одного символа ouia → уиа будет удалено tsch → ч не будет удалено

Удаляются правила, которые могут быть объяснены другими правилами rst → шт объясняется правилами rs → ш и t → т,

поэтому будет удалено.

Page 30: Об одном методе автоматической транскрипции

Учет контекста

l л

anjela – анжела

cella – селла

l {a, o, u, i, e, l} л

l ль

almelda – альмельда

avital – авиталь

l {>, t, d, p, m} ль

Page 31: Об одном методе автоматической транскрипции

Деление на слоги Граница слога в слове w = l1l2…ln ставится между

гласной и согласной, то есть после буквы li такой, что isVowel(li) = true и isVowel(li+1) = false;

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

Символы “<” и “>”, отмечающие начало и конец слова, рассматриваются как согласные.

Page 32: Об одном методе автоматической транскрипции

A d r i a n a

A l d e n a

A l m e l i n e

А д р и а н а

А л ь д е н а

А л ь м е л и н

Деление на слоги

Page 33: Об одном методе автоматической транскрипции

Порождение сложных правилПорождение сложных правилКаждый слог можно представить как

<pi1, …, pik, px, pik+1, …, pin> → <ci1, …, cik, cx, cik+1, …, cim>, где px → cx – подстрока, не удовлетворяющая ни одному из существующих правил.

Можно выделить три случая несоответствия px правилам.

Page 34: Об одном методе автоматической транскрипции

Порождение сложных правилПорождение сложных правил px = , cx ≠ o px ≠ , cx = o px ≠ , cx ≠

lde льде

de ьде

d ьд

_ ь

l л

l ль

l лe еl лe еd д

Page 35: Об одном методе автоматической транскрипции

Порождение сложных правилПорождение сложных правилo px = , cx ≠ px ≠ , cx = o px ≠ , cx ≠

tha та

ha а

h _

t тt тa а

{t}h{a}

Page 36: Об одном методе автоматической транскрипции

Порождение сложных правилПорождение сложных правилo px = , cx ≠ o px ≠ , cx = px ≠ , cx ≠

ja джа сhi ши

j → дж ch → ш

ko> ку>

{k}o{>} → у

Page 37: Об одном методе автоматической транскрипции

Недостатки метода Низкая устойчивость к ошибкам в тестовой

выборке и исключениям из правил Неполное использование контекстов

Не используется информация о закрытости / открытости слога, номер слога в слове

Не рассматривается морфологический уровень слова – префиксы, суффиксы, слова с несколькими корнями На стыке морфем могут измениться правила чтения

устойчивых сочетаний букв: Sherlock – Шерлок Bellshouse – Беллзхаус

Page 38: Об одном методе автоматической транскрипции

Результаты Реализован метод порождения правил по

тестовой выборке Реализовано построение конечного

автомата по множеству правил

Page 39: Об одном методе автоматической транскрипции

Сгенерированные правилаa → а (549)

{h l n r }a{i } → (6)

au → о (7)

ay → е (9)

b → б (41)

c → к (55)

c{e i } → с (126)

{a y }c{i } → сь (4)

{s }c{i } → (3)

ch → ш (17)

{a i }d{i } → дь (6)

d → д (159)

{a e r u }d{> } → (8)

{a e i u y }e{> l n r t } → (97)

e → э (46)

e → е (409)

{< }i{m n } → э (10)

i → и (353)

Page 40: Об одном методе автоматической транскрипции

Результаты: качество обучения метода

Язык оригиналаОбъем обучающей

выборкиКачество обучения

французский 580 97%

монгольский 232 98%

Тагальский 286 93%

арабский 1606 87%

Испанский 1041 86%

польский 1413 79%

румынский 576 78%

шведский 1629 74%