Backpropagation in Neural Nets, and an Introduction to Vision. CSCI 5582, Fall 2007

Similar documents
Neural Nets. CSCI 5582, Fall 2007

CS 4510/9010 Applied Machine Learning. Neural Nets. Paula Matuszek Fall copyright Paula Matuszek 2016

CS 4510/9010 Applied Machine Learning. Deep Learning. Paula Matuszek Fall copyright Paula Matuszek 2016

CS 4510/9010 Applied Machine Learning

Lecture 2 Notes. Outline. Neural Networks. The Big Idea. Architecture. Instructors: Parth Shah, Riju Pahwa

Binocular cues to depth PSY 310 Greg Francis. Lecture 21. Depth perception

Supervised Learning in Neural Networks (Part 2)

CS6220: DATA MINING TECHNIQUES

arxiv:q-bio/ v1 [q-bio.nc] 4 Oct 2004

Lecture 17: Neural Networks and Deep Learning. Instructor: Saravanan Thirumuruganathan

Machine Learning 13. week

Practice Exam Sample Solutions

Learning. Learning agents Inductive learning. Neural Networks. Different Learning Scenarios Evaluation

Neural Network Neurons

Flow fields PSY 310 Greg Francis. Lecture 25. Perception

Representing 3D Objects: An Introduction to Object Centered and Viewer Centered Models

Fall 09, Homework 5

Supervised Learning with Neural Networks. We now look at how an agent might learn to solve a general problem by seeing examples.

Does the Brain do Inverse Graphics?

Euler s Method for Approximating Solution Curves

Simple Model Selection Cross Validation Regularization Neural Networks

STA Module 2B Organizing Data and Comparing Distributions (Part II)

STA Learning Objectives. Learning Objectives (cont.) Module 2B Organizing Data and Comparing Distributions (Part II)

To Conclude: Vision in terms of

Back propagation Algorithm:

Exercise: Training Simple MLP by Backpropagation. Using Netlab.

Assignment # 5. Farrukh Jabeen Due Date: November 2, Neural Networks: Backpropation

STA Rev. F Learning Objectives. Learning Objectives (Cont.) Module 3 Descriptive Measures

Math 8 Shape and Space Resource Kit Parent Guide

Goals: Course Unit: Describing Moving Objects Different Ways of Representing Functions Vector-valued Functions, or Parametric Curves

2. Neural network basics

Chapter01.fm Page 1 Monday, August 23, :52 PM. Part I of Change. The Mechanics. of Change

Visual Design. Simplicity, Gestalt Principles, Organization/Structure

Neural Networks (Overview) Prof. Richard Zanibbi

LECTURE NOTES Professor Anita Wasilewska NEURAL NETWORKS

Technical University of Munich. Exercise 7: Neural Network Basics

1.2 Adding Integers. Contents: Numbers on the Number Lines Adding Signed Numbers on the Number Line

Detailed instructions for video analysis using Logger Pro.

Optimizing Number of Hidden Nodes for Artificial Neural Network using Competitive Learning Approach

Classification Lecture Notes cse352. Neural Networks. Professor Anita Wasilewska

Cognitive Walkthrough. Francesca Rizzo 24 novembre 2004

Neural Network Learning. Today s Lecture. Continuation of Neural Networks. Artificial Neural Networks. Lecture 24: Learning 3. Victor R.

Linear Separability. Linear Separability. Capabilities of Threshold Neurons. Capabilities of Threshold Neurons. Capabilities of Threshold Neurons

Neural Nets & Deep Learning

THE NEURAL NETWORKS: APPLICATION AND OPTIMIZATION APPLICATION OF LEVENBERG-MARQUARDT ALGORITHM FOR TIFINAGH CHARACTER RECOGNITION

Implementation of a Library for Artificial Neural Networks in C

CPSC 340: Machine Learning and Data Mining. Deep Learning Fall 2016

Character Recognition Using Convolutional Neural Networks

Lecture 3: Linear Classification

Deep Learning. Deep Learning. Practical Application Automatically Adding Sounds To Silent Movies

COMP 551 Applied Machine Learning Lecture 16: Deep Learning

Processing Framework Proposed by Marr. Image

Support Vector Machines

Chapter 5. Understanding and Comparing Distributions. Copyright 2010, 2007, 2004 Pearson Education, Inc.

2. You are required to enter a password of up to 100 characters. The characters must be lower ASCII, printing characters.

Parallel algorithms for stereo vision shape from stereo

Data Mining. Neural Networks

CS 6501: Deep Learning for Computer Graphics. Training Neural Networks II. Connelly Barnes

Dynamic Routing Between Capsules

1) Complete problems 1-65 on pages You are encouraged to use the space provided.

3-3. When Kenji spun the flag shown at right very quickly about its pole, he noticed that a threedimensional

Robotics Navigation I: Bug Algorithms

More on Learning. Neural Nets Support Vectors Machines Unsupervised Learning (Clustering) K-Means Expectation-Maximization

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute

Discovering. Algebra. An Investigative Approach. Condensed Lessons for Make-up Work

2D/3D Geometric Transformations and Scene Graphs

Velocity: A Bat s Eye View of Velocity

Does the Brain do Inverse Graphics?

More Learning. Ensembles Bayes Rule Neural Nets K-means Clustering EM Clustering WEKA

Joint design of data analysis algorithms and user interface for video applications

1

Deep Learning for Visual Computing Prof. Debdoot Sheet Department of Electrical Engineering Indian Institute of Technology, Kharagpur

OBJECT-ORIENTED DESIGN

Neural Networks Laboratory EE 329 A

Deepest Neural Networks

A Neural Classifier for Anomaly Detection in Magnetic Motion Capture

Yammer Product Manager Homework: LinkedІn Endorsements

Virtualization. Q&A with an industry leader. Virtualization is rapidly becoming a fact of life for agency executives,

EE 511 Neural Networks

Deep Learning. Vladimir Golkov Technical University of Munich Computer Vision Group

Support Vector Machines

COS Lecture 10 Autonomous Robot Navigation

ILR #7: Progress Review 8. Zihao (Theo) Zhang- Team A February 15th, 2017 Teammates: Amit Agarwal, Harry Golash, Yihao Qian, Menghan Zhang

Gesture Recognition using Neural Networks

Correspondence and Stereopsis. Original notes by W. Correa. Figures from [Forsyth & Ponce] and [Trucco & Verri]

Keywords: ANN; network topology; bathymetric model; representability.

Computational Foundations of Cognitive Science

5 Learning hypothesis classes (16 points)

Artificial Neuron Modelling Based on Wave Shape

Become strong in Excel (2.0) - 5 Tips To Rock A Spreadsheet!

Recitation Handout 10: Experiments in Calculus-Based Kinetics

GAP CLOSING. Grade 9. Facilitator s Guide

Image Processing, Analysis and Machine Vision

Perception, Part 2 Gleitman et al. (2011), Chapter 5

Extreme Learning Machines. Tony Oakden ANU AI Masters Project (early Presentation) 4/8/2014

Deep Learning Benchmarks Mumtaz Vauhkonen, Quaizar Vohra, Saurabh Madaan Collaboration with Adam Coates, Stanford Unviersity

Lecture #11: The Perceptron

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling

Last update: May 4, Vision. CMSC 421: Chapter 24. CMSC 421: Chapter 24 1

CPSC : Program 3, Perceptron and Backpropagation

Transcription:

Backpropagation in Neural Nets, and an Introduction to Vision CSCI 5582, Fall 2007

Assignments Problem Set 3 is due a week from today

The Update Rule for a Weighted Edge of a Perceptron To update the weight from a node j leading to an output node, we adjust the weight according to the following formula: W j <---- W j + (! Err g (in) x j ) Here, Err is the difference between what we wanted and what we got from the output. (i.e., the un-squared error) G (in) is the derivative of our output function X j is the output from node j leading to us! is a rate parameter

Multi-Layer Neural Networks Now, we expand our network architecture so that it has several (or more) layers of neural elements. We think of the layers as numbered in columns left to right, with the leftmost layer as layer 1 (input) and the rightmost layer as layer n (output).

Adjusting Weights for Multilayer Networks Here s the perceptron rule, again: W j <---- W j + (! Err g (in) x j ) Note that this is the update rule to adjust a weight from neuron j to an output neuron. Let s rewrite this for our new multilayer network as: W j-->k <---- W j-->k + (! " k a j ) That is, we call the output neuron k and we combine the error term and the derivative-at-k term into one symbol, ". We also relabel the output coming from neuron j as a j. Think of the " term as how much node k wants its output to change. For an output node, this is just the product of the error at k and the rate at which error changes for a small change in input at k.

How Much Does a Hidden Node Want to Change Its Output? Okay, what about a hidden-layer node: what should its value of " be? It is the product of its own derivative and the weighted sum of how much its own targets want to change: " j = g (in j ) # m W j-->m " m = a j (1 - a j ) # m W j-->m " m Again, think of these terms as how fast I will change my output for a little change in input and the sum over all my targets of how much they want to change, weighted by my influence upon them

Backpropagation: Step 1 Start at the output layer. For each neuron in that layer, we compute: " output-i = g (in output-i )Error output-i = a output-i (1 - a output-i ) Error output-i

Backpropagation: Step 2 Now, for each neuron j in the previous layer, compute "j as follows: " j = a j (1 - a j ) # i W j-->i " i Now, use each of these " values to compute the " values for the layer before that, and so on until you reach the input layer.

Backpropagation: Final Step We now have, for each node, a measure of how much that node wishes to change its own output value. We now adjust the weights on each edge as follows: W j-->i <-- W j-->i + (! a j " i )

A Sampler of Additional Issues How do we choose an appropriate network size to train? Too small a network, and we may not be able to represent our concept; too big, and we run the risk of overfitting. How do we choose a training rate parameter? (The notion of simulated annealing.) Training partial nets (e.g., one output at a time).

Neural Nets: What Do People Like? The pros: Utility for a variety of pattern recognition tasks (handwriting, spoken word, face, etc.) Simplicity of programming (reinforcement learning) An elegant model of emergence in programming: the idea that large numbers of simple programming elements are collectively capable of interesting, higher-level behaviors.

What Do People Dislike? The cons: A vague feeling that we haven t really learned anything about these pattern recognition skills Neural nets seem to be a far less natural means for demonstrating explicit rule learning

What Is It Like to Be a Bat?

The Problems of Bathood How do you avoid hurting your own ears? How can you estimate which objects are closer to you and which are farther away? How can you tell if an object is moving toward or away from you?

David Marr s Levels of Abstraction Computational Level: What is the goal of the computation, why is it appropriate, and what is the logic of the strategy by which it can be carried out? Algorithm Level: How can this computational theory be implemented? In particular,what is the representation for the input and output, and what is the algorithm for the transformation? Mechanism Level: How can the representation and algorithm be realized physically?

The Computational Approach to Vision: A Sampler of Issues Low-level vision: Edge segmentation: which areas of the scene projected onto the retina correspond to the potentially interesting objects? Depth perception: how far away are the objects? Interpreting Edges as Line Drawings Interpreting Shapes as (possibly familiar) objects

What Do We Mean by Low- Level Vision, Anyway? Based on a (not entirely accurate) portrait of vision as proceeding bottom-up from raw (pixellike) data to object recognition Tasks like: object boundary detection, surface orientation, depth perception, motion detection Fast, rough, domain-independent processing Parallel processing Unconscious levels of (human) vision processing