每当sklearn
模型适合某些数据时,它就会使某些损失函数最小化。如何使用该损失函数获得模型损失?
e.g。
model = sklearn.linear_model.LogisticRegression().fit(X_train,y_train)
model.get_loss(X_train, y_train) #gives the loss for these values
model.get_loss(X_test, y_test) #gives the loss for other values
请注意,.score
方法不会这样做。
答案 0 :(得分:2)
LogisticRegression
可以最大限度地减少日志丢失,因此您可以预期损失为.score
,只会被忽略。但是,这实际上会返回mean accuracy。
要计算日志丢失,您需要使用log_loss
指标:
我没有测试过,但是这样的话:
from sklearn.metrics import log_loss
model = sklearn.linear_model.LogisticRegression().fit(X_train, y_train)
loss = log_loss(X_test, model.predict_proba(X_test), eps=1e-15)