Local inhibition instead of explicit k-winner for spatial pooler

Possibly more than you want to know:
I see the overall system running at 10 Hz (alpha rate) with the interaction/competition between L2/3 hex-discipline cells running at 40 Hz. (Gamma rate) I see each round of competition being a rolling average 8x8 window through the activated cells looking for the max integer value. This max is passed to the local inhibition field to be the start of the next pass.

This is where the balance between activation and inhibition is performed: The local cell computation is total activation(some scaling factor) - local inhibition(some scaling factor). Total activation is the direct activation and mutual excitation. And yes - the scaling between the direct activation and the mutual interactions will have to be tuned to get the correct behavior.

Training is updated at the 10 Hz rate.

2 Likes