请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

新版本scikit-learn中,关于OvR与OvO的相关问题

图片描述
老师您好,我的scikit-learn是0.23版本的,在处理多分类问题时,创建LogisticRegression对象时用的默认值auto与
使用OvO指定的multi_class=“multinomial”, solver=“newton-cg” 创建的两个对象,调用score方法的结果是一样的,当初您录制视频时用的那个版本,默认是使用OVR,而最新版本的既不是OvR也不是OvO,而是auto,想问下这个auto是不是指的就是OvO呢?

正在回答

1回答

根据 sklearn 文档的解释,现在当 multi_class = "auto" 的时候,如果你的数据只有两个类别,或者 solver 是 liblinear 的话,相当于是 ovr,否则的话,是 multinomial:https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html

//img1.sycdn.imooc.com/szimg/6011b83d09d1c83a08190237.jpg


下面的问题就是,multinomial 是什么?


这个概念在课程中没有介绍。简单来说,此时,整个模型是一个新的模型,这种模型被称为 softmax。softmax 可以解决多分类问题,但是,当分类数量为 2 时,softmax 会退化为和逻辑回归一样。所以,可以当做 softmax 是逻辑回归在多分类问题上的拓展和泛化;逻辑回归是 softmax 在二分类问题上的特例。


具体 softmax 在这个课程里没有介绍,因为这个概念和神经网络,深度学习等连在了一起,不在这个课程的范围里了。可以参考这里的讨论:http://coding.imooc.com/learn/questiondetail/117668.html


如果有兴趣,可以找相关资料再学习一下。


继续加油!:)

0 回复 有任何疑惑可以回复我~
  • 提问者 kongba #1
    老师您好,我昨天大致看了下官方文档关于multi_class的介绍,没明白"数据只有两个类别",这两个类别具体指的是什么呢?
    回复 有任何疑惑可以回复我~ 2021-01-28 11:20:22
  • liuyubobobo 回复 提问者 kongba #2
    就是二分类问题。
    回复 有任何疑惑可以回复我~ 2021-01-28 14:28:49
  • 提问者 kongba #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2021-01-28 16:15:01
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信