我想看看我的模型需要多少步才能达到一定的准确性。在 cifar10 上说 90%。如何从 keras 模型中获取这些信息?
编辑: 每个时期的准确性都可以在历史对象 fit() 返回中访问,但我正在寻找每一步的准确性
解决方案:
我做了一个回调对象,在每一步都保持损失
import pickle
from tensorflow.keras.callbacks import Callback
class LossHistory(Callback):
def __init__(self,path='',name=''):
super(Callback, self).__init__()
self.path = path
self.name=name
self.accuracy = []
self.losses=[]
def on_batch_end(self, batch, logs={}):
self.accuracy.append(logs.get('accuracy'))
self.losses.append(logs.get('loss'))
history_={}
history_['accuracy']=self.accuracy
history_['loss']=self.losses
with open(self.path+self.name+'_history.pkl', 'wb') as f:
pickle.dump(history_,f)