Word2Vec для распознавания именованных объектов

25

Я собираюсь использовать реализацию word2vec от Google для создания системы распознавания именованных сущностей. Я слышал, что рекурсивные нейронные сети с обратным распространением через структуру хорошо подходят для задач распознавания именованных сущностей, но я не смог найти достойную реализацию или подходящее руководство для этого типа модели. Поскольку я работаю с нетипичным корпусом, стандартные инструменты NER в NLTK и аналогичных приложениях работают очень плохо, и, похоже, мне придется обучать свою собственную систему.

Короче говоря, какие ресурсы доступны для такого рода проблем? Доступна ли стандартная рекурсивная реализация нейронной сети?

Мэдисон Мэй
источник
Вы пробовали тренировать Стэнфордский NER на своем корпусе? Там в учебник здесь .
Эмре
У меня нет - должен попробовать, чтобы увидеть, как оно поживает.
Мэдисон май
Я хотел бы использовать функции word2vec или аналогичные, так как у меня есть доступ к относительно небольшому помеченному набору данных и мне нужно максимально использовать немеченые данные, которые у меня есть.
Мэдисон май

Ответы:

6

Вместо «рекурсивных нейронных сетей с обратным распространением» вы можете рассмотреть подход, использованный Frantzi, et. и др. в Национальном центре текстового майнинга (NaCTeM) в Университете Манчестера для Термина (см .: http://www.nactem.ac.uk/index.php и http://personalpages.manchester.ac.uk/staff/sophia. ananiadou / IJODL2000.pdf ) Вместо глубоких нейронных сетей они «объединяют лингвистическую и статистическую информацию».

MrMeritology
источник
7

В двух недавних работах для решения этой проблемы используется архитектура глубокого обучения CharWNN. CharWNN был впервые использован для получения самых современных результатов (без функций, созданных вручную) для тегов части речи (POS) в английском корпусе.

Во втором документе того же автора используется та же (или похожая) архитектура для прогнозирования того, принадлежит ли слово 10 классам именованных объектов, с очевидными современными результатами.

shark8me
источник
Интересный. Спасибо, что поделились этим. Интересно, почему они не тестировали этот подход на английских корпусах?
MaticDiba
3

Попробуйте http://deeplearning4j.org/word2vec.html . Это имеет реализацию Word2Vec, используемую вместо Bag of Words для NER и других задач NLP.

theclaymethod
источник
1
У меня не было проблем с поиском реализаций word2vec, но я не смог найти работающую рекурсивную сеть для использования.
Мэдисон,
Ссылка больше не активна, если возможно, пожалуйста, поделитесь новой рабочей ссылкой
Amandeep
1

Вот некоторые идеи о том, как использовать векторы слов для NER, который использует в основном неконтролируемый подход к word2vec-центру.

  1. Учитывая набор векторов слов (или что-то, что вы обучили, или что-то готовое, например, GoogleNews-vectors-absolute300.bin), обнаруживайте кластеры в векторном пространстве. Эти кластеры в основном ваши определения для различных неназванных концепций.
  2. При минимальном контроле вы можете отобразить / преобразовать неназванные кластеры в соответствии с человеческими знаниями, создавая именованные концепции, основанные на известных векторах слов и неназванных концепциях. Например, метод findCluster(['joy', 'surprise', 'disgust', 'trust', 'fear', 'sadness', 'anger', 'anticipation'])может вернуть список, содержащий сотни слов, в основном связанных с эмоциями. Если вы называете этот список «эмоцией», то у вас есть названное понятие «эмоция», определенное на основе векторного пространства.
  3. Вы также можете сделать векторную математику, чтобы найти промежуточную концепцию между двумя заданными. Например, векторная математика может сказать вам, что, когда даны два слова «удивление» и «отвращение», между ними встречаются следующие вещи: смятение, удивление, разочарование, изумление, недоумение, раздражение, неверие, шок и т. Д. Это позволяет Вы строить отношения между понятиями.
  4. Вы можете повторить вышеописанное, чтобы создать различные типы именованных понятий, например: будни, все эмоции, счастливые эмоции, транспортные средства и т. Д.
  5. После того, как вы создали слои именованных концепций, вы можете обучить RNN в текстовом корпусе, который был дополнен именованными концепциями, поэтому «скачки бурой лисы» также являются «{color} {animal} {action}» и т. Д. Таким образом, RNN должен быть в состоянии выучить некоторую элементарную грамматику без присмотра.
  6. Если вы создали достаточно мощную грамматику из вышеперечисленного, тогда вы сможете применить ее к некоторым из ваших задач NER.
Кайху Чен
источник