代价敏感学习(Cost-sensitive Learning)的基本思想是:
考虑预测错误的代价,实现对损失函数的权衡。
一、传统学习
传统监督学习算法(如logistic回归)假设各个样本的代价相同:
- 所有正确预测的样本给同样的奖励 +1
- 所有错误预测的样本给同样的惩罚 -1
二、代价矩阵
在代价敏感学习中,我们定义一个代价矩阵,记录不同类型错误的代价:
Predicted
+ -
True
+ 0 c_{+-} 正样本被错误预测为负类的代价
- c_{-+} 0 负样本被错误预测为正类的代价
其中c_{+ -} 与 c_{-+} 通常不同。
三、敏感目标函数
我们定义一个新的损失函数,考虑预测正确样本的奖励,以及不同类型错误的代价:
Loss = -∑ c_{ij} * xij
其中 xij 为样本是否属于第 i 类被预测为 第 j 类。
四、汇总
通过定义不同的代价矩阵,我们可以实现对不同错误类型的偏好。
实现对模型的代价敏感。
总的来说,代价敏感学习的基本思想是:
- 定义一个代价矩阵记录不同错误的代价
- 根据代价矩阵定义新的目标函数
- 按照新的目标函数训练模型
- 实现对不同错误的代价偏好
通过这种方式,我们可以:
- 降低高代价错误的概率
- 提高低代价错误的容忍度
这正是代价敏感学习的含义。