天软金融分析.NET函数大全 > 金融函数 > 专题函数 > 机器学习 > 机器学习算法评价方法 > 分类算法评价指标

Log_loss    

简述
计算分类模型的对数损失,适用于概率估计模型,即通过输出概率来确定类别的模型,只适用于   单标签分类
定义
Log_loss(y_true:Array;y_pred_pro:Array;labels:Array;sample_weight:Array):real
参数
名称类型说明
y_trueArray一维数组,真实类别,长度与样本数相等
y_pred_proArray二维数组,样本属于各个类别的输出概率
lablels    :一维数组,样本可以取到的类别标签,
不提供则默认是y_true出现过的标签求唯一值
sample_weightArray一维数组,样本权重,默认是等权重
返回real实数,对数损失
  • 范例

    范例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
相关