Class Central. Computer Vision. Information Theory. Machine Learning. Computer Security. Game Theory. Computer Science 101. Human-Computer Interaction. Cryptography. Design and Analysis of Algorithms I. About the Course In this course you will learn several fundamental principles of algorithm design.
You'll learn the divide-and-conquer design paradigm, with applications to fast sorting, searching, and multiplication. You'll learn several blazingly fast primitives for computing on graphs, such as how to compute connectivity information and shortest paths. Finally, we'll study how allowing the computer to "flip coins" can lead to elegant and practical algorithms and data structures. Probabilistic Graphical Models. What are Probabilistic Graphical Models?
Uncertainty is unavoidable in real-world applications: we can almost never predict with certainty what will happen in the future, and even in the present and the past, many important aspects of the world are not observed with certainty. Probability theory gives us the basic foundation to model our beliefs about the different possible states of the world, and to update these beliefs as new evidence is obtained. These beliefs can be combined with individual preferences to help guide our actions, and even in selecting which observations to make. Software Engineering for Software as a Service. Natural Language Processing.