diff --git a/data b/data index 112a9393131..7fecaa29f5a 160000 --- a/data +++ b/data @@ -1 +1 @@ -Subproject commit 112a939313184cf97758623753dd6bac53f9a9bc +Subproject commit 7fecaa29f5a2eb34191b05613e7f7ce717e64d0b diff --git a/examples/meta/src/binary/perceptron.sg b/examples/meta/src/binary/perceptron.sg index 48800f7a5f5..a51914779b6 100644 --- a/examples/meta/src/binary/perceptron.sg +++ b/examples/meta/src/binary/perceptron.sg @@ -10,12 +10,9 @@ BinaryLabels labels_train(f_labels_train) BinaryLabels labels_test(f_labels_test) #![create_features] -#![set_parameters] -real learn_rate = 1.0 -int max_iter = 1000 -#![set_parameters] - #![create_instance] +real learn_rate=1.0 +int max_iter=1000 Perceptron perceptron(features_train, labels_train) perceptron.set_learn_rate(learn_rate) perceptron.set_max_iter(max_iter) @@ -23,13 +20,14 @@ perceptron.set_max_iter(max_iter) #![train_and_apply] perceptron.train() -BinaryLabels labels_predict = perceptron.apply_binary(features_test) +perceptron.set_features(features_test) +Labels labels_predict = perceptron.apply() #![train_and_apply] -#![extract_weights_bias] -RealVector w = perceptron.get_w() -real b = perceptron.get_bias() -#![extract_weights_bias] +#![extract_weights] +RealVector weights = perceptron.get_w() +real bias = perceptron.get_bias() +#![extract_weights] #![evaluate_accuracy] AccuracyMeasure eval() diff --git a/examples/meta/src/neural_nets/classification_perceptron.sg b/examples/meta/src/neural_nets/classification_perceptron.sg deleted file mode 100644 index a51914779b6..00000000000 --- a/examples/meta/src/neural_nets/classification_perceptron.sg +++ /dev/null @@ -1,35 +0,0 @@ -CSVFile f_feats_train("../../data/classifier_binary_2d_linear_features_train.dat") -CSVFile f_feats_test("../../data/classifier_binary_2d_linear_features_test.dat") -CSVFile f_labels_train("../../data/classifier_binary_2d_linear_labels_train.dat") -CSVFile f_labels_test("../../data/classifier_binary_2d_linear_labels_test.dat") - -#![create_features] -RealFeatures features_train(f_feats_train) -RealFeatures features_test(f_feats_test) -BinaryLabels labels_train(f_labels_train) -BinaryLabels labels_test(f_labels_test) -#![create_features] - -#![create_instance] -real learn_rate=1.0 -int max_iter=1000 -Perceptron perceptron(features_train, labels_train) -perceptron.set_learn_rate(learn_rate) -perceptron.set_max_iter(max_iter) -#![create_instance] - -#![train_and_apply] -perceptron.train() -perceptron.set_features(features_test) -Labels labels_predict = perceptron.apply() -#![train_and_apply] - -#![extract_weights] -RealVector weights = perceptron.get_w() -real bias = perceptron.get_bias() -#![extract_weights] - -#![evaluate_accuracy] -AccuracyMeasure eval() -real accuracy = eval.evaluate(labels_predict, labels_test) -#![evaluate_accuracy] diff --git a/examples/undocumented/python/classifier_perceptron.py b/examples/undocumented/python/classifier_perceptron.py deleted file mode 100644 index 7d6743f40a5..00000000000 --- a/examples/undocumented/python/classifier_perceptron.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env python - -from numpy import * - -parameter_list = [[100, 2, 5,1.,1000,1,1], [100, 2, 5,1.,1000,1,2]] - -def classifier_perceptron (n=100, dim=2, distance=5,learn_rate=1.,max_iter=1000,num_threads=1,seed=1): - from shogun import RealFeatures, BinaryLabels - from shogun import Perceptron - - random.seed(seed) - - # produce some (probably) linearly separable training data by hand - # Two Gaussians at a far enough distance - X=array(random.randn(dim,n))+distance - Y=array(random.randn(dim,n))-distance - X_test=array(random.randn(dim,n))+distance - Y_test=array(random.randn(dim,n))-distance - label_train_twoclass=hstack((ones(n), -ones(n))) - - #plot(X[0,:], X[1,:], 'x', Y[0,:], Y[1,:], 'o') - fm_train_real=hstack((X,Y)) - fm_test_real=hstack((X_test,Y_test)) - - feats_train=RealFeatures(fm_train_real) - feats_test=RealFeatures(fm_test_real) - - labels=BinaryLabels(label_train_twoclass) - - perceptron=Perceptron(feats_train, labels) - perceptron.set_learn_rate(learn_rate) - perceptron.set_max_iter(max_iter) - # only guaranteed to converge for separable data - perceptron.train() - - perceptron.set_features(feats_test) - out_labels = perceptron.apply().get_labels() - return perceptron, out_labels - -if __name__=='__main__': - print('Perceptron') - classifier_perceptron(*parameter_list[0])