Найти тему
Блог Хонеста

Своя нейронная сеть. КАК? Часть 1.

Всем привет! Сегодня я расскажу, как сделать нейронную сеть с нуля на языке программирования Python, которая распознает рукописные цифры, буквы, знаки и т.д.

Искусственный интеллект, вместе с квантовыми компьютерами (если вы хотите я расскажу и о них) стали хитом мира IT. Везде в современном мире услышишь эти слова в какой-либо стране Вы не были. Корпорации такие как Google, Яндекс, Apple, Amazon, Microsoft и другие берут их в полную. Сейчас кто знает нейронные сети ОЧЕНЬ востребованы. Давайте же их изучать!

Мы в этой статье будем изучать перцептрон. Выглядит в графическом представлении примерно так:

Перцептрон.
Перцептрон.

Голубые круги, это входы. Они могут быть или нулем или единицей. Красные линии это синапсы, или же связи. У них есть так называемый вес связей, это w. Вес связи это коэффициент или же простыми словами важность этой связи. Далее, y — это нейрон, который принимает сумму входов перемноженных на веса связей, и возвращает результат функции активации нейрона. Функций активации нейрона сейчас существует много. Обычно используют логистическую функцию или же сигмоиду (это одно и тоже).

График сигмоиды (логистической функции).
График сигмоиды (логистической функции).

Формула этой функции следующая:

-4

где число e примерно равно 2,71 и x это сумма входных нейронов умноженных на веса связей.

Давайте начнем писать код.

Для нашей нейронки понадобится модули numpy для упрощения работы с многомерными размерами и Pillow (PIL) для работы с изображениями. Изначально я хотел использовать MNIST, но потом решил сам нарисовать обучающие данные. Моя нейронная сеть настроена только на черно-белые изображения, поэтому я решил сразу сделать их черно-белыми. Чем больше изображений, тем лучше!

Рисую примеры... )
Рисую примеры... )

На пока что все. Если вы еще не поставили лайк, то обязательно поставь его, а если ты еще не подписан, то подпишись. Всем пока!