Нейронная сеть периодическое изменение стоимости стоимости - PullRequest
0 голосов
/ 12 мая 2019

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

Моя главная проблема заключается в том, что алгоритм колеблется около значения стоимости 0,88 или периодически изменяется от 0,88 до 12. Я не могу затормозить значение 0,88.

Янормализация всех данных.

Есть ссылка на мой репо с ним: https://github.com/mikart143/trainbpx-wine-core

1 Ответ

2 голосов
/ 12 мая 2019

Каждое обучение имеет другой результат из-за случайной инициализации.Таким образом, скаляр стоимости может быть разным для каждого обучения.

Если вы встретили какой-то большой другой результат, я думаю, что такой случай выглядит следующим образом: enter image description here

Итак, я думаю, что стоимость не проблема.

Но, прежде всего, нам нужно подумать об алгоритме машинного обучения.Вывод машинного обучения - это не программа, которая выполняется для получения одинакового результата всегда.Итак, мы не делаем программу.Мы просто устанавливаем алгоритм для эффективного обучения по данным и с целью прогнозирования.

На основании вашего объяснения и кода ваша модель является мультиклассовой классификацией.Итак, существует некоторый алгоритм машинного обучения для классификации нескольких классов, такой как KNN, Случайный Лес и нейронная сеть с softmax.

И нейронная сеть для классификации нескольких классов требует softmax, потому что этобольше подходит, чем сигмовидная.

Знаете, у Сигмоид 0 ~ 1.На самом деле, он подходит для 0 или 1. Так что, как правило, это для двоичной классификации.enter image description here

И, Softmax может дать вероятности, что сумма равна 1. Итак, это для мультиклассовой классификации.

enter image description here

Я видел ваш код, что вы разрабатываете функции для построения нейронной сети с помощью C #.Это великолепно.Но я могу убедиться, что сигмоида недостаточно для вашей модели нейронной сети.

...