Neural Networks: Modern Intro

This course will focus on modern, practical methods for deep learning with neural networks. The course will begin with a description of simple classifiers such as perceptrons and logistic regression classifiers, and move on to standard neural networks, convolutional neural networks, some elements of recurrent neural networks, and transformers. The emphasis will be on understanding the basics and on practical application more than on theory. Many applications will be in computer vision, but we will make an effort to cover some natural language processing (NLP) applications as well.

Computer Vision

People are able to infer the characteristics of a scene or object from an image of it. In this course, we will study what is involved in building artificial systems which try to infer such characteristics from an image. Topics include: Basics of image formation - the effect of geometry, viewpoint, lighting and albedo on image formation. Basic image operations such as filtering, convolution and correlation. Frequency representations of images. The importance of scale in images. Measurements of image properties such as color, texture, appearance and shape.

Secure Distributed Systems

This is a class devoted to the study of securing distributed systems, with blockchain-based cryptocurrencies serving as our real platform of interest. We'll start with the fundamentals of Lamport's, Fischer's, and Douceur's results that fence-in all consensus system, and discuss Byzantine fault tolerance. We'll also look at the efficiency of the network architectures for peer-to-peer;distributed system communication and attacks on their security, such as denial of service attacks. And we'll review relevant applied cryptography such as elliptic curves.

Computer Networking

This course covers advanced fundamental principles of computer networks, studying foundational material in the field. Topics include advanced network architecture, network algorithmics, network control, network measurement, and wireless networks. The goal of this course is to teach networking fundamentals/techniques that will be useful for years to come. Undergraduate background in networking, algorithms, probability theory, and optimization will be helpful.

Information Retrieval

Basic and advanced techniques for text-based information systems, including retrieval models, indexing and text representation, browsing and query formulation, data-intensive computing approaches, evaluation, and issues surrounding implementation. The course will include a substantial project such as implementation of major elements of search engines and applications.

Advanced Algorithms

The design and analysis of efficient algorithms for important computational problems. Paradigms for algorithm design including Divide and Conquer, Greedy Algorithms, Dynamic Programming; and, the use of Randomness and Parallelism in algorithms. Algorithms for Sorting and Searching, Graph Algorithms, Approximation Algorithms for NP Complete Problems, and others. Prerequisites: The mathematical maturity expected of incoming Computer Science graduate students, knowledge of algorithms at the level of COMPSCI 311.
Subscribe to