0

Чтобы работать над экспериментом для моей диссертации и на примере CNN в TF я создал еще одну небольшую глубокую нейронную сеть в Tensorflow (довольно как и в примере, но в 1d вместо Mnist).Тензорный поток: NN не тренируется при использовании random_normal и random_uniform данных в качестве инициализаторов веса

Дело в том, что данный TF данный пример инициализирует все весовые переменные с помощью tf.truncated_normal data, что заставляет NN обучать мои данные (уменьшение потерь + увеличение точности). Однако, поскольку я пытаюсь подражать нейронной сети из научной статьи, мне пришлось инициализировать весы Свертольного слоя со значениями, взятыми из нормального распределения (и я использовал tf.random_normal с stddev 0,1 для этого), и полностью связанные весы слоев со значениями равномерного распределения (где я использовал tf.random_uniform). Результат был очень плохим, так как я думаю и чувствую, что потеря и точность просто колеблются между небольшими цифрами (точность между 8% и 14% и потерей от 2,51 до 2,54), но не уменьшаются и не растут.

Поскольку я мало нового в этом, и я не очень хорошо знаю, как работает каркас, я спросил, и человек сказал мне, что за каждую итерацию переменные (которые я использую как инициализаторы) всегда перезапускается (и что это не так, как с данными tf.truncated_normal), и поэтому мой нейрон с этими двумя типами инициализаций никогда не учится. Если это так, то может понравиться кто-нибудь сказать мне, как я мог бы сделать эти значения только для использования в качестве инициализаторах и не перебирать

Мой код можно найти здесь: https://github.com/dialgop/small_deep_nn/blob/master/Cnn_Model_Martin.ipynb

Спасибо большое всем, кто может помочь me

ответ

1

На самом деле то, что вы наблюдаете как колеблющуюся точность, является следствием отсева в вашем тестовом коде: «Отброс» используется только на этапе обучения и должен быть отключен на этапе тестирования, а именно с вероятностью 1. точность просто вызвана случайностью в выпадении на вашем этапе тестирования.

Смежные вопросы