сделать вывод более разреженным - PullRequest
0 голосов
/ 10 мая 2018

Я обучил нейронную сеть с типом MLP для модели прогнозирования.Прогнозируемое значение отображается следующим образом.Возможно ли позволить прогнозируемому значению стать более разреженным?Другими словами, я хотел бы, чтобы эта предсказанная последовательность имела меньшее количество пиков.Я могу добавить порог, чтобы сделать аналогичную работу.Но я предпочитаю, чтобы модель изучала это автоматически.Я пробовал регуляризатор активности типа L1.Но это не очень помогло.

model= Sequential()
model.add(Conv1D(60,32, strides=1, activation='relu',padding='causal',input_shape=(64,1)))
model.add(Conv1D(80,10, strides=1, activation='relu',padding='causal'))
#model.add(Conv1D(100,5, strides=1, activation='relu',padding='causal'))
model.add(MaxPooling1D(2))
model.add(Dense(300,activity_regularizer=regularizers.l1(0.01),activation='relu'))
model.add(Flatten())
model.add(Dense(1,activation='linear'))

enter image description here

1 Ответ

0 голосов
/ 10 мая 2018

Если вы считаете, что меньшие пики вызваны перенастройкой к тренировочным данным, вы можете попробовать добавить слой Dropout вместо вашего activity regularizer.Например:

model.add(Dropout(0.2, input_shape=(300,)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...