Я хотел создать свою собственную нейронную сеть - в основном для удовольствия, но также потому, что Ханская Академия не допускает библиотеки, и я не видел хороших нейронных сетей на сайте.
Информация о нейронной сети:
Я показываю на изображениях нейронную сеть 1-2-3-2-1, хотя она делает это для всех размеров и количеств слоев.Толстая линия - это первый тренировочный цикл, который составляет 5000 итераций.Более тонкая линия показывает еще 1000 итераций после первого тренировочного цикла.
Информация о тренировочных данных:
Я переключаю 0 на 1 и 1 на 0.на графиках показаны потери при попытке изменить 1 на 0. Набор данных выглядит следующим образом:
[{
inputs: [0],
outputs: [1]
}, {
inputs: [1],
outputs: [0]
}]
Перед каждой итерацией набор данных рандомизируется.
Я собрал нейронную сеть,но при тестировании я столкнулся с интересной проблемой: она колеблется около 0,5 примерно в 3/4-х долях времени.В остальное время 1/4 времени он работает как задумано.Иногда он идет туда, где он должен (примерно четверть времени) (эти графики показывают потери, при этом линия в центре равна 0):

В другой период времени (может быть, 1/20, очень редко), он будет «придерживаться» 0,5, но затем выкинет себя: 
Или все получится правильно, но затем просто запутаться без причины ( очень редко, почти никогда не бывает): 
Ив остальное время он останется примерно на уровне 0,5: 
Я не имею ни малейшего понятия, что является причиной этого (хотя я думаю, что это может быть моей реализацией градиентного спуска,найти в строке 137 программы) или как их исправить.Вы можете найти программу здесь: khanacademy.org / cs / - / 6305674778411008