In the past I tried to implement Temporal pooling and more or less failed.
Now I know why … the reason was I was mixing Location and Sensory into combined SDR and the reason for this mistake
was I forgot of the distinction in how HTM neurons process data … and then there new TBT theory was still in the Future ( where Sensory and Location signals are separate).
But first, why TP wont work … TP in a sense is (or at least my implementation) a complex dacayed UNION … the problem then is you cannot create INVARIANT UNION for the same object under different Location+Sense exploration paths, because the Location part is intermixed with Sense data and a union of a sequence wont be invariant, ergo single object will generate different TP-unions on different experience.
And then … AHAAAAA … HTM neuron is not just FeedForward (keep in mind I was implementing HTM a modules which pass SDRs around, not neurons) but also has a Basal-dendrites. So the solution is in sync with the new TBT, the Location-data arrives at Basal-dendrites in t-1 and helps predict the Sensory-data arriving as FeedForward in time t.
Now the TP has to only UNION-ize Sensory data and can create INVARIANT representation even if the sensing happen in different order.
Is my LOGIC correct ??
If this is feasible the next question is VOTING !!!
Let say we got our INVARIANT-UNIONs in every CC, how would Voting work ?
Can we be certain that CC1 union will be the same as CC2 union for Object A ? We can and we cant ?
Even if what I said above is correct INVARIANT-UNIONs will be partial i.e. they will be part of a FULL-SENSED-OBJECT-UNION.
Ex.: let use a SDR vector metaphor, a TP is 1000 neurons where 10+ neurons are the INVARIANT-UNION, then 100 CCs sensing. An object will “generate/unionize” a 100_000 bit vector with 1000+ active bits.
- The resulting vector can not be 1000 bits, because the different CCs InvUnions are not equivalent. They are partial of the Fully-sensed-union
- It can not be a UNION with size 100_000 because we cannot weed out the uncertainties (for that we need intersection)
- It cannot be INTERSECTION because there is no guarantee there will be OVERLAP, remember they are PARTIAL unions of the grand sense-all-union
Having explored the options via the metaphor of vector we see all options are impossible.
This brings us back to HTM-neuron metaphor … where CC TPs connect to other TPs via dendrites.
- There have to be bootstrapping algorithm of interconnecting TP neurons in different CCs
- Split-processing like Loc-Sense : The FF connections are from the same CC, Basal-dendrites-connections are from neighboring CCs, apical from above in the hierarchy
- There have to be general LOOP like Loc-Sense loop i.e. The sequence of which signal follow after which has to be figured out. (Any speculations on this)
What are your speculations on those 3 points.
PS> what if Sense is some other non-invariant mix ? we need disambiguation module ?