Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Применение условных случайных полей в задачах обработки текстов на естественном языке А. А. Романенко Научный руководитель: К. В. Воронцов Московский физико-технический институт Факультет управления и прикладной математики Кафедра интеллектуальных систем 17 июня 2014г. Москва А. А. Романенко Применение CRF в NLP 1 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных План презентации 1 Условное случайное поле (CRF) Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF 2 Задача выделения временны́х выражений О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент 3 Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент А. А. Романенко Применение CRF в NLP 2 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Задача разметки последовательности Дано: x = {x1 , . . . , xT } — наблюдаемые переменные (слова), y = {y1 , . . . , yT } — скрытые переменные (метки слов). ∀t = 1, . . . , T xt ∈ V, yt ∈ S. Множества S, V — конечные. Элементы последовательностей xt и yt не i.i.d. Стадия обучения: Размеченная выборка D = {(y(i) , x(i) )}N i=1 Построить a : V |T | → S |T | , такой что Q(D, a) → min Стадия тестирования: Неразмеченная выборка D ′ = {x(i) }M i=1 Построить y = a(x) для всех x ∈ D ′ А. А. Романенко Применение CRF в NLP 3 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Примеры задач разметки последовательности в NLP Выделение именованных сущностей (NER) Выделение синтаксических групп (Chunking) Выделение временных выражений (TER) Определение частей речи слов (POS tagging) Полное снятие морфологической неоднозначности Разрешение анафоры А. А. Романенко Применение CRF в NLP 4 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Пример: POS tagging Пример определения частей речи для предложения «Сорока жила на горе.» y Сущ Глаг Пред Сущ x Сорока жила на горе Возможные метки Числ Сущ Глаг Сущ Пред Межд Сущ А. А. Романенко Применение CRF в NLP 5 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Линейная модель CRF Linear-chain CRF Линейная модель CRF — это разновидность марковской модели случайных полей, у которой множество скрытых переменных вытянуто в цепочку. y0 p(y|x) = 1 Y Ψt (yt , yt−1 , xt ) Z(x) t y1 y2 ... .. x1 yT-2 yT-1 yT xT-2 xT-1 xT . x2 Здесь Ψt (·) — неотрицательная функция от t-ой клики графа P Q ′ , x ) — статистическая сумма Z(x) = y′ t Ψt (yt′ , yt−1 t А. А. Романенко Применение CRF в NLP 6 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Модификация линейной модели Для задач, в которых скрытая переменная yi ∈ Y классифицируется по r множествам классов (например, слова – по частям речи, родам, падежам, и т.д.), т. е. Y ≡ Y1′ × Y2′ × · · · × Yr′ , предлагается использовать модификацию линейной модели: y i-1 yi y i+1 y i-1 y' i, 1 . . . y'i, r-1 . xi-1 xi x i+1 x i-1 А. А. Романенко xi . y' y xi x i+1 i,r i+1 . xi Применение CRF в NLP 7 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных Задача разметки последовательности Линейная модель CRF Модифицированная модель CRF Свойства модифицированной модели Применение модифицированной модели позволяет моделировать зависимости между классами уменьшает количество допустимых меток Q P на rj=1 |Yj′ | − rj=1 |Yj′ | За счет этого уменьшается количество параметров снижается эффект переобучения ускоряется подсчет Z(x), а значит и процесс обучения А. А. Романенко Применение CRF в NLP 8 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Понятие временного выражения Временное выражение Временны́м выражением (temporal expression, timex) называется выражение естественного языка, несущее временную окраску и обозначающее точку во времени, промежуток времени или периодичность некоторого события. Примеры временных выражений: Что будут показывать сегодня ночью по пятому каналу? Встреча с руководством состоится через 2 недели. Ежедневно в 7 часов вечера в больнице делают обход. А. А. Романенко Применение CRF в NLP 9 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Задача выделения временного выражения Задачу можно свести к задаче разметки последовательности: x — последовательность слов и их свойств (последовательность наблюдаемых переменных); y — последовательность меток, yi ∈ {B, I, O}; p(y|x) → max y Здесь: B — метка начала выражения; I — метка любого не первого слова в выражении; O — метка для слов, не входящих в выражение. А. А. Романенко Применение CRF в NLP 10 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Порождение признаков Все признаки слова можно разделить на группы: Грамматические признаки слова («сущ», «род. падеж» и т. д.) Положение слова в предложении («первое слово в предложении» и т. д.) Свойства написания слов («есть заглавные буквы», «есть пунктуация»и т. д.) Является ли слово специфическим («название месяца», «число» и т. д.) Признаки соседних слов, перечисленных выше групп А. А. Романенко Применение CRF в NLP 11 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Отбор признаков Алгоритм Random Forest использовался для классификации и оценивания информативности признаков Информативность признака — разность числа ошибок алгоритма на обучающих данных с включенным в модель признаком и исключенным В модель включались наиболее информативные признаки Наиболее важные группы признаков: является ли слово специфическим (день, год, и т. д.), часть речи, падеж А. А. Романенко Применение CRF в NLP 12 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Методика формирования размеченной выборки данных А. А. Романенко Применение CRF в NLP 13 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Условия эксперимента Данные Обучение: ≈ 380000 предложений, ≈ 5000 выражений. Контроль: ≈ 2000 предложений, ≈ 500 выражений. Применяемая модель CRF Меры качества tp полнота R = tp+f n, tp точность P = tp+f p, R . F1 − мера F1 = P2P+R А. А. Романенко y0 y1 y2 ... .. x1 x2 Применение CRF в NLP yT-2 yT-1 yT xT-2 xT-1 xT . 14 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче выделения временных выражений Признаковое описание Вычислительный эксперимент Результаты Качество классификации алгоритмов после отбора признаков Алгоритм Base-line RF CRF P 95,7 96,4 96,3 R 85,7 87,1 89,9 F1 90,4 91,5 93,05 Base-line — шаблонный алгоритм RF — алгоритм Random Forest CRF — классическая линейная модель CRF А. А. Романенко Применение CRF в NLP 15 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Задача нормализации числительных Задача нормализации цифровой записи числительных возникает при построении Text-to-Speach систем, когда машина должна правильно произнести числительное. А. А. Романенко Применение CRF в NLP 16 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Пример Виктор Ан на олимпиаде 2014 года занял 1 место в забеге на 500 метров ⇓ Виктор Ан на олимпиаде две тысячи четырнадцатого года занял первое место в забеге на пятьсот метров А. А. Романенко Применение CRF в NLP 17 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Признаковое описание Множество всех признаков наблюдаемой переменной разбивается на 4 группы: GRAM — грамматические метки слов («существительное», «предлог» и т. д.); SPEL — метки особенностей написания числительного (длина в символах, последняя цифра числительного); SPEC — является ли слово «характерным» для употребления с количественными или порядковыми числительными; NEAR — признаки соседних слов. А. А. Романенко Применение CRF в NLP 18 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Грамматические метки числительного Грамматическое описание числительного состоит из пяти меток TYPE — тип числительного (количественное или порядковое) CASE — падеж числительного (именительный, родительный, ...) GEND — род числительного (мужской, женский, средний, неизвестно) SNGL — число числительного (единственное, множественное, неизвестно) ANIM — одушевленность числительног (одушевленное, неодушевленное, неизвестно) А. А. Романенко Применение CRF в NLP 19 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Используемые модели CRF Классическая модель: prev POS Begin num GRAM Feat prev next POS End Feat num Модифицированная модель: Begin prev POS TYPE Feat prev CASE Feat num GEN Feat num А. А. Романенко SNGL Feat num next POS ANIM Feat num End Feat next Применение CRF в NLP 20 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Условия эксперимента Данные Национальный корпус русского языка Обучение: 8251 предложение Контроль: 2017 предложений Измерение качества Измерялось только качество определения грамматических меток числительных Использовались полнота R, точность P и F1 -мера для измерения качества по меткам в отдельности верных ответов Использовалась аккуратность A = число число ответов для измерения качества работы в целом А. А. Романенко Применение CRF в NLP 21 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Результаты 0.9 1 0.85 0.9 0.8 0.8 Accuracy Accuracy Зависимость качества A от числа слов, включаемых в признаковое описание 0.75 0.6 0.7 0.65 0.7 0 1 2 # neighbour 3 4 0.5 2 3 4 5 # neighbour 6 7 8 Модифицированная модель Классическая модель А. А. Романенко Применение CRF в NLP 22 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Результаты Качество A моделей, получаемых в процессе обучения 1 1 0.9 0.9 0.8 Accuracy Accuracy 0.8 0.7 0.6 0.7 0.6 0.5 0.5 0.4 0.3 Train Test 0 50 100 Iterations 150 200 0.4 Train Test 0 50 100 150 Iterations 200 250 300 Модифицированная модель Классическая модель А. А. Романенко Применение CRF в NLP 23 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Результаты Доля верных ответов на тестовом множестве A = 92,39%. Качество определения грамматических характеристик, усредненное по группам меток: Мера качества P R F1 TYPE 97,21 97,21 97,21 CASE 91,33 92,93 92,10 GEN 89,77 90,74 90,24 SNGL 82,39 85,97 84,05 ANIM 87,66 95,05 91,11 Результат 5-fold CV: ACV = 92,21%. А. А. Романенко Применение CRF в NLP 24 / 25 Условное случайное поле (CRF) Задача выделения временны́х выражений Нормализация цифровой записи числительных О задаче нормализации числительных Подход к решению Вычислительный эксперимент Заключение Результаты, выносимые на защиту 1 Предложена модификация линейной модели CRF 2 Предложено решение двух задач NLP с помощью CRF 3 В экспериментах показано, что точность предложенного метода выше, чем у классического Публикации Muzychka S., Romanenko A., Piantkovskaya I. CRF for morphological disambiguation in Russian, Computational Linguistics and Intelligent Technologies, 2014 Kudinov S., Romanenko A., Piantkovskaya I. CRF in segmentation and noun phrase inclination tasks for Russian, Computational Linguistics and Intelligent Technologies, 2014 А. А. Романенко Применение CRF в NLP 25 / 25