Моя последняя заметка рассказала, как модели могут учиться на данных в реальном времени с помощью онлайн-обучения. В этой заметке рассказывается, как можно использовать систему моделей машинного обучения для идентификации и классификации текста на изображении с помощью оптического распознавания символов (OCR).
Что делает OCR
OCR может сфотографировать написанные от руки слова «привет, мир» и передать компьютеру фактический текст «привет, мир», а не просто изображение, которое компьютер не может понять.
Система моделей
OCR использует ряд моделей машинного обучения для преобразования изображения с текстом в текстовые символы, которые компьютер может читать и обрабатывать. Для этого используется трехэтапный процесс, где на каждом этапе используются разные модели для получения разных прогнозов:
- Распознавание текста — определяет, где на фотографии есть текст.
- Сегментация символов — выделяет отдельные символы в идентифицированном тексте.
- Распознавание символов – преобразует изображения персонажей в их предполагаемые символы.
Раздвижные окна
В шагах 1 и 2 используется концепция под названием "скользящие окна". Именно здесь "классификатор скользящего окна" перемещается по изображению, чтобы дать прогноз того, что находится внутри окна в каждой позиции.
Шаг 1: Обнаружение текста
«Скользящее окно» перемещается по изображению и в каждой позиции предсказывает вероятность того, что окно содержит текст. При этом используется модель, обученная классифицировать, содержит ли изображение текст. Это создает представление изображения в градациях серого, где выделены части изображения, которые, скорее всего, содержат текст. Затем области текста с высокой вероятностью расширяются наружу, чтобы создать более крупные смежные группы вероятного текста. Затем эти группы помещаются в прямоугольники для шага 2.
Шаг 2: Сегментация символов
«Скользящее окно» перемещается по каждому прямоугольнику вероятного текста, чтобы предсказать, является ли каждая позиция сегментацией символов (т. е. пробелом между двумя символами в слове). При этом используется модель, обученная идентифицировать сегментацию символов. Если он включает сегментацию, то y=1. Если он включает символ или пробел, то y=0.
Шаг 3: Распознавание символов
Теперь, когда шаг 1 идентифицировал вероятный текст на изображении, а шаг 2 разделил все символы, следующим шагом в нашей системе будет использование модели классификации, которая была обучена классифицировать изображения текста как текст.
Вот как можно использовать машинное обучение для распознавания текста на изображении и превращения его в текст, понятный компьютеру!
Следующий
В следующей заметке из этой серии мы рассмотрим, как можно оценить производительность различных частей системы машинного обучения с помощью анализа потолка.
Прошлые заметки в этой серии
- На пути к глубокому пониманию машинного обучения
- Построение интуиции вокруг контролируемого машинного обучения с градиентным спуском
- Помогаем моделям обучения с учителем учиться лучше и быстрее
- Сигмовидная функция как концептуальное введение в функции активации и гипотезы
- Введение в модели классификации
- Переоснащение и предотвращение его с помощью регуляризации
- Введение в нейронные сети
- Модели классификации с использованием нейронных сетей
- Введение в кластеризацию K-средних
- Обнаружение аномалий с контролируемым обучением
- Введение в машинное обучение для рекомендаций на основе контента
- Машинное обучение с данными в реальном времени через онлайн-обучение