Продюсер: Ю Эр Хат
Автор: Питер
Редактор: Питер
Ng Enda Machine Learning-5-Обучение нейронных сетей
Эта статья доработана на основе нейронной сети из предыдущего раздела, в том числе:
- Функция стоимости нейронной сети
- Метод обратного распространения и объяснение
- градиентный тест
- Краткое изложение нейронных сетей
Функция стоимости нейронной сети
Описание параметра
Объясните метод маркировки нескольких параметров:
- : количество обучающих выборок
- : Входные и выходные сигналы
- : представляет количество слоев нейронной сети
- : количество нейронов в каждом слое
- : указывает количество выходных нейронов
Обсуждение категории
В основном есть две категории: бинарная классификация и мультиклассовая классификация.
Две категории:; вывод - действительное число
Классификация классов:Указывает количествоклассовая ситуация. Выход представляет собой многомерный вектор
функция стоимости
Функция стоимости в логистической регрессии (LR):
J\left(\theta \right)=-\frac{1}{m}\left[\sum_\limits{i=1}^{m}{y}^{(i)}\log{h_\theta({x}^{(i)})}+\left(1-{y}^{(i)}\right)log\left(1-h_\theta\left({x}^{(i)}\right)\right)\right]+\frac{\lambda}{2m}\sum_\limits{j=1}^{n}{\theta_j}^{2}
В логистической регрессии есть только одна выходная переменная, называемая скалярной.scalar
.
Но в нейронной сети будет несколько выходных переменных,Являетсяразмерный вектор.
Предположим, первыйвыходная функция:
функция стоимостиВыражается как:
объяснять:
- Ожидается, что будет наблюдаться ошибка между результатами, предсказанными алгоритмом, и реальной ситуацией через функцию стоимости.
- Каждый ряд функций будет иметьпрогнозы, используя цикл для прогнозирования каждой строки
- существуетВыберите среди прогнозов тот, который имеет наибольшую вероятность, и сравните его с фактическими данными.Сравнивать
- Член регуляризации исключает каждое смещениеПосле этого каждый слойсуммирование матриц
- параметр(Зависит отКоличество единиц активации в слое определяет) зациклить все строки,(Зависит отКоличество единиц активации в слое определяет) цикл по всем столбцам
Алгоритм обратного распространения
Для вычисления частной производной функции стоимости в нейронной сети, Необходимо использоватьОбратное распространение
- Сначала вычислите ошибку последнего слоя
- Погрешность каждого слоя вычисляется в обратном порядке слой за слоем до предпоследнего слоя.
Пример прямого распространения
Предположим, есть выборка данных:
Нейронная сеть имеет 4 слоя, из которых
прямое распространениеОн вычисляется послойно от входного слоя к выходному слою в порядке нейронной сети.
Пример обратного распространения
-
Рассчитать по ошибке последнего слоя:
error = предсказание активированного юнитамежду фактическим значениемразница между
-
использоватьпредставляет ошибку,Ошибка = прогнозируемое значение модели - истинное значение
-
Ошибка предыдущего слоя
вдаПроизводная функции формы, конкретное выражение:
- Ошибка предыдущего слоя
Первый слой — входная переменная, ошибки нет
- Предположение, если не делать регуляризацию
Объясните значение каждого индекса в приведенной выше формуле:
-
представляет слой
-
Представляет индекс единицы активации на вычислительном уровне.
-
представляет индекс единицы ошибки
алгоритм
-
Рассчитайте единицы активации каждого слоя, используя метод прямого распространения
-
Используйте реальные результаты обучающего набора и результаты прогнозирования нейронной сети, чтобы найти ошибку последнего слоя
-
Наконец, используйте ошибку, чтобы вычислить все ошибки до второго уровня, используя метод обратного распространения.
Просить:После этого можно рассчитать частные производные функции стоимости После этого можно рассчитать частные производные функции стоимости:
Интуитивное понимание обратного распространения
Принцип прямого распространения
- 2 блока ввода, 2 скрытых слоя (исключая блоки смещения), 1 блок вывода
- верхний индексПредставляет слой, а нижний индекс представляет объект или атрибут
На картинке небольшая проблема, посмотрите правый нижний угол скриншота! ! !
Согласно выводу, полученному из описанного выше метода обратного распространения:
Принцип обратного распространения
)
расширение параметра
В приведенной выше формуле показано, как использовать метод обратного распространения для вычисления производной функции стоимости.Здесь мы вводим, как преобразовать параметрыРасширение от матричной формы до векторной формы
градиентный тест
Как решить производную в точке
Как получить определенный параметр θθ в функции стоимости
Сводка по нейронной сети
Первая работа
При построении нейронной сети в первую очередь необходимоКак выбрать структуру сети: сколько слоев и сколько нейронных единиц на слой
- Количество единиц в первом слое — это количество функций в нашем обучающем наборе.
- Количество единиц в последнем слое — это количество классов для результата нашего тренировочного набора.
- Если количество скрытых слоев больше 1, убедитесь, что количество единиц в каждом скрытом слое одинаково.Обычно, чем больше количество единиц скрытого слоя, тем лучше.
Шаги обучения нейронной сети
- параметрическийслучайная инициализация
- использоватьпрямое распространениеспособ вычислить все
- написатьВычислить функцию стоимости код
- использоватьобратное распространениеметод вычисляет все частные производные
- использоватьЧисленный тестметод проверки этих частных производных
- использоватьАлгоритм оптимизации для минимизации функции стоимости