Вопрос

Я пытаюсь запустить ученика NN на одних и тех же данных в 2 разных программах. Хотя все (данные и параметры) одинаковы, а также я вручную устанавливаю начальные веса на одно и то же значение (0), я получаю разные веса в 2 программах. Интересно, что последовательное выполнение каждой программы не меняет независимых результатов. Что я отлаживаю и проверяю:

1) Входные данные,

2) Параметры NN

3) Инициатива веса

4) Метки классов (выходные узлы)

и это все одно и то же. Что еще я должен проверить?

Это было полезно?

Решение

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

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

Другие советы

Как было сказано в ответе 1, это, вероятно, инициализация весов случайными значениями. В общем случае не следует инициализировать веса NN равными нулю, потому что это всегда седловая точка. Это означает, что типичный алгоритм обучения обратного распространения потерпит неудачу.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top