►
From YouTube: ComportexViz for NuPIC - Marcus Lewis
Description
2015 HTM Challenge Submission. 1st Place Innovation.
A
B
Everyone,
this
is
marcus
lewis
and
I'm
here
to
show
you
a
new
way
of
running
new
pic
HTM
s,
and
it
looks
something
like
this
now.
What
you
see
here
is
a
browser
front
end
talking
to
a
server,
that's
running
new
pic.
This
experience
right
here,
watching
a
command
prompt
and
a
data
output
is
how
people
run
HTM
s
today.
There's
a
lot,
that's
good
about
this,
but
I
think
there's
also
a
blind
spot,
and
we
start
to
cover
this
blind
spot
with
something
like
this.
B
Now,
before
I
show,
you
more
I'll
give
you
some
context.
This
leaves
out
a
few
details,
but
it
should
work
so
this
environment,
known
as
comport
xmas,
is
a
way
to
see
an
HTM
run.
It
aims
to
be
one
of
your
main
tools
for
making
sense
of
what
your
HTM
is
doing
over
time.
It's
gotten
a
lot
of
mileage
and
a
sort
of
feedback
loop
of
design,
tweaks,
so
I'm
psyched,
to
bring
it
to
New
pick.
B
B
So
here's
a
quick
overview
over
here.
You
see
the
input
values
and
this
is
them
encoded
into
bits,
and
this
is
a
HTM
layer.
Each
of
these
bits
and
the
layer
is
a
column.
These
input,
bits
and
columns
are
displayed
with
time
as
the
left/right
dimension,
so
you
examine
a
single
model
by
going
up
and
down,
and
you
examine
it
across
time
by
going
left
and
right,
you
can
also
get
rid
of
the
time
dimension
and
display
individual
models
and
2d.
B
You
you'll
notice,
the
columns
are
different,
colors
red
means,
active
Blue
means
predicted
and
purple
means
both
active
and
predicted.
When
you
click
a
column,
it
shows
the
underlying
cells
with
a
similar
color
scheme,
now
I
still
haven't
shown
you
a
single
synapse.
So
let
me
draw
your
attention
to
these
synapse
boxes
over
here.
You
can
see
that
we've
not
been
saving
them
for
a
system
like
this
to
be
practical,
it
has
to
be
fast
and
it
won't
be
fast
if
you
have
to
save
the
entire
synapse
craft
every
time
step.
B
B
These
are
feed-forward
synapses
from
that
activated
this
column
and
looking
at
another
one
over
here,
you
see
the
distal
synapses
two
columns
in
the
previous
time
step
now.
I
think
this
is
a
mix
of
cool
and
still
a
little
bit
disorderly
I'm
kind
of
intimidated
by
these
2048
columns.
Here,
I
want
to
show
you
something
Felix
added
that
I'm,
not
sure
I
would
have
thought
of,
and
that's
of
using
creative
sorting
the
sorting
comes
in
two
flavors.
B
The
first
is
to
sort
the
columns
by
how
recently
they
were
activated
and
because
we're
showing
time
from
left
to
right,
you
get
this
sort
of
staircase
shape
where
each
step
down
shows
the
columns
that
haven't
been
active
since
the
reference
time
step.
The
other
approach
to
sorting
is
to
build
your
own
ordering.
B
B
You
can
see
them
all
here
going
to
columns
in
the
previous
time
step
they're,
not
flying
in
every
direction
and
they're,
not
shooting
off
out
of
sight,
so
I
hope,
I'm
illustrating
the
point.
The
sorting
can
give
you
a
useful
view
on
an
HTM
be
and
we're
nimble
about
it.
Jumping
from
one
reference
point
to
another.
B
C
A
So,
first
of
all,
that's
pretty
impressive.
This
is
a
complex
visualization
for
a
very
complex
problem.
Space
at
our
last
hackathon
I
talked
to
Marcus
when
he
showed
another
visualization
demo
that
he
was
working
on
the
last
two
hackathons
e
done,
visualization
demos
and
I
think
I've
told
him
at
both
of
them.
A
If
you
could
do
this
for
new
pic,
that
would
be
amazing,
and
he
has
done
this
for
new
pic,
which
I
think
is
really
impressive
and
actually,
when
he
first
started
it
and
asking
questions
about
doing
this,
I
think
I
said
you
know
Marcus.
This
is
going
to
be
harder
than
you
think
it's
going
to
be,
and
he
said
actually
I've
already
done
it.
D
B
So
the
answer
to
this
question
will
change
quickly
over
time.
Currently
it
just
assumes
a
one
region,
one
layer
set
up,
and
it
just
sends
over
the
information
about
that.
So
that's
just
not
something
I've
implemented
yet,
but
right
now
you
just
plug
it
in
to
a
in
like
typical
opf
model.
You
just
attach
it
to
that
and
it
does
the
rest.
So
you
can
pretty
much
like
you
can
grab
any
demo
really
from
from
the
new
pic
experiments
and
just
like
attach
this
to
it
right
now
and
it'll
work.
So.
B
C
When
I
tried,
training
HTM
was
not
knowing
how
much
data
to
feed
it
till
it
had
learned,
and
you
feed
it
some
data
and
see
how
well
it
does,
and
you
feed
it
some
more
and
see
how
well
it
does.
Is
there
a
way
that
this
could
actually
show
you
the
progress
of
learning?
You
know
when
you
fed
it
enough.
Yes,.
B
So
one
thing
to
like
one
thing
to
point
out
is
that
a
lot
of
this
work
here,
I've
done
I-
did
to
a
lot
of
work,
but
Felix
also
did
a
ton
of
work
and
for
his
implementation
of
of
HTM
called
comport
X.
He
already
has
that
it's
the
time
plot
as
you
watch
it
run,
you
sort
of
see
the
overall
ratio
across
time
of
how
much
was
active.
How
much
was
predict
predicted
and
how
much
was
both
active
and
predicted.
So
that
gives
you
that
visualization.
B
So
it's
just
a
matter
of
porting
that
over
so
at
this
point
is
there's
a
series
of
things
that
can
be
added
this
just
like
lighting
this
up
lighting
this
up,
and
that
would
be
one
of
the
early
ones
that
would
take
like
a
day
sounds.
E
B
Enjoyed
it
for
that
kind
of
thing,
for
instance,
if
I
know
that
something
weird
happens
on
step
545
like
I
may
know,
you
can
run
it
to
step
5,
44
and
then
set
a
breakpoint
and
then
just
like
go
and,
and
you
it's
just
a
cool.
It's
the
interface
for
getting
yourself
to
that
step
before
stepping
through
the
algorithm.
The
other
algorithm.
F
Yeah
I,
just
like
to
follow
up
on
Cygnet
I
was
saying
as
a
general
question
is:
what
are
the
use
cases
and
what
are
the
tip?
What
are
the
variety
of
users
for
this?
So
that
might
be
one
person
might
be
using
it
for
understanding
the
algorithm
in
a
more
visual
way.
Another
person
might
be
doing
it
to
debug
yeah.
B
I'd
say
the
initial
understanding
is
a
secondary,
a
user
for
this,
it's
more
it's
more
for
the
people
doing
the
research,
the
people
applying
this
with
like
having
experience
I
would
say
it's
not
about
learning
how
it
works,
it's
more
about
learning
how
it
behaves,
how
it
works
you
can
get
from
reading
about
it.
You
can
model
it
in
your
mind,
but
the
overall,
like
dynamics
of
the
system
is
something
that
I
think
this
really
excels
at
you.
B
F
B
I
think
it
might
be
useful
for
me
too,
so
my
my
background
on
this
kind
of
thing
is
in
testing
in
general,
and
I
think
one
useful
thing
I've
learned
then
testing
is
that
is
that
testing
is
all
about
seeing
things
from
different
angles.
While
it's
running
like
well,
it's
doing
real
things
as
seeing
the
different
angles,
and
it's
not
somewhat
so.
Testing
isn't
automation,
that's
a
whole
different
topic,
but
it
really
like
the
goal.