Skip to content

VOINTENT/handwriting_recognition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Программа разбита на 3 модуля.

network.py
Модуль для обучения модели нейронной сети и сохранения ее состояния по умолчанию в файле model.h5. Модель нейросети содержит в себе 784 значения на входном слою, три внутренних слоя, с функциями активации 'Relu' на первых двух, 'Softmax' на третьем, и дропаут в качестве функции регуляризации. В завершающем слою содержится 10 нейронов, каждый из которых отождествляет собой один из классов принадлежности. Запускается из консоли с целью обучения модели нейросети командой python network.py без параметров.

data.py
Модуль для работы с данными, загрузкой их из встроенной библиотеки mnist, имортирование изображений и перевод в числовой вид, формирования confusion matrix, сохранения результатов работы модели в формате json и отображения изображений в числовом и графическом представлении.

main.py
Модуль, содержащий скрипт для работы с предварительно обученной моделью нейросети. Если скрипт запускается без параметров командной строки, в качестве тестовых данных будут браться стандартные данные из модуля mnist.
python main.py

Если скрипту был передан аргумент в командной строке, то данное значение будет использоваться им в качестве директории, в которой хранятся изображения для тестирования. Подразумевается, что данная директория находится в одном месте с данным модулем, а названия изображений начинаются с той цифры, которая изображена на картинке и имеют расширение png
python main.py data

В обоих случаях результаты будут сохранены в файле data.json, а на экран будет выведена confusion matrix. Для получения последнего необходимо наличие хотя бы 10 изображений.

About

Handwritten numbers neural network

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages