Skip to content

The spatial pooler bias disrupts temporal pooling #21

Description

@calumroy

When a column has learnt a sequence and has temporally pooled over the sequence sometimes it is not correctly set a s the winning column when part of it's temporally pooled pattern appears as an input.

This happens in the following situation;

  1. The column first bursts because it was not expecting it's temporally pooled pattern to begin.
  2. On one of the next inputs that the spatial pooler has temporally pooled over for that column has also been temporally pooled as part of a different pattern.
  3. This other column has been given a slight bias by the inhibition calculator because of it's position. This is done by the overlap calculator to resolve any ties in the spatial pooler.

This other column will win the inhibition stage and therefore become active. This is incorrect as we were receiving inputs corresponding to a sequence that had been learnt and pooled by the first column. Normally a column that has learnt and temporally pooled over a pattern is given preference, but this wouldn't happen in this case because the first inputs was unexpected and caused bursting.

If the inhibition calculator gave a slight bias to any column that had previously been active on the input before this may fix the problem.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions