New HTM.Java Release! (v0.6.12-alpha)


Greetings Earthlings (…and otherwise affiliated),

It’s that time again, and we are happy to announce a new release (v0.6.12-alpha) featuring the wonderful work of community member Andrew Dillon (@Hopding)!

Thanks to Andrew, HTM.Java not only has a new SDRClassifier but in addition to that, two more added features which distinguish HTM.Java’s Network API, as they are not yet found in NuPIC (Numenta’s developers have much bigger fish to fry :wink: , such as spearheading the newest algorithms!) - but if you want to play around with this new feature or your project requires or could use the ability to specify multiple prediction fields…

As of this release, users can now:
1.) Specify multiple specific fields to infer (predict) upon.
2.) Specify which classifier to use on each field! (Either the CLAClassifier or the new SDRClassifier ported from @ycui 's original work in NuPIC’s Python version).

HTM.Java’s wiki has not yet been updated with instructions but for now, take a look at some of the tests for usage hints: (here’s a simple example of Network Creation)

Here you’ll find the new parameter which was added to allow specification of field/classifier pairs.

As mentioned before, the wiki will be updated soon, and the javadocs will also be uploaded (although they are available from Maven Central as soon as the site is updated, which usually take a few hours).

Thanks again Andrew for your wonderful contribution to HTM.Java and the HTM Community, and thanks also go out to @ycui for his original work and for his assistance to Andrew. Not least of all, thanks go out to Numenta (and its supportive development staff and Community builders); for its open policies and generosity, without which none of this would be possible, and for whom due acknowledgement is very sparsely given and cannot be overstated!


Predicting Multiple Output Values

Bump :stuck_out_tongue:


I started playing with the new capability last night. Great job guys! I got it working based on some of the test code you have. I just need to play with some of the parameters to get some more meaningful output. Thanks for the effort here, I’m excited by the new addition.




I adapted your example code, making it an abstract class to supporting a multi-field prediction. You just have to create an extension class and define the parameters you want in the network and the way you want the predictions formatted in the output.

The code call looks like this:

String [] predictedFields = {"open", "high", "low", "close"};
BasicHTMNetwork myNet = new CandleNetwork("input.csv", "output.csv", predictedFields);

Where predictedFields are the multiple fields in the input you want to predict on, and CandleNetwork is the child class that implements the abstract BasicHTMNetwork class (where I borrowed heavily from @cogmission code).

I’m happy to share the files if it would help anyone.