A fast Python implementation of HMM.
Project description
A fast Python implementation of HMM
Installation
To install:
$ pip install hmm-tool
Quickstart
from hmmtool import HMM
import numpy as np
### 3 states, 6 observations:
### states values:0/1/2, observations values:0/1/2/3/4/5
hmm = HMM(3,6)
#train
s1 = np.random.randint(6,size = 60)
s2 = np.random.randint(6,size = 40)
hmm.add_data([s1,s2])
hmm.train(maxStep=50,delta=0.001)
#get params
print(hmm.pi)
print(hmm.A)
print(hmm.B)
#predict
#random data
s3 = np.random.randint(6,size = 10)
s4 = np.random.randint(6,size = 10)
#multi inputs:[[o1,o2,o3,...,ot1],[o1,o2,o3,...,ot2]]
#output: [prob1, prob2]
print(hmm.estimate_prob([s3,s4]))
#output: [(prob1, [s1,s2,s3,...,st1]), (prob2, [s1,s2,s3,...,st2])]
print(hmm.decode([s3,s4]))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hmm-tool-0.0.4.tar.gz
(4.8 kB
view details)
File details
Details for the file hmm-tool-0.0.4.tar.gz.
File metadata
- Download URL: hmm-tool-0.0.4.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23cef7036b7bbebdda7f800f564b92cd17fcef8e410c841ab17a7e8b6783fc5a
|
|
| MD5 |
da4249f6f1e3997c5bbb9611394337fd
|
|
| BLAKE2b-256 |
d766c0644d1899beb58b3fd26d475f9ce741b79591251d4fa22ca633d6e9707d
|