3D visualization tool - HTMpandaVis

Hello,
i want to present current state of 3D visualization tool for HTM systems:

see this short presentation, “hotgym” example is used: https://youtu.be/c1aJq0p-9uY

see github readme for details & how to install
https://github.com/Zbysekz/HTMpandaVis

It would be great if i could get some feedback from you, requests for “nice to have” functionality etc…
also bug reporting on github issues is welcome!

20 Likes

this makes me so happy :star_struck:

4 Likes

Another case where one love button is not enough!

3 Likes

I awarded him the coveted HTM Wizard badge.

9 Likes

thanks a lot, i used to like achievements since the time i was playing games as child (e.g. WoW) and i like them also now :blush: anyway this is small thing that i can share with this great community. I especially like Jeff Hawking legacy and your work on HTM school.

5 Likes

Damn man,…

Thats going the extra mile, nice tool.

3 Likes

One word. WOW

1 Like

Yes, this is a WOW…
Any thoughts on including this in the htm-community repo?

2 Likes

@David_Keeney
I would propose keep htm.core and pandaVis client separated.
The pandaVis repo uses as an server usage example the hotgym, directly copied from htm.core examples folder.

So when new example inside htm.core is created (or current updated), me or somebody else can update the pandaVis version also.(note: only minor changes are needed to work with pandaVis as server script)

1 Like

I would propose keep htm.core and pandaVis client separated.

Yes, It can be a separate repo within the htm-community account.

2 Likes

@marty1885 But in ANSI-C, you allso use LayerVisualizer with Easy3D for doing the same task too. Do you have any progress or any comparison to this excellent tool?

1 Like

That’s @LiorA’s amazing work. But I haven’t seen him online for a while :frowning:.

In any case, LayerVisualizer runs locally and doesn’t run on a server/client architecture. So it is faster than HTMpandaVis; it can handle hundreds of thousands of cells with no problem. But comparing the HTMpandaVis, LayerVisualizer is very lacking in feature. LayerVisualizer can only show the current active cells and that’s it. It also can only visualize one layer at a time. HTMpandaVis is definitely the winner.

(Anyone wants to work on LayerVisualizer? The features won’t be hard to add.)

1 Like

I would be more than happy to help move it. @Zbysekz Let me know if you agree and I’ll give you permissions to transfer it.

1 Like

Yes i agree, no problem

2 Likes

Images on the repo readme was updated, take a look! (the images above were automatically updated)
There are 5000 columns with 13 cells per column.

Several improvements

  • progressive run-time loading of layer (solves problem of long start-up)
  • better colors and GUI
  • legend window improved
  • distal synapses connected to itself/input objects are visualized
  • showing overlap for input objects with previous state
  • readme how-to
  • etc…

2D recognition project is now possible to visualize with the tool! (That’s the one on the pictures)

5 Likes

Hi Martin,
I’m still here having my daily dose of computational neuroscience … :slight_smile: - I’m just too busy now with grid cells implementation on GPU a-la Ila fiete style and for that a simple gnuplot is more than enough so I don’t have the urge to add more features to LayerVisualizer lib (but I encourage and can help anyone else doing it). I think I’ll get to that once I combine SP layer (using GC) and the TM layers and then will need to visualize multi layers in 3D …

2 Likes

Hello, I want to cite this project in my paper. How do I write the latex format?

2 Likes

I will typically write rough drafts of papers in a text editor on my local machine (in LaTeX, naturally). When I’m ready to start preparing the document for publication, I usually move to Overleaf, especially if its a paper that I am collaborating on.

If you are new to LaTeX, then there are lots of tutorials available online. Overleaf has some good information here.

2 Likes

image
Announcing new features!

  • Visualization now doesn’t use TCP sockets to communicate directly with the simulation script, but it uses SQLite3 database to store all simulation data. (So called “baking”)
    Then the visualization recalls (offline) whatever from the database. Allowing nice features like “step +1”, “step -1” or jumping to iteration n.o. 1000 in an instant, seeing prediction correctness of individual cells
  • Within baking, any scalar data (anomaly score, metrics…) can be simply stored as “datastream” & then shown in web browser by interactive plots!

Webpage screenshot (there are 12 plots on one page) - hotgym example

Try hotgym example!
See repo readme for more.

7 Likes

Little tasting of currently developed features.
https://www.youtube.com/watch?v=tXJtgsHOyO8

It is L2L4L6 Numenta experiment related to Locations in the Neocortex: A Theory of Sensorimotor Object Recognition Using Cortical Grid Cells

EDIT: video was replaced with former, see post below

7 Likes