Я новичок в машинном обучении, поэтому, пожалуйста, прости любую ошибку в этом вопросе ...
ОПРЕДЕЛЕНИЕ ПРОБЛЕМЫ
Мы работаем в проекте, который имеет следующие конкретные требования:
Пользователь берет фотографию с полки аптек, которая содержит набор продуктов (лекарств), и загружает ее в Azure
Мы используем Azure Cognitive Services для распознавания изображений и обнаружения текста по ним
OCR, в большинстве случаев, возвращает много текста, большая часть которого полезна, но некоторые строки нам не нужны, также OCR может возвращать неправильно введенные слова (очень похоже на название продукта)
У нас есть словарь названий продуктов / распознанный термин (созданный вручную (вид vademecum))
Нам нужно для каждой строки текста, возвращаемого OCR:
- Сравнение с известным названием продукта / признанным термином
- Отменить неизвестные слова
Пример
у нас есть это изображение в качестве примера:
Образец изображения
OCR возвращает эти строки ( во 2-м столбце (--->) нашего ожидаемого результата ):
- flex ---> NULL
- F1ORAT1L ---> ФЛОРАТИЛ
- FLORATI L 100 ---> FLORATIL
- ФЛОРАТИЛ 200 ---> ФЛОРАТИЛ
- ФЛОРАТИЛ В 250 ---> ФЛОРАТИЛ
- Энтерогермина ---> Энтерогермина
- PROMOCAO ---> NULL
- равно 27.30 ---> NULL
- yces boulardii CNCM I ---> NULL
- VALE POR ---> NULL
- TA BARATO ---> NULL
ВОПРОС
OCR может возвращать неправильно введенные слова (очень похоже на названия продуктов) см. Строки 2 и 3 . Как вы рекомендуете реализовать это нечеткое сопоставление?
Мы хотели бы объединить различные типы конфигураций продуктов (FLORATIL 100, FLORATIL 200, FLORATIL AT 250) к основной категории лекарств = FLORATIL
Как вы себе представляете лучший трубопровод для решения этой проблемы? мы хотели бы использовать любой алгоритм, доступный в службах машинного обучения Azure, но мы можем использовать python или другой стек
Спасибо!