Software and databases
The files shown below are © Miguel Á. Carreira-Perpiñán unless explicitly stated otherwise. They are free for non-commercial use. I make them available in the hope that they will be useful, but without any warranty.
For implementations of my own algorithms, see my publications page.
Machine learning algorithms and models
- Probabilistic models:
- Gaussian mixtures:
- GM contains a set of Matlab functions to perform some common operations with Gaussian mixtures (GMs): computing the density, gradient and Hessian at given points; computing the moments (mean, covariance); finding all the modes (with a fixed-point, mean-shift iteration); sampling from the GM; and finding the parameters of a conditional or marginal GM, e.g. for p(x3|x2,x4) from a GM with pdf p(x1,x2,x3,x4,x5). In particular, this allows finding the modes, gradient, etc. of conditional or marginal GMs.
- Mode-finding in Gaussian mixtures (including the calculation of error bars, gradient and Hessian). See my page on Gaussian mixtures.
- Other functions:
- sqdist.m: matrix of squared Euclidean distances between two datasets (needed by many of the functions below).
- kmeans.m: k-means algorithm, with various choices for the initialisation.
- procrustes.m: Procrustes alignment of two datasets. Useful to compare the results of different dimensionality reduction algorithms.
- gaussaff.m: Gaussian affinity matrix of a dataset based on various types of graphs: full, k-nearest-neighbour (symmetric, nonsymmetric, mutual), epsilon-ball. Returns a sparse matrix if possible.
- econncomp.m: connected components of a point set using the Euclidean distance.
- conncomp.m: connected components of a graph.
- sample_dirichlet.m: sampling from a Dirichlet distribution.
- varimax.m: varimax rotation.
- imgsqd.m: transforms an image file (greyscale or colour) into a data set with one feature vector per pixel and computes the sparse matrix of squared Euclidean distances between pixel feature vectors (requires rgb2lab.m, rgb2luv.m, rgb2xyz.m).
- rgb2lab.m, rgb2luv.m, rgb2xyz.m: color space transformations.
(Articulatory) speech processing
- Articulatory databases: the following tools allow you to read data files from the MOCHA and XRMB databases into Matlab, plot animations of the vocal tract (pellet locations and outlines of the tongue and palate) and speech (waveform, spectrogram, energy, pitch, and phoneme labels if available), to save the visualisation as a movie file, to produce scatterplots and temporal plots of the articulator traces, and various other things:
Both of them require you to install our speech analysis functions. This code was mostly written by my PhD student Chao Qin.
- Electropalatography: tools for imaging EPG frames.
Databases
- MACPcv: a LaTeX2e class file to typeset a personalised curriculum vitae.
- MACPremark: a LaTeX2e package to add remarks to a draft LaTeX file, such as I need to complete this section and add a bibliographic reference or Extend this proof to the complex numbers.
- MACPpreprint: a LaTeX2e package to add remarks to a preprint LaTeX file without modifying its layout, as if the text of the remarks had been typed over the paper once printed. This is useful to put online copies of papers in your web page which are exactly like the camera-ready ones published in proceedings or journals, but over which some text has been typed, such as a copyright notice, bibliographical information or page numbers.
- MACParrow: a simple LaTeX2e package to add horizontal curved stretchable arrows under and over a formula, as are common in commutative diagrams, like
. There are other packages that do this and much more, like xypic, but if you just need over- and underarrows, this one is very compact and simple to use.
- www-comand.el package: allows automatic sending of commands to certain WWW sites from inside XEmacs. It currently includes:
and it is straightforward to include others. This package is a minimal modification of Tomasz J. Cholewo's webster-www package that comes in the standard distribution of XEmacs.20.x.
Initialisation files for various programs
If you want to use them, be sure to read through them and adapt them to your local configuration; for example, you will need to change some directory names, the email address, check for the existence of certain programs in your system, etc.
- .emacs, for the Emacs or XEmacs editors (requires the www-command.el file)
- init.el and custom.el, internally loaded by my .emacs for the XEmacs editor
- .bibtex, internally loaded by my .emacs for use with XEmacs' BibTeX mode
- .gnus, for gnus, the XEmacs newsreader
- .vm, for VM, the XEmacs mail reader
- .ctwmrc, for the CTWM window manager
You can get all the files as MACPinit.tar.gz.
Miguel A. Carreira-Perpinan
Last modified: Mon Nov 9 16:44:43 PST 2009
UC Merced |
EECS |
MACP's Home Page