[mlpack-git] master: Minor formatting changes and streamlining of Armadillo expressions. (2d5f916)

gitdub at big.cc.gt.atl.ga.us gitdub at big.cc.gt.atl.ga.us
Thu Mar 5 22:02:09 EST 2015


Repository : https://github.com/mlpack/mlpack

On branch  : master
Link       : https://github.com/mlpack/mlpack/compare/904762495c039e345beba14c1142fd719b3bd50e...f94823c800ad6f7266995c700b1b630d5ffdcf40

>---------------------------------------------------------------

commit 2d5f916a53208cb338fc192abf9c9917b67b13fe
Author: Ryan Curtin <ryan at ratml.org>
Date:   Mon Nov 3 16:16:08 2014 +0000

    Minor formatting changes and streamlining of Armadillo expressions.


>---------------------------------------------------------------

2d5f916a53208cb338fc192abf9c9917b67b13fe
 src/mlpack/methods/hmm/hmm_impl.hpp | 23 +++++++++--------------
 1 file changed, 9 insertions(+), 14 deletions(-)

diff --git a/src/mlpack/methods/hmm/hmm_impl.hpp b/src/mlpack/methods/hmm/hmm_impl.hpp
index a9cc351..f352656 100644
--- a/src/mlpack/methods/hmm/hmm_impl.hpp
+++ b/src/mlpack/methods/hmm/hmm_impl.hpp
@@ -443,23 +443,20 @@ void HMM<Distribution>::Filter(const arma::mat& dataSeq,
                                arma::mat& filterSeq,
                                size_t ahead) const
 {
-  // First run the forward algorithm
+  // First run the forward algorithm.
   arma::mat forwardProb;
   arma::vec scales;
   Forward(dataSeq, scales, forwardProb);
 
-  // Propagate state ahead
-  if(ahead != 0) {
-    forwardProb = pow(transition, ahead)*forwardProb;
-  }
+  // Propagate state ahead.
+  if (ahead != 0)
+    forwardProb = pow(transition, ahead) * forwardProb;
 
   // Compute expected emissions.
   // Will not work for distributions without a Mean() function.
   filterSeq.zeros(dimensionality, dataSeq.n_cols);
-  for(size_t i = 0; i < emission.size(); i++)
-  {
-    filterSeq = filterSeq + (emission[i].Mean())*(forwardProb.row(i));
-  }
+  for (size_t i = 0; i < emission.size(); i++)
+    filterSeq += emission[i].Mean() * forwardProb.row(i);
 }
 
 /**
@@ -469,17 +466,15 @@ template<typename Distribution>
 void HMM<Distribution>::Smooth(const arma::mat& dataSeq,
                                arma::mat& smoothSeq) const
 {
-  // First run the forward algorithm
+  // First run the forward algorithm.
   arma::mat stateProb;
   Estimate(dataSeq, stateProb);
 
   // Compute expected emissions.
   // Will not work for distributions without a Mean() function.
   smoothSeq.zeros(dimensionality, dataSeq.n_cols);
-  for(size_t i = 0; i < emission.size(); i++)
-  {
-    smoothSeq = smoothSeq + (emission[i].Mean())*(stateProb.row(i));
-  }
+  for (size_t i = 0; i < emission.size(); i++)
+    smoothSeq += emission[i].Mean() * stateProb.row(i);
 }
 
 /**



More information about the mlpack-git mailing list