Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Нейронные сети — основные компоненты
Нейронная сеть строится из нескольких ключевых элементов, которые вместе образуют систему для обучения на данных.
Основные компоненты
1. Нейроны (Neurons)
Базовая единица, которая принимает входные данные, применяет преобразование и выдаёт выход:
Вход → [Веса × Входы + Смещение] → [Активационная функция] → Выход
2. Слои (Layers)
Входной слой → Скрытые слои → Выходной слой
(Input) (Hidden) (Output)
[x1] [н1] [y1]
[x2] → [н2] → [y2]
[x3] [н3] [y3]
(и ещё...)
3. Веса и смещение (Weights & Bias)
Учитываемые параметры, которые модель учит:
output = activation(weight * input + bias)
4. Активационные функции
- ReLU — для скрытых слоёв (max(0, x))
- Sigmoid — для бинарной классификации (0-1)
- Softmax — для мультиклассификации (вероятности)
- Tanh — альтернатива Sigmoid
5. Функция потерь (Loss Function)
Измеряет ошибку модели:
# Классификация
Crossentropy(predicted, actual)
# Регрессия
MeanSquaredError(predicted, actual)
6. Оптимизатор (Optimizer)
Алгоритм, который обновляет веса на основе ошибки:
- SGD — базовый
- Adam — популярный (с инерцией)
- RMSprop — для RNN
Полный процесс
import tensorflow as tf
from tensorflow import keras
# 1. Построить сеть (архитектура)
model = keras.Sequential([
keras.layers.Dense(128, activation='relu', input_shape=(784,)), # Скрытый слой
keras.layers.Dense(64, activation='relu'), # Скрытый слой
keras.layers.Dense(10, activation='softmax') # Выходной слой
])
# 2. Скомпилировать (функция потерь + оптимизатор)
model.compile(
optimizer='adam', # Оптимизатор
loss='categorical_crossentropy', # Функция потерь
metrics=['accuracy'] # Метрика
)
# 3. Обучить на данных
model.fit(X_train, y_train, epochs=10, batch_size=32)
# 4. Предсказать
predictions = model.predict(X_test)
Типы сетей
Полносвязная сеть (Dense) — каждый нейрон связан со всеми из предыдущего слоя
Сверточная (CNN) — для изображений, использует фильтры
Рекуррентная (RNN) — для последовательностей, имеет память
Трансформер — для NLP, использует attention механизм
Процесс обучения
- Forward pass — данные проходят через сеть
- Вычисление ошибки — loss function
- Backpropagation — вычисляем градиенты
- Обновление весов — оптимизатор двигает веса в сторону минимума
- Повторяем — пока ошибка не уменьшится
На практике в Python
import numpy as np
from sklearn.neural_network import MLPClassifier
# Простая сеть
clf = MLPClassifier(
hidden_layer_sizes=(100, 50), # Архитектура
activation='relu', # Активация
solver='adam', # Оптимизатор
max_iter=1000 # Эпохи
)
clf.fit(X_train, y_train)
accuracy = clf.score(X_test, y_test)
Итог
Нейронная сеть строится из:
- Нейронов — базовые единицы
- Слоёв — организация нейронов
- Весов — учитываемые параметры
- Активационных функций — нелинейность
- Функции потерь — измерение ошибки
- Оптимизатора — обучение сети
Это базовые компоненты, которые создают основу для всех modern AI моделей.