Welcome to COGS 118A, Fall 2024.
The purpose of COGS 118A is to teach you the fundamentals as well as hands-on skills in machine learning, in particular supervised learning techniques. We will be using Python as our programming language exclusively. You are strongly encouraged to write programs using Jupyter Notebook (http://jupyter.org/). Installing the Anaconda (https://www.anaconda.com/download) on your side can save you a lot of trouble in getting everything setup. In the past, we allowed MATLAB as well but with the explosive development in big data and machine learning, building systems in Python becomes increasingly important in the modern data analysis world.
The main challenge of this class is threefold: (1) understanding the data representation; (2) understanding the mathematical/statistical formulations and connect them with your data and applications; (3) turning mathematical formulations into real implementations by writing the code (calling the right packages and libraries) and understanding the results. Therefore, having a good grasp of the basics about linear algebra and probability is essential, which has been covered in your pre-reqs and will continuously be strengthened throughout the quarter.