Python модель HMM для анализа имени и адреса - PullRequest
0 голосов
/ 06 февраля 2020

Мне нужна программа декодирования имени и адреса с использованием машинного обучения, возможно, с помощью HMM и алгоритма Витерби.

У меня есть 10 - 15 различных файлов данных с данными PII. Мне нужно декодировать данные и назначить метку.

  1. Это имя, если так, пометить его как имя или отчество или фамилию

  2. Является ли это адрес, если это так, обозначьте его как название улицы или почтовый индекс или штат ..et c

Существующий подход имеет макеты с длиной в сторона ввода и вывода для всех 15 файлов данных. Для этого нам нужно обработать 15 макетов на входе и 15 макетов на выходе. И каждый макет будет декодировать данные в зависимости от длины и положения. sh Я хочу изменить этот рабочий процесс на подход машинного обучения, чтобы, если мы сможем обработать любой файл данных, он распознал поля имени и адреса и соответственно проанализировал данные.

Пример:

Ввод:

Файл данных1 Сачин, Тендулкар, 19-А, Перри-Кросс-роуд, Бандра (запад), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com Рэйм sh, Тендулкар, 19-б, Перри-Кросс Дорога, Бандра (восток), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com

Файл данных 2 879878, Сачин, Тендулкар, 19-А, Перри Кросс Роуд, Бандра (запад), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com 980998, Rame sh, Tendulkar, 19-b, Perry Cross Road, Bandra (восток), Мумбай - 400050, Махараштра, XXXXX@Gmail.com

Файл данных 3 19-A, Perry Cross Road , Бандра (запад), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com, 879878, Сачин, Тендулкар 19-б, Перри Кросс Роуд, Бандра (восток), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com, 980998, Раме sh , Тендулкар

Вывод: Номер счета, Имя, Фамилия, Номер дома, Название улицы, р egion, Почтовый, Государственный, почта 879878, Сачин, Тендулкар, 19-А, Перри Кросс Роуд, Бандра (Запад), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com 980998, Рэйм sh, Тендулкар, 19-б, Перри Кросс Дорога, Бандра (восток), Мумбаи - 400050, Махараштра, XXXXX@Gmail.com

Модель должна идентифицировать данные и анализировать соответственно. Существующий корпус для распознавания имени и адреса здесь не поможет, потому что это увеличит мое время обработки. Если в моем файле данных 5 миллионов строк, каждая в худшем случае займет O (n) раз. Это не обязательно. Идея здесь состоит в том, чтобы идентифицировать первые 10 строк каждого файла данных и должны идентифицировать начальное состояние, а затем перейти к следующему состоянию до конечного состояния на основе метрик вероятности. Я читал, что HMM и алгоритм Витерби могут лучше всего подойти для этого случая.

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

Спасибо ND С уважением

...