libcity.model.utils

libcity.model.utils.build_sparse_matrix(device, lap)[source]

构建稀疏矩阵(tensor)

Parameters
  • device

  • lap – 拉普拉斯

Returns:

libcity.model.utils.calculate_normalized_laplacian(adj)[source]

L = D^-1/2 (D-A) D^-1/2 = I - D^-1/2 A D^-1/2 对称归一化的拉普拉斯

Parameters

adj – adj matrix

Returns

L

Return type

np.ndarray

libcity.model.utils.calculate_random_walk_matrix(adj_mx)[source]

L = D^-1 * A 随机游走拉普拉斯

Parameters

adj_mx – adj matrix

Returns

L

Return type

np.ndarray

libcity.model.utils.calculate_scaled_laplacian(adj_mx, lambda_max=2, undirected=True)[source]

计算近似后的拉普莱斯矩阵~L

Parameters
  • adj_mx

  • lambda_max

  • undirected

Returns

~L = 2 * L / lambda_max - I

libcity.model.utils.get_cheb_polynomial(l_tilde, k)[source]

compute a list of chebyshev polynomials from T_0 to T_{K-1}

Parameters
  • l_tilde (scipy.sparse.coo.coo_matrix) – scaled Laplacian, shape (N, N)

  • k (int) – the maximum order of chebyshev polynomials

Returns

cheb_polynomials, length: K, from T_0 to T_{K-1}

Return type

list(np.ndarray)

libcity.model.utils.get_supports_matrix(adj_mx, filter_type='laplacian', undirected=True)[source]

选择不同类别的拉普拉斯

Parameters
  • undirected

  • adj_mx

  • filter_type

Returns: