例如,使用决策树进行药物预测问题。我训练了决策树模型,并希望使用新的数据进行预测。
例如:
patient, Attr1, Attr2, Attr3, .., Label
002 90.0 8.0 98.0 ... ? ===> predict drug A
如何计算药物A预测结果的可信度或概率?
发布于 2016-05-30 15:01:55
您使用什么数据挖掘包?
在sklearn中,DecisionTreeClassifier可以给出概率,但是您必须使用max_depth
之类的东西来截断树。它返回的概率是P=n_A/(n_A+n_B),即A类的观察被该叶子“捕获”的数量超过该叶捕获的全部观测数(在训练期间)。但同样,您必须修剪或截断决策树,因为否则决策树将一直生长到每一叶中的n=1和P=1。
话虽如此,我认为你想用一些像随机森林一样的东西。在随机林中,通过使用数据的不同累进来训练多个决策树。最后,通过决策树对每个类的投票比例来计算概率。我认为这是一种比使用单个决策树更可靠的估计概率的方法。
但是随机森林是不可解释的,所以如果可互换性是一个要求,就像我提到的那样使用决策树。你可以使用网格搜索,通过改变超参数,如最大深度,找到任何给出最可靠概率的决策树,使ROC AUC得分最大化。
https://datascience.stackexchange.com/questions/11171
复制相似问题