Sco*_*ott 8 python scikit-learn
每当sklearn模型适合某些数据时,它就会最小化某些损失函数。如何使用该损失函数获得模型损失?
例如
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
Run Code Online (Sandbox Code Playgroud)
请注意,该.score方法不执行此操作。
LogisticRegression最大限度地减少对数损失,因此您会期望损失为.score, 只能被否定。然而,这实际上返回的是平均准确度。
要计算对数损失,您需要使用以下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)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6373 次 |
| 最近记录: |