# Improve HTM

**URL:** <https://discourse.numenta.org/t/improve-htm/6347>\
**Category:** Numenta Theory\
**Created:** [July 22, 2019, 1:04pm UTC](https://discourse.numenta.org/t/improve-htm/6347 "2019-07-22T13:04:26Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![shiva](https://avatars.discourse-cdn.com/v4/letter/s/85e7bf/32.png) [@shiva](https://discourse.numenta.org/u/shiva)\
**Post date:** [July 22, 2019, 1:04pm UTC](https://discourse.numenta.org/t/improve-htm/6347/1 "2019-07-22T13:04:26Z")

</div>

hi every one  
by run the code and … I realize that HTM does not have good accuracy in prediction, is it possible to improve HTM by replace good properties of another paper (for example another kind of SDR or feature extraction or classification or …)?  
in fact i really like to make a good HTM that con predict very well but i do not know how, do you have any idea?  
thanks

---

<div class="post-metadata">

**Author:** ![marty1885](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.numenta.org/marty1885/32/1891_2.png) [@marty1885](https://discourse.numenta.org/u/marty1885)\
**Post date:** [July 22, 2019, 1:27pm UTC](https://discourse.numenta.org/t/improve-htm/6347/2 "2019-07-22T13:27:22Z")

</div>

Hi, Shiva

We are welcoming to new additions to the HTM theory and model. And there are multiple ways to improve it. Regarding to actual work/development, you can get involved with the Thousands Brain Theory, which looks like a good candidate to improve what HTM can learn. You can also work on improving the quality of the Spatial Pooler (global inhibition is okay but not biological, local inhibition is slow…). Or you can work on a high-performance HTM framework that can accelerate these kinds of research. (This is what I’m doing now, [link](https://github.com/etaler/Etaler))

---

<div class="post-metadata">

**Author:** ![shiva](https://avatars.discourse-cdn.com/v4/letter/s/85e7bf/32.png) [@shiva](https://discourse.numenta.org/u/shiva)\
**Post date:** [July 22, 2019, 1:56pm UTC](https://discourse.numenta.org/t/improve-htm/6347/3 "2019-07-22T13:56:42Z")

</div>

thanks for your prompt answer!  
it was great. Is there any article that gives me a clue؟

---

<div class="post-metadata">

**Author:** ![marty1885](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.numenta.org/marty1885/32/1891_2.png) [@marty1885](https://discourse.numenta.org/u/marty1885)\
**Post date:** [July 22, 2019, 2:22pm UTC](https://discourse.numenta.org/t/improve-htm/6347/4 "2019-07-22T14:22:59Z")

</div>

Which part do you want to start with?

---

<div class="post-metadata">

**Author:** ![Bitking](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.numenta.org/bitking/32/3099_2.png) [@Bitking](https://discourse.numenta.org/u/Bitking)\
**Post date:** [July 22, 2019, 2:43pm UTC](https://discourse.numenta.org/t/improve-htm/6347/5 "2019-07-22T14:43:40Z")

</div>

You may start here [BAMI](https://numenta.com/resources/biological-and-machine-intelligence/).  
This will get you grounded in the nuts and bolts of HTM technology and in the process, you may see areas that interest you.

---

<div class="post-metadata">

**Author:** ![shiva](https://avatars.discourse-cdn.com/v4/letter/s/85e7bf/32.png) [@shiva](https://discourse.numenta.org/u/shiva)\
**Post date:** [July 25, 2019, 11:56am UTC](https://discourse.numenta.org/t/improve-htm/6347/6 "2019-07-25T11:56:32Z")

</div>

I like to work on improving the quality of the Spatial Pooler

---

<div class="post-metadata">

**Author:** ![shiva](https://avatars.discourse-cdn.com/v4/letter/s/85e7bf/32.png) [@shiva](https://discourse.numenta.org/u/shiva)\
**Post date:** [July 25, 2019, 12:03pm UTC](https://discourse.numenta.org/t/improve-htm/6347/7 "2019-07-25T12:03:52Z")

</div>

Thanks dear Bitking, but I read it before. In fact I search for some new idea to implement them or some new idea that show me the true way

---

<div class="post-metadata">

**Author:** ![Bitking](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.numenta.org/bitking/32/3099_2.png) [@Bitking](https://discourse.numenta.org/u/Bitking)\
**Post date:** [July 25, 2019, 7:01pm UTC](https://discourse.numenta.org/t/improve-htm/6347/8 "2019-07-25T19:01:12Z")

</div>

Add habituation to the basic HTM model.  
This would address some issues with a long sequence of repeating inputs.  
See this paper for the use of this property in a different network model:

> **[Encyclopedia-of-Machine-Learning-Data-Mining-ART-Carpenter-Grossberg-2016.pdf](https://sites.bu.edu/steveg/files/2016/09/Encyclopedia-of-Machine-Learning-Data-Mining-ART-Carpenter-Grossberg-2016.pdf)**
>
> 576.00 KB

---

<div class="post-metadata">

**Author:** ![shiva](https://avatars.discourse-cdn.com/v4/letter/s/85e7bf/32.png) [@shiva](https://discourse.numenta.org/u/shiva)\
**Post date:** [July 25, 2019, 7:13pm UTC](https://discourse.numenta.org/t/improve-htm/6347/9 "2019-07-25T19:13:59Z")

</div>

Thanks a lot

---

<div class="post-metadata">

**Author:** ![Bitking](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.numenta.org/bitking/32/3099_2.png) [@Bitking](https://discourse.numenta.org/u/Bitking)\
**Post date:** [July 25, 2019, 7:46pm UTC](https://discourse.numenta.org/t/improve-htm/6347/10 "2019-07-25T19:46:36Z")

</div>

For some context or background when evaluating if this idea is good to think about:

> [@Exploring the "Repeating Inputs" problem](https://discourse.numenta.org/t/exploring-the-repeating-inputs-problem/5498):
>
> I thought I would start a thread to discuss and share ideas on how to solve the “repeating inputs” problem that the temporal memory algorithm currently experiences. For those not familiar with the problem, [this thread](https://discourse.numenta.org/t/my-analysis-on-why-temporal-memory-prediction-doesnt-work-on-sequential-data/3141) goes into it in some detail with visuals. Kicking off the discussion, I thought I would start with the idea that I suggested in the above thread: Here is a demo of the above strategy in action. In this case I simply added “max new synapse count” new synapses each timestep (up …

> [@Suggest change to Sequence Memory algorithm](https://discourse.numenta.org/t/suggest-change-to-sequence-memory-algorithm/6011/2):
>
> If I understand correctly, I think the official TM algorithm already does this. If a segment has “max new synapse count” active synapses when its post-synaptic cell becomes predicted active, then it will not grow any additional synapses. The relevant pseudocode from BAMI: 46. newSynapseCount = (SAMPLE\_SIZE - 47. numActivePotentialSynapses(t-1, learningSegment)) 48. growSynapses(learningSegment, newSynapseCount) Here, “SAMPLE\_SIZE” is the more commonly referred to “max new syn…

> [@Repeating input as timing mechanism](https://discourse.numenta.org/t/repeating-input-as-timing-mechanism/2799):
>
> (breaking this discussion off from another topic) Before I go into repeating inputs as a poor-man’s timing mechanism, let me first give a simple example of where timing is important for a game agent. Consider the case of a multi-coin block in Super Mario Brothers which is positioned two squares higher than Mario’s head (this is the environment I am using to test my own RL implementation, so it is an easy one for me to discuss). Each time Mario knocks a coin out of the block, there is a con…
