(init=simple_init)
| 257 | |
| 258 | |
| 259 | def fake_signal(init=simple_init): |
| 260 | signals = get_signals(N=10, T=10, init=init) |
| 261 | # for signal in signals: |
| 262 | # for d in xrange(signal.shape[1]): |
| 263 | # plt.plot(signal[:,d]) |
| 264 | # plt.show() |
| 265 | |
| 266 | hmm = HMM(2, 2) |
| 267 | hmm.fit(signals) |
| 268 | L = hmm.log_likelihood_multi(signals).sum() |
| 269 | print("LL for fitted params:", L) |
| 270 | |
| 271 | # test in actual params |
| 272 | _, _, _, pi, A, R, mu, sigma = init() |
| 273 | hmm.set(pi, A, R, mu, sigma) |
| 274 | L = hmm.log_likelihood_multi(signals).sum() |
| 275 | print("LL for actual params:", L) |
| 276 | |
| 277 | # print most likely state sequence |
| 278 | print("Most likely state sequence for initial observation:") |
| 279 | print(hmm.get_state_sequence(signals[0])) |
| 280 | |
| 281 | if __name__ == '__main__': |
| 282 | # real_signal() # will break |
no test coverage detected