(New page: Here you can find relevant information on how to implement Pattern Recognition projects using Scilab. == Brief Introduction to Scilab == `Scilab <http://www.scilab.org>`_ is a open-so...) |
(→Example Section: removed this section) |
||
(14 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | Here you can find relevant information on how to implement Pattern Recognition projects using Scilab. | + | Here you can find relevant information on how to implement Pattern Recognition projects using Scilab. |
Line 5: | Line 5: | ||
− | + | Scilab [http://www.scilab.org] is a open-source Matlab-like tool developed at INRIA. It can be downloaded for several platforms from the link: | |
http://www.scilab.org/download/ | http://www.scilab.org/download/ | ||
Line 11: | Line 11: | ||
Tutorials describing how to use Scilab can be found here: | Tutorials describing how to use Scilab can be found here: | ||
− | * | + | * The official documentation[http://www.scilab.org/doc/intro/node1.html] |
− | * | + | * A hands-on tutorial [http://128.220.138.60:8080/download/attachments/1343559/Scilab+Tutorial+Annigeri.pdf?version=1] |
− | * `ANU Scilab Tutorial | + | * `ANU Scilab Tutorial [http://comptlsci.anu.edu.au/Numerical-Methods/tutorial-all.pdf] |
− | * `Une introduction a Scilab | + | * `Une introduction a Scilab [http://www.iecn.u-nancy.fr/~pincon/scilab/docletter.pdf] , if you want to have some fun reading a Scilab tutorial in French. |
− | |||
− | |||
− | |||
+ | == Homework #1 related functionality == | ||
− | + | * '''Random Number Generator:''' grand is the function used to generate random numbers. In order to generate a multivariate normally distributed sequence of *n* vectors with mean *mu* and covariance *cov*, grand should be called as: | |
− | + | <source lang="matlab"> | |
+ | numbers = grand(n, 'mn',mu, cov); | ||
+ | </source> | ||
− | + | * '''Function declaration:''' example that computes the multivariate normal probability density: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | <source lang="matlab"> | |
− | + | // function to compute the multivariate normal distribution | |
− | + | //note that it asks for the sigma inverse, as well as the Sigma's determinant | |
− | + | function [g] = MultivariateNormalDensity(x,mu, sigma_inv, sigma_det) | |
− | + | d=length(x); | |
+ | r2 = (x-mu)'*sigma_inv*(x-mu); | ||
+ | factor = 1/sqrt(((2*%pi)^d)*sigma_det); | ||
+ | g = factor * exp (-(1/2)*r2); | ||
+ | endfunction | ||
+ | </source> | ||
== Tool Boxes == | == Tool Boxes == | ||
− | There are several | + | There are several '''tool boxes''' of functions written by people all over the world adding extra functionality to Scilab. Here are some useful links: |
− | + | ||
− | + | ||
− | * | + | * Toolboxes for Scilab and Their Manuals [http://www.scilab.org/contrib/index_contrib.php?page=download&category=MANUALS] |
− | * | + | * Scilab Toolbox especialized on Pattern Recognition -- Presto-Box [http://www.scilab.org/contrib/index_contrib.php?page=displayContribution&fileID=194] |
− | * | + | * Manual for Presto-Box -- Scilab [http://lmb.informatik.uni-freiburg.de/lmbsoft/presto-box/presto-box-docu.pdf] |
− | * | + | * ANN - Neural Networks Tool Box [http://dir.filewatcher.com/d/Mandrake/10.2/src/Sciences/Mathematics/scilab-toolbox-ANN-0.4.2-4mdk.src.rpm.27699.html] |
+ | * SCIsvm [http://www.informatik.uni-freiburg.de/~fehr/scisvm.html] , a plugin for the libsvm C++ library. | ||
== Scilab Code == | == Scilab Code == |
Latest revision as of 19:45, 26 March 2008
Here you can find relevant information on how to implement Pattern Recognition projects using Scilab.
Contents
Brief Introduction to Scilab
Scilab [1] is a open-source Matlab-like tool developed at INRIA. It can be downloaded for several platforms from the link:
http://www.scilab.org/download/
Tutorials describing how to use Scilab can be found here:
- The official documentation[2]
- A hands-on tutorial [3]
- `ANU Scilab Tutorial [4]
- `Une introduction a Scilab [5] , if you want to have some fun reading a Scilab tutorial in French.
- Random Number Generator: grand is the function used to generate random numbers. In order to generate a multivariate normally distributed sequence of *n* vectors with mean *mu* and covariance *cov*, grand should be called as:
numbers = grand(n, 'mn',mu, cov);
- Function declaration: example that computes the multivariate normal probability density:
// function to compute the multivariate normal distribution //note that it asks for the sigma inverse, as well as the Sigma's determinant function [g] = MultivariateNormalDensity(x,mu, sigma_inv, sigma_det) d=length(x); r2 = (x-mu)'*sigma_inv*(x-mu); factor = 1/sqrt(((2*%pi)^d)*sigma_det); g = factor * exp (-(1/2)*r2); endfunction
Tool Boxes
There are several tool boxes of functions written by people all over the world adding extra functionality to Scilab. Here are some useful links:
- Toolboxes for Scilab and Their Manuals [6]
- Scilab Toolbox especialized on Pattern Recognition -- Presto-Box [7]
- Manual for Presto-Box -- Scilab [8]
- ANN - Neural Networks Tool Box [9]
- SCIsvm [10] , a plugin for the libsvm C++ library.
Scilab Code
All the relevant code for the EE662 course written in Scilab is posted below:
!`MultivariateNormalDensity.sci`__ - Implementation of a function to compute the multivariate normal density
__ MultivariateNormalDensity.sci