Распределенная статистическая система машинного перевода
1. Основные положения Принципы Архитектура Оценка Развитие
«МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ
(национальный исследовательский университет)» (МАИ)
Распределенное
программно-информационное
обеспечение статистической модели
перевода естественных языков
Выполнил студент группы 08-606
Никитин Илья Константинович
Научный руководитель
ассистент кафедры 806
Гаврилов Евгений Сергеевич
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #1 26 | Статистичаский машинный перевод
2. Основные положения Принципы Архитектура Оценка Развитие
Cодержание
Основные положения
Зачем
Методы
Принципы
Модель Шеннона
Модель языка
Модель перевода
Декодер
Архитектура
Обучение
Декодеривание
Оценка
Примеры
BLEU
Скорость
Цена
Развитие
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #2 26 | Статистичаский машинный перевод
3. Основные положения Принципы Архитектура Оценка Развитие Зачем Методы
Для чего нужен машинный перевод?
бытовой перевод:
книги,
переписка;
поиск в Интернете на разных языках (внутри поисковых
алгоритмов и дополнительная функция для пользователя);
перевод научных публикаций c других языков;
применения достижений в других областях:
автоматическое реферирование,
распознавание речи,
распознавание последовательностей аминокислот (ДНК).
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #3 26 | Статистичаский машинный перевод
4. Основные положения Принципы Архитектура Оценка Развитие Зачем Методы
Основные методы машинного перевода
М .
. ашинный перевод
.
П .
. равила Д .
. анные
П
. ословные
. И
. нтерлингвистические
. О
. снованные . примерах
на
Т
. рансфеные
. С
. татистические
.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #4 26 | Статистичаский машинный перевод
5. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Модель зашумленного канала I
Ш
. ум
И
. сточник (R)
. П .
. ередачик
. П
. риемник
. Ц .
. ель (E)
1. Пусть ϕr — фраза оригинала (русская).
2. Требуется найти ϕe — фразу перевода (английскую).
Максимизировать P(ϕe |ϕr ).
(P(ϕe ) · P(ϕr |ϕe ))
P(ϕe |ϕr ) = ⇒
P(ϕr )
ϕeg = arg max P(ϕe |ϕr ) = arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe ∪ϕe
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #5 26 | Статистичаский машинный перевод
6. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. . . .
P(ϕe ) P(ϕr |ϕe )
arg max P(ϕe |ϕr ) = arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe ∪ϕe
ϕe — фраза перевода (английская);
ϕr — фраза оригинала (русская).
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #6 26 | Статистичаский машинный перевод
7. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. . . .
P(ϕe ) P(ϕr |ϕe )
Декодер
. .
arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #7 26 | Статистичаский машинный перевод
8. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. . . .
P(ϕe ) P(ϕr |ϕe )
Декодер
. .
arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe
Параллельный
Корпус текста
. . . корпус .
текста
на языке ϕe . на языках ϕe и ϕr .
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #8 26 | Статистичаский машинный перевод
9. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Введем обозначения
Θe — «английский» текст (множество предложений);
Θr — «русский» текст;
Πe — «английское» предложение (последовательность
слов);
Πr — «русское» предложение;
ωe — «английское» слово;
ωr — «русское» слово;
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #9 26 | Статистичаский машинный перевод
10. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Модель языка
Правильный порядок слов.
Вычисляется с помощью n-грамм слов.
∏
i=l+n−1
P(ω1 . . . ωl ) = P (ωi |ωi−1 . . . ωi−n+1 )
i=0
P (ωm |ω1 . . . ωm−1 ) = Kn · P(ωm |ω1 . . . ωm−1 ) + . . . + K1 · P(ω1 ) + K0 ;
частота (ω1 )
P(ω1 ) = |Θ|
;
частота (ω1 ...ωm−1 ωm )
P(ωm |ω1 . . . ωm−1 ) = частота (ω1 ...ωm−1 )
;
Ki — коэффициенты сглаживания;
адаптивные модели.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #10 26 | Статистичаский машинный перевод
11. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Модель перевода I
Пусть P(Πe |Πr ) — вероятность некоторой строки (предложения) из e,
при гипотезе перевода из r.
∑
P(Πe |Πr ) = P(Πe , a|Πr );
a
a — выравнивание между отдельными словами в паре предложений.
Вероятность перевода:
ε ∏
le
P(Πe , a|Πr ) = t(ωej |ωra(j) )
(lr + 1)le
j=1
t — это вероятность слова оригинала в позиции j при соответствующем
ему слове перевода ωra(j) , определенном выравниванием a.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #11 26 | Статистичаский машинный перевод
12. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Модель перевода II
P(Πe , a|Πr )
P(a|Πe , Πr ) = ∑
P(Πe , a|Πr )
a
Имея набор выравниваний с определенными вероятностями, мы можем
подсчитать частоты каждой пары слов,
counts(ωe |ωr ) counts(ωe |ωr )
t(ωe |ωr ) = ∑ = ;
counts(ωe |ωr ) total(ωr )
ωe
Требуется оценить вероятности лексического перевода t(ωe |ωr ) Но
чтобы сделать это нужно вычислить a, которой у нас нет.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #12 26 | Статистичаский машинный перевод
13. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Модель перевода III
Для оценки параметров −→ EM-алгоритм (Витерби).
инициализируем параметры модели (одинаковыми
значениями, на первой итерации);
оценим вероятности отсутствующей информации;
оценим параметры модели на основании новой информации;
перейдем к следующей итерации.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #13 26 | Статистичаский машинный перевод
15. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Отличия от других систем
Система используется для перевода научно-технической литературы.
.
Слова → n-грамы .
..
⇐ Устойчивые формальные выражения в научных текстах.
.
.. .
.
.
Выравнивание по круппным группам n-грам .
..
⇐ прямой порядок слов;
⇐ стереотипная структура предложений.
.
.. .
.
.
Модели низких порядков .
..
⇐ важность локального порядка слов;
⇐ фертильности и вероятностной грамматики могут его разрушить.
.
.. .
.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #15 26 | Статистичаский машинный перевод
16. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Декодер
Среди всех возможных вариантов .
Исходная фраза
.
ϕr
перевода выбрать правильный:
полный перебор;
Модель Модель
. перевода
. . языка
.
A*: P(ϕr |ϕe ) P(ϕe )
. Декодер
.
стековый поиск,
лучевой поиск;
жадный инкрементный поиск;
Перевод исходной фразы
.
сведение к обобщенной задаче arg max (P(ϕe ) · P(ϕr |ϕe ))
ϕe
коммивояжера:
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #16 26 | Статистичаский машинный перевод
17. Основные положения Принципы Архитектура Оценка Развитие Модель Шеннона Модель языка Модель перевода Декодер
Жадный инкрементный поиск
простой и быстрый поиск;
«плохой» вариант перевода получаем сразу;
последовательно применяя набор операций можем
улучшить перевод;
изменить перевод слова (группы слов),
удалить слово (группу слов),
поменять слова местами;
можно делать отсечку по времени;
можем сразу оценить вероятность большой группы фраз.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #17 26 | Статистичаский машинный перевод
18. Основные положения Принципы Архитектура Оценка Развитие Обучение Декодеривание
Из чего состоит?
1. Выполнена в виде нескольких приложений:
читатель;
обработчик;
декодировщик.
2. Можно запускать сколько угодно копий приложений.
3. Могут быть удалены друг от друга.
4. Часть вычислений выполняется параллельно:
Erlang.
5. Oбщая (возможно, распределенная) база данных:
Redis Server.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #18 26 | Статистичаский машинный перевод
21. Основные положения Принципы Архитектура Оценка Развитие Примеры BLEU Скорость Цена
Примеры
Оригинал
... adopted at the 81st plenary meeting ...
Переводчик
... принята на 81-м пленарном заседании
Система
... принята без голосования на 81 пленарном заседании в
Брюсселе ...
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #21 26 | Статистичаский машинный перевод
22. Основные положения Принципы Архитектура Оценка Развитие Примеры BLEU Скорость Цена
BLEU — Bilingual Evaluation Understudy
( )
∑
N
Wn log(pn )
BLEU = Bp · e n=1
∑ ∑
числосреза (ηc )
1, lc > lh ; C∈Sc ηc ∈C
Bp = ( l
) и pn = ∑ ∑
e 1− lh
c , lc lh . число(ηc )
C∈Sc ηc ∈C
Sc — множество кандидатов на перевод;
C — кандидат на перевод; Система BLEU
ηc — n-грамма кандидата на перевод;
Текущая (1) 0.243
lc — длинна кандидата перевода;
Текущая (100) 0.209
lh — длинна экспертного перевода
(выполненного человеком);
Moses (IBM 3) 0.201
1 Moses (IBM 5) 0.173
Wn = — вес;
N
N = 4, n-грамность оценки.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #22 26 | Статистичаский машинный перевод
23. Основные положения Принципы Архитектура Оценка Развитие Примеры BLEU Скорость Цена
Оценка скорости обучения
Процессор: Intel Core2 Duo, 1 ядро 64 бит, ОП 4Гб, ФС:ext4
Система Время, ч
Текущая (1) ≈5
Moses (GIZA++) ≈ 25
Chaski (MGIZA++) ≈ 26
Процессор: Intel Xeon E5506, 8 ядер 64 бит, ОП 10Гб, ФС:xfs
Система Время, ч
Текущая (1) ≈1
Moses (GIZA++) ≈ 22
Chaski (MGIZA++) ≈3
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #23 26 | Статистичаский машинный перевод
24. Основные положения Принципы Архитектура Оценка Развитие Примеры BLEU Скорость Цена
Оценка скорости декодирования
Процессор: Intel Core2 Duo, 1 ядро 64 бит, ОП 4Гб, ФС:ext4
Система Время, µс
Текущая (1) 1132
Текущая (100) 7108124
Moses (IBM 3) ≈ 10000000
Moses (IBM 5) ≈ 30000000
Процессор: Intel Xeon E5506, 8 ядер 64 бит, ОП 10Гб, ФС:xfs
Система Время, µс
Текущая (1) 1012
Текущая (100) 1119024
Moses (IBM 3) ≈ 5000000
Moses (IBM 5) ≈ 6000000
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #24 26 | Статистичаский машинный перевод
25. Основные положения Принципы Архитектура Оценка Развитие Примеры BLEU Скорость Цена
Оценка полезности
Экономическая часть: Охрана труда:
Разработка — 916669 руб. Хороший переводчик меньше
Цена — 1833 руб. проводит время у компьютера.
Стоимость — 108786 руб/год. Не подвергается вредному
воздействию:
Меньше зп плохого
тихо работает ⇒;
переводчика (385920 руб/год).
⇒ качественный перевод ⇒;
⇒ качественные данные;
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #25 26 | Статистичаский машинный перевод
26. Основные положения Принципы Архитектура Оценка Развитие
Дальнейшее развитие
Математика: Архитектура и реализация:
полноценный фразовый перевод; использовать пословное сжатие
синтаксический перевод; при хранении в БД;
смешанная система перевода: переписать обработчика на Cи с
libevent;
пара русский-английский,
морфологический анализ. libevent для RESTful-сервиса
декодера:
опробовать более точные методы
1 млн. одновременных
поиска.
соединений
попробовать Redis → leveldb.
. . . . . .
13 января 2012 г.: Е. C. Гаврилов и И. К. Никитин #26 26 | Статистичаский машинный перевод