htm-community / htm.JavaScript

Port of htm.java to JavaScript
GNU General Public License v3.0
10 stars 1 forks source link

Experiment with automated conversion to JavaScript #3

Open breznak opened 8 years ago

breznak commented 8 years ago

This issue relates to the #2 of the project. One option, even though definitely not the cleanest, would be to use an automated conversion tool to JavaScript from a source language (python, java).

We could port from:

breznak commented 8 years ago

What do you guys think? @jefffohl @chessweb01 @mirkoklukas

jefffohl commented 8 years ago

For there to be a serious effort in making a new JavaScript implementation of HTM, I think there needs to be a compelling reason to do so. Ralf's project (this one), has the intent of being able to run HTM in a browser, for which, I suspect, he has his own reasons. I myself started a couple of JS implementations, but they have stalled out. I hope to get back to them at some point, but for me, the primary reason is for self-edification.

What are your reasons for wanting to implement HTM in JS?

cogmission commented 8 years ago

Hi @breznak,

I'm not sure if you're aware of this, but this project is a direct port of htm.java to JavaScript? The last time I talked to Ralf, he was attempting to port over the Network API - which is where I believe he left off... But I think he's still around to answer your questions.

Cheers, David

On Wed, Jan 27, 2016 at 4:03 PM, breznak notifications@github.com wrote:

What do you guys think? @jefffohl https://github.com/jefffohl @chessweb01 https://github.com/chessweb01 @mirkoklukas https://github.com/mirkoklukas

— Reply to this email directly or view it on GitHub https://github.com/nupic-community/htm.JavaScript/issues/3#issuecomment-175883614 .

With kind regards,

David Ray Java Solutions Architect

Cortical.io http://cortical.io/ Sponsor of: HTM.java https://github.com/numenta/htm.java

d.ray@cortical.io http://cortical.io

breznak commented 8 years ago

@cogmission I know this was a port of htm.java but the last commit is dated some 8months ago, so a lot has changed. Would be great to hear from the main developer, the github nickname seems to be disabled..

@jefffohl I'm sure the port will be very demanding job, my motivation would be purely practical - I'd like to allow nupic.visualizer users have a built-in anomaly detection module (as HTM). For real hand-made porting I don't have the skills, nor enough interest. That's why I suggested the automated conversion (with all its drawbacks)

cogmission commented 8 years ago

@breznak,

I would say, "a lot has been added" - but not much has changed (I re-wrote the TM for the whole orphan segments effort, but other than that almost everything else were additions). I would bet that the most viable alternative is to continue from where Ralf left off?

cogmission commented 8 years ago

Yep, I just looked at it, and all you need to do is port over the Anomaly.java class and you're in business! :-) (if all you want is to run anomaly detection - you have the SP and TM and basic encoders...)

On Wed, Jan 27, 2016 at 4:26 PM, breznak notifications@github.com wrote:

@cogmission https://github.com/cogmission I know this was a port of htm.java but the last commit is dated some 8months ago, so a lot has changed. Would be great to hear from the main developer, the github nickname seems to be disabled..

@jefffohl https://github.com/jefffohl I'm sure the port will be very demanding job, my motivation would be purely practical - I'd like to allow nupic.visualizer users have a built-in anomaly detection module (as HTM). For real hand-made porting I don't have the skills, nor enough interest. That's why I suggested the automated conversion (with all its drawbacks)

— Reply to this email directly or view it on GitHub https://github.com/nupic-community/htm.JavaScript/issues/3#issuecomment-175892129 .

With kind regards,

David Ray Java Solutions Architect

Cortical.io http://cortical.io/ Sponsor of: HTM.java https://github.com/numenta/htm.java

d.ray@cortical.io http://cortical.io

breznak commented 8 years ago

all you need to do is port over the Anomaly.java class and you're in business! :-)

thanks for the review @cogmission ! That sounds pretty doable! :)