集成学习,多分类器系统

本文关键字:分类器 系统 学习 集成 | 更新日期: 2023-09-27 18:26:32

我正在尝试使用MCS(多分类器系统)对有限的数据进行更好的处理,即变得更准确。

我目前使用的是K-means聚类,但可能会选择FCM(模糊c-均值),将数据聚类为组(聚类),数据可以表示任何东西,例如颜色。我首先在预处理和标准化后对数据进行聚类,并得到一些介于两者之间的不同聚类。然后,我继续使用聚类作为贝叶斯分类器的数据,每个聚类代表不同的颜色,贝叶斯分类器被训练,然后来自聚类的数据被放入单独的贝叶斯分类器。每个贝叶斯分类器只在一种颜色中进行训练。如果我们将光谱3-10视为蓝色,将光谱13-20视为红色,将光谱0-3视为白色至1.5,然后通过1.5-3逐渐变为蓝色,蓝色变为红色也是如此。

我想知道的是,如何或什么样的聚合方法(如果你会使用的话)可以被应用,以便贝叶斯分类器变得更强,它是如何工作的?聚合方法是否已经知道答案,或者是人类交互纠正了输出,然后这些答案返回到贝叶斯训练数据中?还是两者结合?在Bootstrap聚合中,它涉及到让集合中的每个模型都具有相同的权重,所以在这个特定的例子中,我不太确定我会使用bagging作为聚合方法吗?然而,Boosting涉及通过训练每个新的模型实例来逐步构建集合,以强调以前模型错误分类的训练实例,不确定这是否是装袋的更好替代方案,因为我不确定它是如何在新实例上逐步构建的?最后一种是贝叶斯模型平均,这是一种集成技术,通过从假设空间中对假设进行采样,并使用贝叶斯定律将其组合,来近似贝叶斯最优分类器,但完全不确定如何从搜索空间中对假定进行采样?

我知道,通常你会使用一种竞争性的方法来在两种分类算法之间切换——一种说是的,一种说也许可以应用加权,如果它是正确的,你会得到两种分类器中最好的一种,但为了保密,我不想要一种竞争的方法。

另一个问题是,将这两种方法一起使用是否有益,我知道我提供的例子非常原始,可能不适用于该例子,但它在更复杂的数据中是否有益。

集成学习,多分类器系统

我对您正在使用的方法有一些问题:

  1. K-means在每个聚类中放置最接近它的点。然后使用输出数据训练分类器。我认为分类器可能优于聚类隐式分类,但前提是要考虑每个聚类中的样本数量。例如,如果你的训练数据在聚类后有类型A(60%)、类型B(20%)、类型C(20%);你的分类器会倾向于采用不明确的样本类型A,以获得较少的分类错误
  2. K-的意思取决于你从物体中获得的"坐标"/"特征"。如果使用混合了不同类型对象的功能,则K表示性能将降低。从特征向量中删除这些类型的特征可能会提高结果
  3. 表示要分类的对象的"特征"/"坐标"可能以不同的单位进行测量。这一事实可能会影响您的聚类算法,因为您通过聚类误差函数隐式地设置它们之间的单位转换。使用误差函数,通过多次聚类试验(在不同的聚类初始化时获得)来选择最终的聚类集。因此,对特征向量的不同坐标进行隐式比较(可能引入隐式转换因子)

考虑到这三点,您可能会通过添加预处理阶段来提高算法的整体性能。例如,在计算机视觉应用的对象识别中,从图像中获取的大多数信息仅来自图像中的边界。不使用所有的颜色信息和部分纹理信息。从处理图像的图像中减去边界,以获得定向梯度直方图(HOG)描述符。该描述符返回更好地分离对象的"特征"/"坐标",从而提高分类(对象识别)性能。从理论上讲,描述符抛出图像中包含的信息。然而,它们具有两个主要优点:(a)分类器将处理低维数据;(b)从测试数据计算的描述符可以更容易地与训练数据匹配。

在你的情况下,我建议你尝试采用类似的方法来提高你的准确性:

  1. 为您的聚类算法提供更丰富的功能
  2. 利用该领域的先验知识来决定应该从特征向量中添加和删除哪些特征
  3. 始终考虑获得标记数据的可能性,以便可以应用监督学习算法

我希望这能帮助。。。