r - GBM多项分布,如何使用predict()得到预测类别?

标签 r prediction categorical-data multinomial gbm

我正在使用 R 中的 gbm 包中的多项分布。当我使用 predict 函数时,我得到一系列值:

5.086328 -4.738346 -8.492738 -5.980720 -4.351102 -4.738044 -3.220387 -4.732654

但我想得到每个类别发生的概率。如何恢复概率?谢谢。

最佳答案

predict.gbm(..., type='response') 未针对多项式或除伯努利或泊松以外的任何分布实现。

因此,您必须找到最有可能的类(apply(.., 1, which.max) 在预测的向量输出上),如 desertnaut wrote :

preds = predict(your_model, n.trees, newdata=...,type='response')

pred_class <- apply(preds, 1, which.max)

只需编写一个包装器,它接受 type='response' 并在它是多项模型时返回它。

关于r - GBM多项分布,如何使用predict()得到预测类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18257642/

相关文章:

c++ - Rcpp Armadillo : Using autoconf to disable OpenMP

python - 使用机器学习预测行数

python - 值错误 : Wrong number of items passed - Meaning and suggestions?

python - 对分类变量进行编码,例如 "State Names"

python - pd.get_dummies() 在大级别上变慢

mysql - Unknown column in field list报错Rmysql

r - 如何将特定的Excel表读入R

r - 通过重叠时间间隔查找变量的最大值

python - TensorFlow - 多个可能的标签

r - 更改 R 中因子变量水平的函数