2017-03-08 144 views
2

如何在keras中为回归问题创建并显示准确性度量标准,例如在将预测结果调整到最接近的整数类别之后?在keras中对类进行四舍五入后,如何计算回归模型中的准确性?

虽然准确性本身并没有为回归问题有效地定义,但为了确定数据的类/标签或序号,适合将该问题视为回归。但是,然后计算一个准确性度量也是很方便的,不管它是kappa还是其他类似的东西。这是一个基本的keras样板代码来修改。

from keras.models import Sequential 
from keras.layers.core import Dense, Activation 

model = Sequential() 
model.add(Dense(10, 64)) 
model.add(Activation('tanh')) 
model.add(Dense(64, 1)) 
model.compile(loss='mean_absolute_error', optimizer='rmsprop') 

model.fit(X_train, y_train, nb_epoch=20, batch_size=16) 
score = model.evaluate(X_test, y_test, batch_size=16) 

回答

4

我用圆角精度这样的:

def soft_acc(y_true, y_pred): 
    return K.mean(K.equal(K.round(y_true), K.round(y_pred))) 

model.compile(..., metrics=[soft_acc])