Code covered by the BSD License  

Highlights from
Statistical Learning Toolbox

4.78125

4.8 | 32 ratings Rate this file 80 Downloads (last 30 days) File Size: 4.94 MB File ID: #12333

Statistical Learning Toolbox

by Dahua Lin

 

20 Sep 2006 (Updated 25 Sep 2006)

Functions for statistical learning, pattern recognition and computer vision, covering many topics.

| Watch this File

File Information
Description

Introduction to sltoolbox

sltoolbox (Statistical Learning Toolbox) organizes a comprehensive set of matlab codes in statistical learning, pattern recognition and computer vision. It includes 256 m-files in 24 categories, which are from low-level computational routines to high-level frameworks and algorithms. The toolbox have following main features:

(1) it covers many active research topics in learning and vision, including classification, regression, statistical modeling, finite mixture model, graph theory-based learning, subspace learning, kernel learning, manifold learning, tensor algebra, vector quantization and vocabulary learning.

(2) it offers many useful utilities to facilitate your experiments in matlab, including a set of kits to manipulate data, text and files. In addition, it offers a matlab-based script system called experiment description language with an xml-based experiment control system to help you run a large batch of experiments with ease.

(3) it is highly optimized. Much efforts have been devoted to improve the run-time efficiency of the codes. It is achieved with three ways: deducing equivalent mathematical forms for fast computation, grouping the operations into matrix-based computations to maximum degree, and writing the codes in cpp-mex for those cannot be organized into matrix computation.

(4) it is flexible and extensible. For most of the functions, you can control a lot of properties to adapt its behaviour to your need. For many algorithms, the implementations support weighted samples so that you can easily incorporate the algorithm into the environment using weights. In addition, in some of the algorithms, you can change the functions' behaviour by supplying your own call-back function. For example, in K-means, you can specify your special function to measure distances or compute means; in spectral learning, you can specify your function to caculate the graph edge weights in your own manner.

(5) it is well organized. The whole toolbox is organized according to the rules in software engineering. They are not a simple collection of many algorithms, but a carefully designed system, so that the codes can be maximally reused and cooperate well.

(6) it is easy to use. Detailed help information is given for each m-file. I have tried to design friendly interfaces to user. For most of the functions, you can use a small number of arguments to invoke them in default settings, when you would like to gain more control on their behaviour, you can tell them your specification by setting properties, such as
       f(x1, x2, 'propertyname1', propertyvalue1, 'propertyname2', propertyvalue2, ...)

(7) it is robust. Attention has been paid to the numerical stability of the computations and some steps have been taken to enhance the stability. In addition, a lot of error-checking statements are used to check the consistency of the input arguments. I have tried to lie a good balance between robustness and effiency, and increase the robustness without notably compromising the run-time speed.

The following is a brief list of the functions offered in sltoolbox.

It contains the following categories:

core: The core computational routines. The efficient implementation of a set of common computation routines.
smallmat: Fast functions to compute on a set of small matrices
utils: A set of useful toolkits to manipulate data.
utils_ex: Other useful kits
fileio: Facilities to manage files
text: Kits to parse and manipulate strings and texts.
perfeval: classification performance evaluation
imgproc: Functions for image-based learning and batch image processing
visualize: Visualization of data and models
xmlkits: small kits to extract information from XML elements

ann: Approximate nearest neighbors by KD-tree
cluster: Data clustering
discrete: Vector quantization, vocabulary building and histogram-based computation
graph: Graph (the graph in graph theory) contruction
interp: Interpolation kernels
kernel: Kernel learning and kernelization
learn: Some basic learning architectures
regression: Linear and Logistic regression
stat: Statistical modeling and Finite mixture model (such as GMM)
subspace: Representative subspace learning algorithms
subspace_ex: Subspace learning algortihms for very high-dimension data
manifold: Manifold embedding learning
tensor: Tensor algebra
expdl: Experiment description language

Required Products Optimization Toolbox
MATLAB release MATLAB 7.2 (R2006a)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (40)
21 Sep 2006 nina luan  
21 Sep 2006 Laurel Xiao

It has a good kmeans, good slmetric_pw and good sldistmean, and very powerful to calculate distances.

21 Sep 2006 Jessie Dai

nice work:)

22 Sep 2006 Siyi Deng

This toolbox is quite helpful. The code quality is generally high and could serve as good examples.

24 Sep 2006 Dahua Lin

A new version of package (v1.01) with manual and tutorial has been uploaded, and they are expected to be available in one to two days.

01 Oct 2006 Jianhua Zhao

Very good!

06 Oct 2006 Olufemi Omitaomu

I would have love to see a content file for each folder. Thanks anyway.

30 Oct 2006 sixing zhu

the toolbox is very good

03 Nov 2006 zhaofeng he

Thanks Dahua, it is excellent.

21 Nov 2006 BASSAm ALQADI

Thanks alot

24 Nov 2006 cc cc

good

14 Jan 2007 Victor Fang

It's amazing work!

23 Jan 2007 xiaoming liu

Wonderful!

26 Jan 2007 ya to

may like sl garbage collection

29 Jan 2007 Abudula Muhamode

no demo code, really like a garbage collection

23 Feb 2007 hjksd sjdsjs

great work indeed; but i wonder why "sllda" method cant take precomputed Sw and Sb parameters together with 'regdual'

01 Mar 2007 satheesh kumar r  
01 Mar 2007 Ao Li

REALLY NICE JOB!

08 Mar 2007 Wang Lei

very nice,but i see error when try slfld(X,nums,'prepca',true);in line 170, T1 should be replaced by TW

03 Apr 2007 Bobby Bob

Kick butt!

25 Apr 2007 hakan ertem  
18 May 2007 ali noori

l

27 May 2007 kiang gao  
29 Jun 2007 Chen Hailin  
02 Jul 2007 Dahua Lin

In am now working in the version 2 of the toolbox based on the new version R2007a.
There is an important new function bsxfun, which effectively covers the functionality offered by the m-files in the core directory.
In addition, I have test its performance. It is surprising that bsxfun works in a comparable or even faster speed than C-coded mex functions.
Therefore, in the next version, the core computation will be based on that function instead of hand-coded C-mex.

25 Oct 2007 George Hook

non

17 Mar 2008 saad mehmood  
03 Apr 2008 Ben Kang  
20 Apr 2008 zedairia imad

je veux le programme de classification des images parGMM

01 Aug 2008 Siqing Wu

Awesome, thanks a lot~

07 Aug 2008 jack moog

I cant make it to compile in matlab 2008a. Can anybody upload the mex compiled file (or just the whole package where it has already been compiled ) to me ?
metalica@gmail.com

27 Aug 2008 Richard Ang

your fans!

04 Sep 2008 Santanu Ghorai

Hudge relief from writing codes and save lots of time. Many many thanks!

21 Sep 2008 Henry Cong  
02 Oct 2008 Ashwin Sundar

what ever code i need is present here, thank you for such hefty work.......

05 Jan 2009 Anton

This submission definitely stands out. A great and versatile package. For those interested in classification I invite you to visit http://prtools.org/index.html

25 May 2009 Patricia

Hi. I can't make it compile, could someone please send me the mex compiled file?
patri130@hotmail.com

21 Nov 2009 Raymond Cheng

Thanks for your sharing, nice tutorial.

05 Dec 2011 Yung

thanks for sharing.

28 Dec 2011 Chris

Big fan

Please login to add a comment or rating.
Updates
25 Sep 2006

Version 1.01: Incorporate manuals and a tutorial into the package, and fix small bugs.

Tag Activity for this File
Tag Applied By Date/Time
statistical learning Dahua Lin 22 Oct 2008 08:40:03
pattern recognition Dahua Lin 22 Oct 2008 08:40:03
classification Dahua Lin 22 Oct 2008 08:40:03
regression Dahua Lin 22 Oct 2008 08:40:04
classification uma subbiah 14 May 2009 08:21:13
classification ajith kumar 27 Oct 2010 07:01:24

Contact us at files@mathworks.com