Author Topic: HTM.js  (Read 1115 times)

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3472
  • Developer
    • View Profile
    • PaulsCode.Com
HTM.js
« on: April 17, 2017, 01:26:29 PM »
I have decided to start cleaning up my javascript implementation of HTM and publish it on GitHub in case anyone finds it useful.  This is a lightweight implementation of HTM which can be run client side in the browser (useful for quick demos to explore and discuss various HTM-related concepts and theories).

I have committed the refactored code for spatial pooling and temporal memory, and added "HTM Piano" as an example of how to use it.  It is now up on GitHub

I'll be adding the code for sensory motor integration and reinforcement learning next, and I'll be including the source code for all of my future demos that use HTM.js as well.

Latest revision of master will also be deployed on the paulscode.com server.  This will provide easy access to the latest demos.
« Last Edit: May 02, 2017, 11:55:27 AM by Paul »
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3472
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTM.js
« Reply #1 on: April 19, 2017, 04:59:35 PM »
I added a demo for visualizing the temporal memory process.  This is useful for debugging problems with the logic (and also a good way to get a better feel for how TM works behind the scenes).
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3472
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTM.js
« Reply #2 on: May 02, 2017, 11:54:42 AM »
I implemented the basic logic for Temporal Pooling, and add a demo which shows it in action.  For anyone interested in the concepts behind temporal pooling, Numenta has written an overview of the theory.

As described by Jeff Hawkins in his recent HTM Chat with Matt Taylor, temporal pooling is one of the key components of sensory-motor integration theory, so implementing this is an important step forward in development of the seed AI for ARTUR.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted