Урок 1/12
Кратко:
- Знакомство с машинным обучением и его схемой процесса.
- Создание первой модели машинного обучения (МО).
- Решение задачи регрессии.
- Подготовка данных для обучения модели.
- Обучение модели и получение предсказаний.
- Проверка качества модели машинного обучения.
- Десять уроков, на которые уйдет от 30 минут до часа.
- Работа с данными от агентства недвижимости.
- Создание модели для предсказания цены квартир.
- Отличный старт в области машинного обучения
Урок 2/12
Кратко:
- Регрессия - это задача прогнозирования непрерывных количественных признаков.
- Регрессия используется для прогнозирования выручки по объему рекламы.
- Регрессия позволяет прогнозировать значения, которые могут быть дробными или категориальными.
- Регрессия не подходит для задач классификации, где алгоритм выдает одну из заранее запрограммированных категорий.
- Регрессия применяется в бизнесе для планирования и прогнозирования финансовых показателей.
- Регрессия является важной задачей в машинном обучении и науке
Урок 3/12
Кратко:
- Оценивать квартиры с помощью задачи регрессии
- Предобработка данных: удаление дубликатов, устранение пропусков и аномалий
- Заказчик предоставил датасет real_estate.csv с характеристиками квартир
- Основные характеристики: total_area, living_area, ceil_height, rooms_number, city_center_distance, years_after_repair, price
- Задачи: вывод первых десяти строк датафрейма, поиск пропусков, удаление пропусков, проверка размера датафрейма, описательные статистики, удаление аномалий, удаление дубликатов
- Выводы: устранение пропусков, дубликатов и аномалий важно для успешной предобработки данных
Выводы¶
В этом уроке вы освежили в памяти, как предобработать данные. Пропуски, дубликаты и аномалии ещё никому не принесли пользы. Но это ещё не вся предварительная работа. В следующем уроке вы покажете компьютеру разницу между целевым и другими признаками на уровне кода.
Урок 4/12
Кратко:
- Объект и его признаки - важнейшие понятия в области машинного обучения.
- Все типы данных в машинном обучении сводятся к таблицам, где строки - объекты, а столбцы - признаки.
- Признаки объекта разделены на целевые (которые нужно спрогнозировать) и входные (прогнозирующие).
- Для поиска зависимости целевых признаков от входных нужно задать две разные переменные: X для входных признаков и y для целевого признака.
- Задача 1: очистить данные от аномалий, пропусков и дубликатов, сохранить входные признаки в X, а целевой - в y. Вывести первые пятёрки объектов и значений их признаков: total_area, living_area, ceil_height, rooms_number, city_center_distance, years_after_repair, price.
- Для работы с признаковым описанием в коде нужно разделять входные и целевые признаки и сохранять их в разные переменные
Урок 5/12
Кратко:
- Библиотека scikit-learn помогает подготовить данные к машинному обучению.
- scikit-learn - одна из самых популярных библиотек в машинном обучении и анализе данных.
- С помощью scikit-learn можно выполнить предобработку данных, решить задачи регрессии, классификации и кластеризации, подобрать модель МО под задачу.
- scikit-learn существует с 2007 года, поэтому у неё очень много версий.
- Если использовать методы не своей версии, код упадёт с ошибкой.
- Проверить, с какой версией библиотеки вы работаете, можно с помощью атрибута version
Урок 6/12,
Кратко:
- Модель нужно протестировать, чтобы убедиться, что она работает хорошо.
- Датасет от заказчика разбивают на тренировочную, валидационную и тестовую выборки.
- Валидационная выборка нужна для дополнительной настройки модели.
- Тестовая выборка нужна для окончательного тестирования модели.
- Обычно датасет делят на тренировочную, валидационную и тестовую выборки в соотношении 3:1:1.
- В библиотеке scikit-learn есть функция для разделения данных - train_test_split.
- Специалисты выделяют тренировочную, валидационную и тестовую выборки данных
Урок 7/12
Кратко:
- Линейная регрессия - простая модель машинного обучения, основанная на линейной функции.
- Модель линейной регрессии находит линейные зависимости между целевыми и входными признаками.
- Линейная регрессия может быть создана с использованием библиотеки scikit-learn.
- Для создания модели линейной регрессии необходимо импортировать класс LinearRegression и сохранить модель в переменной.
- Обучение модели линейной регрессии включает разделение данных на тренировочную и тестовую выборки, обучение модели с помощью метода fit() и проверку качества модели с помощью метода predict().
- Вывод результатов обучения и проверки качества модели может быть осуществлен с использованием переменных model_lr, X_train, y_train, X_test, y_test и predictions
Выводы
- Для обучения модели линейной регрессии в классе
LinearRegressionесть методfit(). Благодаря ему можно получить значения коэффициентов функции, которая отражает зависимость целевого признака от входных. - Чтобы получить предсказания линейной регрессии, используйте метод
predict(). - Поздравляем, вы обучили первую в жизни модель машинного обучения! Это большое дело, хоть результат пока неидеален. В следующем уроке вы узнаете, в чём была загвоздка.
Урок 8/12
Кратко:
- Линейная регрессия основана на линейной функции вида y = w1x + w0.
- Метод наименьших квадратов используется для нахождения коэффициентов w0 и w1, чтобы минимизировать погрешность предсказания.
- Метод наименьших квадратов работает, если целевой признак линейно зависит от входных.
- В множественной регрессии функция имеет вид y = w1x1 + w2x2 + w0, а график функции - гиперплоскость в многомерном пространстве
Выводы
- Теперь вы знаете, по какому принципу линейная регрессия предсказывает
y. Чтобы подобрать коэффициенты функции, алгоритм использует метод наименьших квадратов. Это отлично работает, если целевой признак зависит от входных линейно. - Посмотрите на датасет из прошлого урока. Уже догадываетесь, почему в тот раз модель ошиблась в два раза? Пора отдохнуть — сохраним интригу до следующего урока.
Урок 9/12
Кратко:
- Линейная регрессия предсказывает значения целевого признака с минимальной погрешностью, но не всегда линейная зависимость очевидна.
- Диаграмма рассеяния - надежный способ проверить характер связи между признаками.
- Матрица корреляции также может быть использована для проверки линейной связи между признаками.
- Если между целевым и входными признаками есть четкая линейная зависимость, стоит использовать модель линейной регрессии.
- Проверить характер связи можно с помощью диаграммы рассеяния или матрицы корреляции
Выводы
- Модель линейной регрессии стоит использовать, если между целевым и входными признаками есть чёткая линейная зависимость.
- Проверить характер связи целевого и входных признаков можно с помощью диаграммы рассеяния или матрицы корреляции.
Урок 10/12
Кратко:
- В статье приведены примеры расчета MSE и RMSE для данных о шести квартирах. Для расчета MSE и RMSE можно использовать функцию
mean_squared_error()из библиотекиscikit-leaner
Выводы
- Эффективность моделей машинного обучения проверяют с помощью расчётных метрик.
- Одна из популярных метрик качества для регрессионных моделей — среднеквадратичная ошибка. Её часто называют MSE (от англ. Mean Squared Error). MSE получится, если разделить сумму квадратов ошибок на число объектов прогноза.
- Значение среднеквадратичной ошибки часто выглядит громоздко, поэтому его сложно интерпретировать. Для простоты специалисты по DS часто используют производную от MSE метрику — корень среднеквадратичной ошибки, или RMSE (от англ. Root Mean Squared Error).
Урок 11/12
Кратко:
- Анализ бизнес-задачи: определение цели и вида машинного обучения для бизнеса.
- Сбор данных: получение данных от заказчика или их самостоятельное сбор.
- Предобработка данных: удаление дубликатов, аномалий и пропусков.
- Исследовательский анализ данных: определение базовой модели машинного обучения.
- Подготовка данных к машинному обучению: разметка и деление на выборки.
- Обучение модели: обучение на тренировочной выборке данных.
- Тестирование модели: проверка результатов на тестовой выборке с использованием метрик качества.
- Интерпретация результатов: трактование метрик качества и презентация модели заказчику
Урок 12/12
Кратко:
- Поздравляем с первым видимым результатом в Data Science - готовой моделью!
- Теперь машинное обучение знакомо вам не понаслышке.
- Готовить данные для обучения модели МО.
- Обучать модель линейной регрессии.
- Проверять качество модели машинного обучения.
- Дальше вы займётесь линейной алгеброй.
Заключение
Поздравляем с первым видимым результатом в Data Science — готовой моделью! Теперь машинное обучение знакомо вам не понаслышке. Опыт обучения линейной регрессии позволит освоить более сложные модели, а пока можно подвести промежуточный итог.
Чему вы научились
- Готовить данные для обучения модели МО. Датасет нужно разделить на выборки: обучающую, валидационную и тестовую. Кроме того, каждую часть надо разбить ещё на две: одна должна быть с входными признаками, а другая — с целевыми.
- Обучать модель линейной регрессии. Теперь вы знаете, в каких случаях использовать эту модель и какие методы библиотеки scikit-learn нужны, чтобы научить её предсказывать целевые признаки.
- Проверять качество модели машинного обучения. Среднеквадратичная ошибка MSE и её корень RMSE — вот на что можно опереться в проверке качества модели МО.
Дальше вы займётесь линейной алгеброй. Это поможет освоить библиотеку numpy, которая использует низкоуровневые языки программирования и поэтому работает очень быстро. Большинство расчётов в машинном обучении сложные и тяжёлые, поэтому без линейной алгебры и numpy в нём никуда. Вдохновения и удачи!