-
-
OvO
- 拆分策略:将多个标签拆分两两成对的基评估器。
- 集成策略:将新数据代入,计算在二分类的基评估器下,模型更倾向对哪个标签进行投票,汇总所有基评估器的结果,投票数量最多的为最终标签。
- 基评估器数量:需要的基评估器数量为
-
OvR
- 拆分策略:将多个标签分为01标签,得到标签数量个基评估器。
- 集成策略:将新数据带入基评估器,最终得到1的基评估器对应的标签为预测结果。如果有多个标签为1的基评估器,则根据基评估器本身的准确率来判断。
- 基评估器数量:为标签数量N
-
MvM
- 拆分策略:将任意数量标签划分为1,其他划分为-1,最多标签数量为
,得到数据在所有基评估器上的编码。
- 集成策略:将新数据带入基评估器,得到新的编码,对比与之前标签编码的差异,选择差异最小的编码对应的标签为预测结果。
- 如何计算编码差异大小:
-
欧几里德距离:
-
街道距离:
-
闵可夫斯基距离:
def dist(x,y,cat=2): """ 计算闵可夫斯基距离 cat:数组中数的数量,默认计算欧氏距离 """ d=np.abs(x-y) if x.ndim>1 or y.ndim>1: # 多维数组情况下 res=np.power(np.power(d,cat).sum(1),1/cat) else: # 二维数据情况下 res=np.power(np.power(d,cat).sum(),1/cat) return res x=np.array([2,2]) y=np.array([2,3]) dist(x,y)
-
- 拆分策略:将任意数量标签划分为1,其他划分为-1,最多标签数量为
-