范例01:
//提供labels参数,建议要提供,保证标签顺序是正确的
y_true := array('1', '4', '5'); //样本的真实标签
y_pred := array((0.1, 0.6, 0.3, 0, 0, 0, 0, 0, 0, 0),
(0, 0.3, 0.2, 0, 0.5, 0, 0, 0, 0, 0),
(0.6, 0.3, 0, 0, 0, 0.1, 0, 0, 0, 0)); //样本的预测概率
labels := array('0','1','2','3','4','5','6','7','8','9');
//所有标签,注意与y_pred列的数目相等
return Log_loss(y_true,y_pred,labels); //结果是1.1688
范例02:
//不提供labels参数: y_true := array('1', '4', '5');
//样本的真实标签,注意取唯一值后的labels长度应该等于y_pred的列数
y_pred := array((0.1, 0.6, 0.3),
(0, 0.3, 0.2),
(0.6, 0.3, 0)); //样本的预测概率
return Log_loss(y_true,y_pred); //12.4507
范例03:
//提供sample_weight,参数,不采用等权重处理
y_true := array('1', '4', '5'); //样本的真实标签
y_pred := array((0.1, 0.6, 0.3, 0, 0, 0, 0, 0, 0, 0),
(0, 0.3, 0.2, 0, 0.5, 0, 0, 0, 0, 0),
(0.6, 0.3, 0, 0, 0, 0.1, 0, 0, 0, 0)); //样本的预测概率
labels := array('0','1','2','3','4','5','6','7','8','9');
//所有标签,注意与y_pred列的数目相等
sample_weight := array(1,1.5,2); //可以是小数
return Log_loss(y_true,y_pred,labels,sample_weight); //1.3679