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