Бесплатный курс от сообщества The Rolling Scopes.
Онлайн курс «Введение в машинное обучение»
Курс предназначен для разработчиков, которые хотят изучить основы машинного обучения и анализа данных.
Начало занятий: 7 февраля 2022
Бесплатное обучение
В RS School работает принцип "Pay it forward". Мы бесплатно делимся с учащимися своими знаниями сейчас, надеясь, что в будущем они вернутся к нам в качестве менторов и точно так же передадут свои знания следующему поколению студентов.
Для кого этот курс?
В RS School может учиться каждый, независимо от возраста, профессиональной занятости и места жительства. Однако для успешного обучения необходимо иметь базовые знания.
Чат
Открытый чат для абитуриентов и учащихся.
Сертификат
Сертификат выдается всем успешно закончившим обучение.
Расписание лекций
По понедельникам с 19:00 до 21:00
Формат обучения: вебинары.
Материалы
Документация школы - https://docs.rs.school
Все материалы находятся в открытом доступе на YouTube.
Срок обучения: 3 месяца
Вводный вебинар состоится 7 февраля 2022.
Запись вебинара будет размещена на YouTube канале школы.
Описание курса
Машинное обучение — это необъятный класс методов решения задач на компьютерах без их явного программирования. Машинное обучение сегодня настолько распространено, что вы, вероятно, используете его результаты десятки раз в день, даже не подозревая об этом. За последнее десятилетие машинное обучение дало нам беспилотные автомобили, практическое распознавание речи, эффективный поиск в интернете... и это только вершина айсберга!
Задача этого курса — познакомить вас с базовыми алгоритмами машинного обучения, а также с библиотеками и сопутствующим программным обеспечением для его примененения на практике. Почти каждый модуль будет содержать задачу, которую вам необходимо будет сформулировать в терминах машинного обучения, а затем и решить. Мы хотим, чтобы после прохождения курса на основании своего опыта вы сформировали для себя понимание того, что все-таки из себя представляет машинное обучение, при столь большом объеме разной и зачастую противоречивой информации.
Содержание курса
В курсе будут освещены следующие темы:
- Pandas data manipulations.
- Exploratory Data Analysis.
- Supervised / unsupervised learning overview. Regression problem. Linear models.
- Overfitting and regularization.
- Classification problem. Linear models. kNN.
- Feature engineering and selection.
- Trees and ensembles.
- Clustering and dimensionality reduction.
- Model evaluation and selection. Capstone project.
Необходимые базовые знания
Prerequisites
Although this is an introductory course we assume that you have some basic Python knowledge and you can figure out the environment settings yourself. We accept all graded assignments with a Python 3.8+ code in Jupyter Notebook.
Environment and
additional libraries
You need to install Anaconda which means you are getting a version of Python 3.8 automatically and then follow the Jupyter Notebook quick guide to make sure that everything works correctly. If you are a more advanced user with Python already installed and prefer to manage your packages manually, you can just use pip. Answers to questions like "What is Jupyter Notebook?" or "How to use it?" can be found in this short intro guide (read first chapter up to "Example Analysis").
If you don't have enough computer power to complete the steps above or something just went wrong and you are stuck, feel free to use Google Colab! It has mostly everything pre-installed and all you need for using it is your web browser. Check out a quick start guide or a detailed overview.
Python
We assume that you have solid programming skills and experience with any OO or functional language. Hence learning Python should not be a problem for you.
If you are already familiar with Python language you can test whether your knowledge is enough to dive into the course. Don't worry if you cannot complete all of the tasks provided, fully completing the first part (Fundamentals, Strings, Arrays) will be good enough for start.
Tasks for self-assessment
If the Python is a new language for you please refer to a quick start guide and then try to do the first few tasks. Later on when you need a deeper understanding of language concepts, please refer to Learning Python by Mark Lutz chapters 4, 5, 7, 8, 12, 13, 14, 27, 29.
You also should take a look at the Numpy library which we are going to work closely with.
Linear Algebra
If you had a relevant course in University or you studied Linear Algebra yourself, you may freshen up your knowledge by simply going through this cheatsheet. If those concepts are unfamiliar to you, you may take a look at Linear Algebra for ML blog posts including all of the chapters in chronological order. If you are a fan of video podcasts, please refer to this excellent Essence of linear algebra series.
Calculus
You don't need much of a Calculus to feel confident enough with the lectures and assignments on the course. However, if the concepts of derivative and gradient cause you some questions, please take a look at Calculus for ML blog posts. You need only the first seven posts up to The Multivariable Chain Rule. Alternatively, you may watch the first four videos of Essence of calculus up to Visualizing the chain rule and product rule.
Probability and statistics
You may refresh your knowledge by going through this Probability for ML cheatsheet. If some concepts are not clear, please refer to Probability and Statistics for ML. You need only the first eight posts of Basic Statistics and Probability chapter up to Normal Distribution and Gaussian Random Variables.