Graham Taylor


I am passionate about teaching and I have had the opportunity to act as a teaching assistant for a variety of courses at the University of Toronto, University of Waterloo, and University of Technology, Sydney. Descriptions of these courses are given below. In addition to my work as a TA, I hold a certificate for completion of THE500: Teaching in Higher Education, offered through the Office of Teaching Advancement, University of Toronto.

CSC 411
University of Toronto

Machine Learning and Data Mining
An introduction to methods for automated learning of relationships on the basis of empirical data. Classification and regression using nearest neighbour methods, decision trees, linear models, and neural networks. Clustering algorithms. Problems of overfitting and of assessing accuracy. Problems with handling large databases.

CSC 321
University of Toronto

Introduction to Neural Networks and Machine Learning
Supervised neural networks: the perceptron learning procedure, the backpropagation learning procedure and its applications. Elaborations of backpropagation: activation and error functions, improving speed and generalization, Bayesian approaches. Associative memories and optimization: Gibbs sampling, mean field search. Representation in neural networks: distributed representations, effects of damage, hierarchical representations. Unsupervised neural networks: competitive learning, Boltzmann machines, sigmoid belief nets.

CSC 108
University of Toronto

Introduction to Computer Programming
Structure of computers; the computing environment. Programming in a language such as Python. Program structure: elementary data types, statements, control flow, functions, classes, objects, methods, fields. Lists; searching, sorting and complexity. Practical (P) sections consist of supervised work in the computing laboratory.

CSC 180
University of Toronto

Introduction to Computer Programming
A practical introduction to structured programming using the C programming language with the UNIX operating system. The course will include introductions to numerical computing and data structures and their use. Example applications will include sorting, searching, root finding, and numerical integration.

CSC 104
University of Toronto

The How and Why of Computing
Computer parts and their interconnection. Software: operating systems, files, interfaces. Hardware: storage media, memory, data representation, I/O devices. History of computing. Problem solving with computers: algorithms and basic programming concepts. Science and computer science; graphics, artificial intelligence. Common computer applications: databases, simulations. Implications for society: computers and work, office automation, computer security. (Students work with various applications and software, but the aim is to discuss general concepts of computer applications, not to serve as a tutorial for specific packages.)

SYDE 351
University of Waterloo

Systems Models 1
Introduction to systems modelling and analysis. Graph theoretic models and formulation of system equations. State space formulation and solution. Time and frequency domain solutions. Application to engineering systems.

GENE 121
University of Waterloo

Digital Computation
Introduction to electronic digital computers, hardware and software organization, examples of efficient numerical algorithms for basic scientific computations. The language of instruction will be C and C++.

University of Technology, Sydney

Electronics and Circuits
The main objective of this subject is to familiarize students with common electronic devices and their applications. By the end of the subject, students should have acquired reasonable proficiency in the analysis of basic electronic circuits and be able to build and test circuits in the laboratory. Particular emphasis is placed on the practical, hands-on aspect of electronics to provide a solid foundation of working knowledge for all of the basic electronic devices and common electronic circuits. Laboratory work is a significant proportion of in-class delivery so as to make students proficient in circuit construction, testing, troubleshooting and to give them a sound knowledge of the use of test instruments. Another objective is to show that practical electronic applications are relevant to other engineering and technical disciplines and may often be placed within a wider social or commercial context. Topics covered in the subject include:

  • Theoretical material - basic concepts; DC circuits; AC circuits; semiconductors; semiconductor devices; power supply; bipolar and field effect transistor amplifiers; frequency response of amplifiers; introduction to operational amplifiers and their applications
  • Practical material - device labelling (resistor colour codes, etc.); basics of electrical measurements, understanding of instrument accuracy, source loading; CRO, multimeter, function generator and other lab instruments; power supply fundamentals, floating outputs and earth; circuit construction and systematic layout from circuit diagrams, and deriving a circuit diagram from a physical circuit; and fault finding.