3SELLER Journal 3SELLER →

Как написать нейросеть на питоне: 30 минут до рабочего кода без фреймворков

13.11.2026

Помню свой первый опыт: я скачал какой-то скрипт, запустил, получил цифру на экране и понял - нихрена. Через три дня разбора я наконец-то осознал, что нейросеть - это просто набор чисел, которые учатся. Не магия, не тёмный лес, а математика и немного терпения. Сейчас я тебе покажу, как написать нейросеть на питоне с нуля. Без TensorFlow, без Keras, без магии. Только NumPy и мозги.

Почему начинать нужно с NumPy, а не с Keras

Когда слышишь "нейросеть", сразу вспоминаются тяжёлые фреймворки. Но чтобы понять, как оно работает, лучше построить всё самому. NumPy - это библиотека для математических операций, особенно матричных. А нейросеть внутри - это сплошные матричные умножения. На Reddit новичкам в r/learnpython советуют начинать именно с NumPy, чтобы прочувствовать механику. Поэтому сначала ставь:

pip install numpy

Импортируем и вперёд:

import numpy as np

Всё, больше ничего не нужно. Никаких сложных зависимостей. Через 20 строк кода у тебя будет рабочая сеть, которая обучается на примерах.

Сигмоида и вес - два друга

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

Определяем функцию:

def sigmoid(x):
    return 1/(1 + np.exp(-x))

И её производную, которая нужна для обучения (это градиент, чуть позже станет ясно):

def sigmoid_derivative(x):
    return x * (1 - x)

Теперь создаём класс NeuralNetwork. В нём будет три метода: инициализация, обучение и предсказание.

Код: 9 строк до абсолютного минимума

На Reddit гуляет пример, который пишут в 9 строк. Да, он кастрированный, но наглядно показывает суть. Давай разберём его по частям.

Сначала создаём класс:

class NeuralNetwork:
    def __init__(self):
        np.random.seed(1)
        self.synaptic_weights = 2 * np.random.random((3, 1)) - 1

Метод think - это просто умножение входных данных на веса и прогон через сигмоиду:

    def think(self, inputs):
        return sigmoid(np.dot(inputs, self.synaptic_weights))

Метод train - самая соль. Здесь мы 10000 раз корректируем веса:

    def train(self, training_inputs, training_outputs, iterations):
        for _ in range(iterations):
            output = self.think(training_inputs)
            error = training_outputs - output
            adjustment = np.dot(training_inputs.T, error * sigmoid_derivative(output))
            self.synaptic_weights += adjustment

Всё. Перед тобой полная нейросеть. Три метода, тридцать строк с комментариями. Проверим на простой задаче: пусть входы - три бинарных числа, выход - третье число. Сеть должна выучить логику.

Тестируем на реальном примере

Классический пример из учебников: тренировочный набор из четырёх примеров.

training_inputs = np.array([[0,0,1],
                            [1,1,1],
                            [1,0,1],
                            [0,1,1]])
training_outputs = np.array([[0],
                             [1],
                             [1],
                             [0]])

Обучаем:

neural_network = NeuralNetwork()
neural_network.train(training_inputs, training_outputs, 10000)

Проверяем новый пример [1,0,0]. Сеть должна выдать значение, близкое к 1. Не путай с XOR: здесь выход привязан к среднему числу. В классическом примере сеть обучают именно на XOR. Просто скопируй код и подставь свои данные.

После обучения посмотри, как изменились веса:

print(neural_network.synaptic_weights)

Поднимаем планку: зачем нужен Keras

Эта сеть - учебная. Если хочешь решать реальные задачи - изображения, тексты, таблицы - используй TensorFlow (внутри Keras). Keras - высокоуровневый API, который позволяет создавать модели в пару строк. Но понимать, что происходит под капотом, полезно. Когда ты сам написал нейросеть, Keras не кажется чёрным ящиком.

Мой совет: теперь, когда ты понял механику, иди в Keras и создай свою первую модель на данных о покупках. Или возьми готовую модель из интернета и дообучи её. Так будет в разы быстрее.

Через тернии к звёздам: что дальше?

Ты научился писать питоновскую нейросеть с нуля. Но для сложных проектов (генерация картинок, видео, текстов) нужны большие вычислительные мощности и готовые фреймворки, которые уже умеют всё. Настраивать такое самому - это недели мучений. Хорошая новость: тебе не нужно строить всё с нуля. Есть сервисы, которые дают доступ к готовым флагманским моделям прямо из России.

Зачем изобретать велосипед: используй готовые нейросети

Написать нейросеть на питоне - это классное упражнение для понимания, но в реальной жизни мало кто пишет с нуля. Все используют готовые модели: для текста, картинок, видео. Но вот проблема: многие западные сервисы блокируют российских пользователей. Нет карты? Нет доступа. Решение есть - 3GPT от 3SELLER. 3GPT - ИИ-роутер, который даёт доступ к последним моделям: Chat GPT 6 Astra, Claude Fable 5, Claude Opus 5.5, Chat GPT 5.5 и другим. Платишь 149 рублей в месяц и пользуешься всеми нейросетями из России. Никаких иностранных карт - только российская карта, СБП или крипта. Официальный сайт - 3GPT.

Не стоит решать самому то, что уже решено за тебя. Напиши свою нейросеть для понимания, а для реальных задач используй готовые инструменты. Так надёжнее и в сто раз быстрее.

Бонус: ИИ-агенты из коробки

На 3GPT есть не только модели, но и готовые ИИ-агенты под разные задачи. Выбираешь нужного - и общаешься. Модель агента можно поменять прямо в чате. Удобно, когда нужен помощник под конкретный сценарий: написать код, сгенерировать идеи, проанализировать данные.

Твой следующий шаг

Теперь ты знаешь, как написать нейросеть на питоне. Код из статьи - твой первый фундамент. Дальше - только практика. Напиши свою сеть, потестируй, сломай. Когда устанешь изобретать велосипед - зайди на 3GPT и получи доступ к самым мощным моделям за 149 рублей.

← Вернуться к блогу

Читать дальше