* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Nick Gentile
Neural oscillation wikipedia , lookup
Synaptic gating wikipedia , lookup
Artificial intelligence wikipedia , lookup
Holonomic brain theory wikipedia , lookup
Cognitive neuroscience wikipedia , lookup
Optogenetics wikipedia , lookup
Behaviorism wikipedia , lookup
Neurophilosophy wikipedia , lookup
Neuroethology wikipedia , lookup
Neuropsychopharmacology wikipedia , lookup
Embodied cognitive science wikipedia , lookup
Perceptual control theory wikipedia , lookup
Central pattern generator wikipedia , lookup
Neural engineering wikipedia , lookup
Development of the nervous system wikipedia , lookup
Neuroeconomics wikipedia , lookup
Nervous system network models wikipedia , lookup
Pattern recognition wikipedia , lookup
Metastability in the brain wikipedia , lookup
Artificial neural network wikipedia , lookup
Hierarchical temporal memory wikipedia , lookup
Convolutional neural network wikipedia , lookup
Catastrophic interference wikipedia , lookup
Introduction to Neural Networks and Example Applications in HCI Nick Gentile Overview • Introduction to neural networks • Example Applications in HCI – – – – NETtalk Cognitive Text-editing Filtering Messages Learning a User’s Interests by Observing their behavior • Discussion Neural Networks • The brain – Cerebral cortex • Memory, perceptual awareness, thinking, language and consciousness • Made up of billions of neurons • Motivation – “Understanding human behavior and brain construction…” • Computers have the power – Using the power of computers we can better understand the underlying processes of the brain Neural Networks • Three key elements – Network architecture • Typically described in terms of layers • Connectionist model (connection strengths) – “Each connection has associated with it a numerical weight. Each neuron's output is a single numerical activity which is computed as a monotonic function of the sum of the products of the activity of the input neurons with their corresponding connection weights.“ – Learning algorithm • How the weights are set – Data representation • Inputs and outputs Neural Networks • Some useful terms – Feedforward network - “A layered network in which each layer only receives inputs from previous layers.” – Target vector - “The desired output vector for a given input vector.” – Pattern recognition - “The task performed by a network trained to respond when an input vector close to a learned vector is presented. The network “recognizes” the input as one of the original target vectors.” – Error vector - “The difference between a network’s output vector in response to an input vector and an associated target output vector.” NETtalk • Training – Sequences and pronunciations • Gives good representation, but not good enough • Further training handles exceptions and special cases • How it works – Seven letter window • Looks at middle letter and uses rest as “[context]” to determine output (phonetic symbols) • Window moves through whole document generating a sequence of phonetic symbols NETtalk • Results – Network learned to abstract exceptions and special cases to produce more accurate speech – Eventually was able to produce accurate speech from words it had never seen before NETtalk • Architecture – Three-layered feed-forward network • Representation – Inputs - Sequence of letters – Outputs - Sounds • Learning – Backpropagation Cognitive Text-editing • Goal – Predict text editing strategies • How – By taking into account keystrokes and the pauses between them – “Robertson and Black have shown that the pauses which occur during text editing are indicators of the formulation of planning strategies.” Cognitive Text-editing • Training – Subjects asked to write a memo using the ‘vi-editor’ – Inputs - 36 vi commands and three types of pauses (long, short and intermediate) – Outputs - Editing goals (Address Memo, Puncture Memo, Organise Memo, Enhance Memo, Review Memo and Error Correction). Manually input for training purposes. • Outcome – 36 memos written, 12 used for training 24 used for testing – Network was able to recognize 96% of the test data Cognitive Text-editing • Architecture – Feed-forward network • Representation – Inputs - vi commands and pauses between keystrokes – Outputs - Editing goals • Learning – Backpropagation Filtering Messages • The problem – Eliminate irrelevant messages from newsgroup • The solution – Generate two dictionaries • “Common Dictionary” • “Deference Dictionary” – Construct a neural net • # input nodes = # of words the dictionary • # output nodes = # of subtopics or categories Filtering Messages Message - Hi Nick what’s up Dictionary hi nick s up what do hci hi network nick what Input vector - [0.1, 0.1, 0.9, 0.1, 0.9, 0.9] Filtering Messages • Architecture – Three-layered, feed-forward network • Representation – Input - email and newsgroup messages – Output - relevant messages • Learning – Backpropagation Learning a User’s Interests by Observing their behavior • Task – To predict weather or not a particular page is of interest, based on the user’s profile • Methodology – Obtain training examples by recording user navigation behavior – Use this information to predict user interest in a page Learning a User’s Interests by Observing their behavior • Implementation – Three output neurons • # of hyperlinks clicked – Fraction of hyperlinks clicked on a page • Scrolling activity and mouse activity – Counts scaled by 100 • Result – Based on page content • # of hyperlinks user will click • Amount of scrolling • Amount of mouse activity Learning a User’s Interests by Observing their behavior • Architecture – Feed-forward network • Representation – Input - IE logfile – Output - User’s interest in a page • Learning – Backpropagation Final Thought • One of the main goals of HCI is to model user behavior in order to gain a better understanding of how they interact with computers. They can then take that understanding and apply it to new and existing applications to make them more usable. So what better way to understand human behavior than to exploit the very mechanism that guides that behavior? References • • • Anderson, J. A. (1995), An Introduction to Neural Networks, Cambridge, MA: MIT Press. Yasdi, R. (2000). "A Literature Survey on Applications of Neural Networks for Human-Computer Interaction." Neural Computing & Applications 9(4): 245-258. Cool site to learn about and play with various types of networks. http://diwww.epfl.ch/mantra/tutorial/english/