Керас - построение значений в тензорной доске - PullRequest
0 голосов
/ 09 мая 2018

У меня есть следующий код (с использованием Keras):

self.tensorboard = TensorBoard(log_dir='./logs', histogram_freq=0,
                                   write_graph=False, write_images=True)

input_ = Input(shape=self.s_dim, name='input')
hidden = Dense(self.n_hidden, activation='relu')(input_)
out = Dense(3, activation='softmax')(hidden)

model = Model(inputs=input_, outputs=out, name="br-model")
model.compile(loss='mean_squared_error', optimizer=SGD(lr=0.005), metrics=['accuracy'])

# Some stuff in-between
model.fit(batch, target, epochs=2, verbose=0, callbacks=[self.tensorboard])

for k in batch:
    exploitability.append(np.max(model.predict(batch[k]))

Это график потерь и точности по тензорной доске.

Но я хочу построить np.average(exploitabilty) и на тензорной доске - как это работает? Есть ли возможность передать его как метрику или что-то подобное?

1 Ответ

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

Вы можете добавить собственные метрики к вашей модели при компиляции, например ::

def custom_metric(y_true, y_pred):
    max = K.max(y_pred)
    return max

model.compile(loss='mean_squared_error', optimizer=SGD(lr=0.005), 
              metrics=['accuracy', custom_metric])
...