Слишком хорошие результаты на тестовых данных нейросети

Вопрос- полносвязный персептрон на определенном наборе и тренировочных и тестовых данных, в начале обучения быстро растет точность на проверочной выборке, намного превосходя точность на тренировочных данных. На этом наборе данных описанная картина повторяется(не зависит от начального распределения весов). Далее в процессе обучения тестовые результаты ухудшаются, становятся меньше тренировочных. Тестовые данные 20% от конца выборки, всего порядка 1600 экземпляров.

   `model = keras.Sequential()
    model.add(layers.Dense(1024, activation="relu", name="layer1", input_dim=nimp))    
    model.add(layers.Dropout(0.4))
    model.add(layers.Dense(32, activation="relu", name="layer2"))
    model.add(layers.Dropout(0.4))
    model.add(layers.Dense(2, activation="sigmoid", name="layer3"))
    model.compile(optimizer=keras.optimizers.Adam(0.0005),            
                loss='categorical_crossentropy',
                metrics=['categorical_accuracy'])`

Мне это не понятно, подскажите, с чем может быть связано такое поведение? Возможно это перекос суммы датасета:

 sum(np.sum(indata_test,axis=1)*t_test[:,1])/np.sum(t_test[:,1],axis=0)
 11.390132806644177
 sum(np.sum(indata_test,axis=1)*t_test[:,0])/np.sum(t_test[:,0],axis=0)
 12.654423331070447

Графики сглажены y[i] = y[i-1] + (y - y[i-1])/20


Ответы (0 шт):