Усі уроки

Курс

ШІ у 9 класі: Python і машинне навчання

Користуйся Python, NumPy і pandas, щоб навчати й оцінювати класичні моделі машинного навчання.

Проходь уроки по порядку. Наприкінці ти зможеш писати Python зі структурами даних і функціями для повторного використання. Ти зможеш додавати вектори, рахувати ймовірність і знаходити середнє та стандартне відхилення. Ти зможеш завантажувати, чистити таблицю й будувати графіки за допомогою NumPy і pandas. Ти зможеш підігнати пряму до даних, навчити класифікатори логістичної регресії, дерева рішень і k найближчих сусідів і групувати дані за допомогою k-means. Ти зможеш рахувати точність, влучність і повноту, помічати перенавчання, порівнювати модель із простою базою і показувати передбачення з набору даних про довкілля.

Як користуватися цими уроками

  • Почни з уроку, де написано Зроби це. Рядок під назвою зроби сам, тоді йди далі.
  • Спершу Ігри. Потім Перевірка. 8 із 10 правильно для заліку. Аркуші на папері. Відповіді внизу.
  • Кожен урок спирається на попередній. Записуй кожен дослід: що змінив, що вийшло і чому.
  • Уроки з кодом ідуть на Python у безкоштовному онлайн-зошиті. Бери лише ті інструменти ШІ, які дозволив учитель. Пояснюй код, який написав ШІ. Не клади особисті дані в набір, яким ділишся.

У кожному уроці є ігри, перевірка та аркуші.

0 із 36

Програмування на Python

  1. 1Повторення синтаксисуПиши Python зі змінними, умовами й циклами.
    • Використовуй змінні, типи й f-strings.
    • Пиши блоки if, for і while.
    • Прочитай traceback і виправ помилку.
  2. 2Структури данихВибирай структуру даних: список, кортеж, множину чи словник.
    • Використовуй кожну структуру даних для її найкращої роботи.
    • Пиши генератори списків і словників.
    • Вкладай структури, щоб зберігати записи.
  3. 3Функції та модуліПиши й тестуй функції для повторного використання.
    • Використовуй аргументи за замовчуванням та іменовані аргументи.
    • Пиши тести з assert.
    • Імпортуй свої функції з модуля.
  4. 4Скрипти для данихНапиши скрипт, який чистить текстовий файл.
    • Читай файл рядок за рядком.
    • Виправляй погані рядки й пропускай порожні.
    • Запиши чисті дані в новий файл.

Математика для машинного навчання

  1. 5ВекториДодавай вектори і знаходь відстань між точками.
    • Покажи точку даних як вектор.
    • Додавай вектори й множ їх на число.
    • Порахуй евклідову відстань і скалярний добуток.
  2. 6ЙмовірністьРахуй просту й умовну ймовірність.
    • Порахуй ймовірність події.
    • Порахуй умовну ймовірність за таблицею.
    • Змоделюй підкидання монети і звір відповідь.
  3. 7СтатистикаЗнаходи середнє, дисперсію і стандартне відхилення.
    • Порахуй кожне вручну і в коді.
    • Поясни, що показує стандартне відхилення.
    • Порівняй два набори даних за розкидом.
  4. 8Математичні дослідиПобудуй графік даних і опиши їхній розкид.
    • Побудуй гістограму.
    • Побудуй точковий графік.
    • Опиши центр, розкид і викиди.

Наука про дані

  1. 9NumPyРахуй одразу на цілих масивах з NumPy.
    • Створюй масиви і змінюй їхню форму.
    • Використовуй векторизовані операції замість циклів.
    • Бери елементи й зрізи масивів.
  2. 10pandasЗавантажуй, фільтруй і групуй таблицю з pandas.
    • Завантаж CSV у DataFrame.
    • Фільтруй рядки і вибирай стовпці.
    • Групуй дані й підбивай підсумок.
  3. 11Чищення данихПочисти дані: розберися з пропущеними значеннями і хибними типами.
    • Знайди пропущені значення.
    • Заповни або видали їх і поясни вибір.
    • Виправ хибні типи й повторювані рядки.
  4. 12ВізуалізаціяБудуй графіки, які відповідають на питання.
    • Вибери відповідний графік для питання.
    • Підпиши осі й додай заголовок.
    • Знайди оманливий графік і виправ його.

Основи машинного навчання

  1. 13Що таке машинне навчанняПоясни, як модель вчиться знаходити закономірність у даних.
    • Порівняй запис правил і навчання з даних.
    • Поясни, що таке модель, параметри й навчання.
    • Назви три справжні застосування машинного навчання.
  2. 14Навчання з учителем і без учителяВідрізняй навчання з учителем від навчання без учителя.
    • Скажи, що навчання з учителем використовує мітки.
    • Скажи, що навчання без учителя знаходить структуру без міток.
    • Розклади 10 завдань у ці дві групи.
  3. 15Кроки машинного навчанняПерелічи кроки від даних до робочої моделі.
    • Розстав кроки по порядку: питання, дані, ознаки, навчання, оцінка, запуск.
    • Скажи, що може піти не так на кожному кроці.
    • Скажи, чому кроки повторюються.
  4. 16Порівняй завдання машинного навчанняЗістав завдання з регресією, класифікацією або кластеризацією.
    • Скажи, що передбачає кожне завдання.
    • Зістав 10 завдань із типом завдання.
    • Перепиши одне завдання як інший тип.

Регресія

  1. 17Лінійна регресіяПіджени пряму до даних.
    • Поясни нахил і зсув.
    • Піджени пряму за допомогою scikit-learn.
    • Накресли пряму поверх даних.
  2. 18ОзнакиВибирай ознаки і приводь їх до одного масштабу.
    • Використовуй більше ніж одну ознаку.
    • Приведи ознаки до одного діапазону.
    • Закодуй категорійну ознаку.
  3. 19ПохибкаВимірюй похибку середньою квадратичною похибкою.
    • Порахуй залишки.
    • Порахуй середню квадратичну і середню абсолютну похибку.
    • Побудуй графік залишків і знайди закономірність.
  4. 20Передбачай числаНавчи модель регресії і передбач нові значення.
    • Навчи модель на одній частині даних.
    • Передбач решту.
    • Повідом похибку в справжніх одиницях.

Класифікація

  1. 21Логістична регресіяНавчи класифікатор логістичної регресії.
    • Поясни, як він перетворює бал на ймовірність.
    • Навчи його і передбач ймовірності.
    • Зміни поріг і порівняй.
  2. 22Дерева рішеньНавчи дерево рішень і прочитай його розбиття.
    • Навчи дерево.
    • Накресли його розбиття і прочитай їх.
    • Обмеж глибину і порівняй бали.
  3. 23k найближчих сусідівКласифікуй методом k найближчих сусідів і вибери k.
    • Поясни, як голосують k найближчих сусідів.
    • Спробуй кілька значень k.
    • Скажи, чому масштаб важливий для k найближчих сусідів.
  4. 24Навчи класифікаторПорівняй три класифікатори на одному наборі даних.
    • Навчи всі три на тому самому поділі.
    • Порівняй їхні бали.
    • Вибери один і поясни чому.

Навчання без учителя

  1. 25ПодібністьВиміряй, наскільки подібні два зразки.
    • Використовуй евклідову відстань.
    • Використовуй косинусну подібність.
    • Знайди найподібніші об'єкти в наборі даних.
  2. 26k-meansГрупуй дані кластеризацією k-means.
    • Пройди k-means вручну крок за кроком.
    • Запусти його в scikit-learn.
    • Побудуй графік кластерів.
  3. 27Вибір kМетодом ліктя вибери число кластерів.
    • Запусти k-means для кількох значень k.
    • Побудуй графік ліктя.
    • Переконайся, що кластери мають сенс.
  4. 28Групуй зразкиКластеризуй набір даних і опиши кожну групу.
    • Кластеризуй справжній набір даних.
    • Коротко опиши кожен кластер.
    • Дай кожному кластеру ім'я.

Оцінювання моделі

  1. 29Поділ на навчання і тестПоділи дані на навчання і тест і поясни навіщо.
    • Поділи дані за допомогою train_test_split.
    • Використовуй валідаційний набір, щоб налаштувати модель.
    • Використовуй крос-валідацію.
  2. 30Точність, влучність і повнотаРахуй точність, влучність і повноту.
    • Склади матрицю плутанини.
    • Порахуй кожну міру за нею.
    • Вибери міру, яка пасує до задачі.
  3. 31ПеренавчанняПомічай перенавчання, порівнюючи бали навчання і тесту.
    • Навчи модель, у якої є перенавчання.
    • Побудуй графік балів навчання і тесту.
    • Зменш перенавчання і порівняй.
  4. 32Проста базаПорівнюй модель із простою базою.
    • Зроби просту базу, яка завжди обирає найчастішу відповідь.
    • Порівняй свою модель із нею.
    • Поясни, коли модель не варто використовувати.

Проєкт машинного навчання

  1. 33Вибери набір данихВибери відкритий набір даних про довкілля і питання.
    • Знайди відкритий набір даних про погоду або якість повітря.
    • Напиши питання, на яке він може відповісти.
    • Вибери регресію або класифікацію.
  2. 34Підготуй і дослідиПочисти дані і побудуй графіки головних закономірностей.
    • Почисти дані.
    • Побудуй графіки трьох закономірностей.
    • Вибери ознаки.
  3. 35Навчи і порівняйНавчи дві моделі і порівняй їх із простою базою.
    • Навчи дві моделі.
    • Порівняй їх із простою базою.
    • Подивися, чи є перенавчання.
  4. 36Передбачення умов довкілляПокажи результати, межі й наступні кроки.
    • Покажи свої результати й графіки.
    • Поясни межі моделі.
    • Запропонуй наступні кроки.