问题1:问题刚开始的那篇博客是怎么回事。
我认为那篇博客的理解与实际论文是有偏差的论文在这里()。1)GBDT能解决的是multi-class问题而不是multi-label问题
multi-class是只能属于一类,multi-label是可以同时属于多类比如说,你在男/女二分类中只能是其中一种性别在人脸属性(黑头发,蓝眼睛双眼皮)中可以同时是黑头发、双眼皮。2)GBDT做分类时每一次迭代需要有k棵树,k是类别数目每棵树对一个类别进行預测。每个叶子节点也只是输出一个值可把这颗树看作一个函数f,f将输入样本的特征映射为该值(注意,该值并不是类别的概率概率还需要一个logistic转化,logistic regression是:特征x先转化成实值z然后z经过logistic regression转化成概率p(x),这里叶子节点的值相当于z)另:论文中专门提到了关于二分类的问題,比multi-class要简单些
我没有用过xgboost,通过你描述的输出 “输出预测preds为一个一维的1611维度向量值在【0,1】区间” 你可以检查一下 训练数据和测试數据的格式比如说每行代表一个样本还是特征的一个维度。关于叶子节点值的意义问题1中已经说了可以对应理解一下。
问题3:每次输絀的模型不太明白你的意思。
softmax的形式和损失函数: