Latice-Flat: Введение словарного запаса, чтобы сделать китайский NER сильнее

NLP

Эта статья одновременно публикуется в публичном аккаунте WeChat: А Ли голосует, чтобы накормить дом

Рекомендуемые статьи по теме:

Чему учит BERT: узнайте, почему BERT такой сильный

TinyBert: Модель дистилляции для сверхдетализированных приложений, просто посмотрите на него, если у вас возникнут вопросы о дистилляции.

Технология квантования и динамическое квантование Альберта

DistillBert: Берт слишком дорого? Я дешевый и простой в использовании

[Обмен документами] | RoBERTa: Привет, XLNet здесь? Меня избили

Введение в статью XLNet - за спиной Берта

Введение

По сравнению с английским NER, у китайского NER всегда была проблема, связанная с тем, что китайские иероглифы не являются отдельными словами. Таким образом, существует два способа NER китайского языка: NER на основе слов и NER на основе слов. NER на основе слов вводит неверную информацию и OOV из-за сегментации слов, в то время как NER на основе слов не учитывает разницу между китайскими словами. Многие исследования пытались добавить информацию о словах в NER на основе слов.Эта статья представляет две статьи, которые работают очень хорошо: решетка и ПЛОСКАЯ.

Latice: введение предварительно обученных знаний в LSTM

Прежде чем читать эту статью, позвольте мне дать вам краткое введение в Latice, Latice — это китайская статья NER, предложенная Сингапурским университетом науки о дизайне в 2018 году. В то время наиболее часто используемой моделью нейронной сети в задаче NER была BiLSTM+CRF, а входными данными обычно был вектор слов или вектор слов текста.Исследования показывают, что эффект, основанный на векторе слов, лучше, чем на основе вектора слов, но модель, основанная на векторе слов, не может полностью использовать информацию о явных словах и порядке слов.

Чтобы решить эту проблему, авторы предварительно обучают словарь и интегрируют информацию о скрытых словах в словаре в LSTM-CRF на основе символов. Красное поле на рисунке ниже представляет информацию о латентных словах.Информация об этих латентных словах будет использоваться в качестве входных данных в воротах забывания, чтобы решить, нужно ли ее передавать в следующую ячейку.

Что касается экспериментального эффекта, автор экспериментирует с наборами данных MSRA и weibo, и эффект распознавания лучше, чем у моделей LSTM-CRF на основе слов и слов. Можно видеть, что в китайском NER контекстный порядок слов и предварительно выученные словосочетания очень важны для эффекта модели.

FLAT:Latice+Transformer подметает китайский NER

Latice LSTM доказывает, что решетчатая структура хорошо влияет на китайский NER.В этой статье предлагается модель FLAT, вводится кодирование положения для решетчатой ​​структуры и описывается автор токена с использованием положения головы и конечного положения. В то же время автор использует Transformer для кодирования ввода модели, чтобы входной Токен мог воспринимать каждый ввод Токена.

Структура модели показана на следующем рисунке:

1. Плоско-решетчатая структура

В отличие от Latice LSTM, информация о скрытых словах в словаре сращивается с входным символом. Информация скрытого слова отмечена его началом и концом.

2. position encoding

При вводе собственного внимания встраивание позиции будет объединено с вложением слова, чтобы уточнить информацию о позиции слова в предложении, чтобы модель могла узнать информацию о позиции. В самом себе вложение позиций кодируется с помощью тригонометрических функций.

Но эта статья объединяет скрытые слова и входные предложения,Существует перекрытие между латентными словами и латентными словами, включая и разделяя три вида отношений (например, Renren и Pharmacy и Renren на приведенном выше рисунке)., абсолютная позиция больше не может быть удовлетворена, поэтому в этой статье предлагаетсяотносительное положение.

Относительные положения позиции i и позиции j рассчитываются следующим образом:

Rij=RELU(Wr(pdij(h,h)pdij(t,h)pdij(h,t)pdij(t,t)))R_{ij}=RELU(W_r({p_{{d_{ij}}^{(h,h)}}}\oplus{p_{{d_{ij}}^{(t,h)}}}\oplus{p_{{d_{ij}}^{(h,t)}}}\oplus{p_{{d_{ij}}^{(t,t)}}}))

вdij(h,h),dij(h,t),dij(t,h),dij(t,t){d_{ij}}^{(h,h)},{d_{ij}}^{(h,t)},{d_{ij}}^{(t,h)},{d_{ij}}^{(t,t)}Отношения между словами и словами описываются соответственно.

dij(h,h)=head[i]head[j]{d_{ij}}^{(h,h)}=head[i] - head[j]

dij(h,t)=head[i]tail[j]{d_{ij}}^{(h,t)}=head[i] - tail[j]

dij(t,h)=tail[i]head[j]{d_{ij}}^{(t,h)}=tail[i] - head[j]

dij(t,t)=tail[i]tail[j]{d_{ij}}^{(t,t)}=tail[i] - tail[j]

pdij(h,h){p_{{d_{ij}}^{(h,h)}}}Это кодирование относительной связи между двумя словами «голова» и «голова».

pd2k=sin(d/100002k/dmodel){p_{d}}^{2k}=sin(d/10000_{2k/{d_{model}}})

pd2k+1=cos(d/100002k/dmodel){p_{d}}^{2k+1}=cos(d/10000_{2k/{d_{model}}})

Выше приведена структура FLAT. Каков конкретный эффект, мы можем только сказать

Вы можете обратиться к статье для конкретных экспериментов, и я не буду повторять их здесь.

Заключение и размышления

Выше приведено введение двух статей, следующее время обдумывания:

  1. Почему мы не можем использовать собственное встраивание позиций в FLAT?
  2. Каковы недостатки Latice

Reference

  1. Zhang Y , Yang J . Chinese NER Using Lattice LSTM[J]. 2018.
  2. Li X , Yan H , Qiu X , et al. FLAT: Chinese NER Using Flat-Lattice Transformer[C]// Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics. 2020.