[ml] WiiMote progress!

Josh Myer josh at joshisanerd.com
Mon Oct 12 08:44:09 UTC 2009


I've spent about three days on the project this week, and have made good
progress.  There's both good and bad news, but, most importantly, we're a
lot further along than we had been.

Good news!  The quantizer is hooked up to the WiiMote input (in C for now),
and the HMM is working for small/toy input sets, emitting reasonable
probabilities!

Bad news!  The quantizer is jumpy/flaky and the HMM is experiencing
significant underflow problems.

The quantizer thing might still be a stupid bug, except that it seems
_sorta_ consistent.  I think it's just tweaky, which suggest we might want
to downsample or quantize in a more robust fashion.  The downsampling is my
code, and has some obvious improvements; the quantizing is wiigee and a
little more opaque.

The HMM underflow thing... well, duh.  There were so many horribly broken
things about the original codebase, of course it was going to have numerical
issues.  And, happily, that seems to be the biggest issue left, which
represents a hell of a lot of progress.  In particular, I'm happy to report
that it computes intermediate values correctly, and the current training
routine implements a correct single round of training.  Check out
test/hmm_test.c to get a better idea of what all it's doing now.

After we get underflow fixed up (which is a Right Bitch, requiring a move to
log values internally), we need to fix up the training sequence: it should
be retraining each HMM until it's maximized the expectation of correctness.
This is a pretty straightforward fixup, and will help accuracy a lot in
non-trivial cases.  Since we've already got the HMM bits hooked up to the
Quantizer which is hooked up to the WiiMote, we can actually test the whole
stack on Linux with a live WiiMote, which is kind of neat.

A huge thank-you to everybody who's contributed this far: your code made my
life much easier over the last few days, keeping me from having to dig too
deep into the original to make a C version Just Go.

(But: Jim, you owe me a beer or three: getting the row layout of your
matrices confused in C is a cardinal sin ;^) )
-- 
Josh Myer 650.248.3796
josh at joshisanerd.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.noisebridge.net/pipermail/ml/attachments/20091012/25296707/attachment.html>


More information about the ml mailing list