张量分解从本质上来说是矩阵分解的高阶泛化。对矩阵分解有所了解的读者可能知道,矩阵分解有三个很明显的用途,即降维处理、缺失数据填补(或者说成“稀疏数据填补”)和隐性关系挖掘,其实张量分解也能够很好地满足这些用途。
在介绍张量分解前,我们先看看矩阵分解相关知识概念。
矩阵补全(Matrix Completion)
矩阵补全(Matrix Completion)目的是为了估计矩阵中缺失的部分(不可观察的部分),可以看做是用矩阵X近似矩阵M,然后用X中的元素作为矩阵M中不可观察部分的元素的估计。
矩阵分解(Matrix Factorization)
矩阵分解(Matrix Factorization)是指用 AB 来近似矩阵M,那么 AB 的元素就可以用于估计M中对应不可见位置的元素值,而A*B可以看做是M的分解,所以称作Matrix Factorization。
协同过滤
以推荐系统来举例,这里的评分矩阵往往是一个稀疏矩阵(每一行包含一个用户对所有商品的已知评分),即很多位置上的元素是空缺的,或者说根本不存在。试想一下,如果有10000个用户,同时存在10000部电影,如果我们需要构造一个评分矩阵,难道每个用户都要把每部电影都看一遍才知道用户的偏好吗?其实不是,我们只需要知道每个用户仅有的一些评分就可以利用矩阵分解来估计用户的偏好,并最终推荐用户可能喜欢的电影。
协同过滤本质上是考虑大量用户的偏好信息(协同),来对某一用户的偏好做出预测(过滤),那么当我们把这样的偏好用评分矩阵M表达后,这即等价于用M其他行的已知值,来估计并填充某一行的缺失值。
若要对所有用户进行预测,便是填充整个矩阵,这是所谓**“协同过滤本质是矩阵填充”**。
那么,这里的矩阵填充如何来做呢?
矩阵分解是一种主流方法。
这是因为,协同过滤有一个隐含的重要假设,可简单表述为:如果用户A和用户B同时偏好商品X,那么用户A和用户B对其他商品的偏好性有更大的几率相似。这个假设反映在矩阵M上即是矩阵的低秩。极端情况之一是若所有用户对不同商品的偏好保持一致,那么填充完的M每行应两两相等,即秩为1。
所以这时我们可以对矩阵M进行低秩矩阵分解,用UV来逼近M,以用于填充——对于用户数为m,商品数为n的情况,M是mn的矩阵,U是mr,V是rn,其中r是人工指定的参数。这里利用M的低秩性,以秩为r的矩阵M’=U*V来近似M,用M’上的元素值来填充M上的缺失值,达到预测效果。
论文中的张量分解
首先,请注意,大多数车辆受到交通状况的时空影响。所以我们认为,车辆会出现在哪条路段上不仅由车辆的日常行为决定(从家到公司),而且由道路交通状况和时间戳决定。车辆可根据不同时间的路况选择不同的道路。
基于这种直觉,我们利用大量不同车辆的GPS片段,以协同的方式揭示路段、时间和车辆之间的潜在关系。
与使用矩阵不同,我们提出了一个张量滤波器,将GPS原始数据转换成一个三阶张量
A
A
A 来表示路段、时间和车辆之间的关系。具体来说,我们首先要为所有车辆、路段和时间戳分配唯一的索引。其次,我们依照以下规则来填充张量
A
A
A。
If a vehicle i appeared in road segment
j
j
j at time stamp
k
k
k, then
- entry ( i , j , k ) (i, j, k) (i,j,k) is set to 1;
- for all segments j ′ ∈ ε − j j'\in\varepsilon -j j′∈ε−j, entry ( i , j ′ , k ) (i, j', k) (i,j′,k)is set to 0;
- otherwise if we did not observe the location of vehicle
i
i
i at time stamp
k
′
k'
k′, then entries
(
i
,
j
,
k
′
)
(i, j, k')
(i,j,k′) are missing for all
j ∈ ε j\in\varepsilon j∈ε.
注意,因为GPS片段是稀疏的,我们不能在每个时间戳上观察所有车辆的位置,有缺失的项,所以原始张量 A A A是不完整的。
我们把张量每一个位置 ( i , j , k ) (i,j,k) (i,j,k)分配1,认为是车辆 i 在时间 k 出现在道路 j 的概率是 1,对于张量 A 其它位置缺失的值,我们可以通过对 A 张量分解,也给它分配一个0到1之间的概率取值。
- where C ∈ R d V × d R × d T C \in \mathbb{R}^{{d_V} \times d_R\times d_T} C∈RdV×dR×dT is the core tensor reflecting the link between vehicles,segments and time stamps.
- V ∈ R I 1 × d V V \in \mathbb{R}^{I_1\times{d_V}} V∈RI1×dV, R ∈ R I 2 × d R R \in \mathbb{R}^{I_2\times{d_R}} R∈RI2×dR , T ∈ R I 3 × d T T \in \mathbb{R}^{I_3\times{d_T}} T∈RI3×dTare three latent factor matrices representing the low dimensional structure of vehicles, segments and time stamps respectively.
- ||.|| denotes the L2 norm.
- The symbol × R ×_R ×R is introduced to tensor-matrix multiplication,
- the subscript R indicates the direction of multiplication. R1 and R2 areregularizations.
参考
- CSDN博主「第2梦」原文链接:https://blog.csdn.net/yixianfeng41/article/details/73009210
- 作者:Xinyu Chen 链接:https://zhuanlan.zhihu.com/p/24798389 来源:知乎
- 论文:Road Traffic Anomaly Detection via Collaborative Path Inference from GPS Snippets