Explanation PDF
Document Details
Uploaded by ResourcefulIodine
Columbia University
Tags
Summary
This document discusses different levels of explanation within computational systems, using examples such as Donkey Kong and the Ultimatum Game to illustrate the computational, algorithmic, and implementational aspects. It highlights the importance of considering multiple levels of abstraction when analyzing complex systems. The document also explores different representations and algorithms in the context of these examples.
Full Transcript
Levels of Explanation What does it mean to “explain how the mind works”? Hubel and Wiesel, 1959 Stimulus Neuron voltage We can easily describe what this cell “computes” Hubel and Wiesel, 19...
Levels of Explanation What does it mean to “explain how the mind works”? Hubel and Wiesel, 1959 Stimulus Neuron voltage We can easily describe what this cell “computes” Hubel and Wiesel, 1959 Simple tuning: responds to squares near upper-right ??? Dang et al., 2021 4.2mm 4.2mm https://news.berkeley.edu/2020/03/19/high-speed-microscope-captures-fleeting-brain-signals/ Playing Donkey Kong on a computer Jonas and Kording, 2017 Playing Donkey Kong on a computer Jonas and Kording, 2017 Playing Donkey Kong on a computer Brightness of a pixel Brightness of a pixel Jonas and Kording, 2017 Key idea: to ask different kinds of questions about a computational system, we need to use different levels of abstraction What are the goals of the system? What are its inputs and outputs? What representation does the system use? How are these representations transformed? How are these operations physically implemented? Marr’s Three Levels What are the goals What information is What physical objects and properties of manipulated, in what in the world carry out this system? format, and using this process? what rules? Marr’s Three Levels: Cash register The final output Prices are stored as the Digits correspond to should equal the sum number of cents each gear positions, linked to of the input prices, items costs, in base-10, implement addition without regard for and sums should be order, and should computed by adding allow for negative digits from right to left prices (returns) with carries What are the goals What information is What physical objects and properties of manipulated, in what in the world carry out this system? format, and using this process? what rules? Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic (representations/processes): Check if position_Mario = position_barrel for some barrel and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic Does the hammer also (representations/processes): break blue barrels? Check if position_Mario = position_barrel for some barrel and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic Will the game slow (representations/processes): down if there are Check if position_Mario = many barrels? position_barrel for some barrel and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic What is the maximum (representations/processes): size of a level? Check if position_Mario = position_barrel for some barrel and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic Is Mario’s position a (representations/processes): continuous value or Check if position_Mario = can he only move in position_barrel for some barrel units of pixels? and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic Could putting a (representations/processes): magnet next to the Check if position_Mario = arcade cabinet mess position_barrel for some barrel up how the hammer and has_hammer = True behaves? Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Donkey Kong Computational (goals/properties): When Mario hits a barrel with the hammer, it disappears Algorithmic Can Mario jump when (representations/processes): he has the hammer? Check if position_Mario = position_barrel for some barrel and has_hammer = True Implementational (physical hardware): Store position information in an IDT6116SA/LA 2Kb C-MOS RAM Example: Personal Space Example: Personal Space Interpersonal distance violations will cause negative evaluation of partner Expected distance = 3 ft + adjustment based on familiarity/liking Degree of response = absolute value of expected minus actual difference Striatum tracks expected distance (in ventral part) and actual distance (in dorsal part) and computes a prediction error Huskey et al., 2020 Ultimatum Game 25 25 50 75 50 75 Player 1 Player 2 Player 1 Player 2 Player 1 Player 2 Player 1 gets to pick the division Player 2 can accept, or reject (and both get 0) Ultimatum Game: Computational What is a Computational level theory about players’ behavior? Gray bars = offers Black circles = chance of rejection Henrich et al., 2006 Ultimatum Game: Algorithmic/Representation Say Player 1 just tries to maximize their own share How can we compute the maximum? We’ll need: A way to represent each of the share options An algorithm for computing the maximum share Ultimatum Game: Algorithmic/Representation One option: represent values as binary numbers 128 64 32 16 8 4 2 1 75= 0 1 0 0 1 0 1 1 50= 0 0 1 1 0 0 1 0 25= 0 0 0 1 1 0 0 1 Finding maximum: look for highest-value “1” Ultimatum Game: Algorithmic/Representation Another representation option: represent choices as continuous-valued intensities Algorithm: have intensities compete with each other Negative (-) Positive (+) 75 50 25 Time 1 Ultimatum Game: Algorithmic/Representation Another representation option: represent choices as continuous-valued intensities Algorithm: have intensities compete with each other Negative (-) Positive (+) 67 40 12 Time 2 Ultimatum Game: Algorithmic/Representation Another representation option: represent choices as continuous-valued intensities Algorithm: have intensities compete with each other Negative (-) Positive (+) 57 25 0 Time 3 Ultimatum Game: Algorithmic/Representation Another representation option: represent choices as continuous-valued intensities Algorithm: have intensities compete with each other Negative (-) Positive (+) 48 0 0 Time 4 Ultimatum Game: Implementation How can we implement this representation and algorithm in physical objects in the world? Negative (-) Positive (+) 48 0 0 Ultimatum Game: Implementation How can we implement this representation and algorithm in physical objects in the world? Intensity -> Firing rate Positive loop -> excitatory synapse Negative loop -> inhibitory synapse Lessons from Marr Ø There are distinct questions at each level that are interesting in different ways – studying the mind is not just studying the brain Ø It can be extremely difficult to study complex systems at the implementation level without first developing theories at higher levels Starting Monday: Attendance Codific Attendance Radar