科学进步和经济发展的过程中总是伴随着海量的、动态的、结构复杂的数据的产生,人们称之为大数据。大数据是数字化生存时代的新型战略资源,是驱动创新的重要因素,正在改变人类的生产和生活方式。除了大数据的5V(Volume,Velocity, Variety, Veracity, Value)特性外,含有丰富数据的现实系统通常还具有:(1)高度复杂性,即数据由多个数据源或者多个方面组成;(2)数据存在显著稀疏性或不完整性。例如淘宝网会员超过3.7亿人,在线商品超过8.8亿件,每天交易数千万笔,产生约20TB数据;这里,<用户-商品-交易-时间>也构成一个多元稀疏关系。深刻理解这些多元关系中互动行为有助于把握隐藏在数据中的知识和掌握数据的变化规律。
现实世界中数据的多源多方面特性已不足于由传统的向量和矩阵表示,为此张量(Tensor)作为数据的新的表示方式引起了学术界和工业界的广泛关注。张量可以表示为多维数组(MultidimensionalArray),是向量和矩阵的拓展(向量是1维张量,矩阵是2维张量)。这里,多维数组中的每一维被称为张量的一个方面(Aspect)或模(mode)。相比于向量和矩阵,张量结构直观上易于表示现实世界原本存在的多元关系和多方面特性,而向量容易丢失原始数据的结构特征;而且张量可以充分考虑不同方面之间的相关性与互补性,向量表示很难表述上述关系。由于张量数据中缺失值的广泛存在以及低秩性等特征,对张量数据的处理主要是通过张量分解(TensorDecomposition)的方法。张量分解是机器学习、数学分析、图分析、计算机视觉、推荐系统中的一类重要方法。通过张量分解,可以获得多源多方面数据中每一个对象的隐藏因子,从而可以恢复张量中的缺失值,并解释数据变化的规律。
张量分解的算法主要包括Tucker分解和并行分解(PARAFAC)。目前,已有的张量分解算法是基于Tucker分解和并行分解的扩展。Tucker分解模式可由左图所示:给定张量M,张量分解的目标是寻求低秩矩阵U1,U2,U3和核心张量(CoreTensor)W的乘积来逼近M。这里U1,U2和U3称为张量在各个方面上的因子。 Tucker分解可以表示为:。PARAFAC是Tucker分解的特殊情形:当强制W是对角张量,而且张量的各个模(也叫方面)中因子的数目都相等(即),Tucker分解就退化为PARAFAC了。传统的张量分解算法已成功地应用到了各个领域,然而,它们大多属于线性分解(MultilinearDecomposition)算法,不足以对张量元素间的复杂交互关系进行充分描述。张量中大量存在的缺失值(MissingValue)也给线性分解模型带来了挑战,而且线性算法很难对张量的数值类型(如二进制、有序、数量型、离散型)进行建模。
为了解决上述问题,电子科技大学,大数据研究中心,大数据挖掘与推理研究所徐增林教授,Facebook公司严丰博士,和普渡大学漆远教授共同提出了一种基于张量高斯过程(Tensor-variateGaussian Process)的非线性Tucker分解模型,称为无限张量分解(Infinite Tucker Decomposition)。在这个模型中,张量中元素的相似性可以用任意核函数(KernelFunction,例如高斯核函数)来度量。为了能够表示不同的数据类型,该模型通过采用不同的连接函数(LinkFunction)来映射隐张量(Latent Tensor)和观察到的张量(ObservedTensor)的关系。徐增林教授等首次将张量分解问题转变为一个非线性模型,并支持所有的数据类型。实验表明,该方法取得了比传统张量分解模型更高的预测精度。
论文信息:
Zenglin Xu(徐增林), Feng Yan, and Yuan (Alan) Qi.Bayesian nonparametric models for multiway data analysis. IEEE Transactions onPattern Analysis and Machine Intelligence, 2015, 37 (2): 475-487.
论文链接:
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6629993