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

Что делает OCR

OCR может сфотографировать написанные от руки слова «привет, мир» и передать компьютеру фактический текст «привет, мир», а не просто изображение, которое компьютер не может понять.

Система моделей

OCR использует ряд моделей машинного обучения для преобразования изображения с текстом в текстовые символы, которые компьютер может читать и обрабатывать. Для этого используется трехэтапный процесс, где на каждом этапе используются разные модели для получения разных прогнозов:

  1. Распознавание текста — определяет, где на фотографии есть текст.
  2. Сегментация символов — выделяет отдельные символы в идентифицированном тексте.
  3. Распознавание символов – преобразует изображения персонажей в их предполагаемые символы.

Раздвижные окна

В шагах 1 и 2 используется концепция под названием "скользящие окна". Именно здесь "классификатор скользящего окна" перемещается по изображению, чтобы дать прогноз того, что находится внутри окна в каждой позиции.

Шаг 1: Обнаружение текста

«Скользящее окно» перемещается по изображению и в каждой позиции предсказывает вероятность того, что окно содержит текст. При этом используется модель, обученная классифицировать, содержит ли изображение текст. Это создает представление изображения в градациях серого, где выделены части изображения, которые, скорее всего, содержат текст. Затем области текста с высокой вероятностью расширяются наружу, чтобы создать более крупные смежные группы вероятного текста. Затем эти группы помещаются в прямоугольники для шага 2.

Шаг 2: Сегментация символов

«Скользящее окно» перемещается по каждому прямоугольнику вероятного текста, чтобы предсказать, является ли каждая позиция сегментацией символов (т. е. пробелом между двумя символами в слове). При этом используется модель, обученная идентифицировать сегментацию символов. Если он включает сегментацию, то y=1. Если он включает символ или пробел, то y=0.

Шаг 3: Распознавание символов

Теперь, когда шаг 1 идентифицировал вероятный текст на изображении, а шаг 2 разделил все символы, следующим шагом в нашей системе будет использование модели классификации, которая была обучена классифицировать изображения текста как текст.

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

Следующий

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

Прошлые заметки в этой серии

  1. На пути к глубокому пониманию машинного обучения
  2. Построение интуиции вокруг контролируемого машинного обучения с градиентным спуском
  3. Помогаем моделям обучения с учителем учиться лучше и быстрее
  4. Сигмовидная функция как концептуальное введение в функции активации и гипотезы
  5. Введение в модели классификации
  6. Переоснащение и предотвращение его с помощью регуляризации
  7. Введение в нейронные сети
  8. Модели классификации с использованием нейронных сетей
  9. Введение в кластеризацию K-средних
  10. Обнаружение аномалий с контролируемым обучением
  11. Введение в машинное обучение для рекомендаций на основе контента
  12. Машинное обучение с данными в реальном времени через онлайн-обучение