packages feed

learning-hmm 0.3.1.2 → 0.3.1.3

raw patch · 4 files changed

+8/−5 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

CHANGES.md view
@@ -1,6 +1,9 @@ Revision history for Haskell package learning-hmm === +## Version 0.3.1.3+- Bug fix release+ ## Version 0.3.1.2 - Default the limit of Baum-Welch iteration to 10000 (in `baumWelch'`) 
learning-hmm.cabal view
@@ -1,5 +1,5 @@ name:                learning-hmm-version:             0.3.1.2+version:             0.3.1.3 stability:           experimental  synopsis:            Yet another library for hidden Markov models
src/Learning/HMM/Internal.hs view
@@ -21,7 +21,7 @@ import qualified Data.Map.Strict                  as M   ( findWithDefault ) import           Data.Random.Distribution.Simplex        ( stdSimplex ) import           Data.Random.RVar                        ( RVar )-import qualified Data.Vector                      as V   ( Vector, filter, foldl1', map, unsafeFreeze, unsafeIndex, unsafeTail, zip, zipWith3 )+import qualified Data.Vector                      as V   ( Vector, filter, foldl', foldl1', map, unsafeFreeze, unsafeIndex, unsafeTail, zip, zipWith3 ) import qualified Data.Vector.Generic              as G   ( convert ) import qualified Data.Vector.Generic.Extra        as G   ( frequencies ) import qualified Data.Vector.Mutable              as MV  ( unsafeNew, unsafeRead, unsafeWrite )@@ -175,7 +175,7 @@                ns = ds H.#> H.konst 1 nStates -- numerators            in H.diag (H.konst 1 nStates / ns) H.<> ds     phi' = let gs' o = V.map snd $ V.filter ((== o) . fst) $ V.zip (G.convert xs) gammas-               ds    = V.foldl1' (+) . gs'  -- denominators+               ds    = V.foldl' (+) 0 . gs'  -- denominators                ns    = V.foldl1' (+) gammas -- numerators            in H.fromRows $ map (\o -> ds o / ns) [0..(nOutputs - 1)] 
src/Learning/IOHMM/Internal.hs view
@@ -21,7 +21,7 @@ import qualified Data.Map.Strict                  as M   ( findWithDefault ) import           Data.Random.Distribution.Simplex        ( stdSimplex ) import           Data.Random.RVar                        ( RVar )-import qualified Data.Vector                      as V   ( Vector, filter, foldl1', generate, map, replicateM, unsafeFreeze, unsafeIndex , unsafeTail , zip, zipWith3 )+import qualified Data.Vector                      as V   ( Vector, filter, foldl', foldl1', generate, map, replicateM, unsafeFreeze, unsafeIndex , unsafeTail , zip, zipWith3 ) import qualified Data.Vector.Generic              as G   ( convert ) import qualified Data.Vector.Generic.Extra        as G   ( frequencies ) import qualified Data.Vector.Mutable              as MV  ( unsafeNew, unsafeRead, unsafeWrite )@@ -184,7 +184,7 @@                ns i   = ds i H.#> H.konst 1 nStates -- numerators            in V.map (\i -> H.diag (H.konst 1 nStates / ns i) H.<> ds i) (V.generate nInputs id)     phi' = let gs' o = V.map snd $ V.filter ((== o) . fst) $ V.zip (G.convert ys) gammas-               ds    = V.foldl1' (+) . gs'  -- denominators+               ds    = V.foldl' (+) 0 . gs'  -- denominators                ns    = V.foldl1' (+) gammas -- numerators            in H.fromRows $ map (\o -> ds o / ns) [0..(nOutputs - 1)]