libsvm-mat-2.89

所属分类:人工智能/神经网络/深度学习
开发工具:matlab
文件大小:370KB
下载次数:42
上传日期:2013-09-30 04:24:34
上 传 者submarine1910
说明:   svm(支持向量机)工具箱,用于svm预测,模式识别,故障诊断.
(svm (support vector machine) toolbox for svm prediction, pattern recognition, fault diagnosis.)

文件列表:
libsvm-mat-2.89\COPYRIGHT (1497, 2013-09-29)
libsvm-mat-2.89\heart_scale.mat (28904, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\a_template_flow_usingSVM_class.m (2835, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\a_template_flow_usingSVM_regress.m (2159, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\fasticaForSVM.m (871, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\gaSVMcgForClass.m (3778, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\gaSVMcgForRegress.m (3510, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\gaSVMcgpForRegress.m (3788, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\bs2rv.m (3217, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\contents.m (1835, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\crtbase.m (1168, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\crtbp.m (2187, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\crtrp.m (2091, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\migrate.m (7205, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\mpga.m (4019, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\mut.m (1609, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\mutate.m (3437, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\mutbga.m (4943, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\ranking.m (4709, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\recdis.m (1825, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\recint.m (1895, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\reclin.m (1953, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\recmut.m (4852, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\recombin.m (2438, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\reins.m (5574, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\rep.m (1208, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\resplot.m (2080, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\rws.m (1090, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\scaling.m (1270, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\select.m (2401, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\sus.m (1319, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovdp.m (1042, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovdprs.m (1090, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovmp.m (2795, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovsh.m (1032, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovshrs.m (1080, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovsp.m (1043, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\gatbx[Sheffield]\xovsprs.m (1090, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\mapminmax.m (5545, 2013-09-29)
libsvm-mat-2.89\implement[by faruto]\myprivate\plotroc.m (5369, 2013-09-29)
... ...

----------------------------------------- --- MATLAB/OCTAVE interface of LIBSVM --- ----------------------------------------- Table of Contents ================= - Introduction - Installation - Usage - Returned Model Structure - Examples - Other Utilities - Additional Information Introduction ============ This tool provides a simple interface to LIBSVM, a library for support vector machines (http://www.csie.ntu.edu.tw/~cjlin/libsvm). It is very easy to use as the usage and the way of specifying parameters are the same as that of LIBSVM. Installation ============ On Unix systems, we recommend using GNU g++ as your compiler and type 'make' to build 'svmtrain.mexglx' and 'svmpredict.mexglx'. Note that we assume your MATLAB is installed in '/usr/local/matlab', if not, please change MATLABDIR in Makefile. Example: linux> make To use Octave, type 'make octave': Example: linux> make octave On Windows systems, pre-built 'svmtrain.mexw32' and 'svmpredict.mexw32' are included in this package, so no need to conduct installation. If you have modified the sources and would like to re-build the package, type 'mex -setup' in MATLAB to choose a compiler for mex first. Then type 'make' to start the installation. Starting from MATLAB 7.1 (R14SP3), the default MEX file extension is changed from .dll to .mexw32 or .mexw*** (depends on 32-bit or ***-bit Windows). If your MATLAB is older than 7.1, you have to build these files yourself. Example: matlab> mex -setup (ps: MATLAB will show the following messages to setup default compiler.) Please choose your compiler for building external interface (MEX) files: Would you like mex to locate installed compilers [y]/n? y Select a compiler: [1] Microsoft Visual C/C++ version 7.1 in C:\Program Files\Microsoft Visual Studio [0] None Compiler: 1 Please verify your choices: Compiler: Microsoft Visual C/C++ 7.1 Location: C:\Program Files\Microsoft Visual Studio Are these correct?([y]/n): y matlab> make Under ***-bit Windows, Visual Studio 2005 user will need "X*** Compiler and Tools". The package won't be installed by default, but you can find it in customized installation options. For list of supported/compatible compilers for MATLAB, please check the following page: http://www.mathworks.com/support/compilers/current_release/ Usage ===== matlab> model = svmtrain(training_label_vector, training_instance_matrix [, 'libsvm_options']); -training_label_vector: An m by 1 vector of training labels (type must be double). -training_instance_matrix: An m by n matrix of m training instances with n features. It can be dense or sparse (type must be double). -libsvm_options: A string of training options in the same format as that of LIBSVM. matlab> [predicted_label, accuracy, decision_values/prob_estimates] = svmpredict(testing_label_vector, testing_instance_matrix, model [, 'libsvm_options']); -testing_label_vector: An m by 1 vector of prediction labels. If labels of test data are unknown, simply use any random values. (type must be double) -testing_instance_matrix: An m by n matrix of m testing instances with n features. It can be dense or sparse. (type must be double) -model: The output of svmtrain. -libsvm_options: A string of testing options in the same format as that of LIBSVM. Returned Model Structure ======================== The 'svmtrain' function returns a model which can be used for future prediction. It is a structure and is organized as [Parameters, nr_class, totalSV, rho, Label, ProbA, ProbB, nSV, sv_coef, SVs]: -Parameters: parameters -nr_class: number of classes; = 2 for regression/one-class svm -totalSV: total #SV -rho: -b of the decision function(s) wx+b -Label: label of each class; empty for regression/one-class SVM -ProbA: pairwise probability information; empty if -b 0 or in one-class SVM -ProbB: pairwise probability information; empty if -b 0 or in one-class SVM -nSV: number of SVs for each class; empty for regression/one-class SVM -sv_coef: coefficients for SVs in decision functions -SVs: support vectors If you do not use the option '-b 1', ProbA and ProbB are empty matrices. If the '-v' option is specified, cross validation is conducted and the returned model is just a scalar: cross-validation accuracy for classification and mean-squared error for regression. More details about this model can be found in LIBSVM FAQ (http://www.csie.ntu.edu.tw/~cjlin/libsvm/faq.html) and LIBSVM implementation document (http://www.csie.ntu.edu.tw/~cjlin/papers/libsvm.pdf). Result of Prediction ==================== The function 'svmpredict' has three outputs. The first one, predictd_label, is a vector of predicted labels. The second output, accuracy, is a vector including accuracy (for classification), mean squared error, and squared correlation coefficient (for regression). The third is a matrix containing decision values or probability estimates (if '-b 1' is specified). If k is the number of classes, for decision values, each row includes results of predicting k(k-1/2) binary-class SVMs. For probabilities, each row contains k values indicating the probability that the testing instance is in each class. Note that the order of classes here is the same as 'Label' field in the model structure. Examples ======== Train and test on the provided data heart_scale: matlab> load heart_scale.mat matlab> model = svmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07'); matlab> [predict_label, accuracy, dec_values] = svmpredict(heart_scale_label, heart_scale_inst, model); % test the training data For probability estimates, you need '-b 1' for training and testing: matlab> load heart_scale.mat matlab> model = svmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07 -b 1'); matlab> load heart_scale.mat matlab> [predict_label, accuracy, prob_estimates] = svmpredict(heart_scale_label, heart_scale_inst, model, '-b 1'); To use precomputed kernel, you must include sample serial number as the first column of the training and testing data (assume your kernel matrix is K, # of instances is n): matlab> K1 = [(1:n)', K]; % include sample serial number as first column matlab> model = svmtrain(label_vector, K1, '-t 4'); matlab> [predict_label, accuracy, dec_values] = svmpredict(label_vector, K1, model); % test the training data We give the following detailed example by splitting heart_scale into 150 training and 120 testing data. Constructing a linear kernel matrix and then using the precomputed kernel gives exactly the same testing error as using the LIBSVM built-in linear kernel. matlab> load heart_scale.mat matlab> matlab> % Split Data matlab> train_data = heart_scale_inst(1:150,:); matlab> train_label = heart_scale_label(1:150,:); matlab> test_data = heart_scale_inst(151:270,:); matlab> test_label = heart_scale_label(151:270,:); matlab> matlab> % Linear Kernel matlab> model_linear = svmtrain(train_label, train_data, '-t 0'); matlab> [predict_label_L, accuracy_L, dec_values_L] = svmpredict(test_label, test_data, model_linear); matlab> matlab> % Precomputed Kernel matlab> model_precomputed = svmtrain(train_label, [(1:150)', train_data*train_data'], '-t 4'); matlab> [predict_label_P, accuracy_P, dec_values_P] = svmpredict(test_label, [(1:120)', test_data*train_data'], model_precomputed); matlab> matlab> accuracy_L % Display the accuracy using linear kernel matlab> accuracy_P % Display the accuracy using precomputed kernel Note that for testing, you can put anything in the testing_label_vector. For more details of precomputed kernels, please read the section ``Precomputed Kernels'' in the README of the LIBSVM package. Other Utilities =============== A matlab function libsvmread reads files in LIBSVM format: [label_vector, instance_matrix] = libsvmread('data.txt'); Two outputs are labels and instances, which can then be used as inputs of svmtrain or svmpredict. A matlab function libsvmwrite writes Matlab matrix to a file in LIBSVM format: libsvmwrite('data.txt', label_vector, instance_matrix] The instance_matrix must be a sparse matrix. (type must be double) These codes are prepared by Rong-En Fan and Kai-Wei Chang from National Taiwan University. Additional Information ====================== This interface was initially written by Jun-Cheng Chen, Kuan-Jen Peng, Chih-Yuan Yang and Chih-Huai Cheng from Department of Computer Science, National Taiwan University. The current version was prepared by Rong-En Fan and Ting-Fan Wu. If you find this tool useful, please cite LIBSVM as follows Chih-Chung Chang and Chih-Jen Lin, LIBSVM : a library for support vector machines, 2001. Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm For any question, please contact Chih-Jen Lin , or check the FAQ page: http://www.csie.ntu.edu.tw/~cjlin/libsvm/faq.html#/Q9:_MATLAB_interface

近期下载者

相关文件


收藏者