The Sternberg Experiments: An Ersatz Test Program

73
The Sternberg Experiments: An Ersatz Test Program James Anderson Department of Cognitive and Linguistic Sciences Brown University September 10, 2007

description

The Sternberg Experiments: An Ersatz Test Program . James Anderson Department of Cognitive and Linguistic Sciences Brown University September 10, 2007. Ersatz Results, Plans and Goals. Overall goal: design a brain-like computer architecture , both hardware and software . - PowerPoint PPT Presentation

Transcript of The Sternberg Experiments: An Ersatz Test Program

Page 1: The Sternberg Experiments:  An Ersatz Test Program

The Sternberg Experiments: An Ersatz Test Program

James AndersonDepartment of Cognitive and

Linguistic SciencesBrown University

September 10, 2007

Page 2: The Sternberg Experiments:  An Ersatz Test Program

Ersatz Results, Plans and Goals

Overall goal: design a brain-like computer architecture, both hardware and software.

Such a device must be capable of being programmed.

Such a device must compute results for interesting and important classes of problems.

And (potentially) do it better than traditional computers.

Page 3: The Sternberg Experiments:  An Ersatz Test Program

Potential Applications

We have studied several applications areas. First, Cognitive Signal Processing: • Invariant Vowel Formant Ratio

Computation• A Morse Code reader.

Page 4: The Sternberg Experiments:  An Ersatz Test Program

Operations and Programs

Second, we have realized several simple, useful basic program operations.

Examples:• Identity of two patterns.• Symmetry of two patterns.• Ratio of two amplitudes.• Ersatz “logic.”

Page 5: The Sternberg Experiments:  An Ersatz Test Program

A More Complex Program

Third, we have designed a multi-step Ersatz Program to perform a significant task.

The task is to decide whether or not a new item is part of a previously learned list.

The task has similarities to many significant practical problems.

An example: deciding whether or not a character string (MANTY) is an English word.

Page 6: The Sternberg Experiments:  An Ersatz Test Program

Multiple ScalesErsatz Programs work at multiple scales.

The Ersatz Brain has a natural set of functional scaling mechanisms.

First, single cortical columns (modules) modeled as a dynamical system.

Page 7: The Sternberg Experiments:  An Ersatz Test Program

Arrays of ModulesSecond, we

proposed large sets of these modules formed the Network of Networks.

Page 8: The Sternberg Experiments:  An Ersatz Test Program

Module AssembliesThird, small numbers of active modules in a Network of Networks array can became associatively linked through learning.

These module assemblies can form self-exciting groupings that can represent concepts.

Page 9: The Sternberg Experiments:  An Ersatz Test Program

Sparse RepresentationIn the brain representations seem to be

sparse.Sparse means there are not many active

neurons.By extension, we hypothesize that not too

many columns are active to represent a complex figure, percept, or concept.

Tanaka’s IT data supports that claim.Sparseness also turns out to be very useful for

designing Ersatz applications.

Page 10: The Sternberg Experiments:  An Ersatz Test Program

For a useful programmable system we need to work at multiple scales.

The next step in scale is to work with multiple module arrays.

Module assemblies in multiple arrays work together in self exciting “arrays of arrays.”

Note these levels are all technically dynamical systems based on scaled components.

Page 11: The Sternberg Experiments:  An Ersatz Test Program

Development Strategy: Low Level

We are working at both low and high levels of system organization.

At a low level, we want to show that emergent structures such as module assemblies arise naturally given:

• The Network of Networks topographically organized array.

• Module and system dynamics. • Hebbian associative learning.

Several small simulations suggest this is indeed the case.

Page 12: The Sternberg Experiments:  An Ersatz Test Program

Development Strategy: High LevelAt a high level, we assume that module assemblies have

formed and that multiple interconnected arrays can exist.

We then ask what kind of computations can this rich system perform?

How can these computations be programmed?And how well do they work?

My part of this presentation will largely be concerned with this set of issues.

Page 13: The Sternberg Experiments:  An Ersatz Test Program

Biological Evidencefor Module Assemblies

(These papers and figures played a large role in our thinking about

assemblies and scaling.)

Page 14: The Sternberg Experiments:  An Ersatz Test Program

Biological Evidence:Columnar Organization in

Inferotemporal Cortex

Tanaka (2003) suggests a columnar organization of different response classes in primate inferotemporal cortex.  

There seems to be internal structure in these regions: for example, spatial representation of orientation of the image in the column.

Page 15: The Sternberg Experiments:  An Ersatz Test Program

IT Response Clusters: Imaging

Tanaka (2003) used intrinsic visual imaging of cortex. Train video camera on exposed cortex, cell activity can be picked up. 

At least a factor of ten higher resolution than fMRI.

 Size of response is around the size of functional columns seen elsewhere: 300-400 microns.

Page 16: The Sternberg Experiments:  An Ersatz Test Program

Columns: Inferotemporal Cortex

Responses of a region of IT to complex images involve discrete columns.

 The response to a picture

of a fire extinguisher shows how regions of activity are determined.

 Boundaries are where the

activity falls by a half. Note: some spots are

roughly equally spaced.

Page 17: The Sternberg Experiments:  An Ersatz Test Program

Active IT Regions for a Complex Stimulus

Note the large number of roughly equally distant spots (2 mm) for a familiar complex image.

Page 18: The Sternberg Experiments:  An Ersatz Test Program

Basic “Hello World” Operations

We will look next at interesting operations that might be performed on single NofN arrays.

We look at two operations in details:• Identity of two patterns.• Ratio of two analog quantities.

Page 19: The Sternberg Experiments:  An Ersatz Test Program

Topographic Model for Identity

Page 20: The Sternberg Experiments:  An Ersatz Test Program

IdentityConsider simple identity.

Two sets of (sparse coded) features are on a Network of Networks array in any location.

Are the two sets the same?

Note: The “identity” operation really mean to “very high degree of similarity” not logical identity.

Page 21: The Sternberg Experiments:  An Ersatz Test Program

Pattern SpreadPatterns spread laterally

from their origin.When two of the same

patterns meet they add.The interference pattern

module response is large.

These are spatio-temporal interactions like optics, or surface acoustic wave filters [SAW].)

Page 22: The Sternberg Experiments:  An Ersatz Test Program
Page 23: The Sternberg Experiments:  An Ersatz Test Program
Page 24: The Sternberg Experiments:  An Ersatz Test Program
Page 25: The Sternberg Experiments:  An Ersatz Test Program
Page 26: The Sternberg Experiments:  An Ersatz Test Program

Computing Ratios with an Array

Page 27: The Sternberg Experiments:  An Ersatz Test Program

Ratio Computation

Need to measure ratios of quantities for programs like Identity.

Can use amplitude timing relationships to generate spatial representation of a ratio.

General neural rule: weak signals produce slower responses than strong ones.

One name: Strength-latency tradeoff.Found from peripheral sensory systems up to cortex.

Page 28: The Sternberg Experiments:  An Ersatz Test Program

Desired Spatial Behavior

Assume a linear array of modules.  Low (q1/q2): q1oooooRooooooooooooooooooooooooooooooq2. ^ ^ Input Strength q1 Input Strength q2

  High (q1/q2): q1ooooooooooooooooooooooooooooooRooooq2.

^ ^R indicates the location of active modules. The location of R should be related to the value of the ratio, (q1/q2).

 

Page 29: The Sternberg Experiments:  An Ersatz Test Program

Example

Suppose we have a linear array of modules

Assume that q1 and q2 arrive simultaneously as inputs on the ends.  

Assume the time, Δt, for a module to respond to an input is a function of the input amplitude.

Example: Δt1 = c/q1 and Δt2 = c/q2

At a given time, the stronger input has traveled further than the weaker one.

Page 30: The Sternberg Experiments:  An Ersatz Test Program

Bar Code for Ratios

Approximate spatial locations for this strength-latency relationship.

q1 q2

XoooooooooooooooooooooooooooooooooooooooooooooooooooY^ ^small 1:5 1:3 1:2 1:1 2:1 3:1 5:1 largeq1/q2 q1/q2

Page 31: The Sternberg Experiments:  An Ersatz Test Program

Other Points

A system much like this is used for spatial localization in the auditory system.

This is a spatially arranged parallel system so we can compute several ratios simultaneously.

q1-R-----q2

\ / \ R R / q3

Page 32: The Sternberg Experiments:  An Ersatz Test Program

Applications of the Identity Program

Page 33: The Sternberg Experiments:  An Ersatz Test Program

Identity as a Protean Function

• The Identity function is a flexible starting point.

• Note: Ersatz-Identity is based on a similarity measure, not logical identity.

Other application examples:• Ersatz Logic • Ersatz Symmetry

Page 34: The Sternberg Experiments:  An Ersatz Test Program

Symmetry

Use a variant of the identity program to compute symmetry

Use lateral pattern spread with different weighting regions and times.

Page 35: The Sternberg Experiments:  An Ersatz Test Program
Page 36: The Sternberg Experiments:  An Ersatz Test Program
Page 37: The Sternberg Experiments:  An Ersatz Test Program
Page 38: The Sternberg Experiments:  An Ersatz Test Program
Page 39: The Sternberg Experiments:  An Ersatz Test Program

Relationships

Key Point: Our approach to Eratz “software” is based on observing, using, and manipulating the spatial and temporal relationships among module activity patterns.

Page 40: The Sternberg Experiments:  An Ersatz Test Program

Next Step: Multiple ArraysConsider complex systems involving multiple NofN

arrays and multiple module assemblies.Two ways to look at the operation of memory in

Ersatz Systems.First is simple pattern recognition. Useful but

inflexible. Call it “passive memory.”The second is task based memory. Can be

programmed and is much more flexible.Call it “active memory.”

Page 41: The Sternberg Experiments:  An Ersatz Test Program

Passive Memory

Page 42: The Sternberg Experiments:  An Ersatz Test Program

Active Memory: Three NofN Arrays

Page 43: The Sternberg Experiments:  An Ersatz Test Program

Active MemoryFor active memory, memory and sensory data from

different NofN arrays mix together at another array.

We call this array the mixer.In some programs the activity level at the mixer

provides the result of the computation.Such an architecture can be:• Flexible.• Task dependent.• Programmable.

Page 44: The Sternberg Experiments:  An Ersatz Test Program

The Sternberg ExperimentWe outline next a program to perform the

famous (among cognitive scientists!) Sternberg List Scanning Experiments.

Task:• Memorize a short list of items (2 to 5

items).• Decide quickly whether a new item was on

the list or not.

Page 45: The Sternberg Experiments:  An Ersatz Test Program

The Task

Assume we learn a short list of letters. A, B, G, K, LK is presented. Press the positive response key.M is presented.Press the negative response key.Record the time it takes to respond.

Page 46: The Sternberg Experiments:  An Ersatz Test Program

Not Trivial!For non-academics: This task is not trivial

and is similar to many real world tasks.An important example:Is MANTY a word? (Need to check the full lexicon to answer.)Is Corvette a car name?Is Peerless a car name?Is Utopian Turtletop a car name?

Page 47: The Sternberg Experiments:  An Ersatz Test Program

Blink

One mental function that we have great interest in doing with the Ersatz system is described in detail in a recent best selling book by Malcolm Gladwell: Blink.

The subtitle of Blink is “The Power of Thinking without Thinking.”

Page 48: The Sternberg Experiments:  An Ersatz Test Program

BlinkThe point of the book:“We believe that we are always better off gathering

as much information as possible and spending as much time as possible in deliberations. There are moments …when our snap judgments and first impressions can offer a much better means of making sense of the world. The first task of Blink is to convince you of a simple fact: decisions made very quickly can be every bit as good as decisions made cautiously and deliberately. (p. 13-14)

Page 49: The Sternberg Experiments:  An Ersatz Test Program

Fast Decision SystemsOne goal of the Ersatz project is to make an artificial system

with these properties:• Be Fast (Work in a single or very small number of steps.

No tree searches.)• Be able to integrate information from many sources. • Example: Combine information from the senses and from

perceptual analysis with past information stored in memory in a fast, efficient, programmable manner.

• Be right most of the time.

We will use the Sternberg list experiments as our first attempt at showing how this might be done.

Page 50: The Sternberg Experiments:  An Ersatz Test Program

Response Time DataPlot average response time against list length.

Key experimental finding:

Positive (present) and negative (absent) responses have the same slope.

Page 51: The Sternberg Experiments:  An Ersatz Test Program

Implications of the Data

Consider how reaction time will vary with number of list items.

If we scan the items sequentially, we will scan half the list items on average for a positive response.

But we must scan all the items for a negative response.

The slope of the negative responses should grow twices as fast as the positive responses.

Page 52: The Sternberg Experiments:  An Ersatz Test Program

Parallelism

Positive and negative slopes are equal.This suggests that all the list items are tested at once

before a response is made.This implies that list matching is a parallel process

and items are not matched individually.Comment: The entire lexicon (400,000) items can be

scanned in less than a second.Seems unlikely to be a serial process.

Page 53: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 1: ArraysWe assume 26 letters represent the categories. 

Page 54: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program: 1. ArraysModule Arrays: Three NofN Arrays, Array A, Array B, and Array C

Connections: In line, reciprocal A<=>B<=>CArray A: Sensory Input Array (a,b,c,… z)Array B: Intermediate representations Assemblies {a,b,c … z}Array C: Classifications (Stable Module Assemblies)

Assemblies: {A,B,C …, Z} 

Page 55: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 2: Associations

Page 56: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 2: AssociationsStandard associative learning: Input to OutputArray A <=> Array B <=> Array CData Features Category ay => a => Abee => b => Bcee => c => C…zee => z => Z 

Page 57: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 2: Associations

When the categories are forming, we also learn the reciprocal associations:

ay <= a <= Abee <= b <= Bcee <= c <= C…zee <= z <= Z

Page 58: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 3: Formation of the List Filter

List Formation. A list is a subset of the categories in Array C, for example, {A,B,C,D,E}

We present the list in sequence at Array C.

The downward projects to form a summed associative representations in Array B.

Page 59: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 3: Formation of the List Filter

Step 1. Form list representation by sequential presentation: 

Array A Array B <= Array C a <= Present list item A a+b <= Present list item B a+b+c <= Present list item C a+b+c+d <= Present list item D a+b+c+d+e <= Present list item E

Assume activity in Array B sums patterns excited by downward projections from Array C.

Page 60: The Sternberg Experiments:  An Ersatz Test Program

Formation of the List Filter

Page 61: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 4: Interaction between Data and Memory

At the mixer, new sensory data and the list filter interact. For a linear system taking an inner product between inputs to middle Array B from higher level Array C and lower level Array A:

Step 2. InteractionArray A Array B Array C a => a+b+c+d+e [a,a] + noise

Page 62: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 5: Decision CriteriaNote: We assume (in the simplest case) that the Mixer (Array B) takes the inner product between the test item and the list filter.

The activity at Array B when input pattern a is presented to input Array A is then

Scalar Activity in B = [a,a] + [a,b] + [a,c] + [a,d] + [a,e]

= [a,a] + noise.

Note: This technique realizes a matched filter for pattern a. The matched filter is the optimal linear filter.

Example: If [a,b,c … z] are orthogonal:

A positive activity value corresponds to presence of the test input in the list. Zero activity corresponds to absence from the list.

Page 63: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Experiment 5: Decision Criteria

Page 64: The Sternberg Experiments:  An Ersatz Test Program

Sternberg Program 5: Decision CriteriaStep 3. Decision Criteria (very tentative): Positive: Large, rapid, synchronized compact activation pattern in Array B is positive. 

Negative: Smaller, slow, unsynchronized, widespread activation pattern in Array B is negative. 

The decision parameters are set by the accuracy required, the nature of the categories, etc. Experience is required.

Page 65: The Sternberg Experiments:  An Ersatz Test Program

An Unintuitive PredictionDetecting the presence of a item on the list does not require

identification of the test item.The system does not reason, “I see a C. > C is on the list. >

Therefore I will make a positive response.” The process is instead “The item is some item on the list. >

Therefore I make a positive response. With additional effort I can conclude the item is a C.

This curious prediction is experimentally correct. In general: It often makes sense to operate at a level the

above the finest detail, even thought the detail is available.

Page 66: The Sternberg Experiments:  An Ersatz Test Program

Extensions

We can extend this to multiple inputs from the sensory systems and from memory.

We can suggest how to program (on the fly) more complex multimodal list experiments.

An Example:

List: 1, 2, 2, 3, 4Is 3 on the list?

Page 67: The Sternberg Experiments:  An Ersatz Test Program

Extensions

We can bring together multiple sources of information at the mixer.

Activity levels in the mixer can tell whether or not some task demand is satisfied.

Note the combination of analog and pattern based computation.

And systems like this may be statistically optimal!

Page 68: The Sternberg Experiments:  An Ersatz Test Program

Extensions: Generalized Mixer

Page 69: The Sternberg Experiments:  An Ersatz Test Program

Higher Level Cognition

The most interesting applications of the Ersatz system will be to high level cogntion.

For example, we can extend these ideas to work with contextual and conceptual information.

We may now have entries both into language and into cognitive signal processing with the same approach.

Page 70: The Sternberg Experiments:  An Ersatz Test Program

Higher Level CognitionWe can make simple context neighborhood from

integrating multiple data sources.We assume that previous input words hang around and

are associatively linked to their associates.. Perhaps an entire semantic network could be constructed

from the union of neighborhood. Consider a set of four sentences on a common topic:  I needed caffeine. I walked to Starbucks. “A vente,” I said to the barrista. “Ah, java”, I exclaimed

Page 71: The Sternberg Experiments:  An Ersatz Test Program

Disambiguation

Assume that word patterns from multiple sentences superimpose just like the Sternberg experiments.  

What is the appropriate meaning of ‘java’ in this sequence? The string ‘java’ can be: • A slang term for coffee. • An island in Indonesia. • A programming language.  Superposition of the associations of the words gives rise to a

context that easily disambiguates ‘java.’

Page 72: The Sternberg Experiments:  An Ersatz Test Program
Page 73: The Sternberg Experiments:  An Ersatz Test Program

ConclusionsThe Ersatz Brain Project is developing a scalable,

understandable, brain-like computing architecture.

We are working to turn it into a computing system.We are developing techniques for working with real

world data.We feel the same basic ideas will work over a wide

range of scales. We can now outline programs that can be applied

over a range from cognitive signal processing to task-based memory retrieval to contextual disambiguation.