Python распознает текст в электронной почте - PullRequest
0 голосов
/ 23 мая 2018

Представьте, что вы получаете электронные письма, подобные этим:

name1: value
name2: value
name3: value

...

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

Однако в электронных письмах могут быть некоторые ошибки, например, опечатка или использование сокращения вместо полного имени.Кроме того, автор может выбрать произвольно изменить имя, например, изменить велосипед на велосипед.

Эти электронные письма должны обрабатываться автоматически, даже если в них есть ошибки.Сценарий обработки должен быть в состоянии «исправить» ошибки.

Я думал, что классифицирующая (сверточная) нейронная сеть текста могла бы сделать эту работу, но кажется, что это излишне.Есть ли лучшее или более простое решение?

1 Ответ

0 голосов
/ 23 мая 2018

Вот некоторые мысли, так как вы знаете ключи (имена столбцов) заранее.Давайте предположим, что есть color и density.

  • . Вы можете использовать что-то вроде редактирования расстояний (например, расстояния Левенштейна), чтобы сопоставить любые нераспознанные расстояния с ближайшими фактическими (если они достаточно близки),Скажем, cloor может быть сопоставлено с color, поскольку расстояние редактирования равно 1. (Однако, если есть несколько совпадений с достаточно низким расстоянием редактирования, вы, вероятно, захотите воспроизвести его безопасно, а не отображать данные.
  • Аналогично, для сокращений вы можете выбрать отображение их по уникальному префиксу, т. Е. Если кто-то использует dens, и есть только один столбец (density), который начинается с dens, вы, вероятно, можете смело представить, что этоdensity.

Для всех несопоставленных столбцов я бы добавил столбец «stash» в базу данных, в который вы можете поместить нераспознанные данные (например, в формате JSON) и получить предупреждение сценария.оператор (вы!) о нераспознанных ключах, чтобы вы могли улучшить логику и использовать эту логику для отображения данных из столбца stash в реальные столбцы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...