Alex Shum bio photo

Alex Shum

Data Scientist at Apple.

Twitter LinkedIn Github Stackoverflow

A list of Stat/Math/CS courses

Spring 2015 Courses:

STAT 601 STAT 602 COM S 535

Courses taken previously at Iowa State University.


STAT 500. Statistical Methods I.
Analysis of data from designed experiments and observational studies. Randomization-based inference; inference on group means; nonparametric bootstrap; pairing/blocking and other uses of restricted randomization. Use of linear models to analyze data; least squares estimation; estimability; sampling distributions of estimators; general linear tests; inference for parameters and contrasts. Model assessment and diagnostics; remedial measures; alternative approaches based on ranks.

STAT 503. Exploratory Methods and Data Mining.
Approaches to finding the unexpected in data; pattern recognition, classification, association rules, graphical methods, classical and computer-intensive statistical techniques, and problem solving. Emphasis is on data-centered, non-inferential statistics for large or high-dimensional data, topical problems, and building report writing skills.

STAT 511. Statistical Methods II.
Model selection and collinearity in linear regression. Likelihood analysis for general models and models with non-normal random components; linear model results in the context of likelihood; linear mixed models and their application; estimation, inference, and prediction. Computational issues in iterative algorithms; expectation-,maximization algorithm and its use in mixed models. Case studies of applications including problem formulation, exploratory analysis, model development, estimation and inference, and model assessment.

STAT 512. Design of Experiments.
Basic techniques of experimental design developed in the context of the general linear model; completely randomized, randomized complete block, and Latin Square designs; factorial experiments, confounding, fractional replication; split-plot and incomplete block designs.

STAT 520. Statistical Methods III.
Nonlinear regression; generalized least squares; asymptotic inference. Generalized linear models; exponential dispersion families; maximum likelihood and inference. Designing Monte Carlo studies; bootstrap; cross-validation. Fundamentals of Bayesian analysis; data models, priors and posteriors; posterior prediction; credible intervals; Bayes Factors; types of priors; simulation of posteriors; introduction to hierarchical models and Markov Chain Monte Carlo methods.

STAT 542. Theory of Probability and Statistics I.
Sample spaces, basic probability results, conditional probability. Random variables, univariate distributions, moment generating functions. Joint distributions, conditional distributions and independence, correlation and covariance. Probability laws and transformations. Introduction to the multivariate normal distribution. Sampling distributions, normal theory, sums and order statistics. Convergence concepts, the law of large numbers, the central limit theorem and delta method. Basics of stochastic simulation.

STAT 543. Theory of Probability and Statistics II.
Point estimation including method of moments, maximum likelihood and Bayes. Properties of point estimators, mean squared error, unbiasedness, consistency, loss functions. Large sample properties of maximum likelihood estimators. Exponential families, sufficiency, completeness, ancilarity, Basu’s theorem. Hypothesis tests, Neyman-Pearson lemma, uniformly most powerful tests, likelihood ratio tests, Bayes tests. Interval estimation, inverting tests, pivotal quantities. Nonparametric theory, bootstrap.

STAT 579. An Introduction to R.
An introduction to the logic of programming, numerical algorithms, and graphics. The R statistical programming environment will be used to demonstrate how data can be stored, manipulated, plotted, and analyzed using both built-in functions and user extensions. Concepts of modularization, looping, vectorization, conditional execution, and function construction will be emphasized.

STAT 580. Statistical Computing.
Introduction to scientific computing for statistics using tools and concepts in R: programming tools, modern programming methodologies, modularization, design of statistical algorithms. Introduction to C programming for efficiency; interfacing R with C. Building statistical libraries. Use of algorithms in modern subroutine packages, optimization and integration. Implementation of simulation methods; inversion of probability integral transform, rejection sampling, importance sampling. Monte Carlo integration.

STAT 585. Data Technologies for Statistical Analysis.
Introduction to computational methods for data analysis. Accessing and managing data formats: flat files, databases, web technologies based on mark-up languages (SML, KML, HTML), netCDF. Elements of text processing: regular expressions for cleaning data. Working with massive data, handling missing data, scaled computing. Efficient programming, reproducible code.

STAT 599. Creative Component.

Computer Science

COM S 228. Introduction to Data Structures.
An object-oriented approach to data structures and algorithms. Object-oriented analysis, design, and programming, with emphasis on data abstraction, inheritance and subtype polymorphism. Abstract data type specification and correctness. Collections and associated algorithms, such as stacks, queues, lists, trees. Searching and sorting algorithms. Graphs. Data on secondary storage. Analysis of algoritms. Emphasis on object-oriented design, writing and documenting medium-sized programs.

COM S 311. Design and Analysis of Algorithms.
Basic techniques for design and analysis of efficient algorithms. Sorting, searching, graph algorithms, computational geometry, string processing and NP-completeness. Design techniques such as dynamic programming and the greedy method. Asymptotic, worst-case, average-case and amortized analyses. Data structures including heaps, hash tables, binary search trees and red-black trees. Programming projects.

COM S 511. Design and Analysis of Algorithms
A study of basic algorithm design and analysis techniques. Advanced data structures, amortized analysis and randomized algorithms. Applications to sorting, graphs, and geometry. NP-completeness and approximation algorithms.
COM S 572. Principles of Artificial Intelligence.
Specification, design, implementation, and selected applications of intelligent software agents and multi-agent systems. Computational models of intelligent behavior, including problem solving, knowledge representation, reasoning, planning, decision making, learning, perception, action, communication and interaction. Reactive, deliverative, rational, adaptive, learning and communicative agents. Artificial intelligence programming.
COM S 573. Machine Learning.
Algorithmic models of learning. Design, analysis, implementation and applications of learning algorithms. Learning of concepts, classification rules, functions, relations, grammars, probability distributions, value functions, models, skills, behaviors and programs. Agents that learn from observation, examples, instruction, induction, deduction, reinforcement and interaction. Computational learning theory. Data mining and knowledge discovery using artificial neural networks, support vector machines, decision trees, Bayesian networks, association rules, dimensionality reduction, feature selection and visualization. Learning from heterogeneous, distributed, dynamic data and knowledge sources. Learning in multi-agent systems. Selected applications in automated knowledge acquisition, pattern recognition, program synthesis, bioinformatics and Internet-based information systems. Oral and written reports.

Courses taken previously at University of Hawaii.


MATH 301 Introduction to Discrete Mathematics

MATH 302 Introduction to Differential Equations I

MATH 311 Introduction to Linear Algebra

MATH 321 Introduction to Advanced Mathematics

MATH 331 Introduction to Real Analysis

MATH 371 Elementary Probability Theory

MATH 407 Numerical Analysis I

MATH 408 Numerical Analysis II

MATH 412 Introduction to Abstract Algebra I

MATH 431 Principles of Analysis I

MATH 432 Principles of Analysis II

MATH 471 Probability

MATH 472 Statistical Inference

Computer Science

ICS 314 Software Engineering I
System specification, modeling and analysis, prototyping, hierarchal design, program design methods, cost estimation, project management, computer-aided software design. Team-oriented software-design project.

ICS 663 Pattern Recognition
Nature of the problem in pattern recognition and clustering; explanation of various algorithms.