Hi Kevin.
I'm a beginner too but i'm going to try to answer your questions:
1) Each column looks a sub set of the input, say 50%. So, proximal
dendrites segments will overlap what they are looking. You don't have to
divide the input equally for each column, in a way that columns don't see
the bits each other. In fact, it is not desirable that such thing happens.
2) If all of your segments are disjoint you will have poor
representations, if any. Consider the pattern bellow
1 Column 2
Column 3
Column 4 Column
11100000000000000000000001 0000000000011100000000000
0000010000010000000000100 01100000000000000000000001
and suppose you have 4 columns and that column 1 point to first 26 bits,
the second point to the next 26 and so on. As there are few bits on in each
portion, the columns won't be activated due to the few connected synapses.
As consequence, this pattern may not e identified.
On the other hand, if the columns have their connections spread all over
the input, it is more likely they will see more bits on. When the columns
are chosen to represent some pattern, the overlap guarantee they are in
fact looking a pattern.
I intend to start my own implementation in Java. Which programming
language are you going to use? Maybe we can do together.
Regards,
Christian
2014-01-30 Kevin Martin <[email protected]>
> I know this is more or less like reinventing the wheel but I am convinced
> that I have to write my own CLA program from scratch if I am to truly
> understand the algorithm. Also I hope that I will be able to document the
> project in detail so that beginners like me have a better shot at
> understanding what's going on. I had cloned some of the fan-based open
> source projects found in the wiki and made an attempt to go through them.
>
> I am trying to implement the spatial pooler first and quickly ran into
> doubts :
>
> 1. Are the input bits grouped into segments equally? For example, if i
> have 4 columns and an input vector of 16 bits, will each segment strictly
> get 4 and only 4 bits?
>
> 2. I read in the white paper that no two segments contain the same subset
> of inputs but there can be overlaps. Is this a necessary condition? What if
> all my segments are disjoint?
>
> _______________________________________________
> nupic mailing list
> [email protected]
> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org
>
>
_______________________________________________
nupic mailing list
[email protected]
http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org