«Это 11-й день моего участия в ноябрьском испытании обновлений, ознакомьтесь с подробностями события:Вызов последнего обновления 2021 г."
предисловие
Что такое причастие?
Сегментация слов относится к процессу разделения непрерывного текста на естественном языке на лексические последовательности с семантической рациональностью и целостностью. вот так?
Алгоритм сегментации слов на основе словаря
Алгоритм сегментации слов на основе словаря, который по существу представляет собой сопоставление строк. Используйте определенные правила алгоритма, чтобы сопоставить строку, которая должна быть сопоставлена с записью в достаточно большом словаре.Если совпадение найдено в словаре, слово может быть сегментировано.
В соответствии с различными стратегиями сопоставления можно классифицировать алгоритмы сегментации слов на основе словаря. В соответствии с различными направлениями сканирования во время сопоставления строк его можно разделить на метод прямого сопоставления, метод обратного сопоставления и метод двустороннего сопоставления. В зависимости от длины совпадающей строки ее можно разделить на метод максимального соответствия и метод минимального соответствия. В зависимости от того, сочетается ли сопоставление с процессом маркировки частей речи, его можно разделить на простой метод сегментации и комбинированный метод сегментации слов и маркировки.
1️⃣ Прямой алгоритм максимального сопоставления
Сначала установите самое длинное слово в словаре сегментации слов на n символов, затем разделите n символов текста слева направо в качестве поля соответствия, затем найдите словарь и сопоставьте, если он соответствует строке в словарь успешно, совпадающее поле будет сегментировано как слово; если совпадение не удалось, последнее слово в совпадающем поле будет удалено, а оставшиеся строки будут повторно сопоставлены со словарем сегментации слов и так далее до совпадения. успешно сегментирован. до всех слов.
Прямой алгоритм максимального сопоставления | |
Предустановка:Максимальная длина7 |
Сегментируемый текст: «Играем в сафари» |
мы в дикой природе мы дикие мы дикие мы в мы ====" чтобы получить слово——мы в дикой природе в дикой природе====" чтобы получить слово——в дикой природе зоопарк животное яркий====" чтобы получить слово——яркий Игра в саду Сад вещь====" чтобы получить слово——вещь садовая игра сад====" чтобы получить слово——сад Играть в====" чтобы получить слово——Играть в | |
Результат финального совпадения форвард-максимум: мы / в дикой природе / животное / животное / сад / играем Среди них однословное словарное слово равно 2, а несловарное слово - 1. |
2️⃣ Алгоритм обратного максимального сопоставления
Алгоритм обратного максимального сопоставления представляет собой обратное мышление прямого максимального сопоставления.Предложение сегментируется справа налево, и словарь сопоставляется.Если сопоставление не удалось, первое слово поля сопоставления удаляется, а все слова сегментируются до тех пор, пока финальное совпадение не будет успешным.
Алгоритм обратного максимального сопоставления | |
Предустановка:Максимальная длина7 |
Сегментируемый текст: «Играем в сафари» |
играть в сафари зоопарк зоопарк Игра в саду садовая игра Играть в====" чтобы получить слово——Играть в они в сафари в сафари Сафари ====" чтобы получить слово——Сафари они в существует====" чтобы получить слово——существует | |
НаконецобратныйРезультат максимального совпадения: мы/в/сафари/играем Среди них однословное словарное слово равно 2, а несловарное слово равно 0. |
3️⃣Двусторонний метод максимального совпадения
Метод двустороннего максимального сопоставления заключается в сравнении результатов сегментации слов, полученных методом прямого максимального сопоставления, с результатами, полученными обратным методом максимального сопоставления.Согласно более крупнозернистым словам, тем лучше и меньше словарные слова и односимвольные слова, тем лучше.Согласно принципу, выберите один из результатов сегментации слова для вывода.
Алгоритм сегментации слов на основе статистического машинного обучения
Основной принцип статистического алгоритма сегментации слов состоит в том, чтобы определить, является ли строка словом, в соответствии со статистической частотой появления строки в корпусе. Слово представляет собой комбинацию слов, и чем больше раз подряд встречаются соседние слова, тем больше вероятность того, что они образуют фразу. Алгоритму не нужно создавать словарь, но требуется крупномасштабный обучающий текст для обучения параметров модели.
1️⃣N-грамм
N-gram
Модель мышления: перваяВнешний вид слова зависит от предыдущегоВероятность каждого слова и всего предложения — это произведение вероятности появления каждого слова. данныйпоследовательность слов, по цепному правилу можем получить,
Однако, когда значение n относительно велико, вычисление следующих звеньев цепочки умножения станет очень затруднительным.В это время необходимо упростить вычисление с разумными допущениями, то есть предполагая, что текущее слово только связанные с предыдущими ограниченными словами.Вместо того, чтобы вернуться к самому первому слову, объем вычислений может быть значительно уменьшен.
Предполагатьдлинастрока, если указано любое словоОпираясь только на его предыдущее слово, можно получить модель униграммы, т. е.
Если указано какое-либо словоОпираясь только на первые два слова, можно получить модель биграммы, а именно
Если указано какое-либо словоТолько в отношении первых двух можно получить троичную вероятностную модель (триграмму), т. е.
在实践中bigram和trigram应用比较广泛,而且效果可观。高于四元的模型应用的相对较少,因为训练它需要更庞大的语料,而且数据稀疏严重,时间复杂度也高,精度却难以提高。
2️⃣Скрытая марковская модель (HMM)
Скрытая марковская модель широко используется в области искусственного интеллекта и включает в себя две части: последовательность наблюдения и скрытую последовательность. Данные последовательности наблюдения можно наблюдать, в то время как данные скрытой последовательности нельзя наблюдать. Модель HMM можно использовать для поиска соответствующей последовательности значений скрытого состояния в соответствии с последовательностью значений наблюдения.
В соответствии с сегментацией слов в НЛП наше предложение представляет собой последовательность наблюдений, а результат маркировки последовательности после сегментации слов является скрытой последовательностью, поэтому сегментацию слов на основе HMM можно по существу рассматривать как проблему маркировки последовательностей, то есть классификацию слов. проблема, которая учитывает контекст.Модель маркировки последовательностей можно сначала обучить на большом количестве материалов сегментации слов с результатами маркировки последовательностей, а затем эту модель использовать для сегментации немаркированного корпуса.
Во-первых, мы можем классифицировать все слова в предложении в соответствии с их положением в слове. Обычно используется на практике{B:begin, M:middle, E:end, S:single}
Эти 4 категории описывают категорию, к которой принадлежит каждое слово в образце сегментации слов. в,B
Указывает, что слово является начальным словом в слове,M
Представление — это среднее слово в слове,E
Представляет конечное слово в слове, а S представляет односимвольное слово.
как“王小红在教室里认真地写程序”
результат после маркировки“BMESBESBESBME”
соответствующий результат сегментации слова“王小红/在/教室/里/认真/地/写程序/”
. Затем введите помеченный обучающий набор сегментации слов вHMM模型
, вы можете получитьHMM模型
соответствующие параметры, а затем использоватьviterbi
Алгоритм вычисляет наиболее вероятную скрытую последовательность сегментируемого текста и, наконец, получает наилучший результат сегментации.
① Исходные данные: Сяохун окончил Пекинский университет со степенью бакалавра.
② С помощью алгоритма мы успешно предсказали метку сегментации слова, соответствующую каждому символу:BEBEBMEBEBE
③ Согласно этой государственной последовательности, мы можем сегментировать слова: быть / BE / BME / BE / BMME
④ Результаты сегментации слов следующие: Xiaohong/Студент/Выпускник/Пекинский университет
3️⃣ Условное случайное поле (CRF)
CRF также описывает взаимосвязь между входной последовательностью и выходной последовательностью. В отличие от модели HMM, HMM имеет допущение о независимости, из-за которого не учитываются контекстуальные признаки, что ограничивает доступный набор признаков, в то время как CRF описывает модель на основе условной вероятности, она не нормализует отдельные узлы и Это глобальная нормализация всех функций для получения глобального оптимального значения.
Модель HMM вращается вокруг совместного распределения вероятностей P(X,Y) относительно последовательностей X и Y, в то время как CRF вращается вокруг модели условного распределения вероятностей (Y|X) и использует метод функций признаков для объединения наблюдений последовательности предшествующих и последующих.соединены, а позже использовать оптимизированныйviterbi算法
Вычислить наиболее вероятную скрытую последовательность сегментируемого текста и, наконец, получить наилучший результат сегментации слов.
Алгоритм сегментации слов на основе нейронной сети
Традиционный метод сегментации китайских слов основан на алгоритме обучения с учителем, который требует большого количества искусственно размеченных корпусов, а также имеет проблему извлечения редких локальных признаков. В настоящее время, с развитием глубокого обучения, для решения задач НЛП стали широко использоваться различные нейронные сети, привносящие в НЛП много новых возможностей.
1️⃣Двунаправленная нейронная сеть с долговременной и кратковременной памятью (Bilstm)
LSTM
Это своего рода рекуррентная нейронная сеть (РНС), которая в определенной степени решает проблему исчезновения градиента и взрыва градиента РНС в процессе обучения. LSTM является направленным, и использование модели LSTM может фиксировать предыдущие зависимости бесконечного расстояния, но не может кодировать информацию сзади вперед. и черезBiLSTM
Однако он может эффективно фиксировать двусторонние семантические зависимости, обрабатывать входные данные из пре- и посттекста предложения, кодировать контекстную информацию и передаватьsoftmax
Слой классификации завершает классификацию каждой позиции и улучшает эффект предсказания.
Модель LSTM отСлово ввода времени, состояние клетки, временное состояние ячейки, скрытое состояние, ворота забвения, ворота памяти, выходные воротасочинение.
The calculation process of LSTM can be summarized as: by forgetting the information in the cell state and memorizing new information, the information useful for subsequent calculations is transmitted, and the useless information is discarded, and the hidden layer state is output at each time шаг., где забывание, память и вывод определяются состоянием скрытого слоя, проходящего через предыдущий моменти текущий входРассчитанные ворота забыть, дверь памятиИ выходной затворконтролировать.
Bilstm
Он состоит из прямого LSTM и обратного LSTM, а прямые и обратные скрытые векторы соединяются для получения конечного состояния скрытого слоя..
Добро пожаловать в руководство в любое время ~