Перцептрон и многослойная сеть
Искусственный нейрон, перцептрон Розенблатта и его предел — задача XOR. Вы узнаете, как скрытые слои, функции активации и обратное распространение ошибки позволяют обучать многослойную сеть.
Список тем (3 из 3)
Глава 1. Основы машинного обучения
Глава 2. Нейронные сети
Искусственный нейрон умножает входные значения x1, x2, ..., xn на соответствующие веса w1, w2, ..., wn, суммирует их, добавляет смещение (bias) b и пропускает результат через функцию активации f: y = f(w1 * x1 + ... + wn * xn + b). В перцептроне, предложенном Фрэнком Розенблаттом в 1958 году, f — ступенчатая функция: если сумма больше нуля, выход равен 1, иначе 0. Перцептрон делит пространство входов гиперплоскостью на две части, поэтому может разделять только линейно разделимые классы.
Правило обучения перцептрона просто: если на примере предсказание ошибочно, веса корректируются по формуле w = w + lr * (y - yhat) * x, а смещение — по формуле b = b + lr * (y - yhat). На линейно разделимых данных (например, логические функции И и ИЛИ) алгоритм за конечное число шагов находит решение. А вот классы функции XOR одной прямой разделить нельзя; Марвин Минский и Сеймур Пейперт доказали это ограничение в 1969 году, что на время снизило интерес к нейронным сетям.
Многослойный перцептрон (MLP) состоит из входного слоя, одного или нескольких скрытых слоёв и выходного слоя; каждый нейрон слоя связан со всеми нейронами следующего. Нелинейные функции активации скрытых слоёв (sigmoid, tanh, ReLU = max(0, z)) позволяют сети изучать криволинейные границы: сеть с двумя скрытыми нейронами способна решить XOR. Без нелинейности любое число слоёв было бы равно одному линейному преобразованию. По универсальной теореме аппроксимации даже один скрытый слой с достаточным числом нейронов может приблизить любую непрерывную функцию с любой точностью, но на практике более глубокие сети эффективнее.
Многослойную сеть обучают алгоритмом обратного распространения ошибки (backpropagation): при прямом проходе сеть вычисляет предсказание и ошибку, а при обратном с помощью цепного правила находится градиент ошибки по каждому весу. Затем веса обновляются градиентным спуском или его усовершенствованными вариантами (например, Adam). Этот процесс повторяется на протяжении эпох, а чтобы вовремя заметить переобучение, следят и за ошибкой на валидационной выборке.
Главное
- Нейрон берёт взвешенную сумму входов, добавляет смещение и пропускает результат через функцию активации.
- Перцептрон разделяет только линейно разделимые классы; XOR ему не по силам.
- Скрытые слои и нелинейная активация (
ReLU,tanh,sigmoid) расширяют возможности сети. - Обратное распространение вычисляет градиент по всем весам с помощью цепного правила.
- Размер сети, скорость обучения и число эпох влияют на риск переобучения.
Практические задания
- Проверьте вручную: что выдаст перцептрон с двумя входами при
w1 = 1,w2 = 1иb = -1.5на четырёх комбинациях входов и какую логическую функцию он вычисляет? - Напишите перцептрон на NumPy: при ошибке обновляйте
wиbпо приведённым формулам; обучите его функциям И и ИЛИ, затем попробуйте на XOR и объясните, почему он не обучается. - В
scikit-learnобучите XOR с помощьюMLPClassifier(hidden_layer_sizes=(4,), activation="tanh", solver="lbfgs", max_iter=2000)(если точность не равна 1.0, изменитеrandom_state), затем уменьшите число скрытых нейронов до 1 и посмотрите, как изменится результат.
Вопросы для закрепления
Проверьте себя: сначала подумайте, потом откройте ответ.
1Почему один перцептрон не может выучить функцию XOR?Показать ответСкрыть ответ
Два класса XOR нельзя разделить одной прямой (они не являются линейно разделимыми), а перцептрон строит только линейную границу.2Что произойдёт в многослойной сети, если все функции активации линейны?Показать ответСкрыть ответ
Композиция линейных преобразований снова линейна, поэтому сеть становится эквивалентной одному слою.3Что вычисляет алгоритм обратного распространения?Показать ответСкрыть ответ
С помощью цепного правила — градиент функции ошибки по каждому весу и смещению; затем этот градиент используется для обновления весов.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Пройдено тем: 0 из 3
Войти и отметить