Изменяют ли двойные кавычки, точки и запятые значения забытых весов в LSTM, если они сохранены?

#keras #nlp #lstm #named-entity-recognition

#keras #nlp #lstm #распознавание именованных объектов

Вопрос:

Я пытаюсь реализовать пользовательский NER с помощью LSTM. Требуется ли на этапах предварительной обработки удалять знаки препинания, такие как двойные кавычки, точки и запятые? Добавляют ли они какое-либо значение, если сохраняются? Поскольку каждый документ представляет собой набор предложений.

Комментарии:

1. Запятые могут спасти жизни: Давай поедим, дедушка ПРОТИВ. Давайте съедим дедушку.

2. Да, они могут иметь значение, а также то, как вы маркируете свои предложения, например: Давай, ешь, дедушка против Давай, ешь, дедушка; т.е. Убедитесь, что запятая не привязана к токену.

Ответ №1:

Знаки препинания могут содержать много информации о том, где начинаются и заканчиваются объекты. Например, очень маловероятно, что имя объекта будет содержать одинарную двойную кавычку, начинаться с запятой и т.д. Это вся информация, которую RNN получает очень быстро и помогает производительности модели.

Однако будьте осторожны, вы правильно маркируете вводимый текст. Если вы разделите текст только пробелами, все знаки препинания останутся прикрепленными к словам, и это, скорее всего, приведет к ненужным маркерам вне словаря. Удаляя знаки препинания, вы избегаете этой проблемы, но теряете важную информацию. В Python вы можете, например, использовать spacy или sacremoses для токенизации.