train_segmenter.cpp File Reference
Classes | |
struct | Thread_Train_Data_Cluster |
Functions | |
void * | thread_train_cluster (void *ptr) |
Variables | |
int | SEGMENT_INITIAL_DATA_SEGMENTS = 2 |
int | MINPASSES |
int | nrOfStateHistPruning |
int | globalIt = 1 |
int | MERGE_METHOD = 0 |
int | STOP_METHOD = 0 |
Thread_Train_Data_Cluster | trainThreadCluster [MAX_NR_THREADS] |
bool | cluster_threadRunning [MAX_NR_THREADS] |
bool | cluster_threadMayStart [MAX_NR_THREADS] |
pthread_mutex_t | condition_cluster_mutexStart [MAX_NR_THREADS] |
pthread_cond_t | condition_cluster_threadStart [MAX_NR_THREADS] |
pthread_t | cluster_thread [MAX_NR_THREADS] |
pthread_mutex_t | condition_cluster_mutexDone |
pthread_cond_t | condition_cluster_threadDone |
bool | loadedOverlapAM = false |
FeaturePool * | pass2Pool = NULL |
int | pass2PoolindexWeight = 0 |
int | pass2PoolindexShift = 0 |
Function Documentation
void* thread_train_cluster | ( | void * | ptr | ) |
References cluster_threadMayStart, cluster_threadRunning, condition_cluster_mutexDone, condition_cluster_mutexStart, condition_cluster_threadDone, condition_cluster_threadStart, TrainPhoneModel::getTrainSilP(), Thread_Train_Data_Cluster::id, Thread_Train_Data_Cluster::model, Thread_Train_Data_Cluster::nr, Thread_Train_Data_Cluster::segid, TrainPhoneModel::train(), and Thread_Train_Data_Cluster::trainPRes.
Referenced by Train_Segmenter::Train_Segmenter().

Variable Documentation
pthread_t cluster_thread[MAX_NR_THREADS] |
Referenced by Train_Segmenter::Train_Segmenter().
bool cluster_threadMayStart[MAX_NR_THREADS] |
Referenced by thread_train_cluster(), Train_Segmenter::Train_Segmenter(), and Train_Segmenter::trainModel().
bool cluster_threadRunning[MAX_NR_THREADS] |
pthread_mutex_t condition_cluster_mutexDone |
pthread_mutex_t condition_cluster_mutexStart[MAX_NR_THREADS] |
Referenced by thread_train_cluster(), and Train_Segmenter::trainModel().
pthread_cond_t condition_cluster_threadDone |
pthread_cond_t condition_cluster_threadStart[MAX_NR_THREADS] |
Referenced by thread_train_cluster(), and Train_Segmenter::trainModel().
int globalIt = 1 |
Referenced by Train_Segmenter::mergeClusters(), Train_Segmenter::mergeModels(), and Train_Segmenter::train().
bool loadedOverlapAM = false |
int MERGE_METHOD = 0 |
int MINPASSES |
FeaturePool* pass2Pool = NULL |
The main method of this class. It will 'train' new clusters with maximal maxClusters. If maxClusters is equal to zero, regular speaker clustering is performed. If not, the following steps are added:
- Merge small clusters (clusters with not enough data used during training) to their closest clusters until all clusters contain are big enough.
- Merge the remaining clusters until no more than maxClusters clusters are left.
int pass2PoolindexShift = 0 |
int pass2PoolindexWeight = 0 |
int SEGMENT_INITIAL_DATA_SEGMENTS = 2 |
Referenced by Train_Segmenter::train().
int STOP_METHOD = 0 |
Thread_Train_Data_Cluster trainThreadCluster[MAX_NR_THREADS] |