Program for Training GMM on Joint Probability
* FOR LITTLE ENDIAN

usage: gmm_jde [options...] [infile] [outweightfile] [outmeanfile] [outcovfile]
options:
        -dim dim[50]                    : dimension of vector
        -itnum itnum[20]                : max number of iteration
        -thresh thresh[0.000001]        : threshold of likelihood
        -wghtfile wghtfile              : initial weight file
        -meanfile meanfile              : initial mean file
        -covfile covfile                : initial covariance file
        -dia                            : use diagonal covariance matrix
        -bcovfile bcovfile              : basic covariance file
        -flcoef flcoef[0.001]           : flooring coefficient
        -file                           : file processing (output temporary files)
        -nmsg                           : no message
        -help                           : display this message

The input file is a binary file of feature vectors. Binary files of
initial weights, mean vectors and covariance matrices are also
necessary and they are used by -wghtfile, -meanfile, and -covfile,
respectively. Three output binary files, i.e., estimated weights, mean
vectors, and covariance matrices, are generated.

The number of dimensions of joint feature vectors is changed by
-dim. The maximum number of iterations in EM is changed by
-itnum, and a threshold of likelihood for terminating the iteration
is changed by -thresh.

A flooring process for diagonal elements in covariance matrices can be
performed. A binary file of a basic covariance matrix is used by
-bcovfile. A covariance matrix calculated over all training data can
be used as the basic covariance. A coefficient for the flooring is
changed by -flcoef. Flooring values are calculated by multiplying
diagonal elements in the basic covariance and the flooring
coefficient.

Each covariance matrix on joint space is represented as
   Cov = [Cov(x,x) Cov(x,y)]
         [Cov(y,x) Cov(y,y)]
where full covariance matrix is used. If -dia is used, the following
diagonal sub-covariance matrices are estimated,
   [diag(Cov(x,x)) diag(Cov(x,y))]
   [diag(Cov(y,x)) diag(Cov(y,y))]
where the dimension of vector x is equal to that of vector y.

If -file is used, CPU memory can be saved by generating temporary
files. These files are generated by one iteration.

Binary data has double-type format.

Some messages are printed while executing this program. If you
don't need those messages, use -nmsg.


<EXAMPLE>
% gmm_jde \
	-dim 48 \
	-wghtfile input.wghts \
	-meanfile input.means \
	-covfile input.covs \
	-bcovfile input.cov \
	-dia \
	-file \
	input.vecs \
	output.wghts \
	output.means \
	output.covs \
	> log.txt


Tomoki Toda (tomoki@ics.nitech.ac.jp)


==================================================
The current copyright is

/*********************************************************************/
/*                                                                   */
/*            Nagoya Institute of Technology, Aichi, Japan,          */
/*       Nara Institute of Science and Technology, Nara, Japan       */
/*                                and                                */
/*             Carnegie Mellon University, Pittsburgh, PA            */
/*                      Copyright (c) 2003-2004                      */
/*                        All Rights Reserved.                       */
/*                                                                   */
/*  Permission is hereby granted, free of charge, to use and         */
/*  distribute this software and its documentation without           */
/*  restriction, including without limitation the rights to use,     */
/*  copy, modify, merge, publish, distribute, sublicense, and/or     */
/*  sell copies of this work, and to permit persons to whom this     */
/*  work is furnished to do so, subject to the following conditions: */
/*                                                                   */
/*    1. The code must retain the above copyright notice, this list  */
/*       of conditions and the following disclaimer.                 */
/*    2. Any modifications must be clearly marked as such.           */
/*    3. Original authors' names are not deleted.                    */
/*                                                                   */    
/*  NAGOYA INSTITUTE OF TECHNOLOGY, NARA INSTITUTE OF SCIENCE AND    */
/*  TECHNOLOGY, CARNEGIE MELLON UNIVERSITY, AND THE CONTRIBUTORS TO  */
/*  THIS WORK DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,  */
/*  INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, */
/*  IN NO EVENT SHALL NAGOYA INSTITUTE OF TECHNOLOGY, NARA           */
/*  INSTITUTE OF SCIENCE AND TECHNOLOGY, CARNEGIE MELLON UNIVERSITY, */
/*  NOR THE CONTRIBUTORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR      */
/*  CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM   */
/*  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,  */
/*  NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN        */
/*  CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.         */
/*                                                                   */
/*********************************************************************/
/*                                                                   */
/*          Author :  Tomoki Toda (tomoki@ics.nitech.ac.jp)          */
/*          Date   :  June 2004                                      */
/*                                                                   */
/*-------------------------------------------------------------------*/
/*                                                                   */
/*  Training GMM on Joint Probability                                */
/*                                                                   */
/*-------------------------------------------------------------------*/
