Exemple #1
0
def test_too_many_neighbors_warns():
    u = UMAP(a=1.2, b=1.75, n_neighbors=2000, n_epochs=11, init="random")
    u.fit(
        nn_data[:100,]
    )
    assert_equal(u._a, 1.2)
    assert_equal(u._b, 1.75)
Exemple #2
0
def test_umap_fit_params():
    # x and y are required to be the same length
    u = UMAP()
    x = np.random.uniform(0, 1, (256, 10))
    y = np.random.randint(10, size=(257,))
    assert_raises(ValueError, u.fit, x, y)

    u = UMAP()
    x = np.random.uniform(0, 1, (256, 10))
    y = np.random.randint(10, size=(255,))
    assert_raises(ValueError, u.fit, x, y)

    u = UMAP()
    x = np.random.uniform(0, 1, (256, 10))
    assert_raises(ValueError, u.fit, x, [])

    u = UMAP()
    x = np.random.uniform(0, 1, (256, 10))
    y = np.random.randint(10, size=(256,))
    res = u.fit(x, y)
    assert isinstance(res, UMAP)

    u = UMAP()
    x = np.random.uniform(0, 1, (256, 10))
    res = u.fit(x)
    assert isinstance(res, UMAP)
Exemple #3
0
def test_umap_bad_parameters():
    u = UMAP(set_op_mix_ratio=-1.0)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(set_op_mix_ratio=1.5)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(min_dist=2.0)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(min_dist=-1)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(n_components=-1)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(n_components=1.5)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(n_neighbors=0.5)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(n_neighbors=-1)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(metric=45)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(learning_rate=-1.5)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(repulsion_strength=-0.5)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(negative_sample_rate=-1)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(init="foobar")
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(init=42)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(init=np.array([[0, 0, 0], [0, 0, 0]]))
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(n_epochs=-2)
    assert_raises(ValueError, u.fit, nn_data)
    u = UMAP(target_n_neighbors=1)
    assert_raises(ValueError, u.fit, nn_data)

    u = UMAP(a=1.2, b=1.75, n_neighbors=2000)
    u.fit(nn_data)
    assert_equal(u._a, 1.2)
    assert_equal(u._b, 1.75)
    # assert_raises(ValueError, u.fit, nn_data) we simply warn now

    assert_raises(ValueError, nearest_neighbors, nn_data, 10, 42, {}, False,
                  np.random)
    assert_raises(
        ValueError,
        nearest_neighbors,
        sparse_nn_data,
        10,
        "seuclidean",
        {},
        False,
        np.random,
    )