1

Я разрабатываю проект анализа настроений на уровне аспекта для онлайн-отзывов о путешествиях.Поддержанный подход к обучению для извлечения аспекта

У меня есть аннотированный человеческий набор данных, который обозначил аспекты аспекта и категории аспект вместе с их полярностью настроения.

Например,

Sentence: 

This beach was a wonderful time for a day party it had a fun crowd and has a big bar with a great atmosphere. The food was delicious too. 

выше предложение имеет аспект термины следующие меченых;

{party#positive C} {crowd#positive C} {bar#positive C} {food#positive C} 

И следующие аспект категории;

{entertainment#positive C} {accommodation#positive C} 

Я хочу попробовать supervised learning подход для подготовки модели для классификации терминов аспекта из предложений.

Я пользуюсь Stanford CORENLP библиотекой. Но смутно, как должен выглядеть формат данных обучения? и каков наилучший подход.

Я видел людей, использующих IOB notation для форматирования данных обучения для обучения NER систем. Могу ли я использовать аналогичный метод, чтобы это сделать? Как и в, как мне отформатировать файл данных обучения, чтобы получить аспекты, как указано выше, из входного предложения?

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

ответ

3

Эту проблему можно решить, разбив ее на более мелкие подзадачи. Возможный подход к трубопроводу может быть следующим:

  1. Первый этап - извлечение аспекта, которое будет идентифицировать аспекты аспекта в исходном тексте. Это также можно разбить на две подзадачи. Во-первых, ваша система должна будет маркировать токены в тексте, которые являются аспектами. Давайте назовем эти обозначенные аспектные знаки токенов. Это называется Именованное распознавание сущности (NER). Затем, если у вас есть предопределенный набор классов аспектов, системам необходимо будет связать упоминания аспекта, найденные в предыдущей задаче, с этими классами. Это называется Связь объекта. Стоит отметить, что из примера, который вы даете помеченному набору данных, еще не подходит для вышеупомянутых задач, поскольку метки не привязаны к тексту. Вы можете создать подходящий набор данных, угадав, какие жетоны в тексте соответствуют вашим данным меткам. Это похоже на работу Distant Supervision.

  2. Следующая задача - классификация чувств с точки зрения аспектов. Сверторные нейронные сети были использованы для классификации предложений и документов, но они, вероятно, могут быть адаптированы для ваших целей, если на входе вы предоставите маркер, для которого классифицируются маркеры. Это называется вложением позиции в эту работу: http://www.cs.nyu.edu/~thien/pubs/vector15.pdf

+0

Спасибо за ответ. Не могли бы вы рассказать о том, почему набор данных не подходит в текущем формате? В каком формате он должен находиться? –

+2

Для обучения модели NER вам понадобится набор данных с объектами, помеченными в тексте. Нотация IOB - это один из способов сделать это.Чтобы создать такой набор данных, вы можете попытаться совместить слова с ярлыками на текст с помощью сопоставления строк. Я не уверен, насколько хорошо это будет работать. Это действительно зависит от ваших ярлыков. Являются ли они классами или они извлекают слова из текста? Если это последний, вы почти всегда сможете найти, были ли они в тексте. – savac

+0

Спасибо за разъяснение @Sava. На самом деле, аспекты являются словами, которые извлекаются из необработанного текста человеческими аннотаторами. Используя механизм согласования строк, который вы предложили, я думаю, это можно сделать. Помимо нотации IOB, есть ли другие обозначения? –