recognition of handwritten digits

Post on 28-Oct-2014

54 Views

Category:

Entertainment & Humor

7 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Бабий А.С. - apratster@gmail.com

Машинное обучение

Распознавание рукописных цифр

Машинное обучение. Распознавание рукописных цифр. 2

Задача распознавания.

Уже существует поддержка рукописного ввода

Как это работает?Почему иногда не срабатывает?Как обучать готовые программы?Как научиться самому создавать обучаемые программы?

Машинное обучение. Распознавание рукописных цифр. 3

Задача распознавания.

Этапы решения задачи распознавания:

Выделяем признаки

Создаем тестовую и обучающую выборки

Выделяем классы

Классифицируем

1) Где взять выборки?2) Размер выборок?3) Что внутри выборок?1) Подготовка данных.2) Как сравнивать объекты?3) Как искать признаки?

1) Как определить качество кластеризации?2) Когда остановиться

1)Какой алгоритм классификации выбрать?

Машинное обучение. Распознавание рукописных цифр. 4

Задача распознавания.

1. Kaggle – что это? We’re making data science a sport.

2. Как научиться? Где соревноваться? http://www.kaggle.com

Машинное обучение. Распознавание рукописных цифр. 5

Задача распознавания

Выборка:

Данные для этой задачи взяты из набора данных MNIST

http://yann.lecun.com/exdb/mnist/

Обучающая выборка - 60000 образцов

таблица с результатами применения методов+

Ссылки на публикации с описанием методов

Предварительная обработка данных

Машинное обучение. Распознавание рукописных цифр. 6

Матрица 28х28, цвет в градации серого от 0 до 255

1) Переходим к черно-белому изображению(адаптивный порог, метод Оцу[1])

2) Морфологическое преобразование – уменьшаем до толщины 1 пиксела[2].

Предварительная обработка данных

Машинное обучение. Распознавание рукописных цифр. 7

Наклон символа – находим эллипс максимально близкий к нашему символу

Есть функция в OpenCV, Matlab b т.п. Используется метод наименьших квадратов

Предварительная обработка данных

Машинное обучение. Распознавание рукописных цифр. 8

Число Эйлера

Дополнительные значимые свойства?

1) Симметрия 2) Расположение «центра масс» цифры

Предварительная обработка данных

Машинное обучение. Распознавание рукописных цифр. 9

На вход сети подаются такие данные:

1) Данные о пикселах(b\w) после обработки 16х162) Число Эйлера3) Треть в которой расположен «центр масс»

Все данные нормализованы!

Создание сети

В зависимости от наших предпочтений, можем выбрать 1) Matlab2) R, Python + libraries

Для Matlab – nftool, довольно все просто понятно, мастер ИНС

Библиотеки для создания ИНС

Машинное обучение. Распознавание рукописных цифр. 10

Fast Artificial Neural Network Library (FANN)http://leenissen.dk

Kohonen neural network libraryhttp://knnl.sourceforge.net/

Python! Neurolabhttp://code.google.com/p/neurolab/

Создание сети

Выбор размера скрытого слоя ИНС

Слишком мало нейронов скрытого слоя – плохоСлишком много мало нейронов скрытого слоя - плохо

Как подобрать?

Мера Вапника-Червоненкиса

Один из методов редукции сети

Перебор возможных вариантов, ГА

Машинное обучение. Распознавание рукописных цифр. 11

Создание сети

Машинное обучение. Распознавание рукописных цифр. 12

Пути улучшения:

Выводы

1. Важно определить стойкие признаки2. Нормализация данных3. ИНС – не всегда срабатывает лучше других методов!4. Обучение - долгий процесс

Машинное обучение. Распознавание рукописных цифр. 13

Понимание сути задачи первично для анализа данных

Как автоматически(полуавтоматически) выявлять признаки?

Качество распознавания персептроном - 88%

Результаты

Машинное обучение. Распознавание рукописных цифр. 14

Результаты

Машинное обучение. Распознавание рукописных цифр. 15

Результаты

Машинное обучение. Распознавание рукописных цифр. 16

Результаты

Машинное обучение. Распознавание рукописных цифр. 17

Спасибо за внимание!

Источники литературы

1. Otsu, N., "A Threshold Selection Method from Gray-Level Histograms," IEEE Transactions on Systems, Man, and Cybernetics, Vol. 9, No. 1, 1979, pp. 62-66.

2. Lam, L., Seong-Whan Lee, and Ching Y. Suen, "Thinning Methodologies-A Comprehensive Survey," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol 14, No. 9, September 1992, page 879, bottom of first column through top of second column.

3. http://leenissen.dk

4. http://knnl.sourceforge.net/

5. http://code.google.com/p/neurolab/

top related