using namespace std;
MatrixFloat generateTrainingData(
const UINT numClusters,
const UINT numDimensions=3,
const UINT numSamples=1000);
int main (int argc, const char * argv[])
{
UINT numClusters = 3;
UINT numDimensions = 3;
UINT numSamples = 10000;
MatrixFloat trainingData = generateTrainingData( numClusters, numDimensions, numSamples );
cout << "Training model...\n";
if( !gmm.
train( trainingData ) ){
cout << "Failed to train model!\n";
return EXIT_FAILURE;
}
if( !gmm.
save(
"GMM.grt" ) ){
cout << "Failed to save model to file!\n";
return EXIT_FAILURE;
}
if( !gmm.
load(
"GMM.grt" ) ){
cout << "Failed to load model from file!\n";
return EXIT_FAILURE;
}
cout << "Mu:\n";
cout << mu[k][n] << "\t";
}cout << endl;
}
cout << endl;
cout << "Sigma:\n";
for(unsigned int k=0; k<sigma.size(); k++){
cout << "Cluster: " << k+1 << endl;
for(unsigned int m=0; m<sigma[k].getNumRows(); m++){
for(unsigned int n=0; n<sigma[k].getNumCols(); n++){
cout << sigma[k][m][n] << "\t";
}
cout << endl;
}
}
cout << endl;
return EXIT_SUCCESS;
}
MatrixFloat generateTrainingData(
const UINT numClusters,
const UINT numDimensions,
const UINT numSamples){
for(UINT k=0; k<numClusters; k++){
for(UINT n=0; n<numDimensions; n++){
}
}
cout << "Model Mu:\n";
for(UINT k=0; k<numClusters; k++){
for(UINT n=0; n<numDimensions; n++){
cout << mu[k][n] << "\t";
}
cout << endl;
}
cout << endl;
cout << "Model Sigma:\n";
for(UINT k=0; k<numClusters; k++){
for(UINT n=0; n<numDimensions; n++){
cout << sigma[k][n] << "\t";
}
cout << endl;
}
cout << endl;
for(UINT i=0; i<numSamples; i++){
for(UINT n=0; n<numDimensions; n++){
}
}
return data;
}