The Sternberg Experiments: An Ersatz Test Program James Anderson Department of Cognitive and...

Post on 20-Jan-2016

218 views 0 download

Transcript of The Sternberg Experiments: An Ersatz Test Program James Anderson Department of Cognitive and...

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.

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.

Potential Applications

We have studied several applications areas.

First, Cognitive Signal Processing:

• Invariant Vowel Formant Ratio Computation

• A Morse Code reader.

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.”

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.

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.

Arrays of ModulesSecond, we

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

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.

Sparse Representation

In 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.

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.

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.

Development Strategy: High Level

At 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.

Biological Evidencefor Module Assemblies

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

assemblies and scaling.)

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.

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.

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.

Active IT Regions for a Complex Stimulus

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

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.

Topographic Model for Identity

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.

Pattern Spread

Patterns 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].)

Computing Ratios with an Array

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.

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).

 

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.

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 large

q1/q2 q1/q2

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

Applications of the Identity 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

Symmetry

Use a variant of the identity program to compute symmetry

Use lateral pattern spread with different weighting regions and times.

Relationships

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

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.”

Passive Memory

Active Memory: Three NofN Arrays

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.

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.

The Task

Assume we learn a short list of letters.

A, B, G, K, L

K is presented.

Press the positive response key.

M is presented.

Press the negative response key.

Record the time it takes to respond.

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?

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.”

Blink

The 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)

Fast Decision Systems

One 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.

Response Time DataPlot average response time against list length.

Key experimental finding:

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

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.

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.

Sternberg Program 1: Arrays

We assume 26 letters represent the categories. 

Sternberg Program: 1. Arrays

Module 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} 

Sternberg Program 2: Associations

Sternberg Program 2: AssociationsStandard associative learning:

Input to Output

Array A <=> Array B <=> Array C

Data Features Category

ay => a => A

bee => b => B

cee => c => C

zee => z => Z 

Sternberg Program 2: Associations

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

ay <= a <= A

bee <= b <= B

cee <= c <= C

zee <= z <= Z

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.

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.

Formation of the List Filter

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

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.

Sternberg Experiment 5: Decision Criteria

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.

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.

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?

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!

Extensions: Generalized Mixer

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.

Higher Level Cognition

We 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

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.’

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.