Traditional data mining usually deals with data from a single domain. In the big data era, we face a diversity of datasets from different sources in different domains. These datasets consist of multiple modalities, each of which has a different representation, distribution, scale, and density. How to unlock the power of knowledge from multiple disparate (but potentially connected) datasets is paramount in big data research, essentially distinguishing big data from traditional data mining tasks. This calls for advanced techniques that can fuse the knowledge from various datasets organically in a machine learning and data mining task. These methods focus on knowledge fusion rather than schema mapping and data merging, significantly distinguishing between cross-domain data fusion and traditional data fusion studied in the database community.
Figure 1. The difference between cross-domain data fusion and conventional data fusion
This tutorial summarizes the data fusion methodologies, classifying them into three categories: stage-based, feature level-based, and semantic meaning-based data fusion methods. The last category of data fusion methods is further divided into four groups: multi-view learning-based, similarity-based, probabilistic dependency-based, and transfer learning-based methods.
Figure 2 Categories of methods for cross-domain data fusion
This tutorial does not only introduce high-level principles of each category of methods, but also give examples in which these techniques are used to handle real big data problems. In addition, this tutorial positions existing works in a framework, exploring the relationship and difference between different data fusion methods. This tutorial will help a wide range of communities find a solution for data fusion in big data projects.
(Download the survey paper)
Yu Zheng. Methodologies for Cross-Domain Data Fusion: An Overview. IEEE Transactions on Big Data, vol. 1, no. 1. 2015.
This category of methods uses different datasets at the different stages of a data mining task. So, different datasets are loosely coupled, without any requirements on the consistency of their modalities. the stage-based data fusion methods can be a meta-approach used together with other data fusion methods. For example, Yuan et al. [3] first use road network data and taxi trajectories to build a region graph, and then propose a graphical model to fuse the information of POIs and the knowledge of the region graph. In the second stage, a probabilistic-graphical-model-based method is employed in the framework of the stage-based method.
Figure 3. Illustration of the stage-based data fusion
Examples:
As illustrated in Fig. 3 A), Zheng et al. first partition a city into regions by major roads using a map segmen-tation method. The GPS trajectories of taxicabs are then mapped onto the regions to formulate a region graph, as depicted in Fig. 3 B), where a node is a region and an edge denotes the aggregation of commutes (by taxis in this case) between two regions. The region graph actually blends knowledge from the road net-work and taxi trajectories. By analyzing the region graph, a body of research has been carried out to identi-fy the improper design of a road network, detect and diagnose traffic anomalies as well as find urban functional regions.
Figure 4. An example of using the stage-based method for data fusion
Straightforward methods in this category treat features extracted from different datasets equally, concatenating them sequentially into a feature vector. The feature vector is then used in clustering and classification tasks. As the representation, distribution and scale of different datasets may be very different, quite a few studies have suggested limitations to this kind of fusion. Advanced learning methods in this sub-category suggest adding a sparsity regularization in an objective function to handle the feature redundancy problem. As a result, a machine learning model is likely to assign a weight close to zero to redundant features. More advanced methods have been proposed to learn a unified feature representation from disparate datasets based on DNN.
Figure 3. two sub-categories of the feature-level-based data fusion
Feature-based data fusion methods do not care about the meaning of each feature, regarding a feature solely as a real-valued number or a categorical value. Unlike feature-based fusion, semantic meaning-based methods understand the insight of each dataset and relations between features across different datasets. We know what each dataset stands for, why different datasets can be fused, and how they reinforce between one another. In addition, the process of data fusion carries a semantic meaning (and insights) derived from the ways that people think of a problem with the help of multiple datasets. Thus, they are interpretable and meaningful. This section introduces four groups of se-mantic meaning-based data fusion methods: multi-view-based, similarity-based, probabilistic dependency-based, and transfer-learning-based methods.
Different datasets or different feature subsets about an object can be regarded as different views on the object. For example, a person can be identified by the information obtained from multiple sources, such as face, fingerprint, or signature. An image can be represented by different feature sets like color or texture features. As these datasets describe the same object, there is a latent consensus among them. On the other hand, these datasets are complementary to each other, containing knowledge that other views do not have. As a result, combining multiple views can describe an object comprehensively and accurately. The multi-view learning algorithms can be classified into three groups: 1) co-training, 2) multiple kernel learning, and 3) subspace learning. Notably, co-training style algorithms train alternately to maximize the mutual agreement on two distinct views of the data. Multiple kernel learning algorithms exploit kernels that naturally correspond to different views and combine kernels either linearly or non-linearly to improve learning. Subspace learning algorithms aim to obtain a latent subspace shared by multiple views, assuming that the input views are generated from this latent subspace.
Figure 4. Multi-view learning
Similarity lies between different objects. If we know two objects (X, Y) are similar in terms of some metric, the information of X can be leveraged by Y when Y is lack of data. When X and Y have multiple datasets respectively, we are can learn multiple similarities between the two objects, each of which is calculated based on a pair of corresponding datasets. These similarities can mutu-ally reinforce each other, consolidating the correlation between two objects collectively. The latter enhances each individual similarity in turn. For example, the similarity learned from a dense dataset can reinforce those derived from other sparse datasets, thus helping fill in the missing values of the latter. From another perspective, we can say we are more likely to accurately estimate the similarity between two objects by combining multiple datasets of them. As a result, different datasets can be blended together based on similarities. Coupled matrix factorization and manifold alignment are two types of representative methods in this category.
A probabilistic graphical model is a probabilistic model for which a graph expresses the conditional depend-ence structure between random variables. Generally, it uses a graph-based representation as the foundation for encoding a complete distribution over a multi-dimensional space. The graph can be regarded as a compact or factorized representation of a set of independences that hold in the specific distribution. Two branches of graphical representations of distributions are commonly used, namely, Bayesian Networks and Markov Networks (also called Markov Random Field). Both families encompass the properties of factorization and independences, but they differ in the set of independences they can encode and the factorization of the distribution that they induce.
A major assumption in many machine learning and data mining algorithms is that the training and future data must be in the same feature space and have the same distribution. However, in many real-world applications, this assumption may not hold. For example, we sometimes have a classification task in one domain of interest, but we only have sufficient training data in an-other domain of interest, where the latter data may be in a different feature space or follow a different data distribution. Different from semi-supervised learning, which assumes that the distributions of the labeled and unlabeled data are the same, transfer learning, in contrast, allows the domains, tasks, and distributions used in training and testing to be different.
In the real world, we observe many examples of transfer learning. For instance, learning to recognize tables may help recognize chairs. Learning riding a bike may help riding a moto-cycle. Such examples are also widely witnessed in the digital world. For instance, by analyzing a user’s transaction records in Amazon, we can diagnose their interests, which may be transferred into another application of travel recommendation. The knowledge learned from one city’s traffic data may be transferred to another city.
鸿煊
计算机/大数据/机器学习
94 人赞同了该文章
摘要:传统的数据挖掘是处理单一数据域中的问题。本文提出了不同数据域中不同数据源的多样的数据集中不同的数据形式(不同的特征、分布、规模和密度)。本文总结了三种数据融合的方法:基于平台的、基于特征的和基于语义的数据融合方法。基于语义的数据融合方法可以细分为四种:基于多视角学习、基于相似性、基于相互依赖和迁移学习方法。本文从已经实现了系统分析其中的原理和实现方式,分析不同数据融合方法的关联和不同,对大数据工程中数据融合提供了解决方案。
1.简介 数据来源主要有:社交媒体、交通、医疗、无线通信等。如:要改善城市规划,我们需要考虑道路结构、交通流量、人口等因素。为解决空气污染问题,我们需要气象数据和空气质量数据、汽车和工厂的排放量和地域的扩散情况。为了给用户提供更加精准的旅行建议,我们需要收集用户在网上的行为信息和现实中的信息。把不同的数据集平等对待或把不同的数据特征简单的关联在数据挖掘中不会得到理想的效果。因此,数据融合技术在大数据研究中是一个挑战,需要先进的数据融合技术。
三种可以融合不同数据集的方法:(1)数据挖掘中对不同的平台、不同的数据集使用不同的数据融合方法。example:按照道路把城市分割成若干个不想交的区域,然后基于人们的行为数据检测这些区域中的几个不相连的区域,这些被检测的区域可以指示这一区域的交通网络是否已经过时。(2)使用深度神经网络学习来自不同数据集的新特征,这些新特征会适用于一个新的分类或预测模型。(3)基于语义的混合数据。具体可以分为四类:A.基于多视角的方法。对不同的数据集使用不同的视角,不同的特征将适用于不同的模型,从不同的角度描述物体,这些结果在后期会融合在一起或者起相互加强的作用.example:共同训练;B:基于相似性。这种方法促使不同的物体之间潜在的关联或相似性融合不同的数据集.example:协同过滤.这里不同的数据集以相同的维度被不同的矩阵约束,通过分解这些矩阵可以得到比分解一个矩阵更好的结果;C:基于相互依赖的方法。这种方法使用一个图表表示相互依赖的数据集;D:基于迁移学习的方法。这种方法把数据从数据源迁移到目标域,解决了目标域数据稀少问题。迁移学习甚至可以用于不同学习任务间的迁移,example:图书推荐、旅行线路推荐。
本文可以促进大数据研究和解决大数据融合的问题。
2.相关工作
2.1与传统数据融合的关联
传统数据融合旨在通过模式映射和副本检测的方式,使用相同的模式把多个数据集存储在数据库中,这些来自不同数据集的数据描述了相同的特征。然而,在大数据时代,不同领域产生的多个数据集隐含的与某些物体之间存在关联性.example:尽管一个地区的气象数据和交通来自不同的数据域,这些数据显示了这个地区的某些相关的状况。对来自不同数据域的数据融合时不能简单的通过模式映像和副本检测实现,而需要用不同的方法从每个数据集中提取信息,然后把从不同数据集提取的信息有机的整合在一起,从而感知这一区域的有效信息。除了模式映射之外,还有很多信息融合的方法,这与传统的数据融合有很大的不同。
传统的数据融合方式
跨域大数据融合方式
2.2异类信息网络之间的关系
一个信息网络代表现实世界的抽象。这种抽象性不仅在表示和存储现实世界的信息方面起重要作用,而且通过探索事物之间的联系提供了挖掘信息的方法。除了现存的许多把相互关联的数据视为图或网以外,异类的信息也可以组成不同的节点和不同类型的联系.example:书目信息网组成了作者、会议和论文,这个网中的不同节点之间的边可以表示不同的含义,如:作者发表的论文,哪篇论文在会议中提到了,作者出席了哪些会议等。
异类信息网几乎可以在任何领域中构建,如社交网络、电子商务、在线影视等。但是这只是在单一的数据域中联系物体,而不是跨域数据关联。如;在书目信息网中,作者、论文和会议都来自书目域。如果想使两个完全不同的数据域中的数据融合,如:交通数据、社交数据和空气质量,从这些来自不同数据域的不同物体的异类的信息网或许找不到语义间明显的联系。因此,提出的算法不能直接用于异域的数据融合。
3.基于平台的跨域数据融合方法
这种方法在不同平台的不同的数据挖掘任务使用不同的数据集。因此不同数据集是低耦合的,并不要求不同数据集的数据形式必须一致。
example1:出租车的轨迹可以被用来制定这一地区的地图,在这个地图中,每一个小地区是一个节点,每条边显示出两个地区间的路线。这种方式画出的地图其实是交通网与出租车轨迹的混合信息。通过分析这张地图,一个研究机构提出基于这个地图鉴定交通网的不合理之处、检测和诊断交通的异常状况,发现城市的功能区域。
example2:好友推荐。在现实生活中,不同用户曾经到过的地方一般不会又重复,每一个用户停留的点都基于这个点周围的信息转换成一个特征向量。如:在1个点附近有5个餐馆,1个购物市场,1个加油站。换言之,以这个特征向量为中心的几个相似的地方这个人都参观过.
最后,这些点根据特征向量不同被分成了不同的组,从而构成一个树状结构,这个结构中的节点是得出结果的族,一个父节点是由多个子节点构成的。从树中选择一个节点,这个人一定存在于这颗树中的至少一个节点中,我们可以根据这棵树的一部分指示用户的位置。一个用户的一部分树中的信息可以通过联系一层中同一条边的两个节点进一步转换成一棵树中的一层或几层。这张图中包含了用户的出行轨迹和用户经过的地点,因为不同用户的分层数据在同一个树结构中,他们的历史位置变成了可以比较的量。最终,两个用户的相似性可以通过图中的相似性观测。
example3:基于汽车的GPS导航数据或交通网数据检测交通异常。汽车在道路上的异常事故可以通过汽车在道路上的行为与平时明显不同来表示。用检测到异常的时间跨度值和这个地点陷入异常的范围为条件,然后检索相关的在这一路段发生事故的时候人们这里发布的媒体信息。然后他们从这些社交媒体信息中通过挖掘代表行的术语(如:灾难、防御等)来描述检测到的异常,他们检测到的这种异常在正常时间段很少发生但是在这段异常时间内发生很频繁。第一步是缩小被检测的社交媒体的规模,第二步是使第一步获取到的结果的语义更加丰富。
4.基于特征级别的数据融合
4.1直接关联
这种方法对从不同的数据集中采集的数据平等看待,进而把他们连接成一个特征向量,这个特征向量最后被用与聚类或事物分类。因为不同数据集的表示、分布和规模不同,很多研究认为这种数据融合的方法存在一定的局限性。首先,在少量的训练样本中,这种相互关联有可能导致过拟合,并且每一个样本的具体特征可能被忽略;第二点,从不同形式的数据中发现关联性不强的数据之间的高度非线性关系是很困难的;第三点,从可能存在相互关联的不同数据集中提取的数据特征可能存在冗余和依赖。
这一领域的一个子范围中的一个先进的学习方法认为:可以在目标方法中添加少量的规则处理冗余特征的问题。因此,机器学习模型很可能是给冗余特征分配一个接近0的权重。
example4:从不同的数据集中训练n个特征,如:出租车轨迹、交通网和在线社交媒体,把训练之后的自动排序模型应用于预测房地产市场潜在的风险。
4.2基于DNN的数据融合
近期,提出了很多方法,这些方法可以用于学习基于DNN的不同的数据集中的共同的特征。实际上,DNN在人工智能领域并不是全新的框架。可以说DNN是多层的包含大量参数的神经网络。在以前,常常基于反响传播的方法训练神经网络,当这个神经网络有多个隐藏层的时候工作效果并不是特别好。近年来,新的学习算法(aka:深度学习),如:自动编码和restricted boltzmann machine(受限的波尔兹曼机)已经被提出用于逐层学习DNN的参数。使用监督学习、无监督学习、半监督学习的方法,深度学习可以学习到多层次特征,这些特征可以帮助我们迅速弄清楚数据间的关系,如:图像、声音和文本。DNN除了可以用于预测之外,还可以用于学习新的表现特征,这可以使学习之后的模型用于新的分类器或预测器。已经得到证实的是:在图像识别和随声翻译领域,这种新的特征比人工获取的特征更有效。
DNN主要应用于处理单一形式的数据。在近期的一系列研究中,DNN开始被用来学习具有不同数据形式的数据的特征。这种方法在分类和信息检索中很有用。
DNN
example5:Ngiam提出了一种深度自动编码架构,这种架构可以捕获不同形式的数据的最核心的特征。
如上图,提出了针对多种数据形式的深度自动编码学习结构,在这个结构中,一个单一形式的数据用作输入量进行重新构造一个针对视频或音频的更好特征。共性学习和多模式融合,在训练和测试中包含不同的数据形式,在本论文中使用了如下图所示的结构:
通过对大量的学习模型进行评估显示:深度学习可以有效的学习到:(1)在其他形式的数据的帮助下,可以形成更好的单一形式的特征;(2)这些共享的特征显示出不同数据形式间的相关性。
使用Boltzmann Machine是深度学习在不同形式数据融合中的又一种应用。本文先对多形式学习模型定义3中标准:(1)学习到的不同特征反应不同形式之间的相似性;(2)这些共同的特征在缺少数据形式的情况下也可以很容易的获取到;(3)当从其他数据中查询时,这些新的数据特征可以促进检索。一种称为深度Boltzmann machine被提出可以完成图片融合、文本分类和错误检索。这种模型也符合上述三种标准。
example6:如下图所示:
多模型DBM利用限制性Boltzmann Machine来刻画密集且有真实价值的图像特征向量,利用重复的柔性传输函数来刻画稀疏的单词统计向量。多模式DBM为每一种数据形式构建一个相互独立的两层DBM模型,然后采用在他们的顶层添加一层的方式使他们结合。另外,多形式DBM模型是基于邻近两层的联系生成的一种无监督的图解模型。这种图表模型能完成双向的搜索。
采用这种精心设计的架构,多模型DBM的主要观点是:基于文本和图像学习一种共同的密度分布。本文是在做了大量的分类和检索实验完成的。多模式的数据和单模式的数据都测试过了,证实了这种模型在多模式数据融合方面的有效性。
在实践中,基于DNN的数据融合模型的效果通常取决于我们能否调整好参数。找到一系列合适的参数可以使得到的结果更好。然而,尽管提供大量的参数和非凸的集合,找到最理想的参数,仍然是非常耗费时间的过程,这需要大量的实验。另外,很难解释中间层象征着什么。也不理解DNN获得更好特征的过程。
5.基于语义的数据融合
基于特征的数据融合方法(在上一节中已介绍)不关心每一个特征的含义,仅仅把这种特征视为一个真实值或者绝对值。与基于特征的数据融合不同,基于语义的方法需要清晰的理解每一个数据集。我们知道每一个数据集代表着什么、为什么不同的数据集可以融合、它们之间怎样相互增强特征。数据融合的过程携带着人们希望借助多种多样的数据集解决问题的特征。因此,这些特征是可以判断的、有价值的。本节介绍4种基于语义的数据融合方法:基于多视图的方法、基于相似性的方法、基于概率依赖的方法和基于迁移的方法。
5.1 基于多视图的数据融合方法
关于同一个物体的不同数据集和不同特征的子集可以被视为一个物体的不同视图。如:从不同数据源训练之后的信息可以鉴定一个人的一些信息,比如脸、指纹或签名等。一幅图可以通过不同的特征集合(如:颜色等)表现。因为这些数据集描述相同的物体,他们之间存在潜在的相似性。另一方面,这些数据集是互不相同的,分别包含着独有的信息。因此,整合不同的视图可以更加准确、全面的描述一个物体。
多视图学习算法可以分成3组:(1)共同训练;(2)多核心学习;(3)子空间学习。值得一提的是,共同训练算法可选择的最大化双方在不同视图中数据达成一致的可能性。多核心算法利用自然的对不同的视图做出反应的核心,然后把不论线性还是非线性的的特征整合在一起从而改进学习的效果。子空间学习算法旨在获得一个可以供不同视图共享的子空间,假设这个输入的视图是从这个潜在的子空间中产生的。
5.1.1 共同训练
共同训练是最早的多视图学习模式之一。共同训练认为每一个样本可以被划分成不同的视图,这里提出三种不同的假设:(1)充分:每一个视图足以自己做出分类;(2)兼容:所有视图的目标函数以最大的可能性对共同出现的特征预测到相同的特点;(3)有条件的独立:这些试图在某种条件下独立的被赋予某种标签。有条件独立性的假设通常太强壮以至于不同满足实际。因此,有时候会考虑稍稍弱一点的方法。
在原始的共同训练算法中,尽管存在被标记的样本集合L和没被标记的样本集合U,这个算法中首先创建用于存放未被标记的样本。然后迭代执行下面的步骤:(1)使用L分别对视图v1和v2训练两种分类器f1和f2;(2)允许这两个分类器检测未被标记的样本集合,然后对很有把握确定为正类的样本和不确定的样本分别添加不同的标签;(3)然后把未被标记的样本集合用从已经标记的样本集合中随机抽取两倍于原样本数量的样本装满。从直觉上看,共同训练算法背后的信息是:分类器f1把样本添加到标记的集合中,以至于分类器f2可以利用这里的样本进行学习。如果违背了独立性假设,一般来说,这些样本的信息量将会变得很少。因此,共同训练或许并不那么成功。从那时起,很多变体就产生了。
在共同训练中,不是设定标签给未标记的样本,而是给未标记的样本概率标签,每个图的这个标签在EM算法的每一轮中可能会发生变化。这个算法称为Co-EM,在很多问题上,比共同训练更好,但是要求每个分类器产生类别标签。在某种概率下,重新构造支持向量机,Brefeld开发了支持向量机的co-EM版本来弥合这种差距。zhou扩展了共同训练形式算法的从分类到复原的问题。他们提出一种叫CoREG的算法,这种算法使用k近邻的方式。在学习过程中,每一个回归量为另一个量标记未标记的数据。为了选择合适的未标记样本进行标记,CoREG先估算这种标记的可信度,通过查询已标记样本中的未标记样本的影响。最终的预测是由所有量产生的预测值的平均值决定的。
example 7:郑宇提出一种基于共同训练的模型根据5个数据集来推测城市的细粒度空气质量:空气质量、气象数据、交通数据、POIs、道路网。如下图:
显示了来自多视点学习观点的哲学模型。自然而然的,空气质量在某些地区具有时间依赖性,在不同地区还可能与空间有关。如:一个地点的当前空气质量与过去几小时的空气质量有关。另外,如果一个地区周围的空气质量不好,这个地区的空气质量可能也不好。所以,这种暂时的时间依赖性和空间相关性对预测一个地区的空气质量形成了两种不同的观点。
如下图所示:
一个共同训练的框架由两种分类器组成。一个是基于神经网络的空间分类器,这个分类器把两个不同地点的空间相关的特征作为输入信息。另一个是基于线性链的时间分类器,涉及到时间相关的特征模拟一个地区空气质量时间相关的特征。这两个分类器首先基于有限的不相交的已标记的数据集,然后分别对未标记的数据进行预测。在每一轮中,可以被分类器非常确定的非为哪一类的样本被放到训练集中,这些样本将用于在下一轮中再训练这两个分类器。这个迭代器将在未分类的数据消耗尽或者推断的准确性没有任何提升的时候停止。当推断一个样本的类别的时候,传递不同的特征给不同的分类器,根据不同分类产生两种可能性的集合,从两个分类器中产生的相关概率最大的类别作为结果输出。
上述提到的方法基于四个城市的数据进行评估,显示出它超越四种基准类别的优点:基于插值的方法、类别分布模型、著名的分类模型(如:决策树和CRF)和人工神经网络。在后面两种类型中,所有的特征适用于单一模型而没有鉴别其语义含义和观点。
5.1.2 多核心学习
多核心学习涉及到一系列机器学习方法,这些方法用于为已经定义的集合学习一种最理想的线性或非线性特征整合而成的核心作为这个算法的一部分。一个核心是对这些数据的一个假设,这些假设可以是一个相似性的概念或者一个分类器或者一个回归量。根据相关论文显示,多核心学习(MKL)有两种用途。
(a)不同的核心反应不同的相似性的概念。一种学习方法学习到一种最好的核心或者是这些核心的综合体,一个数据样本从全部样本中基于所有特征训练一个核心。而仅仅使用一种核心或许是一个错,允许学习器从一系列核心中选择可能产生更好的结果。例如:这里有一些核心方法,可以成功的应用于支持向量机。这种多核心学习最初设计的目标就不是多视点学习,因为每一个特征集合是用于训练每一个核心。
(b)多核心学习(MKL)在首先需要使用来自不同数据源和不同模型的数据作为输入数据训练不同的核心。因为有不同的表现,对应不同的核心有不同的相似性测量措施。在这种情况下,把不同的核心结合在一起是把多种信息源整合在一起的有效方式。这种论断与把不同的分类器结合在一起很相似。
有3种把不同的中间核心结合的方法:线性、非线性和数据依赖整合。线性整合包含已知权重和未知权重的整合。非线性结合使用非线性核心方法,这种方法称为乘法运算。数据依赖结合的整合方式为每一个数据样本分配具体的权重。通过这种方式,可以鉴定当地数据分布并为每一个区域学习一种合适的核心整合规则。
现在的多核心学习有2种主要的训练方法:(1)使用连贯的方法或者同步的方法计算整合方法的参数和基学习器的参数。在连续方法中,整合方法的参数是先决条件,然后一个基于核心的学习器被训练用于使这些核心结合。在同步方法中,所有参数的集合被共同学习。(2)方法间使用迭代的方式。在每一次迭代中,当修改基学习器的时候首先更新整合方法的参数。然后当修改整合方法的参数的时候修改基学习器的参数。这两步重复执行直至收敛。
example 8:集成和Boosting方法,如:随机森林,是被多核心学习(MKL)启发的。随机森林整合辅助程序聚集的观点并随机选择特征,这是为了构建决策树的集合。更具体的说,通过每次基于Bagging和全部特征的一部分选择训练数据的一部分训练了多个决策树。当有训练样本到来时,样本的不同特征被同时送到相关的决策树。每一个核心产生一个预测,然后对结果进行线性汇总。
example 9:基于5个数据集为一个地区预测未来48小时的空气质量。如下图所示是这个预测模型的架构:
在这个架构中包含两种两个核心(一个是时间预测器,一个是空间预测器)和一个核心学习模块(预测结果的聚合)。时间预测器预测一个基站的空气质量,如当地的气象、过去几个小时的AOIs和这个地区的天气预测。而空间预测器使用空间临近的数据(如:其他基站的AOIs和风速)来预测未来的空气质量。这两个预测器相互独立的产生一个基站的预测结果,这两个预测结果动态的根据当前基站的天气情况使用预测聚合器结合在一起。有时候,本地预测是很重要的,因此空间预测器的预测结果应该被赋予比其他预测器更大的权值。预测器是基于回归树从数据中学习一种动态结合方式。
在空气质量预测样例中,基于多核心学习的框架优于基于单核心的模型,这主要有以下三个原因:(1)从特征空间的角度来看:时间预测器和空间预测器使用的特征没有任何重叠,对统一地点的空气特征提供不同的视点;(2)从模型的观点来看:空间预测器和时间预测器从全球因素和全球因素刻画,他们可以得出完全不同的特征。比如:本地更多的在描述回归问题,而全球预测器主要在刻画非线性插值的问题。因此他们需要使用不同的技术进行处理。(3)从参数学习的角度来看:把所i有的特征输入到单一的模型中会导致这个模型中有太多东西需要学习。然而,这些训练数据是有限的,比如说我们只有1年半的城市AOIs数据。把一个大模型有机的分解成3个小模型可以在某种程度上大大缩小参数占用的空间,这会使学习到的模型更好,预测更准确。
5.1.3子空间学习
基于子空间的学习方法旨在获取一个子空间,这个子空间是通过假设这个是由这个潜在的子空间生成的。如下图所示:
通过这个子空间,可以完成后续的任务,比如分类和聚类。此外,因为这个子空间的维度通常比输入数据的维度低,这从某种程度上降低了维度灾难。在单视点学习中,主成分分析是为单视点数据开发子空间的常用技术。典型相关分析(CCA)可以被视为PCA的多视点版本。尽管最大化子空间中的两个视点的相关性,典型相关分析(CCA)可以输出每个视点的最佳预测。由典型相关分析(CCA)构建的子空间是线性的,因此不能直接应用于非线性数据集。为了解决这个问题,典型相关分析(CCA)的变体叫做KCCA被提出映射每一个属于高维空间的非线性数据。CCA和KCCA都是以无监督的方式构建子空间。L把高斯过程作为构建潜在变量模型的工具,这可以完成非线性降维的工作。Chen开发了一个统计架构,这个架构可以基于一般的多视点的潜在空间网络学习到被多个视点共享的预测性子空间。
5.2 基于相似性的数据融合
相似性存在于两个不同的物体之间。如果我们知道两个物体(X、Y)在某种维度上存在相似性,Y的信息可以暂时使用X替代,当Y的信息缺失的时候。当X和Y分别有不同的数据集的时候,我们可以学习到这两个物体之间的多个相似的性质,X和Y的数据将会基于相应的另一个数据集的数据进行计算。合并两个物体的相关性,这些相似性可以相互增强。反过来,后者又会增强前者。如:从密集数据集中学习到的相似性可以增强其他来自稀疏数据集中的相似性,因此帮助填补了后者的缺失数据。从另一个观点来看,我们可以通过结合两个物体的多个数据集更加精确的预测两个物体之间的相似性。因此,不同的数据集可以基于相似性相互混合使用。耦合矩阵分解和流形对齐是这类方法中的两个典型的方法。
5.2.1 耦合矩阵分解
在说明耦合矩阵分解之前,需要先介绍两个概念。一个是协同过滤(CF),一个是矩阵分解。矩阵分解是实现协同过滤(CF)模型的有效方法。
5.2.1.1 协同过滤
协同过滤(CF)是一个著名的模型,被广泛应用于推荐系统中。协同过滤背后的观点是同一个用户对同一项事务有相似的行为。因此,如果用户与事务之间可以决定相似性,那么就可以做出一个潜在的预测未来用户可能做某一件事的可能性的大小。用户与事务之间通常被矩阵组织在一起,在这个矩阵中每一个维度表示用户做某一项事务中的可能性。矩阵中的比率可以很清晰的显示或者含蓄的显示,比如:一个地方的游客的人数或者用户浏览某一项的时间。一旦形成一个举证,这个矩阵中的两个行之间的距离显示出两个用户之间的相似性,而矩阵中两列的距离表示两个不同的事务之间的相似性。
基于记忆的协同过滤(CF)常常应用于为用户或者一项事务计算未知比率的值的算法,计算出来的值作为概率的集合用于估算其他用户进行相同的事务的估算依据。有两种基于记忆模型的协同过滤模型:基于用户的和基于事务的。比如:用户p对地点i的兴趣可以被估算。。。。。。。。
5.2.2.2 矩阵分解
把一个矩阵分解为两个矩阵,这两个矩阵分别指示出用户和事务的潜在变量。这两个矩阵近似于X矩阵,因此可以用于填补X矩阵的缺失值。有两种常用的矩阵分解方法:奇异矩阵分解(SVD)和非负矩阵分解(NMF)
(1)SVD分解
(2)NMF分解
5.2.1.3耦合矩阵分解
在不同的应用中,其中的一项可以是一个位置、一个网址或一个公司,而用户可以是司机、乘客或者服务订阅者。我们甚至可以把一个用户看成一个物体和一项事务的属性。当有多个相关的数据集的时候,不能把简单的把不同数据源获取的不同属性放在单一的矩阵中。因为不同的矩阵有不同的分布和含义,从单一的矩阵中分解它们矩阵中数据缺失、精确度下降。先进的方法是使用多个矩阵相互联系分解的方式以适应不同矩阵的不同的数据集,这些矩阵有相同的维度。通过联合分解这些矩阵,可以把从不同数据集中学习到的不同物体的相似性转换给其他物体。因此可以更加准确的填补缺失值。
example 10:Zhenrg提出一种矩阵分解方法,这种方法使位置推荐成为可能。如下图所示:
一个位置 活动矩阵X是由很多用户的历史位置信息形成的。X矩阵的一行表示一个来源、一列表示一个活动(如:购物或者进餐)。矩阵X中的一条数据表示一个特定的活动在一个特定地点发生的频率。如果这个位置活动矩阵被完全填满了,我们可以从相应的活动中检索前k条发生频率最高的活动的位置给这个活动推荐一些可能的位置。同样的,当需要完成为一个位置推荐活动的时候,可以从相关的位置矩阵中检索前k条发生频率最高的活动推荐给用户。然而,因为我们只有用户的一部分数据,所以位置活动矩阵可能不能胜任一切工作、数量也不是太多。传统的协同过滤(CF)在高质量推荐方面的作用并不是特别好。仅仅分解矩阵X不会起到太大的作用,由于数据太少。
为了解决这个问题,来自其他两个矩阵(Y、Z)的信息被合并到分解后的矩阵。一个是位置特征矩阵,另一个活动-活动矩阵。这种额外的矩阵称为上下文,这可以从其他数据集中学习到。在这个例子中,矩阵Y的一行代表一个位置,一列代表这个位置中有POIs的一类(如:餐厅和旅馆),这个矩阵是基于POIs数据库建立的。矩阵Y中两行的距离从地理位置的角度显示出两个位置的相似性。这种判断的依据是具有相同属性的两个地理位置可能用户的行为也相似。矩阵Z描述了两个不同活动的相关性,这可以从研究结果中学习到。这种方法的主要观点是:把信息传播给X、Y、Z,这需要他们共享低维矩阵U和V。因为矩阵Y和Z是基于稠密数据构建的,所以可以得到精确的分解。因此,矩阵X可以通过使用()精确的补全。详细的。。
example 11:Zheng提出一种多矩阵分解方法,这种方法可以基于汽车数据样本预测整个城市道路上每一段的汽车行驶的速度。如下图所示:
在把GPS数据映射到道路网之后,形成了一个矩阵,这个矩阵的一行显示时隙,矩阵的一列代表一个路段。这个矩阵中的每一个条目包含一个特殊路段的出行速度和一个特殊的时间段,这些值是基于最近一段时间收到的汽车数据进行估计的。这个矩阵的目标是填补缺失数据,这反映了当前的时隙。尽管我们可以通过矩阵分解的方式实现这个目标,但是这种推测的准确度不是很高,因为大多数的路段没有被汽车的出行轨迹覆盖。
为了解决这个问题,可以构造四个中间矩阵(A、B、C、D)。具体来说,A矩阵代表路段的历史交通模式。
参考:Yu Zheng.Methods for Cross-Domain Data fusion.
https://zhuanlan.zhihu.com/p/26982832