def test_binary_checker_subgradient(): #testing subgradient ssvm on non-submodular binary dataset X, Y = toy.generate_checker(n_samples=10) crf = GridCRF() clf = SubgradientStructuredSVM(problem=crf, max_iter=100, C=100, verbose=0, momentum=.9, learningrate=0.1) clf.fit(X, Y) Y_pred = clf.predict(X) assert_array_equal(Y, Y_pred)
def test_binary_blocks_subgradient(): #testing subgradient ssvm on easy binary dataset X, Y = toy.generate_blocks(n_samples=10) crf = GridCRF() clf = SubgradientStructuredSVM(problem=crf, max_iter=200, C=100, verbose=0, momentum=.0, learningrate=0.1) clf.fit(X, Y) Y_pred = clf.predict(X) assert_array_equal(Y, Y_pred)
def test_multinomial_checker_subgradient(): X, Y = toy.generate_checker_multinomial(n_samples=10, noise=0.0) n_labels = len(np.unique(Y)) crf = GridCRF(n_states=n_labels) clf = SubgradientStructuredSVM(problem=crf, max_iter=50, C=10, verbose=10, momentum=.98, learningrate=0.01, plot=False) clf.fit(X, Y) Y_pred = clf.predict(X) assert_array_equal(Y, Y_pred)
def test_multinomial_blocks_subgradient(): #testing cutting plane ssvm on easy multinomial dataset X, Y = toy.generate_blocks_multinomial(n_samples=10, noise=0.3, seed=1) n_labels = len(np.unique(Y)) crf = GridCRF(n_states=n_labels) clf = SubgradientStructuredSVM(problem=crf, max_iter=50, C=10, verbose=0, momentum=.98, learningrate=0.001, plot=False) clf.fit(X, Y) Y_pred = clf.predict(X) assert_array_equal(Y, Y_pred)