【不肯定】OvO AND OvR的实现
来源:9-8 OvR与OvO
黄义舜
2022-08-27
我在实现我在OvO AND OvR的过程中,我不太确定自己思路是否正确。
一、OvR
OvR我觉得问题不大,写了一遍我觉得清晰很多了,
数据准备
训练数据
- 选取9个小球,X=9
- 共有三种颜色,红黄蓝,y = 3红 or 3黄 or 3蓝
训练过程
分为三个训练器
- 训练器1 ==红和其他类别
- 训练器2 ==黄和其他类别
- 训练器3 ==蓝和其他类别
整理数据
原始数据【红,红,红,黄,黄,黄,蓝,蓝,蓝】
- 在训练器1中将数据变成这样【红,红,红,灰,灰,灰,灰,灰,灰】
- 在训练器2中将数据变成这样【灰,灰,灰,黄,黄,黄,灰,灰,灰】
- 在训练器3中将数据变成这样【灰,灰,灰,灰,灰,灰,蓝,蓝,蓝】
这样就把一个多分类问题变成了三个二分类问题。 - 通过逻辑回归计算出训练器1红色与灰色的决策边界
- 通过逻辑回归计算出训练器1黄色与灰色的决策边界
- 通过逻辑回归计算出训练器1蓝色与灰色的决策边界
测试过程
数据准备
一个红球
- 一个红球进入三个训练器,分别得到三种概率(0.9,0.1,0.01)
- 选取概率最高的训练器1,判断这个求是红球的概率为90%
- 判断概率>50%,输出y=红色
多个球的话依次类推
二、OvO
ovo,我不大确定我觉得有点理不清
数据准备
训练数据(老样子)
- 选取9个小球,X=9
- 共有三种颜色,红黄蓝,y = 3红 or 3黄 or 3蓝
训练过程
分为三个训练器
- 训练器1 ==红球和蓝球
- 训练器2 ==红球和黄球
- 训练器3 ==蓝球和黄球
整理数据 《不确定1》
原始数据【红,红,红,黄,黄,黄,绿,绿,绿】
- 在训练器1中将数据变成这样【红,红,红,蓝,蓝,蓝】
- 在训练器2中将数据变成这样【红,红,红,黄,黄,黄】
- 在训练器3中将数据变成这样【黄,黄,黄,蓝,蓝,蓝】
《不确定2》
将三分数据分别输入三份训练器,从而得到三个决策边界
测试过程
《不确定3》
数据准备
一个红球
- 一个红球进入训练器1,训练器2和训练器3
- 分别得出三条概率(红:92%,蓝10%)(红:90%,黄:10%)(黄:11%,蓝:13%),
- 选取概率最高的,判断为红色
- y=红色
老师OvO我觉得,我的过程可能错了,但我不大确定正确的样子是怎么样的,希望您能指点一下迷津。
2回答
-
对 OvR 的理解完全正确:)
==========
关于 OvO
不确定性 1:
正确的。OvO 每次只选取两个类别的数据训练一个分类器。这会使得每个分类器需要面对的数据大大减少;
不确定性2:
正确的。更广义的说,面对一个 N 分类问题,OvO 需要训练 N * (N - 1) / 2 个分类器。(就是 C(N, 2))对比 OvR,需要训练 O(N) 个分类器。虽然 OvO 需要训练的分类器很多,但是每个分类器面对的数据量变少了。
不确定性3:
这一步你的理解有误。OvO 决定最终分类,不是靠概率,而是靠“投票”。我们在课程后续介绍集成学习的时候,也会再介绍投票这个概念的。
简单来说,对于你的例子:(红:92%,蓝10%)(红:90%,黄:10%)(黄:11%,蓝:13%),
所以:
第一个分类器判断为 红
第二个分类器判断为 红
第三个分类器判断为 蓝(实际上你给出的这个黄蓝的数据应该是有问题的,因为第三个分类器只针对黄蓝数据做分类,所以得到的黄蓝的概率和(如果是能计算出概率的算法的话)应该为 1)
三个分类器,有两个分类器判断为 红;判断为红的分类器最多。所以最终,OvO 的判断是 红。
更广义的说,用 OvO 处理 N 分类问题,创建了 N * (N - 1) / 2 个分类器。
这些分类其中,如果分类为 x 类别的分类器最多的话,则 OvO 给出的分类结果就是 x;
如果有多个类别,判断为这些类别的分类器同样都是最大值的话,则可以进一步看这些分类器的分类指标的统计值(比如概率的均值。)
继续加油!:)
022023-02-15 -
lemonlxn
2023-02-15
我做了一个summary,可参考
012023-02-16