(Scilab Code)
(Example Section: removed this section)
 
(4 intermediate revisions by 3 users not shown)
Line 28: Line 28:
 
* '''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:
 
* '''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);
 
numbers = grand(n, 'mn',mu, cov);
 
+
</source>
  
  
 
* '''Function declaration:''' example that computes the multivariate normal probability density:
 
* '''Function declaration:''' example that computes the multivariate normal probability density:
  
<nowiki>
+
<source lang="matlab">
 
// function to compute the multivariate normal distribution
 
// function to compute the multivariate normal distribution
 
//note that it asks for the sigma inverse, as well as the Sigma's determinant
 
//note that it asks for the sigma inverse, as well as the Sigma's determinant
Line 43: Line 44:
 
g = factor * exp (-(1/2)*r2);
 
g = factor * exp (-(1/2)*r2);
 
endfunction
 
endfunction
</nowiki>
+
</source>
 
+
The file with the code above can be downloaded from the link below:
+
 
+
!`MultivariateNormalDensity.sci`__
+
 
+
__ MultivariateNormalDensity.sci
+
  
 
== Tool Boxes ==
 
== Tool Boxes ==
Line 72: Line 67:
  
 
__ MultivariateNormalDensity.sci
 
__ MultivariateNormalDensity.sci
 
=== Example Section ===
 

Latest revision as of 19:45, 26 March 2008

Here you can find relevant information on how to implement Pattern Recognition projects using Scilab.


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.



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:
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

Alumni Liaison

Basic linear algebra uncovers and clarifies very important geometry and algebra.

Dr. Paul Garrett