Вопрос или проблема
Мы пытаемся создать модель для классификации различных типов документов в качестве первого шага в нашем процессе (финальная цель – прочитать весь текст). В настоящее время мы используем ImageNet для извлечения признаков, а затем пропускаем их через пользовательскую модель, которая включает слой LSTM и несколько плотных слоев (FC). Модель, как правило, испытывает трудности в категориях “одной и той же классов”. Например, между одной картой, выданной государством, и другой, как показано ниже
Как вы можете видеть, обе выглядят по-разному для человека, но имеют примерно одинаковый плотный текст в центре изображения. Есть ложные срабатывания в обеих этих категориях.
Какие дополнительные признаки мы можем использовать наряду с теми, что извлечены из предварительно обученной модели? (мы понимаем, что ImageNet не обучалась на подобных изображениях, но признаки, которые она извлекает, вместе с простой моделью LSTM+DENSE дают нам F-оценку около 80%). Мы можем попробовать их все и использовать PCA, чтобы определить наилучшее сочетание.
Вот что мы пробовали (вместе с признаками ImageNet)
-
одномерная гистограмма (как цветные, так и черно-белые изображения)
-
многомерная гистограмма (3 вектора, которые мы комбинировали) это только снижает общую точность.
Большинство документов, которые мы читаем онлайн, относятся к определенным областям, где можно извлечь специфические для области признаки. Не уверены, что делать здесь… пожалуйста, подскажите.
Одним из вариантов является представить это как задачу обнаружения объектов, в отличие от задачи классификации объектов, такой как ImageNet.
Объекты могут быть: текстовое поле, изображение, число или QR-код. После обнаружения объектов могут быть серия правил, написанных вручную, которые классифицируют тип документа.
Ответ или решение
Для успешной классификации изображений документов, таких как правительственные удостоверения или регистрационные карточки транспортных средств, необходимо внедрить ряд дополнительных функций, которые позволят отличать похожие на первый взгляд классы. В вашем случае вы используете предобученную модель из ImageNet в сочетании с LSTM и полносвязными слоями, однако столкновение с ложными положительными результатами между близкими классами свидетельствует о необходимости улучшения подхода.
1. Извлечение Характерных Признаков
1.1. Специфические Характеристики Текста
- Оптическая Распознавание Символов (OCR): Используйте OCR, чтобы извлекать текстовую информацию из документов и добавлять его как фичи. Это позволит улавливать различия в содержании и расположении текста.
- Частота Символов: Анализируйте частоту вхождения конкретных символов, цифр и букв в тексте. Разные типы документов могут иметь уникальные шаблоны.
1.2. Геометрические Признаки
- Анализ Формы и Размеров: Изучите форму и размеры ключевых элементов документа, таких как текстовые поля, логотипы и фотографии. Эти размеры могут существенно различаться от типа документа к документу.
- Контуры и Границы: Используйте алгоритмы детекции границ (например, Canny edge detection), чтобы выделить структуру и контуры документа.
2. Текстурные Функции
- LBP (Local Binary Patterns): Текстурные признаки могут быть полезны для выявления различных элементов на документе, таких как фон и текстура.
- Гистограммы Классической Текстуры: Добавьте 2D-гистограммы текстуры на основе цветовых каналов, что может помочь в разграничении различных классов документов.
3. Использование Полинома Характеристик
- Комбинация Различных Признаков: Используйте методы многомерного анализа, такие как PCA или t-SNE, чтобы определить, какие комбинации признаков лучше всего помогают различать классы.
- Классификация на Основе Правил: Кроме использования ML, можно внедрить систему правил, основанных на важнейших характеристиках, извлеченных из анализа.
4. Объектно-Ориентированная Классификация
При переходе к задаче обнаружения объектов вы можете идентифицировать ключевые элементы документа (например, текстовые блоки, изображения, коды, и т. д.) и использовать информацию о них для классификации. Например, если один документ содержит определенный формат текста или расположение, а другой — нет, эти особенности могут быть решающими в классификации.
5. Адаптация Моделей и Дополнительные Подходы
- Модели Смешанных Классов: Исследуйте возможность использования смешанных классов и более глубоких архитектур, таких как CNN, которые специально оптимизированы для работы с изображениями документов.
- Аугментация Данных: Увеличьте набор данных за счет аугментации (вращение, изменение контрастности) для улучшения обучения модели.
Заключение
Чтобы повысить точность вашей модели на стадии классификации документов, необходимо использовать более глубокий анализ изображений с учётом доменных характеристик и дополнительных признаков, а также пересмотреть процесс обучения с акцентом на обнаружение специфичных объектов документов. Успышка на эти аспекты в конечном итоге должен повысить результативность вашей модели в разграничении близких классов, таких как удостоверения личности и регистрационные карточки. Это поднимет вашу эффективность в дальнейших этапах автоматического чтения текста и обработки документов.