Multi-view Learning 多视图学习

Multi-view Learning

Multi-view Learning 定义

通俗来讲,多视图就是从多个角度去学习,提高数据预测准确性~
多视图中可以从多个源或不同的特征子集获得视图。
These views may be obtained from multiple sources or different feature subsets.

例如,一个人可以通过面部,指纹,签名或虹膜,从多个来源获得的信息,而图像可以
由它的颜色或纹理特征表示,可以看作不同的特征子集图像。
在试图组织和突出之间的相似点和不同点各种多视图学习方法,我们审查了一些具有代表性的多视图

在不同领域学习算法并将它们分为三组:

  • co-training 协同训练,
  • multiple kernel learning 多核学习,
  • subspace learning 子空间学习。

Co-training(协同训练) :
trains alternately to maximizethe mutual agreement on two distinct views of theunlabeled data.
值得注意的是,协同训练风格算法交替训练,以最大化两个不同数据视图的相互一致性。
Multiple kernel learning(多核学习) :
exploits kernels that naturally correspond to different views and combine kernels either linearly ornon-linearly to improve learning performance.
利用自然对应于不同视图的内核并线性或非线性地组合内核以提高学习性能。
Subspace learning(子空间学习) :
obtains a latent subspace shared bymultiple views by assuming that the input views are generated fromthis latent subspace.
子空间学习算法旨在通过假设从该潜在子空间生成输入视图来获得由多个视图共享的潜在子空间。

参考材料

http://scholar.google.com.hk/scholar_url?url=https://arxiv.org/pdf/1304.5634&hl=zh-CN&sa=X&scisig=AAGBfm1o503Hv4CN9qBTkVX43k32EqTB8g&nossl=1&oi=scholarr

### 多视图多标签学习的概念与方法 多视图多标签学习(Multi-View Multi-Label Learning, MVML)是一种结合了多视图学习和多标签学习的方法。它旨在利用来自不同视角的数据特征来提高分类性能,尤其是在处理复杂数据集时更为有效。 #### 1. 基本定义 多视图多标签学习的核心在于如何有效地融合多个视图的信息以提升预测精度。每个视图可以看作是从不同的角度描述同一个样本[^1]。例如,在图像识别任务中,颜色直方图可能是一个视图,而纹理特征可能是另一个视图。通过整合这些视图中的互补信息,模型能够更全面地理解输入数据。 #### 2. 方法类别 根据具体实现方式的不同,MVML 可分为以下几类: - **基于集成的学习 (Ensemble-based Methods)** 此类方法通常会针对每一个单独的视图构建独立的基础分类器,并最终采用某种策略组合它们的结果。这种方法的优点是可以充分利用各个视图的独特特性。 - **联合表示学习 (Joint Representation Learning)** 联合表示学习试图找到一种统一的方式将所有视图映射到同一低维空间内进行后续操作。典型代表有CCA(Canonical Correlation Analysis)及其变体。 - **深度神经网络框架下的解决方案** 随着深度学习技术的发展,越来越多的研究者开始探索使用深层架构解决MVML问题。比如引入注意力机制(Multi-head attention mechanism),使得模型能够在训练过程中动态调整各视图的重要性权重[^2]。 #### 3. 数据预处理技巧 对于实际应用而言,除了设计合理的算法外还需要注意一些重要的前期准备工作: - 应用适当的数据增强(Data Augmentation Techniques)可以帮助缓解过拟合现象并增加泛化能力; - 当面对不平衡标签分布的情况时,则需采取相应的平衡措施如重采样或者代价敏感型损失函数等手段加以应对。 ```python import numpy as np from sklearn.multiclass import OneVsRestClassifier from sklearn.svm import SVC # Example of Binary Relevance approach using SVMs. X_train = [[0], [1], [2], [3]] y_train = [ [0, 1], [1, 1], [1, 0], [0, 0] ] classifier = OneVsRestClassifier(SVC(kernel='linear')) classifier.fit(X_train, y_train) print(classifier.predict([[0.8]])) ``` 上述代码片段展示了二元相关法(Binary Relevance)的一个简单实例,其中`OneVsRestClassifier`配合支持向量机完成多标签分类任务。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值