コード例 #1
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_debiasing_warm_start():
    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1", max_iter=10)
    clf.C = 0.5
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 160)
    assert_almost_equal(clf.score(bin_dense, bin_target), 0.845)

    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1", max_iter=10)
    clf.C = 0.500001
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 191)
    assert_almost_equal(clf.score(bin_dense, bin_target), 0.97)

    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1", max_iter=10,
                    warm_start=True)
    clf.C = 0.5
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 160)
    assert_almost_equal(clf.score(bin_dense, bin_target), 0.845)

    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1", max_iter=10,
                    warm_start=True)
    clf.C = 0.500001
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 191)
    assert_almost_equal(clf.score(bin_dense, bin_target), 0.97)
コード例 #2
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_empty_model():
    clf = PrimalSVC(kernel="rbf", gamma=0.1, C=0.1, penalty="l1")
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 0)
    acc = clf.score(bin_dense, bin_target)
    assert_equal(acc, 0.5)

    clf = PrimalSVC(kernel="rbf", gamma=0.1, C=0.1, penalty="l1l2")
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 0)
    acc = clf.score(bin_dense, bin_target)
    assert_equal(acc, 0.5)
コード例 #3
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_upper_bound_rbf():
    clf = PrimalSVC(random_state=0, penalty="l1", kernel="rbf", gamma=0.1)
    Cmin = C_lower_bound(bin_dense, bin_target, kernel="rbf", gamma=0.1)
    Cmax = C_upper_bound(bin_dense, bin_target, clf, Cmin, 5.0, 100, 10)
    clf.set_params(C=Cmax)
    clf.fit(bin_dense, bin_target)
    assert_true(clf.n_support_vectors() < 110)
コード例 #4
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_fit_rbf_binary_l2r_kernelized_upper_bound():
    clf = PrimalSVC(C=1.0, random_state=0, penalty="l2", loss="squared_hinge",
                    max_iter=20, kernel="rbf", kernel_regularizer=True,
                    selection="loss", termination="n_components", n_components=30)
    clf.fit(bin_dense, bin_target)
    acc = clf.score(bin_dense, bin_target)
    assert_almost_equal(acc, 0.80)
    assert_equal(clf.n_support_vectors(), 30)

    clf = PrimalSVC(C=1.0, random_state=0, penalty="l2l2", loss="squared_hinge",
                    max_iter=20, kernel="rbf", kernel_regularizer=True,
                    selection="loss", termination="n_components", n_components=30,
                    warm_debiasing=True)
    clf.fit(bin_dense, bin_target)
    acc = clf.score(bin_dense, bin_target)
    assert_almost_equal(acc, 0.80)
    assert_equal(clf.n_support_vectors(), 30)
コード例 #5
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_debiasing():
    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1l2", C=0.5, Cd=1.0,
                    max_iter=10)
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 160)
    assert_almost_equal(clf.score(bin_dense, bin_target), 0.845)
    pred = clf.decision_function(bin_dense)

    clf = PrimalSVC(kernel="rbf", gamma=0.1, penalty="l1", C=0.5)
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 160)
    K = pairwise_kernels(bin_dense, clf.support_vectors_, metric="rbf", gamma=0.1)
    clf = PrimalLinearSVC(max_iter=10, C=1.0)
    clf.fit(K, bin_target)
    assert_almost_equal(clf.score(K, bin_target), 0.845)
    pred2 = clf.decision_function(K)

    assert_array_almost_equal(pred, pred2)
コード例 #6
0
ファイル: test_primal_cd.py プロジェクト: Raz0r/lightning
def test_components():
    clf = PrimalSVC(random_state=0, penalty="l1", kernel="rbf",
                    gamma=0.1, C=0.5)
    clf.fit(bin_dense, bin_target)
    acc = clf.score(bin_dense, bin_target)

    clf = PrimalSVC(random_state=0, penalty="l2", kernel="rbf",
                    gamma=0.1, C=0.5, components=clf.support_vectors_)
    clf.fit(bin_dense, bin_target)
    assert_equal(clf.n_support_vectors(), 160)
    acc2 = clf.score(bin_dense, bin_target)
    assert_equal(acc, acc2)