def preprocessor_randomfouriergausspreproc (fm_train_real=traindat,fm_test_real=testdat,width=1.4,size_cache=10): from shogun import Chi2Kernel from shogun import RealFeatures from shogun import RandomFourierGaussPreproc feats_train=RealFeatures(fm_train_real) feats_test=RealFeatures(fm_test_real) preproc=RandomFourierGaussPreproc() preproc.init(feats_train) feats_train.add_preprocessor(preproc) feats_train.apply_preprocessor() feats_test.add_preprocessor(preproc) feats_test.apply_preprocessor() kernel=Chi2Kernel(feats_train, feats_train, width, size_cache) km_train=kernel.get_kernel_matrix() kernel.init(feats_train, feats_test) km_test=kernel.get_kernel_matrix() return km_train,km_test,kernel
def preprocessor_prunevarsubmean (fm_train_real=traindat,fm_test_real=testdat,width=1.4,size_cache=10): from shogun import Chi2Kernel from shogun import RealFeatures from shogun import PruneVarSubMean feats_train=RealFeatures(fm_train_real) feats_test=RealFeatures(fm_test_real) preproc=PruneVarSubMean() preproc.init(feats_train) feats_train.add_preprocessor(preproc) feats_train.apply_preprocessor() feats_test.add_preprocessor(preproc) feats_test.apply_preprocessor() kernel=Chi2Kernel(feats_train, feats_train, width, size_cache) km_train=kernel.get_kernel_matrix() kernel.init(feats_train, feats_test) km_test=kernel.get_kernel_matrix() return km_train,km_test,kernel
def preprocessor_normone (fm_train_real=traindat,fm_test_real=testdat,width=1.4,size_cache=10): from shogun import Chi2Kernel from shogun import RealFeatures from shogun import NormOne feats_train=RealFeatures(fm_train_real) feats_test=RealFeatures(fm_test_real) preprocessor=NormOne() preprocessor.init(feats_train) feats_train.add_preprocessor(preprocessor) feats_train.apply_preprocessor() feats_test.add_preprocessor(preprocessor) feats_test.apply_preprocessor() kernel=Chi2Kernel(feats_train, feats_train, width, size_cache) km_train=kernel.get_kernel_matrix() kernel.init(feats_train, feats_test) km_test=kernel.get_kernel_matrix() return km_train,km_test,kernel
def serialization_complex_example (num=5, dist=1, dim=10, C=2.0, width=10): import os from numpy import concatenate, zeros, ones from numpy.random import randn, seed from shogun import RealFeatures, MulticlassLabels from shogun import GMNPSVM from shogun import GaussianKernel from shogun import SerializableHdf5File,SerializableAsciiFile, \ SerializableJsonFile,SerializableXmlFile,MSG_DEBUG from shogun import NormOne, LogPlusOne from tempfile import NamedTemporaryFile seed(17) data=concatenate((randn(dim, num), randn(dim, num) + dist, randn(dim, num) + 2*dist, randn(dim, num) + 3*dist), axis=1) lab=concatenate((zeros(num), ones(num), 2*ones(num), 3*ones(num))) feats=RealFeatures(data) #feats.io.set_loglevel(MSG_DEBUG) #feats.io.enable_file_and_line() kernel=GaussianKernel(feats, feats, width) labels=MulticlassLabels(lab) svm = GMNPSVM(C, kernel, labels) feats.add_preprocessor(NormOne()) feats.add_preprocessor(LogPlusOne()) feats.set_preprocessed(1) svm.train(feats) bias_ref = svm.get_svm(0).get_bias() #svm.print_serializable() tmp_h5 = NamedTemporaryFile(suffix='h5') fstream = SerializableHdf5File(tmp_h5.name, "w") status = svm.save_serializable(fstream) check_status(status,'h5') tmp_asc = NamedTemporaryFile(suffix='asc') fstream = SerializableAsciiFile(tmp_asc.name, "w") status = svm.save_serializable(fstream) check_status(status,'asc') tmp_json = NamedTemporaryFile(suffix='json') fstream = SerializableJsonFile(tmp_json.name, "w") status = svm.save_serializable(fstream) check_status(status,'json') tmp_xml = NamedTemporaryFile(suffix='xml') fstream = SerializableXmlFile(tmp_xml.name, "w") status = svm.save_serializable(fstream) check_status(status,'xml') fstream = SerializableHdf5File(tmp_h5.name, "r") new_svm=GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status,'h5') new_svm.train() bias_h5 = new_svm.get_svm(0).get_bias() fstream = SerializableAsciiFile(tmp_asc.name, "r") new_svm=GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status,'asc') new_svm.train() bias_asc = new_svm.get_svm(0).get_bias() fstream = SerializableJsonFile(tmp_json.name, "r") new_svm=GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status,'json') new_svm.train() bias_json = new_svm.get_svm(0).get_bias() fstream = SerializableXmlFile(tmp_xml.name, "r") new_svm=GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status,'xml') new_svm.train() bias_xml = new_svm.get_svm(0).get_bias() return svm,new_svm, bias_ref, bias_h5, bias_asc, bias_json, bias_xml
def serialization_complex_example(num=5, dist=1, dim=10, C=2.0, width=10): import os from numpy import concatenate, zeros, ones from numpy.random import randn, seed from shogun import RealFeatures, MulticlassLabels from shogun import GMNPSVM from shogun import GaussianKernel from shogun import SerializableHdf5File,SerializableAsciiFile, \ SerializableJsonFile,SerializableXmlFile,MSG_DEBUG from shogun import NormOne, LogPlusOne from tempfile import NamedTemporaryFile seed(17) data = concatenate( (randn(dim, num), randn(dim, num) + dist, randn(dim, num) + 2 * dist, randn(dim, num) + 3 * dist), axis=1) lab = concatenate((zeros(num), ones(num), 2 * ones(num), 3 * ones(num))) feats = RealFeatures(data) #feats.io.set_loglevel(MSG_DEBUG) #feats.io.enable_file_and_line() kernel = GaussianKernel(feats, feats, width) labels = MulticlassLabels(lab) svm = GMNPSVM(C, kernel, labels) feats.add_preprocessor(NormOne()) feats.add_preprocessor(LogPlusOne()) feats.set_preprocessed(1) svm.train(feats) bias_ref = svm.get_svm(0).get_bias() #svm.print_serializable() tmp_h5 = NamedTemporaryFile(suffix='h5') fstream = SerializableHdf5File(tmp_h5.name, "w") status = svm.save_serializable(fstream) check_status(status, 'h5') tmp_asc = NamedTemporaryFile(suffix='asc') fstream = SerializableAsciiFile(tmp_asc.name, "w") status = svm.save_serializable(fstream) check_status(status, 'asc') tmp_json = NamedTemporaryFile(suffix='json') fstream = SerializableJsonFile(tmp_json.name, "w") status = svm.save_serializable(fstream) check_status(status, 'json') tmp_xml = NamedTemporaryFile(suffix='xml') fstream = SerializableXmlFile(tmp_xml.name, "w") status = svm.save_serializable(fstream) check_status(status, 'xml') fstream = SerializableHdf5File(tmp_h5.name, "r") new_svm = GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status, 'h5') new_svm.train() bias_h5 = new_svm.get_svm(0).get_bias() fstream = SerializableAsciiFile(tmp_asc.name, "r") new_svm = GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status, 'asc') new_svm.train() bias_asc = new_svm.get_svm(0).get_bias() fstream = SerializableJsonFile(tmp_json.name, "r") new_svm = GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status, 'json') new_svm.train() bias_json = new_svm.get_svm(0).get_bias() fstream = SerializableXmlFile(tmp_xml.name, "r") new_svm = GMNPSVM() status = new_svm.load_serializable(fstream) check_status(status, 'xml') new_svm.train() bias_xml = new_svm.get_svm(0).get_bias() return svm, new_svm, bias_ref, bias_h5, bias_asc, bias_json, bias_xml