Files
SecondBrain/01 Library/11 Machine Learning/Нейронные сети.md
T
2026-05-07 22:58:05 +03:00

8.6 KiB
Raw Blame History

status, type, tags, created, updated, title
status type tags created updated title
processing concept
machine-learning
neural-networks
2025-12-17 2026-05-07 Нейронные сети

Нейронные сети

Нейронные сети - модели машинного обучения, вдохновлённые принципами работы биологических нейронов. Их основа - набор связанных искусственных нейронов, которые преобразуют входной вектор X в выходной вектор Y.

Два направления в ИИ

В исследованиях искусственного интеллекта можно выделить два направления:

  1. Моделирование результатов естественного мышления

    • важен результат;
    • внутренние механизмы не обязательны;
    • цель - получить поведение, похожее на поведение естественных интеллектуальных систем.

    Примеры: системы нечёткого вывода, экспертные системы, построенные по принципу баз знаний.

  2. Моделирование механизмов естественного мышления

    • важны нейрофизиологические и психологические механизмы;
    • цель - воспроизвести эти механизмы техническими средствами.

    Нейронные сети относятся ко второму направлению.

Биологический нейрон

!Pasted image 20260410103922.png

Входные сигналы дендритного дерева взвешиваются и суммируются на пути к аксону, где генерируется выходной импульс. Выходной сигнал проходит по ветвям аксона и достигает синапсов, соединяющих аксоны с дендритами других нейронов.

Типы нейронов:

  1. Рецепторные - вводят в мозг сенсорную информацию от органов чувств.
  2. Промежуточные - трансформируют сигналы от рецепторных нейронов и передают их дальше.
  3. Эффекторные - формируют необходимое действие.

В 1957 году Фрэнк Розенблатт предложил модель персептрона. С 1970-х годов нейросетевое направление начало активно развиваться.

Одна из классических задач нейронных сетей - распознавание образов: букв, лиц, объектов и т.д.

Искусственный нейрон

Искусственный нейрон состоит из трёх основных элементов:

  • умножители, или синапсы;
  • сумматор;
  • нелинейный преобразователь, или функция активации.

!Pasted image 20260410105854.png

Функцию активации часто называют блоком нелинейного преобразования.

!Pasted image 20260410110002.png

Взвешенная сумма входов:


S=\sum\limits_{i=1}^{n}\omega_i x_i+b

где:

  • x_i - входной сигнал;
  • \omega_i - вес входа;
  • b - смещение (bias).

Смещение можно интерпретировать как порог срабатывания нейрона.

Функции активации

Функция активации добавляет нелинейность. Без неё многослойная сеть сводилась бы к одному линейному преобразованию, а значит не могла бы эффективно моделировать сложные зависимости.

Сигмоида

Функцией активации нейрона часто является сигмоида.

!Pasted image 20260410110555.png

Для логистической функции:


f'(x)=a f(x)(1-f(x))

Если a=1, то:


y'=y(1-y)

То есть производную можно вычислить через уже полученное значение функции. Это удобно для Обратное распространение ошибки.

!Pasted image 20260413130714.png

Гиперболический тангенс

В качестве функции активации также используется гиперболический тангенс:


\operatorname{th}(x)
=
\frac{\operatorname{sh}(x)}{\operatorname{ch}(x)}
=
\frac{e^x-e^{-x}}{e^x+e^{-x}}
=
\frac{e^{2x}-1}{e^{2x}+1}

Как и логистическая функция, гиперболический тангенс является S-образной функцией, но он симметричен относительно начала координат. В точке 0 его значение равно 0.

Бинарная функция

Для сети Хопфилда может использоваться бинарная функция активации:


y_i =
\begin{cases}
1, \\
-1
\end{cases}

!Pasted image 20260413131243.png

В другом варианте бинарная функция возвращает:


y =
\begin{cases}
1, & S \ge \theta \\
0, & S < \theta
\end{cases}

где \theta - порог.

Модели нейронных сетей

Любая нейронная сеть выполняет нелинейное преобразование:


Y=F(X)

Сеть преобразует входной вектор:


X=(x_1,x_2,\dots,x_n)

в выходной вектор:


Y=(y_1,y_2,\dots,y_m)

Конкретный вид преобразования зависит от архитектуры сети, весов и функций активации.

Преимущество нейронных сетей - обучаемость. Веса сети можно представить как набор матриц. Суть обучения сводится к настройке этих весов так, чтобы для входного объекта X сеть выдавала выход Y, близкий к правильному ответу D.

Обучение с учителем

Процесс обучения с учителем:


X^{(1)} \rightarrow D^{(1)} \approx Y^{(1)}

X^{(2)} \rightarrow D^{(2)} \approx Y^{(2)}

\vdots

X^{(p)} \rightarrow D^{(p)} \approx Y^{(p)}

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

Для многослойных сетей основной алгоритм вычисления градиентов - Обратное распространение ошибки. Для сети с произвольным числом слоёв схема вынесена в Backpropagation для многослойной нейронной сети.

Персептрон

Персептрон, или перцептрон, - математическая модель восприятия информации, предложенная Фрэнком Розенблаттом в 1957 году и реализованная в машине «Марк-1» в 1960 году.

Персептрон - один слой искусственных нейронов. Он решает задачу линейной разделимости: разделяет пространство признаков гиперплоскостью.

По смыслу это близко к Линейные модели, потому что решение строится через линейную комбинацию входных признаков и весов.

Связанные заметки

  • Обратное распространение ошибки
  • Backpropagation для многослойной нейронной сети
  • Линейные модели