Exemple #1
0
def train(trainingData):
   # train one GMM for each state
   mixes = list()
   for state in xrange(1,6):
      # select data with current state label
      d = trainingData[trainingData.rating==state]
      # prepare data shape
      d = np.array(zip(*[d[f].values for f in pcas]))
      # init GMM
      gmm = GMM(num_mixc,cov_type)
      # train
      gmm.fit(d)
      mixes.append(gmm)

   # train HMM with init, trans, GMMs=mixes
   init,trans = hmm.hmmMlParams(trainingData,[1,2,3,4,5])
   model = GMMHMM(n_components=5,init_params='',gmms=mixes)
   model.transmat_ = trans
   model.startprob_ = init

   return model