更改

无编辑摘要
第330行: 第330行:  
该方法的基本思路是将P中的所有行向量<math>P_{i}</math>视为维数为N的数据向量,然后首先对这些行向量进行PCA降维,其次将其聚类为r个簇,其中r是根据奇异值频谱的阈值<math>\epsilon</math>选取的。有了聚类,我们就可以根据所有静止流都是保守流的原则,对原始TPM进行还原。
 
该方法的基本思路是将P中的所有行向量<math>P_{i}</math>视为维数为N的数据向量,然后首先对这些行向量进行PCA降维,其次将其聚类为r个簇,其中r是根据奇异值频谱的阈值<math>\epsilon</math>选取的。有了聚类,我们就可以根据所有静止流都是保守流的原则,对原始TPM进行还原。
   −
1) 对P进行SVD分解(假设P是不可归约的,且具有周期性性,从而存在静态分布):
+
1) 对P进行SVD分解(假设P是不可归约的,且具有周期性,从而存在静态分布):
    
<math>P=U\cdot \Sigma \cdot V^{T},</math>
 
<math>P=U\cdot \Sigma \cdot V^{T},</math>
第350行: 第350行:  
</math>特征向量构成;
 
</math>特征向量构成;
   −
4) 通过 K-means 算法将\tilde{P}中的所有行向量聚类为r组,得到投影矩阵<math>\Phi</math>,其定义为:<math>
+
4) 通过 K-means 算法将\tilde{P}中的所有行向量聚类为r组,得到投影矩阵<math>\Phi</math>,其定义为:
 +
 
 +
<math>
 
\Phi_{ij} =\begin{cases}  
 
\Phi_{ij} =\begin{cases}  
 
1,  & \text{如果}\tilde{P_{i}}\text{属于第r组}\\
 
1,  & \text{如果}\tilde{P_{i}}\text{属于第r组}\\
 
0, & \text{其他情况}
 
0, & \text{其他情况}
 
\end{cases}</math>
 
\end{cases}</math>
 +
 
对<math>\forall i,j \in [1,N]</math>都成立。
 
对<math>\forall i,j \in [1,N]</math>都成立。
    
5) 利用<math>
 
5) 利用<math>
 
\Phi</math>和P得到新的TPM。
 
\Phi</math>和P得到新的TPM。
 +
 
为了说明如何获得简化的TPM,首先定义一个矩阵,称为静态流矩阵,如下所示:
 
为了说明如何获得简化的TPM,首先定义一个矩阵,称为静态流矩阵,如下所示:
 +
 
<math>F_{ij} \equiv \mu_i \cdot P_{ij}, \, \forall i,j \in [1, N],
 
<math>F_{ij} \equiv \mu_i \cdot P_{ij}, \, \forall i,j \in [1, N],
 
</math>
 
</math>
其中,<math>\miu</math>是P的静态分布,满足<math>P\cdot\miu=\miu</math>。
+
 
 +
其中,<math>\miu</math>是P的静态分布,满足<math>P\cdot\mu=\mu</math>。
 +
 
 
其次,我们将根据 <math>\Phi</math>和<math>F</math>推导出缩减流矩阵:
 
其次,我们将根据 <math>\Phi</math>和<math>F</math>推导出缩减流矩阵:
 +
 
<math>F' = \Phi^T \cdot F \cdot \Phi,
 
<math>F' = \Phi^T \cdot F \cdot \Phi,
 
</math>
 
</math>
 +
 
其中,F'是还原静态流量矩阵。最后,粗粒化后的TPM可直接通过以下公式得出:
 
其中,F'是还原静态流量矩阵。最后,粗粒化后的TPM可直接通过以下公式得出:
 
<math>P'_i = F'_i / \sum_{j=1}^{N} (F'_i)_j, \, \forall i \in [1, N].
 
<math>P'_i = F'_i / \sum_{j=1}^{N} (F'_i)_j, \, \forall i \in [1, N].
140

个编辑