Fairfield University School of Engineering
Electrical and Computer Engineering

COURSE: SW461 Pattern Recognition - Spring, 2019

Instructor: Jeffrey N. Denenberg

Office: Bannow 301C

Google Voice:  (203) 513-9427

Office Phone: x3330

Email:  jeffrey.denenberg@ieee.org

Web: http://doctord.webhop.net/, http://doctord.dyndhs.org/

INSTRUCTOR ASSISTANCE: TBD, and by phone or email.

CLASS HOURS: Tuesdays, 6:30 – 9:00 PM, in Nursing 203

This programming intensive course introduces the student to the algorithms and data structures used in modern pattern recognition systems with an emphasis on those that can learn and improve their performance as they are used.  After a short review of some necessary mathematical concepts (Probability, Stochastic Processes and Vector Spaces), the student is introduced to the problem of representing real-world problems to a system.  Students will, in teams, design, build, test and report on a major subsystem of a pattern recognition system.  Selected real world applications are used to show examples of some valid representations (e.g. Speech and Handwriting) to provide insight and experience in the application of recognition systems.  Several important recognition engines are then studied and analyzed for their effectiveness as the basis for recognition, synthesis, and learning systems.  The use of additional knowledge bases dealing with the problem environment is then introduced to increase system performance.

Pre-requisites:           Basic math and algebra.  Some calculus may be helpful.
                                    Some background in probability and statistics.
                                    Programming skills (MatLab, Python, C/C++, and/or Java)

Textbook:                   “Pattern Recognition”, Sergios Theodoridis and Konstantinos Koutroumbas,
                                    Academic Press, Ed. 4, 2009, ISBN 978-1597492720.

References:                https://www.coursera.org/learn/machine-learning/,
           
http://en.wikipedia.org/wiki/Machine_learning,
           
www.sci.utah.edu/~gerig/CS6640-F2010/prob-tut.pdf
           
http://en.wikipedia.org/wiki/Variable-order_Markov_model
           
deep-learning-reinvents-the-hearing-aid, Predictive Analytics for Dummies

Video Lectures          Pattern Recognition:  Prof. P. S. Sastry, Indian Institute of Science, Bangalore

                        Probability Primer: MathematicalMonk on youtube

Markov Models: MathematicalMonk on youtube

Linear-algebral: Engineer4Free.com

Grading

Exams (2)

40%

Exercises/Participation

20%

Project

 

     Report

10%

     Presentation

10%

     Implementation

20%

Disability

If you have a documented disability and wish to discuss academic accommodations, please contact the Office of Academic Disability Support Services at (203) 254-4000, x2615, and notify the course instructor within the first two weeks of the semester.

Distance Education Students

The course is set up to support a small number of distance education students.  Lecture notes and supplementary videos are accessible via links in this syllabus and via Blackboard.  You will submit scanned copies of any quizzes, exercises or exams via email.

Schedule:

Date

Topic

Notes

References

HW

1/22

Course Introduction,
Review of Probability and Vector Spaces, Software Language choice

Pattern Recognition Basics, Noise Introduction, Linear Algebra, PatternRecognitionTeamProjects,
Python Package Index, The Mathworks,
Machine Learning Libraries For Java

MatLab Tips

Learn Python

Get ahead in the readings

 

Domain Representation:

 

 

 

1/29

Handwriting: A quantized, 2-D vector space in time1

Microsoft-2005 – (HMM)
NCCU-2009
NYU-2002
DoctorD’s Vector Quantizer 1987

get_pencil_curve.m, Original-GetPencilCurve

 

Ch2: Read

Handwriting Exercises

Be ready to display and describe your solutions.

2/5

Speech: A Multi-Dimensional vector space

Intro to ASR+HMMs
Feature Extraction
Wavelet Phoneme Recognition

LPC10-Vocoder,

Brain Implat-To-Speech-IEEESpectrum

 

Ch3: Computer Experiments Be ready to display and describe your solutions.
3.1, 3.4

2/12

Data Clustering
Review for Exam1

clustering algorithms-1, clustering algorithms-2, clustering algorithms-3, clustering algorithms-4
Clustering Intro

 

Ch4: Computer Experiments
4.1, 4.2, 4.3

2/19

Tuesday is Monday

No class – Monday classes are held on Tuesday

 

 

2/26

Exam 1 – Domain Representation

 

 

 

3/5

Exam 1 Reprise,
Interim Representation Project Reports

 

 

Ch5: Computer Experiments
4.1, 4.2

 

Recognition Engines

 

 

 

3/12

Dynamic Time Warping (Dynamic Programming)

Template Matching, Dynamic Time Warp-BU

 

Ch6: Computer Experiments
6.1

3/19

Spring Recess – No Class

 

 

 

 

Markov Models

 

 

 

3/26

Nth-Order Markov Models

Smith et. al. (March 1985)
Stochastic-Modeling-of-Natural-Processes.ppt
US. #4,620,286, US. #4,599,693,
US. #4,599,692, US. #4,593,367
Utilize-the-Markov-Model-in-Predictive-Analytics

 

Ch7: Computer Experiments 7.1, 7.2

4/2

HMM
Hidden Markov Models

HMM-UBuffalo,  HMM-Rabiner,  
hidden-markov-model-Python

 

Ch8: Computer Experiments
8.1

4/9

Neural Networks

deep-learning-reinvents-the-hearing-aid, neuralnetworks, neural, neuralnetworksanddeeplearning

 

 

4/16

Exam 2 – Recognition Engines

 

 

Ch9: Computer Experiments
9.1, 9.3

 

Team Project Presentations

 

 

 

4/23

Exam2 Reprise
Project 1

 

 

 

4/30

Project 2, Project 3

 

 

 

5/7

Project 4, Project 5

5/3-5/10 Final Exam Week

 

 

 

Learning Outcomes

No.

Outcome

Cognitive Level

ABET a-k

1

The student will understand the problems encountered, approaches to and how to design a pattern recognition system.

Knowledge, Application,

& Synthesis

a, c, e, f, h, j, k

2

The student will understand how to test a recognition system and quantify the results.

Analysis

a, e, k

3

The student will be able to use mathematical analysis to reducing the complexity of real world pattern recognition applications.

Application

a, c, e, k

4

The student will be able to design and implement a major component of a pattern recognition system.

Synthesis

a, c, e, k

MatLab Tutorials: Mathworks Tutorial, Prof. Aliane Tutorial

Teacher Responsibilities

Distribute syllabus.

Review the material described in the syllabus.

Explain material.

Identify alternate reading assignments or books that clarify the material.

Relate material to "real world" situations when possible.

Answer questions.

Be available to discuss problems.

Be receptive to new ideas.

Announce business/class conflicts in advance.

Make up missed classes, but classes are never cancelled as they will be done on-line.

Prepare and administer exams.

Grade fairly.

Assign appropriate home problems.

Homework policy – reviewed in class, Quizzes cover the HW topics

Student Responsibilities

Be familiar with the prerequisite material as well as the Computer Tools and Tutorials:

Ask questions and stay current.

Study the material described in the syllabus. Preferably before it covered in class and do some of the problems with answers in the back of each assigned chapter.

Complete the assigned homework.

Obtain class notes and homework if a class is missed.  View Author’s lecture video on that week’s topic(s)

Use the library and the Internet to obtain supplemental material.

Prepare for quizzes/exams.

Ask for help from me (I have office hours) and/or your fellow students.

Note: All exams in this course are open book, but not open computer (or phone) so relying on an eBook or PDF will put you at a disadvantage.