Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Статистическая система машинного перевода, презентация для диплома
1. Введение Принципы Архитектура Оценка Перспективы +
МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ
(национальный исследовательский университет)
Распределенное
программно-информационное
обеспечение статистической модели
перевода естественных языков
Выполнил студент группы 08-606
Никитин Илья Константинович
Научный руководитель
ассистент кафедры 806
Гаврилов Евгений Сергеевич
17 января 2012 г.: И. К. Никитин Статистический машинный перевод
2. Введение Принципы Архитектура Оценка Перспективы + Зачем Методы
Для чего нужен машинный перевод?
бытовой перевод:
книги,
переписка;
поиск в Интернете на разных языках (внутри поисковых
алгоритмов и дополнительная функция для пользователя);
перевод научных публикаций c других языков;
применения достижений в других областях:
автоматическое реферирование,
распознавание речи,
распознавание последовательностей аминокислот (ДНК).
17 января 2012 г.: И. К. Никитин #2 36 | Статистический машинный перевод
3. Введение Принципы Архитектура Оценка Перспективы + Зачем Методы
Основные методы машинного перевода
М .
. ашинный перевод
.
П .
. равила Д .
. анные
П
. ословные
. И
. нтерлингвистические
. О
. снованные . примерах
на
Т
. рансферные
. С
. татистические
.
17 января 2012 г.: И. К. Никитин #3 36 | Статистический машинный перевод
4. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Модель зашумленного канала (1)
Ш
. ум
И
. сточник (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
17 января 2012 г.: И. К. Никитин #4 36 | Статистический машинный перевод
5. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. .
P(ϕe )
. .
P(ϕr |ϕe )
arg max P(ϕe |ϕr ) = arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe ∪ϕe
ϕe — фраза перевода (английская);
ϕr — фраза оригинала (русская).
17 января 2012 г.: И. К. Никитин #5 36 | Статистический машинный перевод
6. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. .
P(ϕe )
. .
P(ϕr |ϕe )
Декодер
. .
arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe
17 января 2012 г.: И. К. Никитин #6 36 | Статистический машинный перевод
7. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
С
. татистическая система машинного перевода
.
Модель языка Модель перевода
. .
P(ϕe )
. .
P(ϕr |ϕe )
Декодер
. .
arg max (P(ϕe ) · P(ϕr |ϕe ))
∪ϕe
Корпус текста Параллельный
. .
на языке ϕe .
. корпус .
текста
на языках ϕe и ϕr .
17 января 2012 г.: И. К. Никитин #7 36 | Статистический машинный перевод
8. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Модель языка
Правильный порядок слов.
Вычисляется с помощью n-грамм слов. Пример для 3-грамм:
(ω1 ,
ω2 , ω3 );
(ω2 , ω3 , ω4 );
ϕ = (ω1 , ω2 , ω3 , ω4 , . . . , ωl ) ⇒ . . .
.
. .
. .
.
(ωl−2 , ωl−1 , ωl ).
Вычисляется по формуле:
∏
i=l+n−1
P(ϕ) = P(ω1 . . . ωl ) = P (ωi |ωi−1 . . . ωi−n+1 ).
i=0
17 января 2012 г.: И. К. Никитин #8 36 | Статистический машинный перевод
9. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Модель перевода (1)
Вводим выравнивание для пары предложений Πe , Πr .
Для выравнивания нужны вероятности лексического
перевода ωe → ωr .
Для вероятности лексического перевода нужны
выравнивания.
Проблема «курицы и яйца».
17 января 2012 г.: И. К. Никитин #9 36 | Статистический машинный перевод
10. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Модель перевода (2)
Для оценки вероятности лексического перевода −→
EM-алгоритм (Витерби):
инициализируем параметры модели (одинаковыми
значениями, на первой итерации);
оценим вероятности отсутствующей информации;
оценим параметры модели на основании новой информации;
перейдем к следующей итерации.
17 января 2012 г.: И. К. Никитин #10 36 | Статистический машинный перевод
11. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
∃ Отличия от других систем
Система используется для перевода научно-технической литературы.
.
Слова → n-грамы .
..
⇐ Устойчивые формальные выражения в научных текстах.
.
.. .
.
.
Выравнивание по круппным группам n-грам .
..
⇐ прямой порядок слов;
⇐ стереотипная структура предложений.
.
.. .
.
.
Модели низких порядков .
..
⇐ важность локального порядка слов;
⇐ фертильности и вероятностной грамматики могут его разрушить.
.
.. .
.
17 января 2012 г.: И. К. Никитин #11 36 | Статистический машинный перевод
12. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Декодер
Исходная фраза
.
Среди всех возможных вариантов ϕr
.
перевода выбрать правильный:
полный перебор; Модель Модель
. перевода
. . языка
.
A*: P(ϕr |ϕe ) P(ϕe )
Д .
. екодер
стековый поиск,
многостековый поиск;
жадный инкрементный поиск;
сведение к обобщенной задаче Перевод исходной фразы
коммивояжера. . arg max (P(ϕe ) · P(ϕr |ϕe ))
ϕe
17 января 2012 г.: И. К. Никитин #12 36 | Статистический машинный перевод
13. Введение Принципы Архитектура Оценка Перспективы + Модель Шеннона Модель языка Модель перевода Декодер
Жадный инкрементный поиск
простой и быстрый поиск;
«плохой» вариант перевода получаем сразу;
последовательно применяя набор операций можем
улучшить перевод;
изменить перевод слова (группы слов, n-граммы),
удалить слово (группу слов, n-грамму),
поменять слова местами (группы слов, n-граммы);
можно делать отсечку по времени;
можем сразу оценить модель языка большой фразы.
17 января 2012 г.: И. К. Никитин #13 36 | Статистический машинный перевод
14. Введение Принципы Архитектура Оценка Перспективы + Обзор Обучение Декодеривание
∃ Из чего состоит система
. орпус.En, Ru
К . Читатель
.
Erlang
П
. РС-СМП
Набор приложений.
Могут быть удалены
. друг от друга. . База Redis
данных
.
.
. Декодер
.
Erlang
Распределены
где это возможно.
. нтерфейсы
и
. еб
В .
. est
R .
. онсоль
К .
. Обработчик
.
Erlang
.
17 января 2012 г.: И. К. Никитин #14 36 | Статистический машинный перевод
15. Введение Принципы Архитектура Оценка Перспективы + Обзор Обучение Декодеривание
. .
Читатель . Обработчик .
.. ..
Nчит. < Nобр.
. .
.. .
.
.. .
.
17 января 2012 г.: И. К. Никитин #15 36 | Статистический машинный перевод
16. Введение Принципы Архитектура Оценка Перспективы + Обзор Обучение Декодеривание
.
Декодер .
..
жадный инкрементный
поиск;
два режима работы:
перевода,
улучшения.
пошаговый веб-интерфейс;
потоковый RESTful-сервис;
пошаговый консольный
интерфейс.
.
.. .
.
17 января 2012 г.: И. К. Никитин #16 36 | Статистический машинный перевод
17. Введение Принципы Архитектура Оценка Перспективы + Примеры BLEU Скорость
∃ Примеры (1)
Оригинал
... adopted at the 81st plenary meeting ...
Переводчик
... принята на 81-м пленарном заседании ...
Система
... принята без голосования на 81 пленарном заседании
в Брюсселе ...
17 января 2012 г.: И. К. Никитин #17 36 | Статистический машинный перевод
18. Введение Принципы Архитектура Оценка Перспективы + Примеры BLEU Скорость
∃ Примеры (2)
Оригинал
It will be instructive to exhibit Euclid’s algorithm here.
Переводчик
Думаю, имеет смысл привести здесь описание этого алгоритма.
Система
Будет поучительно выставить алгоритм Евклида здесь.
17 января 2012 г.: И. К. Никитин #18 36 | Статистический машинный перевод
19. Введение Принципы Архитектура Оценка Перспективы + Примеры BLEU Скорость
∃ Примеры (3)
Оригинал
Many years have passed since the author wrote most of the
comments above ...
Переводчик
Со времени первого написания автором большинства
приведенных выше комментариев утекло много воды ...
Система
Много лет прошло с тех пор, автор написал большую часть
комментариев выше ...
17 января 2012 г.: И. К. Никитин #19 36 | Статистический машинный перевод
20. Введение Принципы Архитектура Оценка Перспективы + Примеры BLEU Скорость
Оценка перевода с использованием метрики BLEU
BLEU — Bilingual Evaluation Understudy
Численная оценка качества перевода.
Нужен перевод, выполненный человеком.
Система BLEU
Показывает величину близости ПРС-СМП (1) 0.243
к «человеческому» переводу. ПРС-СМП (100) 0.209
Чем меньше величина, тем лучше. Moses (IBM 3) 0.201
Сравнивались: Moses (IBM 5) 0.173
ПРС-СМП;
cистемы построенная на основе
Moses.
17 января 2012 г.: И. К. Никитин #20 36 | Статистический машинный перевод
21. Введение Принципы Архитектура Оценка Перспективы + Примеры 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
17 января 2012 г.: И. К. Никитин #21 36 | Статистический машинный перевод
22. Введение Принципы Архитектура Оценка Перспективы + Примеры 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
17 января 2012 г.: И. К. Никитин #22 36 | Статистический машинный перевод
23. Введение Принципы Архитектура Оценка Перспективы + Результаты Развитие Результаты
Результаты
Разработан подход:
быстрого обучения модели перевода для научных текстов.
Реализована система машинного перевода:
многопроцессорная, распределенная;
только научно-техническая литература;
быстрое обучение;
быстрое (пошаговое) декодирование.
17 января 2012 г.: И. К. Никитин #23 36 | Статистический машинный перевод
24. Введение Принципы Архитектура Оценка Перспективы + Результаты Развитие Результаты
Дальнейшее развитие
Математика: Архитектура и реализация:
полноценный фразовый перевод; использовать пословное сжатие
синтаксический перевод; при хранении в БД;
смешанная система перевода: переписать обработчика на Cи с
libevent;
пара русский-английский,
морфологический анализ. libevent для RESTful-сервиса
декодера:
опробовать более точные методы
1 млн. одновременных
поиска.
соединений
попробовать Redis → leveldb.
17 января 2012 г.: И. К. Никитин #24 36 | Статистический машинный перевод
25. Введение Принципы Архитектура Оценка Перспективы + Результаты Развитие Результаты
Результаты
Разработан подход:
быстрого обучения модели перевода для научных текстов.
Реализована система машинного перевода:
многопроцессорная, распределенная;
только научно-техническая литература;
быстрое обучение;
быстрое (пошаговое) декодирование.
17 января 2012 г.: И. К. Никитин #25 36 | Статистический машинный перевод
26. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Приложения-подробности
интересные слайды,
которые не вошли в саму презентацию
17 января 2012 г.: И. К. Никитин #26 36 | Статистический машинный перевод
27. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Модель языка
Вычисляется с помощью 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 )
∑
i=n
Ki — коэффициенты сглаживания Ki > Ki+1 и Ki = 1.0.
i=0
17 января 2012 г.: И. К. Никитин #27 36 | Статистический машинный перевод
28. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Модель языка (адаптивные модели)
∏
i=l+n−1
P(ω1 . . . ωl ) = P (ωi |ωi−1 . . . ωi−n+1 )
i=0
P можно вычислить иначе, используя адаптивный метод сглаживания
δ + частота (ω1 . . . ωm )
P (ωm |ω1 . . . ωm−1 ) = ∑ ( ) =
δ + частота (ω1j . . . ωmj )
i
δ + частота (ω1 . . . ωm )
= ∑( )
δ·V+ частота (ω1j . . . ωmj )
i
V — количество всех n-грамм в используемом корпусе;
δ = 1 — метод сглаживания Лапласа;
δ = 1 ⇒ методы Гуда-Тьюринга, Катца, Кнезера-Нейя.
17 января 2012 г.: И. К. Никитин #28 36 | Статистический машинный перевод
29. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Введем обозначения
Θe — «английский» текст (множество предложений);
Θr — «русский» текст;
Πe — «английское» предложение (последовательность
слов);
Πr — «русское» предложение;
ωe — «английское» слово;
ωr — «русское» слово;
17 января 2012 г.: И. К. Никитин #29 36 | Статистический машинный перевод
30. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Модель перевода (1)
Пусть 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.
17 января 2012 г.: И. К. Никитин #30 36 | Статистический машинный перевод
31. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Модель перевода (2)
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, которой у нас нет.
17 января 2012 г.: И. К. Никитин #31 36 | Статистический машинный перевод
32. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
Модель перевода (3)
Для оценки параметров −→ EM-алгоритм (Витерби).
инициализируем параметры модели (одинаковыми
значениями, на первой итерации);
оценим вероятности отсутствующей информации;
оценим параметры модели на основании новой информации;
перейдем к следующей итерации.
17 января 2012 г.: И. К. Никитин #32 36 | Статистический машинный перевод
34. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
∃ Детали работы декодера (1)
В первом режиме работы на вход принимается исходный текст.
Далее ищется ее наиболее вероятный эквивалент,
последовательным разбиением фразы на n-граммы наибольшего
размера (аналогично алгоритму системы перевода основанной
на примерах в приложении), и параллельным поиском их в базе
данных.
17 января 2012 г.: И. К. Никитин #34 36 | Статистический машинный перевод
35. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
∃ Детали работы декодера (2)
Sηe Sωe
∑ ∑
− S 1 log2 P(ηe i )+ S 1 log2 P(ωr j |ωe j )
ηe ωe
i=1 j=1
ВН = 2
ηe — n-граммы высокого порядка найденные в созданном тексте;
Sηe — количество таких n-грамм;
P(ηe ) — вероятность n-грамм согласно языковой модели (вычисляется как
указано раннее);
ωe — n-граммы (слова) как результат перевода согласно модели перевода;
Sωe — количество таких n-грамм (слов);
P(ωr j |ωe j ) — вероятность перевода фразы ωe j на ωr j .
Во втором режиме работы на вход принимается исходный текст (ИТ), переводной
текст (ПТ) c предыдущей итерации и величина неопределенности (ВН).
17 января 2012 г.: И. К. Никитин #35 36 | Статистический машинный перевод
36. Введение Принципы Архитектура Оценка Перспективы + Модель языка Модель перевода Декодер BLEU
BLEU — Bilingual Evaluation Understudy
( )
∑
N
Wn log(pn )
BLEU = Bp · e n=1
∑ ∑
{ числосреза (ηc )
(
1, )
lc > lh ; C∈Sc ηc ∈C
Bp = l
1− lh и pn = ∑ ∑
e c , lc lh . число(ηc )
C∈Sc ηc ∈C
Sc — множество кандидатов на перевод;
C — кандидат на перевод;
Система BLEU
ηc — n-грамма кандидата на перевод;
ПРС-СМП (1) 0.243
lc — длинна кандидата перевода;
lh — длинна экспертного перевода
ПРС-СМП (100) 0.209
(выполненного человеком); Moses (IBM 3) 0.201
1 Moses (IBM 5) 0.173
Wn = — вес;
N
N = 4, n-грамность оценки.
17 января 2012 г.: И. К. Никитин #36 36 | Статистический машинный перевод