ECS 132 PROBABILITY AND STATISTICAL MODELING FOR COMPUTER SCIENCE (4 units)
Lecture: 3 hours
Discussion: 1 hour
Univariate and multivariate distributions. Markov models. Sampling, estimation and model building. Regression analysis. Applications to data mining, networks, disk systems, security, software engineering and bioinformatics.
Prerequisites: (ECS 040 or ECS 034 or ECS 036B); ECS 050; MAT 021C; (MAT 022A or MAT 067)
Credit restrictions, cross listings: None
Summary of course contents
- Univariate and Multivariate Distributions
- Probability mass, density, and cumulative distribution functions
- Parametric families of distributions
- Expected value, variance, conditional expectation
- Applications of the univariate and multivariate Central Limit Theorem
- Probabilistic inequalities
- Markov chains
- Sampling, Estimation and Model Building
- Random samples, sampling distributions of estimators
- Methods of Moments and Maximum Likelihood
- Statistical inference
- Introduction to multivariate statistical models: regression and classification problems, principal components analysis
- The problem of overfitting; model assessment
- Computer science and engineering applications (interspersed with the above topics throughout the course)
- Data mining
- Network protocols, analysis of Web traffic
- Computer security
- Software engineering
- Computer architecture, operating systems, distributed systems
- Machine learning
The course includes moderately extensive programming, platform-independent, using the open-source programming language R or the MATLAB package.
Goals: Students will: (1) understand basic notions of discrete and continuous probability; (2) understand the philosophy behind basic methods of statistical inference, and the role that sampling distributions play in those methods; (3) be able to perform correct and meaningful statistical analyses of simple to moderate complexity; and (4) have a first-level understanding of Monte Carlo simulation.
Possible choices include
- K. Trivedi. Probability and Statistics with Reliability, Queuing, and Computer Science Applications. Wiley, New York, 2001.
- M. Mitzenmacher and E. Upfal. Probability and Computing: Randomized Algorithms and Probabilistic Analysis, Cambridge, 2005.
- N. Matloff. A Course in Probabilistic and Statistical Modeling in Computer Science. http://heather.cs.ucdavis.edu/~matloff/132/PLN
Moderately extensive programming, platform-independent, using the open-source programming language R or the MATLAB package.
ABET Category Content:
Engineering Science: 3 units
Engineering Design: 1 unit
Science & Engineering
Overlap: There is some topical overlap with MAT 135A and STA 131ABC, as well as with application-specific probability/statistics courses such as ECI 114, EEC 161, ECN 140. This course differs greatly in its collection of topics, its usage of computers, and especially in its computer science applications.
Instructors: I. Davidson, D. Ghosal, and N. Matloff
History: Reviewed 2018.9.7 (CSUGA): prerequisites updated to include new lower division ECS series courses. 2012.10.24 (N. Matloff): changed abbreviated title, catalog description, course contents. Initial course description prepared by N. Matloff (December 2007).
|1||X||an ability to apply knowledge of mathematics, science, computing, and engineering|
|2||X||an ability to design and conduct experiments, as well as to analyze and interpret data|
|3||an ability to design, implement, and evaluate a system, process, component, or program to meet desired needs, within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability|
|4||an ability to function on multi-disciplinary teams|
|5||an ability to identify, formulate, and solve computer science and enginequisites: Course 40; course 50 or Eering problems and define the computing requirements appropriate to their solutions|
|6||X||an understanding of professional, ethical, legal, security and social issues and responsibilities|
|7||an ability to communicate effectively with a range of audiences|
|8||the broad education necessary to understand the impact of computer science and engineering solutions in a global and societal context|
|9||a recognition of the need for, and an ability to engage in life-long learning|
|10||X||knowledge of contemporary issues|
|11||an ability to use current techniques, skills, and tools necessary for computing and engineering practice|
|12||X||an ability to apply mathematical foundations, algorithmic principles, and computer science and engineering theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices|
|13||an ability to apply design and development principles in the construction of software systems or computer systems of varying complexity|