Словесно - граммовая языковая модель
- слов н Языковая модель -грамм представляет собой чисто статистическую модель языка. На смену ему пришли модели на основе рекуррентных нейронных сетей , которые были заменены большими языковыми моделями . [1] Он основан на предположении, что вероятность появления следующего слова в последовательности зависит только от фиксированного размера окна предыдущих слов. Если учитывалось только одно предыдущее слово, это называлось моделью биграммы; если два слова, то модель триграммы; если n - 1 слов, модель n -граммы. [2] Были введены специальные токены для обозначения начала и конца предложения. и .
Чтобы предотвратить присвоение нулевой вероятности невидимым словам, вероятность каждого слова немного ниже, чем его частота в корпусе. Для его расчета использовались различные методы: от простого сглаживания «добавить единицу» (присвоение числа 1 невидимым n- граммам как неинформативное априорное значение ) до более сложных моделей, таких как модели дисконтирования Гуда – Тьюринга или модели отсрочки. .
Модель униграммы
[ редактировать ]Особый случай, когда n = 1, называется моделью униграмм. Вероятность каждого слова в последовательности не зависит от вероятностей другого слова в последовательности. Вероятность каждого слова в последовательности равна вероятности слова во всем документе.
Модель состоит из блоков, каждый из которых рассматривается как конечный автомат с одним состоянием . [3] Слова с их вероятностями в документе можно проиллюстрировать следующим образом.
Слово | Вероятность этого в документе |
---|---|
а | 0.1 |
мир | 0.2 |
любит | 0.05 |
мы | 0.05 |
делиться | 0.3 |
... | ... |
Общая масса вероятностей слов, распределенных по словарю документа, равна 1.
Вероятность, сгенерированная для конкретного запроса, рассчитывается как
Модели униграмм разных документов имеют разную вероятность появления в них слов. Распределения вероятностей из разных документов используются для генерации вероятностей попадания для каждого запроса. Документы можно ранжировать по запросу по вероятностям. Пример моделей униграмм двух документов:
Слово | Его вероятность в Doc1 | Вероятность этого в Doc2 |
---|---|---|
а | 0.1 | 0.3 |
мир | 0.2 | 0.1 |
любит | 0.05 | 0.03 |
мы | 0.05 | 0.02 |
делиться | 0.3 | 0.2 |
... | ... | ... |
Биграммная модель
[ редактировать ]В языковой модели биграммного слова ( n = 2) вероятность предложения «Я видел красный дом» аппроксимируется как
Trigram model
[ редактировать ]В языковой модели триграммы ( n = 3) приближение имеет вид
Обратите внимание, что контекст первых n – 1 n -грамм заполнен маркерами начала предложения, обычно обозначаемыми <s>.
Кроме того, без маркера конца предложения вероятность неграмматической последовательности *Я видел всегда будет выше, чем вероятность более длинного предложения « Я видел красный дом».
Метод аппроксимации
[ редактировать ]Метод аппроксимации вычисляет вероятность соблюдения приговора
Предполагается, что вероятность наблюдения i й слово w i (в контекстном окне, состоящем из предшествующих i − 1 слов) можно аппроксимировать вероятностью его наблюдения в сокращенном контекстном окне, состоящем из предшествующих n − 1 слов ( n й -порядковое свойство Маркова ). Чтобы уточнить, для n = 3 и i = 2 мы имеем .
Условная вероятность может быть рассчитана на основе n подсчета частот -граммовой модели:
Слова, выходящие за пределы словарного запаса
[ редактировать ]Проблемой при использовании n- граммных языковых моделей являются слова, выходящие за пределы словарного запаса (OOV). Они встречаются в компьютерной лингвистике и обработке естественного языка , когда входные данные включают слова, которых не было в словаре или базе данных системы во время ее подготовки. По умолчанию при оценке языковой модели используется весь наблюдаемый словарь. В некоторых случаях может возникнуть необходимость оценить языковую модель с использованием определенного фиксированного словаря. В таком сценарии n -граммы в корпусе , содержащие слово, выходящее за пределы словарного запаса, игнорируются. Вероятности n -грамм сглаживаются по всем словам словаря, даже если они не наблюдались. [4]
Тем не менее, в некоторых случаях важно явно моделировать вероятность вне вокабуляционных слов путем введения специального токена (например, ) в словарный запас. Слова за пределами словарного запаса в корпусе эффективно заменяются этим специальным токеном до того, как n будет накоплено количество -грамм. С помощью этой опции можно оценить вероятности перехода n- грамм, включающих слова, которых нет в словаре. [5]
n -граммы для приблизительного соответствия
[ редактировать ]n -граммы также использовались для приблизительного сопоставления. Если мы преобразуем строки (содержащие только буквы английского алфавита) в символьные 3-граммы, мы получим -мерное пространство (первое измерение измеряет количество вхождений «ааа», второе «ааб» и т. д. для всех возможных комбинаций трех букв). Используя это представление, мы теряем информацию о строке. Однако эмпирически мы знаем, что если две строки реального текста имеют одинаковое векторное представление (измеряемое косинусным расстоянием ), то они, скорее всего, будут похожими. Другие метрики также применялись к векторам n -грамм с разными, а иногда и лучшими результатами. Например, z-показатели использовались для сравнения документов путем изучения того, на сколько стандартных отклонений каждая n -грамма отличается от ее среднего появления в большой коллекции или текстовом корпусе документов (которые образуют «фоновый» вектор). В случае небольших подсчетов лучший результат дал g-показатель (также известный как g-тест ).
Также можно применить более принципиальный подход к статистике n -грамм, моделируя сходство как вероятность того, что две строки пришли из одного и того же источника непосредственно с точки зрения задачи байесовского вывода .
Поиск на основе n- грамм также использовался для обнаружения плагиата .
Компромисс между смещением и дисперсией
[ редактировать ]Чтобы выбрать значение n в n -граммной модели, необходимо найти правильный компромисс между стабильностью оценки и ее уместностью. Это означает, что триграмма (т. е. тройка слов) является распространенным выбором для больших обучающих корпусов (миллионы слов), тогда как биграмма часто используется с меньшими корпусами.
Методы сглаживания
[ редактировать ]Существуют проблемы балансировки веса между нечастыми граммами (например, если в данных тренировки появилось имя собственное) и частыми граммами . Кроме того, элементам, которых нет в обучающих данных, будет присвоена вероятность 0,0 без сглаживания . Для невидимых, но правдоподобных данных выборки можно ввести псевдосчеты . Псевдосчеты обычно мотивируются байесовскими соображениями.
На практике было необходимо сгладить распределения вероятностей, присвоив ненулевые вероятности невидимым словам или n -граммам. Причина в том, что модели, полученные непосредственно на основе подсчета частот n -грамм, сталкиваются с серьезными проблемами при столкновении с любыми n -граммами, которые явно не наблюдались ранее – проблема нулевой частоты . Использовались различные методы сглаживания: от простого сглаживания «добавление единицы» (Лаплас) (присвоение счетчика 1 невидимым n -граммам; см. Правило последовательности ) до более сложных моделей, таких как модели дисконтирования Гуда – Тьюринга или модели отсрочки . . Некоторые из этих методов эквивалентны присвоению априорного распределения вероятностям n -грамм и использованию байесовского вывода для вычисления результирующих апостериорных вероятностей n -грамм. Однако более сложные модели сглаживания обычно выводились не таким способом, а на основе независимых соображений.
- Линейная интерполяция (например, взятие средневзвешенного значения униграммы, биграммы и триграммы)
- Гуда – Тьюринга Дисконтирование
- Дисконтирование Виттена – Белла
- сглаживание по Лидстоуну
- Модель отступления Каца (триграмма)
- Сглаживание Кнезера – Нея
Языковая модель пропуска грамм
[ редактировать ]Языковая модель пропуска грамм — это попытка преодолеть проблему разреженности данных, с которой сталкивалась предыдущая модель (т. е. языковая модель n -грамм слов). Слова, представленные в векторе внедрения, больше не обязательно были последовательными, но могли оставлять пропуски, которые пропускаются . [6]
Формально k -skip- n -грамма представляет собой подпоследовательность длиной n , в которой компоненты встречаются на расстоянии не более k друг от друга.
Например, во входном тексте:
- дождь в Испании выпадает в основном на равнине
набор 1-скип-2-грамм включает в себя все биграммы (2-граммы), а также подпоследовательности
- в , дождь в Испании , в водопадах , в основном в Испании , выпадает в основном на равнине .
В модели скип-грамм семантические отношения между словами представлены линейными комбинациями , отражающими форму композиционности . Например, в некоторых таких моделях, если v — функция, которая отображает слово w в его n векторное представление -d, то
где ≈ уточняется, если указать, что его правая часть должна быть ближайшим соседом значения левой части. [7] [8]
Синтаксические n -граммы
[ редактировать ]Синтаксические n -граммы — это n -граммы, определяемые путями в синтаксической зависимости или составляющими деревьями, а не линейной структурой текста. [9] [10] [11] Например, предложение «экономические новости мало влияют на финансовые рынки» можно преобразовать в синтаксические n -граммы, следуя древовидной структуре его отношений зависимости : новости-экономические, влияние-незначительное, влияние-на рынки-финансовое. [9]
Синтаксические n -граммы предназначены для более точного отражения синтаксической структуры, чем линейные n -граммы, и имеют многие из тех же приложений, особенно в качестве функций в модели векторного пространства . Синтаксические н -граммы для определенных задач дают лучшие результаты, чем использование стандартных н -грамм, например, для установления авторства. [12]
Другим типом синтаксических n граммы частей речи -грамм являются n- , определяемые как смежные перекрывающиеся подпоследовательности фиксированной длины, которые извлекаются из последовательностей частей речи текста. граммы части речи N- имеют несколько применений, чаще всего при поиске информации. [13]
Другие приложения
[ редактировать ]n -граммы находят применение в нескольких областях информатики, компьютерной лингвистики и прикладной математики.
Они использовались для:
- разрабатывать ядра , которые позволяют алгоритмам машинного обучения , таким как машины опорных векторов, обучаться на строковых данных. [ нужна ссылка ]
- найти вероятных кандидатов на правильное написание слова с ошибкой [14]
- улучшить сжатие в алгоритмах сжатия , где небольшая область данных требует n -грамм большей длины
- оценить вероятность появления данной последовательности слов в тексте интересующего языка в системах распознавания образов, распознавания речи , OCR ( оптическое распознавание символов ), интеллектуального распознавания символов ( ICR ), машинного перевода и подобных приложений.
- улучшить поиск в системах информационного поиска , когда есть надежда найти похожие «документы» (термин, обычное значение которого иногда расширяется, в зависимости от набора данных) по одному документу запроса и базе данных справочных документов.
- улучшить производительность поиска при анализе генетических последовательностей, как в BLAST . семействе программ
- определить язык, на котором написан текст, или вид, из которого была взята небольшая последовательность ДНК
- случайным образом предсказывать буквы или слова, чтобы создать текст, как в алгоритме диссоциированного пресса .
- криптоанализ [ нужна ссылка ]
См. также
[ редактировать ]- Коллокация
- Разработка функций
- Скрытая модель Маркова
- Самая длинная общая подстрока
- Минхеш
- n-кортеж
- Строковое ядро
Ссылки
[ редактировать ]- ^ Бенджио, Йошуа; Дюшарм, Режан; Винсент, Паскаль; Джанвин, Кристиан (1 марта 2003 г.). «Нейронно-вероятностная языковая модель» . Журнал исследований машинного обучения . 3 : 1137–1155 - через цифровую библиотеку ACM.
- ^ Юрафски, Дэн; Мартин, Джеймс Х. (7 января 2023 г.). «Н-граммные языковые модели». Обработка речи и языка (PDF) (3-е издание, черновой вариант) . Проверено 24 мая 2022 г.
- ^ Кристофер Д. Мэннинг, Прабхакар Рагхаван, Хинрих Шютце (2009). Введение в поиск информации . стр. 237–240. Издательство Кембриджского университета.
- ^ Волк, К.; Марасек, К.; Глинковский, В. (2015). «Телемедицина как частный случай машинного перевода». Компьютеризированная медицинская визуализация и графика . 46 Пт 2: 249–56. arXiv : 1510.04600 . Бибкод : 2015arXiv151004600W . doi : 10.1016/j.compmedimag.2015.09.005 . ПМИД 26617328 . S2CID 12361426 .
- ^ Волк К., Марасек К. (2014). Польско-английские системы статистического машинного перевода речи для IWSLT 2014 . Материалы 11-го международного семинара по переводу разговорной речи. Озеро Тахо, США. arXiv : 1509.09097 .
- ^ Дэвид Гатри; и др. (2006). «Более пристальный взгляд на моделирование скип-грамм» (PDF) . Архивировано из оригинала (PDF) 17 мая 2017 года . Проверено 27 апреля 2014 г.
- ^ Миколов, Томас; Чен, Кай; Коррадо, Грег; Дин, Джеффри (2013). «Эффективная оценка представлений слов в векторном пространстве». arXiv : 1301.3781 [ cs.CL ].
- ^ Миколов, Томас; Суцкевер, Илья; Чен, Кай; Коррадо irst4=Грег С.; Дин, Джефф (2013). Распределенные представления слов и фраз и их композиционность (PDF) . Достижения в области нейронных систем обработки информации . стр. 3111–3119. Архивировано (PDF) из оригинала 29 октября 2020 г. Проверено 22 июня 2015 г.
{{cite conference}}
: CS1 maint: числовые имена: список авторов ( ссылка ) - ^ Перейти обратно: а б Сидоров, Григорий; Веласкес, Франциско; Стамататос, Эфстатиос; Гельбух, Александр; Чанона-Эрнандес, Лилиана (2013). «Н-граммы на основе синтаксических зависимостей как признаки классификации» (PDF) . В Батыршин И.; Мендоса, М.Г. (ред.). Достижения в области вычислительного интеллекта . Конспекты лекций по информатике. Том. 7630. стр. 1–11. дои : 10.1007/978-3-642-37798-3_1 . ISBN 978-3-642-37797-6 . Архивировано (PDF) из оригинала 8 августа 2017 года . Проверено 18 мая 2019 г.
- ^ Сидоров, Григорий (2013). граммы на основе синтаксических зависимостей « Н- в автоматической коррекции грамматики английского языка как второго языка на основе правил» . Международный журнал компьютерной лингвистики и приложений . 4 (2): 169–188. CiteSeerX 10.1.1.644.907 . Архивировано из оригинала 7 октября 2021 года . Проверено 7 октября 2021 г.
- ^ Фигероа, Алехандро; Аткинсон, Джон (2012). «Контекстные языковые модели для ранжирования ответов на вопросы определения естественного языка» . Вычислительный интеллект . 28 (4): 528–548. дои : 10.1111/j.1467-8640.2012.00426.x . S2CID 27378409 . Архивировано из оригинала 27 октября 2021 года . Проверено 27 мая 2015 г.
- ^ Сидоров, Григорий; Веласкес, Франциско; Стамататос, Эфстатиос; Гельбух, Александр; Чанона-Эрнандес, Лилиана (2014). «Синтаксические n -граммы как функции машинного обучения для обработки естественного языка». Экспертные системы с приложениями . 41 (3): 853–860. дои : 10.1016/j.eswa.2013.08.015 . S2CID 207738654 .
- ^ Лиома, К.; ван Рейсберген, CJK (2008). «Часть н -грамм речи и поиск информации» (PDF) . Французский обзор прикладной лингвистики . XIII (1): 9–22. Архивировано (PDF) из оригинала 13 марта 2018 г. Проверено 12 марта 2018 г. - через Каирн.
- ^ Патент США 6618697, Метод исправления орфографических и грамматических ошибок на основе правил.