Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sanuj/112a42c32062644f533325e6639af06a to your computer and use it in GitHub Desktop.
Save sanuj/112a42c32062644f533325e6639af06a to your computer and use it in GitHub Desktop.
require 'modshogun'
f_feats_train = Modshogun::CSVFile.new "../../data/classifier_binary_2d_nonlinear_features_train.dat"
f_feats_test = Modshogun::CSVFile.new "../../data/classifier_binary_2d_nonlinear_features_test.dat"
f_labels_train = Modshogun::CSVFile.new "../../data/classifier_binary_2d_nonlinear_labels_train.dat"
f_labels_test = Modshogun::CSVFile.new "../../data/classifier_binary_2d_nonlinear_labels_test.dat"
#![create_features]
features_train = Modshogun::RealFeatures.new f_feats_train
features_test = Modshogun::RealFeatures.new f_feats_test
labels_train = Modshogun::BinaryLabels.new f_labels_train
labels_test = Modshogun::BinaryLabels.new f_labels_test
#![create_features]
#![create_kernel]
poly_kernel = Modshogun::PolyKernel.new 10, 3
poly_kernel.init features_train, features_train
poly_kernel_mat_train = poly_kernel.get_kernel_matrix
custom_kernel = Modshogun::CustomKernel.new poly_kernel_mat_train
another_poly_kernel = Modshogun::PolyKernel.new 10, 2
gauss_kernel = Modshogun::GaussianKernel.new 0.5
#![create_kernel]
#![create_combined_train]
combined_kernel = Modshogun::CombinedKernel.new
combined_kernel.append_kernel custom_kernel
combined_kernel.append_kernel another_poly_kernel
combined_kernel.append_kernel gauss_kernel
combined_kernel.init features_train, features_train
#![create_combined_train]
#![train_mkl]
mkl = Modshogun::MKLClassification.new
mkl.set_kernel combined_kernel
mkl.set_labels labels_train
mkl.train
#![train_mkl]
#![extract_weights]
beta = combined_kernel.get_subkernel_weights
alpha = mkl.get_alphas
bias = mkl.get_bias
#![extract_weights]
#![create_combined_test]
poly_kernel.init features_train, features_test
poly_kernel_mat_test = poly_kernel.get_kernel_matrix
custom_kernel.set_full_kernel_matrix_from_full poly_kernel_mat_test
combined_kernel.init features_train, features_test
#![create_combined_test]
#![mkl_apply]
mkl.set_kernel combined_kernel
labels_predict = mkl.apply_binary
#![mkl_apply]
#![evaluate_accuracy]
eval = Modshogun::AccuracyMeasure.new
accuracy = eval.evaluate labels_predict, labels_test
#![evaluate_accuracy]
# additional integration testing variables
output = labels_predict.get_labels
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment