def test__density_normalize__colsum(mixtureNormals): df = DiffusionMap(sigma=1, embedding_dim=2, verbose=False) K = scipy.sparse.rand(100, 100, density=0.1) K_norm = df.__density_normalize__(K) np.testing.assert_allclose(K_norm.toarray().sum(0), 1)
def test_DiffusionMap_density_normalization(mixtureNormals): df = DiffusionMap(sigma=1, embedding_dim=2) A = np.random.normal(0, 1, size=(10, 2)) K = np.dot(A, A.T) # 10x10 symmetric kernel-matrix K = csr_matrix(K) K_norm = df.__density_normalize__(K) theSum = K_norm.sum(0) np.testing.assert_allclose(theSum, 1)
def test__density_normalize__sparse(mixtureNormals): df = DiffusionMap(sigma=1, embedding_dim=2, verbose=False) K = csr_matrix([[1, 1], [0, 1]]) assert issparse(df.__density_normalize__(K)), "returned matrix is not sparse after normalization"