Главная arrow книги arrow Копия Глава 20. Статистические методы обучения arrow Практический пример: распознавание рукописных цифр
Практический пример: распознавание рукописных цифр

Задача распознавания рукописных цифр является важной во многих приложениях, включая автоматизированную сортировку почты по почтовому коду, автоматизированное чтение чеков и налоговых деклараций, а также ввод данных для портативных компьютеров. В этой области достигнут быстрый прогресс отчасти благодаря применению лучших алгоритмов обучения и отчасти благодаря наличию лучших обучающих наборов. В Национальном институте стандартов и технологии (National Institute of Standards and Technology — NIST) США был создан архив, представляющий собой базу данных из 60 000 рукописных цифр с расшифровками (с так называемой разметкой), каждая из которых задана в виде изображения, состоящего из 2 0x20=400 пикселов с восьмибитовой кодировкой уровня серого. Распознавание цифр из этой базы данных стало одной из стандартных эталонных задач для сравнения новых алгоритмов обучения. Некоторые примеры цифр показаны на рис. 20.27.

Рис. 20.27. Примеры из базы данных рукописных цифр института NIST. Верхний ряд: примеры цифр 0—9, которые несложно распознать; нижний ряд: более трудные примеры тех же цифр

Для решения этой задачи было опробовано много разных подходов к обучению. Одним из первых и, по-видимому, самых простых стал классификатор по трем ближайшим соседним точкам, преимуществом которого является также то, что он не требует затрат времени на обучение. Но поскольку он представляет собой алгоритм, основанный на использовании памяти, то должен хранить все 60 000 изображений, поэтому показывает низкую производительность на этапе прогона. При использовании такого классификатора была достигнута частота ошибок при распознавании проверочного набора, равная 2,4%.

Кроме того, для решения этой задачи была разработана нейронная сеть с одним скрытым слоем, состоящая из 400 входных элементов (по одному на каждый пиксел) и 10 выходных элементов (по одному на каждый класс). С использованием перекрестной проверки было обнаружено, что наилучшую производительность обеспечивают примерно 300 скрытых элементов. Поскольку была предусмотрена полная связность между слоями, общее количество весов составляло 123300. Эта сеть позволила достичь уровня частоты ошибок 1,6%.