I ment a sequence. If the HTM sees sequence “A” -> “B”, then after input “A” it would expect “B” (depolarize SDR “B”). In my example, the model sees sequence “apple” -> “red light” (e.g. red light bulb comes on). Then we show it a “banana” and expect the model to predict “red light”.
The point is, as far as I know, the HTM has only two ways to depolarize predicted patterns: by the previous pattern on the same level or by representations from a higher level. But a “banana” doesn’t connect to the “red light”. And the model doesn’t have high-level representation for “red light” yet.
So, I don’t see how the HTM could predict the appearance of “red light” after it sees a fruit.
Let’s say I told you some random word “апельсин”. You would certainly create SDR for this pattern. Then I tell you that “the word I told you - a fruit”. So, does it change the SDR of “апельсин” or does it change the SDR for “fruit”? Because if it doesn’t, we won’t have any overlapping bits between those two SDRs.
If I say “I saw a bat flying in the woods”, you definitely would understand what I mean. The representation “Bat (baseball)” would be completely inhibited.
If I say “I bought a bat in a store”, you wouldn’t even think about “Bat (animal)”.
So there are gotta be two separate SDRs for “Bat (animal)” and “Bat (baseball)”. Which definitely have some overlapped bits, but very little. Different contexts activate different SDR “bat”.
I have to say, there is really hard time to make fixed universal representation, which would have overlapping bits with every other necessary representation and fit for every possible case. We can’t rely on fixed hierarchy. It should be dynamic.
In my experience, we don’t have “Grandmother neuron” (or “Grandmother SDR”). We just have thousands of neurons representing grandmother in different contexts.
This task I successfully tested in my program. If I tell you to count elephants, you would easily do that without specific training. That’s not so hard.
Nope. Not really. More than enough to just do the sequence and connect number to a pattern of the object. I can come up with examples, if necessary.
So, that’s what I did differently. I was developing everything at once. And didn’t use anything which wouldn’t work in all cases. That’s hard but gives a big picture. And currently, my program can’t be separated on individual elements. Now it’s one relatively simple algorithm which does everything.
About the “location signal”. My point is why would we even need a location signal? Please, could you give me an example of the task which we absolutely can’t do by current (even HTM) methods and need a “location signal”?