Friday, March 13, 2009

MATLAB 2009a

MATLAB is on the move. Release 2009a brings a number of changes. The function of the random number generators had already begun to change in the base product as of the last release, if you hadn't noticed, and several functions (min, max, sum and prod, as well as several of the FFT functions) are now multi-threaded. This release also witnesses several changes to the analytical toolboxes. Among others...

In the Statistics Toolbox...

A Naïve Bayes modeling tool has been added. This is a completely different way of modeling than the other technique in the Statistics Toolbox. Obviously, the more diverse to set of modeling tools, the better.

Data table joining has been enhanced several ways, including the ability to use multiple keys and different types of joins (inner, outer, etc.).

A number of changes to the tree induction facility (classregtree), including a fix to the quirky splitmin parameter. Now the programmer can specify the minimum number of cases per leaf node, which seems like a better way to control decision tree growth.

There are also new options for model ensembles and performance curve summaries.

In the Curve Fitting Toolbox...

Yipee! There are now functions for surface fitting (functions fit to 2 inputs, instead of just 1). Both interactive and programmatic fitting is available.

In the Parallel Computing Toolbox...

The maximum number of local workers has been increased from 4 to 8.


Kees said...

What I like about the latest releases (especially since R2008a) is the added multithreading support for matrix operations. If you use a lot of vector math (and I do), this is a huge advantage, especially when working on quad core machines. It can even eliminate the need for distributed computing!

According to the release notes, in this version the MATLAB functions for Fourier transforms fft, fft2, and fftn, and their inverses ifft, ifft2, and ifftn are now multithreaded. In addition, the MATLAB functions prod, sum, max, and min are multithreaded.

Will Dwinnell said...

Yes, I've continued to experimetn with the Parallel Computing Toolbox and have found accelerations in some cases of 8-to-1.

serotonin said...

what do you mean of multiple keys?
for example if I have a table of
[ mon 4 6
tue 7 9
wed 6 6]
and a second table of
[ 6 mum
9 dad]
can I join the two tables of different size via their common key (6, 9)
[ mon 4 6 mum
tue 7 9 dad
wed 8 8 mum]
and if yes how?