Таблица 2. Пример анализа параметров на размеченном корпусе
i
|
j
|
a(239)i
|
a(239)i = j
|
1
|
0
|
2
|
нет
|
1
|
1
|
2
|
нет
|
1
|
2
|
2
|
да
|
2
|
0
|
1
|
нет
|
2
|
1
|
1
|
да
|
2
|
2
|
1
|
нет
|
Последняя колонка в табл. 2 показывает, в каких случаях, a(239)i = j. Это две пары: (i = 1, j = 2) и (i = 2, j = 1). Соответственно, на единицу уве- личатся следующие счетчики:
Таблица 3. Результата анализа параметров табл. 2
Для (i = 1, j = 2)
|
Для (i = 2, j = 1)
|
c(нет, no)
|
c(денег, money)
|
c(нет)
|
c(денег)
|
c(2 | 1, 2, 2)
|
c(1 | 2, 2, 2)
|
c(1, 2, 2)
|
c(2, 2, 2)
|
Описанный подход годится только для идеального случая, когда у нас есть большой параллельный корпус, выравненный по словам. К сожале- нию, в жизни обычно не попадаются полностью размеченные данные. Как правило, в параллельном корпусе существует выравнивание только по предложениям, без выравнивания по словам, поэтому массива a(n) у нас нет. Как быть в этой ситуации?
Здесь на помощь приходит EM-алгоритм. По-английски он называ- ется Expectation-maximization (EM) algorithm, что можно перевести как алгоритм увеличения ожидания, но более точно его можно назвать ал- горитмом увеличения ожидаемого правдоподобия. Он позволяет вы-
числять оценку максимально правдоподобия в тех случаях, когда часть данных неизвестна.
EM-алгоритм действует следующим образом. Вначале всем парамет- рам присваиваются произвольные значения. Затем на основе этих пара- метров несколько раз подряд обрабатывает имеющийся корпус, после ка- ждой обработки параметры корректируются. Обычно корпус нужно обра- ботать 10–20 раз, чтобы значения искомых параметров почти перестали изменяться — результат получается достаточно приемлемым, хотя корпус не был размечен.
Получается, что с помощью EM-алгоритма можно вычислять пара- метры модели, не имея массива выравнивания. Но в таком случае, полу- чив необходимые параметры модели, можно вычислить для каждой пары предложений ее массив выравниваний. Иными словами, с помощью моде- лей пословного перевода и EM-алгоритма можно проводить выравнивание по словам — на этом основана работа популярной программы GIZA++, которая выравнивает предложения по словам. Но для перевода пословные модели оказались неэффективными. Им на смену пришли модели перево- дов на основе сочетаний (фразовых таблиц).
Достарыңызбен бөлісу: |