Применение сверточной нейронной сети для распознавания рукописных цифр
О.П. Солдатова, А.А. Гаршин
ПРИМЕНЕНИЕ СВЕРТОЧНОЙ НЕЙРОННОЙ СЕТИ ДЛЯ РАСПОЗНАВАНИЯ РУКОПИСНЫХ ЦИФР
Солдатова О.П., Гаршин А.А.
Самарский государственный аэрокосмический университет имени академика С. П. Королева
Аннотация
Исследуются возможности свёрточных нейронных сетей для распознавания рукописных
цифр. Предложена методика обучения сети, реализующая чередование эпох обучения с ис-
кажением символов и без искажений. Предложена методика подбора и модификации коэф-
фициента обучения. Представлены экспериментальные исследования применения данного
вида сети к распознаванию рукописных цифр базы MNIST.
Ключевые слова: распознавание рукописных цифр, свёрточная нейронная сеть, база ру-
кописных цифр MNIST, эластичные искажения, обобщающая способность сети.
Введение
за каждым слоем свёртки следует вычисли-
тельный слой, осуществляющий локальное ус-
В статье исследуются возможности применения
реднение и подвыборку, что обеспечивает
свёрточных сетей для распознавания рукописных
уменьшение разрешения для карт признаков.
цифр. Нейронные сети успешно применяют при ре-
Следует отметить, что обучение свёрточных ней-
шении задач классификации и распознавания обра-
ронных сетей осуществляется с учителем.
зов, в частности, графически представленных сим-
волов [1, 2, 3]. Наиболее распространенной нейросе-
1. Структура сети, функция активации,
тевой моделью является многослойный персептрон.
функция ошибки
Однако применение многослойного персептрона с
Для экспериментальной оценки качества работы
традиционной структурой при решении реальных
свёрточной нейронной сети была разработана авто-
задач распознавания и классификации изображений
матизированная система распознавания рукописных
вызывает определенные трудности.
цифр, в которой реализована модель свёрточной се-
Во-первых, изображения, как правило, имеют
ти с тремя скрытыми слоями, без слоев подвыборки,
большую размерность, вследствие чего возрастает
но со смещениями рецептивных полей свёрточных
число нейронов и синаптических связей в сети. В
нейронов не на один, а на два пикселя [6]. Структу-
свою очередь, это требует увеличения обучающей
ра подобной сети описана в [3], однако в предло-
выборки, вследствие чего увеличивается время и
женной реализации сети во втором слое использует-
вычислительная сложность процесса обучения.
ся 6 карт признаков, в то время как в [3] - 5 карт. На
Во-вторых, игнорируется топология входных
рис. 1 приведена структура реализованной сети.
данных. Компоненты входного слоя могут быть
представлены в любом порядке, без учета цели обу-
чения. Однако изображения имеют строгую двумер-
ную структуру, в которой существует зависимость
между пространственно соседними пикселями [4].
От данных недостатков свободны так называе-
мые свёрточные нейронные сети, которые представ-
ляют собой особый класс многослойных персептро-
нов, специально созданных для распознавания дву-
мерных поверхностей с высокой степенью инвари-
антности к масштабированию, смещению, повороту,
смене ракурса и прочим пространственным искаже-
ниям. Недавно свёрточные нейронные сети были
успешно применены для распознавания снимков
трехмерных объектов [5].
Архитектура свёрточных нейронных сетей реа-
лизует три идеи [2, 4]:
каждый нейрон получает входной сигнал от
локального рецептивного поля в предыдущем
слое, что обеспечивает локальную двумерную
связность нейронов;
каждый скрытый слой сети состоит из множе-
ства карт признаков, на которых все нейроны
Рис. 1. Структура свёрточной нейронной сети
с тремя скрытыми слоями
имеют общие веса, что обеспечивает инвари-
антность к смещению и сокращение общего
Рассмотрим подробнее структуру реализованной
числа весовых коэффициентов сети;
сети. Для упрощения реализации данная сеть не
252
2010
Компьютерная оптика, том 34, №2
имеет слоев подвыборки, а рецептивные поля свёр-
сификации. В этих слоях каждый нейрон соединён
точных нейронов смещены на два пикселя. Этим об-
со всеми нейронами предыдущего слоя.
стоятельством обусловлен выбор размера рецептив-
Третий скрытый слой состоит из 100 нейронов.
ного поля 5×5, причем ширина и высота должны
В этом слое имеется 125100 связей и 125100 обу-
быть нечётными числами, чтобы обеспечить попа-
чаемых параметров. Для десяти классов изображе-
дание нейрона слоя свёртки в центр поля. Такой
ний, соответствующих десяти цифрам, 100 нейронов
размер также обеспечивает достаточное наложение
достаточно для хорошей обобщающей способности
рецептивных полей друг на друга. В результате каж-
сети [3].
дый слой свёртки уменьшает размер карты призна-
Четвёртый слой является выходным слоем. Он
состоит из 10 нейронов, так как распознаются 10 ру-
ков с размера n до размера (n 3) 2 .
кописных цифр, и имеет 1010 связей и 1010 весов.
Входными данными нейронной сети являются
Метод обратного распространения ошибки, ис-
изображения сегментированных рукописных цифр
пользуемый при обучении сети, не отличается от
базы MNIST [7]. Данная база является общеприня-
аналогичного алгоритма для классического много-
той базой среди разработчиков OCR-систем для
слойного персептрона, но при реализации учитыва-
проверки качества распознавания рукописных цифр.
ются особенности архитектуры свёрточной сети,
Размер обучающей выборки составляет 60000 сим-
а именно - совместное использование весов нейро-
волов, размер тестирующей выборки - 10000 симво-
нами одной карты признаков.
лов. В базе MNIST изображения имеют размер
Рассмотрим особенности формирования сигнала
28×28 пикселей. На вход сети подаются изображе-
и функции активации, используемой в слоях свёр-
ния, позиционированные в матрицу размером 29×29
точной сети. Как и в случае с классическим много-
пикселей. Число 29 выбрано для того, чтобы и в
слойным персептроном, на вход каждого элемента
первом, и во втором слоях свёртки размер карт при-
сети поступает взвешенная сумма - скалярное про-
знаков был целым числом. Таким образом, входной
изведение между входным вектором сигналов и век-
слой содержит 841 нейрон.
тором весов, которая затем подается в качестве ар-
Первый скрытый слой является слоем свёртки.
гумента функции активации.
Он состоит из шести карт признаков размером
В данном случае такой функцией для скрытых
13×13. В этом слое содержится 13×13×6 = 1014 ней-
слоёв сети был выбран гиперболический тангенс:
ронов. Каждый элемент карты признаков соединен с
рецептивным полем размером 5×5 на входном изо-
f (a)= Atanh(Sa) ,
(1)
бражении и единичным смещением. Следовательно,
где f (a) - искомое значение элемента, a - взвешен-
каждый элемент карты имеет 26 обучаемых весовых
коэффициентов. Значения всех элементов карты
ная сумма сигналов предыдущего слоя, A, S - па-
признаков вычисляются путем последовательного
раметры активирующей функции.
сканирования рецептивным полем входного слоя.
Такая функция активации является нечётной, с го-
Интересной особенностью слоев свёртки является
ризонтальными асимптотами +A и -A, а параметр S
тот факт, что при сдвиге входного изображения зна-
определяет наклон функции в начале координат.
чения карт признаков будут сдвинуты на ту же са-
Для выходного слоя сети функция активации
мую величину. За счёт этого свёрточные сети обла-
выбирается в соответствии с выбранной функцией
дают инвариантностью к сдвигам и незначительным
ошибки. Формулы используемых в работе функций
искажениям входного сигнала [2].
ошибки приведены ниже:
Таким образом, в первом скрытом слое содер-
p M
1
j
j
жится 26364 синаптических связей и 156 обучаемых
E
(
w
)
=
y
d
,
(2)
∑∑
(
k
k
)2
параметров. Такая экономия памяти и, что главное,
2
j
=1
k
=1
вычислительных затрат достигается за счет совме-
p M
j
j
y
k
стного использования весов картами признаков.
E
(
w
)
d
ln
,
(3)
= −∑∑
k
j
Второй скрытый слой также является слоем
j=1
k=1
d
k
свёртки. Он состоит из 50 карт признаков размером
где p - размер обучающей выборки, j - номер
5×5 ((
3)
=
)
13
2
5
. Меньшее число карт признаков
обучающего примера, M - количество выходных
ухудшают работу сети, большее - не улучшают её
нейронов, k - номер выходного нейрона, yj
k
- реаль-
[3]. В этом слое 5×5×50 = 1250 нейронов. Каждый
элемент в карте признаков связан с шестью облас-
ное значение сигнала выходного нейрона,dj
k
- ожи-
тями размером 5×5 шести карт предыдущего слоя.
даемое значение.
Таким образом, во втором скрытом слое содержится
При выборе в качестве функции ошибки средне-
7550 весов и 188750 связей.
квадратичного отклонения (СКО, 2) функцией акти-
Два первых свёрточных слоя можно рассматри-
вации для нейронов выходного слоя также является
вать как слои для извлечения признаков из изобра-
гиперболический тангенс, при этом ожидаемый от-
жения. Следующие два слоя являются слоями клас-
клик сети будет находиться в диапазоне от 1 до +1 .
253
Применение сверточной нейронной сети для распознавания рукописных цифр
О.П. Солдатова, А.А. Гаршин
В качестве параметров берутся значения A = 1,7159
ускорение обучения сети. Кроме того, не возникает
и S = 2/3. Такие значения параметров A и S выбраны
паралич обучения сети и ее переобучение.
потому, что гиперболический тангенс (1) имеет сле-
Для ускорения работы алгоритма значения вход-
дующие полезные свойства [8]:
ных пикселей нормализуются по формуле:
максимум второй производной при a =1 ;
xi
y
=
1,
(5)
f (1
)=1, f (1)
= −1;
i
128
в начале координат тангенс угла наклона бли-
где
i
x
- значение i-го пикселя изображения из базы,
зок к единице;
y
- значение, подаваемое на вход сети [8].
ожидаемый отклик сети смещен от границы
i
области значений функции активации в сторо-
На практике лучшая способность сети к обобще-
ну её внутренней части. В этом случае при мо-
нию достигается за счет пополнения обучающей
дификации свободных параметров сети в про-
выборки деформированными примерами. Поэтому в
цессе обучения удаётся избежать резкого воз-
системе реализована возможность использования
растания их значений, что позволяет ускорить
генератора эластичных (нелинейных) искажений [3]
процесс обучения.
обучающих образов с настраиваемым коэффициен-
Если функцией ошибки является кросс-энтропия
том искажений. В отличие от [3] предложенная в
(КЭ, 3), то для нейронов выходного слоя применяет-
данной системе методика обучения предполагает
ся функция активации софтмакс (4):
чередование эпох обучения с внесением искажений
в обучающие примеры и без искажений обучающих
exp
(
q
)
i
s
=
,
(4)
примеров.
i
M
exp
(
q
)
Искажения формируются следующим образом.
k
k =1
Сначала создается гауссово ядро посредством по-
строения матрицы размером n × n , значение элемента
где
s
- выход рассматриваемого нейрона,
q
- взве-
i
i
(x, y) которой вычисляется по следующей формуле:
шенная сумма сигналов предыдущего слоя, M
- ко-
2
2
личество выходных нейронов, i = 1, M . Функции
(
xc
)
+
(
yc
)
1
2
2σ
G
(
x,
y
)
=
e
,
(6)
этого вида - это экспоненциальные функции, выхо-
2
2πσ
ды которых нормируются так, чтобы сумма всех
выходов нейронов слоя равнялась 1. Эти функции
где c = n 2 ; x, y = 0, n1, n - размер ядра. Обычно
специально сконструированы для задач классифи-
его выбирают нечётным и пропорциональным ра-
кации таким образом, чтобы выходы можно было
диусу σ так, чтобы в это ядро попали значения
интерпретировать как вероятности принадлежности
функции Гаусса (6) вплоть до уменьшения от мак-
к классу [9].
симального значения в пределах 0,1÷ 0,3 . Радиус σ
2. Обучение и тестирование сети
задает силу размытия. Эмпирически были выбраны
соответственно следующие значения радиуса и раз-
Для обучения сети был выбран градиентный ал-
горитм наискорейшего спуска, подробно описанный
мера ядра: σ = 4, n = 25 .
в [8]. Обучение и тестирование сети проводилось
Далее генерируются две матрицы размером
с использованием базы рукописных цифр MNIST
29×29 (по размеру входного изображения). Значения
[7]. Для обучения использовались первые
60000
элементов матриц выбираются как случайные вели-
символов, для тестирования - последние 10000 сим-
чины, равномерно распределённые на отрезке
волов из базы данных MNIST.
[1,
1
]
. К этим матрицам применяется размытие
Значения исходных синаптических весов для
изображения с использованием ранее сформирован-
всех слоёв сети с гиперболическим тангенсом выби-
ного ядра [10]. Далее ищется новое значение для
раются на основе равномерного распределения с ну-
каждого пикселя входного изображения с примене-
левым математическим ожиданием и дисперсией,
нием билинейной интерполяции и сформированных
обратной квадратному корню из количества синап-
матриц.
тических связей нейрона [8]. При функции актива-
Например, необходимо найти новое значение
ции софтмакс веса выходного слоя инициализиру-
пикселя в точке A (рис. 2) [3].
ются на основе равномерного распределения с нуле-
Пусть точка А имеет координаты (0,0), числа 3,
вым математическим ожиданием и дисперсией 0,05
7, 5, 9 - это значения пикселей с координатами со-
(значение выбрано эмпирически).
ответственно (1,0), (2,0), (1,1 ) и (2,1 ). Допустим,
В разработанной автоматизированной системе
в первой матрице элемент с координатами (0,0) име-
реализовано онлайн-обучение (коррекция весов сети
ет значение x=1,75, а во второй матрице y=0, 5 ,
производится после каждого обучающего примера).
- как показывает сплошная стрелка. Для поиска но-
Использована методика пропуска этапа коррек-
вого значения пикселя в точке А сначала применя-
ции весовых коэффициентов при малом значении
ется горизонтальная, а затем вертикальная интерпо-
функции ошибки. Этим достигается значительное
ляция. Сначала следует найти координаты конца
254
2010
Компьютерная оптика, том 34, №2
стрелки относительно того квадрата, в котором эта
θ = 0,01, α = 0,1
(значения констант выбраны эм-
стрелка заканчивается, причем началом координат
пирически).
является нижний левый угол квадрата. В данном
Коэффициент искажений обучающих образов
случае координаты конца стрелки (0,75, 0,5). При
в экспериментах был выбран ε = 25, так как с ним
применении интерполяции вдоль оси абсцисс новы-
сеть показала хорошую обобщающую способность
ми значениями пикселя в точке А являются:
на тестовом множестве. При тестировании обучен-
3+0,75(73)= 6 и
5+0,75(95)= 8. Верти-
ной сети искажения не применяются.
кальная интерполяция между этими точками дает
3. Экспериментальное исследование
следующее значение: 8 + 0, 5 (6 8) = 7 , - это новое
В экспериментах в качестве оценок работы сети
значение пикселя в точке А. Аналогично вычисляет-
применяются:
ся значение каждого пикселя входного изображения
точность распознавания символов обучающей
при применении нелинейных искажений. Пример при-
выборки;
менения данного вида искажений приведен на рис. 3.
точность распознавания символов тестовой
выборки;
количество эпох обучения;
число пропущенных образцов при обучении
на последней эпохе.
Эти оценки применены при обучении сети:
с функцией ошибки КЭ и с применением эла-
стичных искажений;
с функцией ошибки КЭ и без применения эла-
стичных искажений;
Рис. 2. Вычисление нового значения пикселя в точке A
с функцией ошибки СКО и с применением
эластичных искажений;
с функцией ошибки СКО и без применения
эластичных искажений.
Рис. 3. Пример применения эластичных искажений
Результаты экспериментов приведены в таблице 1.
(с коэффициентом искажений ε = 25 ). Самая
Из таблицы 1 видно, что свёрточная нейронная
первая цифра - неискаженная цифра из базы
сеть эффективно распознаёт рукописные цифры -
Предложена следующая методика подбора ко-
точность распознавания довольна высока. При этом
эффициента обучения:
становится ясно, что применение эластичных иска-
коэффициент обучения одинаков для нейронов
жений при обучении сети положительно влияет на
всей сети;
её обобщающие способности, так как искажения
первые две эпохи сеть обучается с постоянным
фактически расширяют обучающую выборку. Также
коэффициентом;
видно, что с функцией ошибки КЭ сеть показывает
далее коэффициент автоматически изменяется
лучшие результаты распознавания как на обучаю-
для каждой эпохи в соответствии с (7) [11].
щей, так и на тестовой выборке. Стоит отметить, что
Применение формулы (7) для модификации ко-
количество пропускаемых образцов при обучении
эффициента обучения не требует сложных вычисле-
с КЭ уже на первых эпохах составляет около 50%.
ний и обеспечивает достаточную скорость обучения:
Это говорит о том, что сеть уже на первых эпохах
обучается значительному числу образов. Во всех
dη
(
t
1
)
, если
δ
(t)
δ
(
t
1
)
<
0
экспериментах число эпох обучения является отно-
η
(t)
=
и
δ
(
t
1
)
,
(7)
сительно небольшим (18-24), тогда как в методике
обучения, изложенной в [3], число эпох обучения
uη
(
t
1
)
, иначе,
достигало нескольких сотен.
При обучении с применением искажений к обу-
где u и d - положительные константы, 0 < d < 1 < u ,
чающим образам (первый и третий эксперименты)
θ - порог осцилляции величины δ(t 1);
на вход сети не поступали неискажённые цифры.
Поэтому было решено провести обучение сети еще
E t)E
(
t
1
)
на нескольких эпохах на неискажённых образцах.
δ
(t)
=
,
(8)
E t)
Результаты экспериментов приведены в таблице 2.
Из таблицы 2 видно, что результаты распознавания
где E
- количество ошибок на тестовой выборке;
цифр в обоих случаях были улучшены. При этом на
δ(t) = α∗δ(t)+(1−α)∗δ(t1),
0 < α <1 - положи-
тестовой выборке при функции ошибки КЭ сеть пока-
тельная константа. В экспериментах применяются
зала свой лучший результат - 77 ошибок из 10000!
следующие значения констант: u = 1,1, d = 0, 5 ,
Изображения этих цифр представлены на рис. 4.
255
Применение сверточной нейронной сети для распознавания рукописных цифр
О.П. Солдатова, А.А. Гаршин
Таблица 1. Результаты обучения сети
Функция ошибки,
Точность распозна-
Точность распозна-
Число пропу-
применение иска-
вания обучающей
вания тестовой вы-
Количество
щенных об-
жений при обуче-
выборки (60000
борки (10000 цифр),
эпох обучения
разцов на по-
нии
цифр), %
%
следней эпохе
КЭ с искажениями,
99,31
99,14
21
49692
ε = 25
КЭ без искажений
99,77
98,61
24
54602
СКО с искажения-
98,82
98,93
21
16488
ми, ε = 25
СКО без искажений
99,16
98,74
18
22961
Таблица 2. Результаты дополнительного обучения сети
Новая точность
Новая точность
Число пропу-
Количество до-
Функция
распознавания обу-
распознавания тес-
щенных образ-
полнительных
ошибки
чающей выборки
товой выборки
цов на послед-
эпох обучения
(60000 цифр), %
(10000 цифр), %
ней эпохе
КЭ, отключение
искажений после
99,72
99,23
8
55646
21-й эпохи
СКО, отключение
искажений после
99,3
99,02
8
32803
21-й эпохи
Рис. 4. Изображения неверно распознанных цифр. Число под изображением цифры - порядковый номер в базе MNIST.
Слева - верный ответ => справа - ответ сети
Из рис. 4 нетрудно заметить, что некоторые циф-
цифры, изображения которых некачественны, на-
ры вызывают сомнение даже у человека, например,
пример, 5458, 6572 или 6577. Поэтому работу сис-
образцы с номерами 3423 или 3521. Также есть
темы можно считать высокоэффективной.
256
2010
Компьютерная оптика, том 34, №2
Графики изменения значений функции ошибки
Таблица 3. Процент неверно распознанных символов
от эпохи к эпохе представлены на рис. 5.
на тестовой выборке других систем классификации
Классификатор
Количество оши-
бок на тестовой
выборке (%)
Linear
12
[deslant] Linear
8,4
Pairwise
7,6
K-NN Euclidean
5
[deslant] K-NN Euclidean
2,4
40 PCA + quadratic
3,3
1000 RBF + linear
3,6
[16x16] Tangent Distance
1,1
SVM poly 4
1,1
RS-SVM poly 5
1
[dist] V-SVM poly 9
0,8
28x28-300-10
4,7
[dist] 28x28-300-10
3,6
Рис. 5. Изменение функции ошибки от эпохи к эпохе
[deslant] 20x20-300-10
1,6
Из рис. 5 видно, что на первых эпохах значение
28x28-1000-10
4,5
функции ошибки быстро падает. Однако на после-
дующих эпохах оно меняется незначительно. Также
[dist] 28x28-1000-10
3,8
видна точка отключения механизма внесения иска-
28x28-300-100-10
3,05
жений - 21 эпоха - в первом и третьем эксперимен-
[dist] 28x28-300-100-10
2,5
тах, когда значение функции ошибки резко умень-
28x28-500-150-10
2,95
шилось.
[dist] 28x28-500-150-10
2,45
Таким образом, лучшие результаты распознава-
[16x16] LeNet-1
1,7
ния были получены с функцией ошибки КЭ с при-
менением эластичных искажений и с дополнитель-
LeNet-4
1,1
ным обучением сети без искажений. Стоит также
LeNet-4/Local
1,1
отметить, что обучение сети с функцией ошибки КЭ
LeNet-4/K-NN
1,1
происходит быстрее, так как количество пропускае-
LeNet-5
0,95
мых образцов при обучении составляет более 50%.
[dist] LeNet-5
0,8
Для сравнения эффективности работы реализо-
[dist] Boosted LeNet-4
0,7
ванной сети в таблице 3 приведены результаты, по-
казанные другими классификаторами на тестовом
Заключение
множестве базы MNIST [2].
Для исследования возможностей свёрточных
В таблице 3 представлены результаты линейных
нейронных сетей в распознавании рукописных цифр
классификаторов, нейронных сетей с одним и двумя
была разработана автоматизированная система, реа-
скрытыми слоями, машин опорных векторов, а так-
лизующая модифицированную архитектуру четы-
же сверточных нейронных сетей семейства LeNet.
рёхслойной сети без слоёв подвыборки. Предложена
Из таблицы видно, что минимальная частота оши-
методика обучения сети с использованием чередо-
бок при обработке проверочного набора составляет
вания эпох обучения с искажением обучающих сим-
0,7% для сети Boosted LeNet-4. Стоит заметить, что
волов и без искажения. Предложена методика под-
в этой усиленной нейронной сети комбинировались
бора и модификации коэффициента обучения. Не-
три копии архитектуры LeNet, при этом вторая обу-
смотря на упрощение структуры сети, эксперименты
чалась на смеси образцов, которые первая распозна-
показали высокую эффективность работы системы
вала с ошибками 50%, а третья обучалась на образ-
при распознавании рукописных цифр. Лучшие ре-
цах, которые не были распознаны первыми двумя
зультаты распознавания были получены с функцией
копиями. При тестировании складывались веса
ошибки КЭ с применением эластичных искажений
цифр, полученные во всех трёх сетях, и результат
и с дополнительным обучением сети без искажений.
распознавания зависел от суммарной оценки [2].
Все тесты велись с использованием базы рукопис-
Таким образом, реализованная в рамках данной
ных цифр MNIST. Результаты распознавания со-
работы нейронная сеть при более простой структуре
поставимы с лучшими результатами, показанными
свёрточной сети
(отсутствуют слои подвыборки)
при использовании других методов классификации
показывает результаты распознавания, сопостави-
на этой же базе данных.
мые с сетями LeNet.
257
Применение сверточной нейронной сети для распознавания рукописных цифр
О.П. Солдатова, А.А. Гаршин
Литература
References
1. Козин, Н.Е. Поэтапное обучение радиальных нейрон-
1. Kozin, N.E. Gradual learning the radial neural networks /
ных сетей / Н.Е. Козин, В.А. Фурсов // Компьютерная
N.E. Kozin, V.A. Fursov // Computer Optics. - 2004. -
оптика. - 2004. - № 26. - С. 138-141.
№ 26. - P. 138-141. - (in Russian).
2. LeCun, Y. Gradient Based Learning Applied to Docu-
2. LeCun, Y. Gradient Based Learning Applied to Docu-
ment Recognition / Y. LeCun, L. Bottou, P. Haffner -
ment Recognition / Y. LeCun, L. Bottou, P. Haffner -
IEEE Press, 1998. - P.46.
IEEE Press, 1998. - P. 46.
3. Simard, P.Y. Best Practices for Convolutional Neural
3. Simard, P.Y. Best Practices for Convolutional Neural
Networks Applied to Visual Document Analysis / P.Y. Si-
Networks Applied to Visual Document Analysis / P.Y.
mard, D. Steinkraus, J. Platt // International Conference on
Simard, D. Steinkraus, J. Platt // International Conference
Document Analysis and Recognition
(ICDAR), IEEE
on Document Analysis and Recognition (ICDAR), IEEE
Computer Society. - Los Alamitos. - 2003. - P. 958-962.
Computer Society. - Los Alamitos. - 2003. - P. 958-962.
4. Хайкин, С. Нейронные сети: полный курс / С. Хай-
4. Haykin, S. Neural Networks - a comprehensive founda-
кин. - М.: Вильямс, 2006. - 1104 с.
tion / S. Haykin. - Moscow: Williams, 2006. - 1104 p. -
5. LeCun, Y. Scaling learning algorithms towards AI / Y.
(in Russian).
LeCun, Y. Bengio - MIT Press, 2007.
5. LeCun, Y. Scaling learning algorithms towards AI / Y.
6. Гаршин, А.А., Солдатова, О.П. Автоматизированная
LeCun, Y. Bengio - MIT Press, 2007.
система распознавания рукописных цифр на основе
6. Garshin, A.A., Soldatova, O.P. An automated system of
свёрточной нейронной сети // Свидетельство об офи-
recognizing handwritten digits based on convolution
циальной регистрации программ для ЭВМ
neural networks // Certificate of a formal registration of
№2010610988 по заявке №2009616812 от 1 декабря
computer software
№ 2010610988, the application
2009 года. Зарегистрировано в Реестре программ для
№ 2009616812 on December 1, 2009. Registered in the
ЭВМ 1 февраля 2010 года.
Register of Computer Programs February 1, 2010.
7. LeCun, Y. The MNIST database of handwritten digits -
7. LeCun, Y. The MNIST database of handwritten digits -
http://yann.lecun.com/exdb/mnist.
http://yann.lecun.com/exdb/mnist.
8. LeCun, Y. Efficient BackProp in Neural Networks: Tricks
8. LeCun, Y. Efficient BackProp in Neural Networks: Tricks
of the trade / Y. LeCun, L. Bottou, G. Orr, K. Muller -
of the trade / Y. LeCun, L. Bottou, G. Orr, K. Muller -
Springer, 1998. - 44 p.
Springer, 1998. - P. 44.
9. Bishop, C.M. Neural Networks for Pattern Recognition -
9. Bishop, C.M. Neural Networks for Pattern Recognition -
Oxford University Press, 1995. - 498 p.
Oxford University Press, 1995. - P. 498.
10. Gaussian blur - http://en.wikipedia.org/wiki/Gaussian_blur.
10. Gaussian blur - http://en.wikipedia.org/wiki/Gaussian_blur.
11. Duffner, S. An Online Backpropagation Algorithm with
11. Duffner, S. An Online Backpropagation Algorithm with
Validation Error-Based Adaptive Learning Rate / S. Duff-
Validation Error-Based Adaptive Learning Rate / S. Duff-
ner, C. Garcia // ICANN 2007, Part I, LNCS 4668, 2007. -
ner, C. Garcia // ICANN 2007, Part I, LNCS 4668, 2007. -
P. 249-258.
P. 249-258.
CONVOLUTIONAL NEURAL NETWORK APPLIED TO HANDWRITTEN DIGITS RECOGNITION
O.P. Soldatova, A.A. Garshin
S.P. Korolyov Samara State Aerospace University
Abstract
The capabilities of convolutional neural networks for recognizing handwritten digits. The tech-
nique of training networks, which implements the alternating periods of training with and without
distortion of characters. The technique of selection and modification of learning rate. The neural
network is tested by using the standard database of handwritten digits (MNIST), the results of ex-
perimental investigation are presented.
Key words: recognizing handwritten digits, convolutional neural network, the MNIST data-
base, elastic distortions, generalization ability of neural network.
258
2010
Компьютерная оптика, том 34, №2
Сведения об авторах
Солдатова Ольга Петровна.
1979 год
- окончила факультет автоматики и
вычислительной техники Московского энергетического института, 1990 год - защитила
кандидатскую диссертацию в Московском энергетическом институте. Кандидат
технических наук, доцент кафедры информационных систем и технологий Самарского го-
сударственного аэрокосмического университета имени академика С.П.Королёва (СГАУ).
E-mail: op-soldatova@yandex.ru.В настоящее время основные сферы научных интересов:
применение нейронных и нейронечётких сетей для решения задач распознавания и
прогнозирования; семантический анализ текстов; проектирование нейроимитаторов.
Olga Petrovna Soldatova 1979 - graduated from the Faculty of Automation and Computer
Engineering, Moscow Power Engineering Institute, 1990 - received a doctorate from the Moscow Power Engineering
Institute. Candidate of Technical Science, Associate Professor of Information Systems and Technologies, Samara State
Aerospace University named after academician S.P. Korolyov (SSAU). E-mail: : op-soldatova@yandex.ru .
Currently
the main areas of research: applying the neural and neuro-fuzzy networks for solving recognition and forecasting
tasks; semantic analysis of texts; designing neurosimulators.
Гаршин Александр Александрович. Cтудент факультета информатики Самарского
государственного аэрокосмического университета имени академика С.П.Королёва
(СГАУ). E-mail: garshin.aleks@rambler.ru .
Aleksandr Aleksandrovich Garshin Samara State Aerospace University named after
academician S.P. Korolyov, Department of Information Systems and Technologies, 443086,
Russia, Samara, Moskovskoye road,
34, building
14. E-mail: garshin.aleks@rambler.ru.
Educational background: computer science student of Samara State Aerospace University
named after academician S.P. Korolyov, Department of Information Systems and Technologies
(SSAU).
Поступила в редакцию 5 февраля 2010 г.
259