Всички уроци

Курс

ИИ за 9. клас: Python и машинно обучение

Използвай Python, NumPy и pandas, за да обучиш и оцениш класически модели за машинно обучение.

Минавай уроците поред. Накрая можеш да пишеш на Python със структури от данни и функции за повторна употреба. Можеш да събираш вектори, да смяташ вероятности и да намираш средната стойност и стандартното отклонение. Можеш да заредиш, изчистиш и начертаеш таблица с NumPy и pandas. Можеш да напаснеш права към данни, да обучиш класификатори с логистична регресия, дърво на решенията и k-NN и да групираш данни с 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Контролирано и неконтролираноРазличи контролирани от неконтролирани задачи.
    • Кажи, че контролираното обучение използва етикети.
    • Кажи, че неконтролираното обучение намира структура без етикети.
    • Разпредели десет задачи във всяка група.
  3. 15Потокът на MLИзброи стъпките от данните до работещ модел.
    • Подреди стъпките: въпрос, данни, признаци, обучение, оценка, внедряване.
    • Кажи какво може да се обърка на всяка стъпка.
    • Кажи защо стъпките се повтарят.
  4. 16Сравни задачи на MLСвържи проблеми с регресия, класификация или клъстеризация.
    • Кажи какво предсказва всяка задача.
    • Свържи десет проблема със задача.
    • Препиши един проблем като друга задача.

Регресия

  1. 17Линейна регресияНапасни права към данни.
    • Обясни наклона и отреза.
    • Напасни права със scikit-learn.
    • Начертай правата върху данните.
  2. 18ПризнациИзбери признаци и промени мащаба им.
    • Използвай повече от един признак.
    • Постави признаците в един и същ обхват.
    • Кодирай категориален признак.
  3. 19ГрешкаИзмери грешката със средната квадратична грешка.
    • Сметни остатъците.
    • Сметни средната квадратична грешка и средната абсолютна грешка.
    • Начертай остатъците, за да намериш шаблон.
  4. 20Предскажи числаОбучи регресионен модел и предскажи нови стойности.
    • Обучи върху една част от данните.
    • Предскажи останалото.
    • Кажи грешката в истински единици.

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

  1. 21Логистична регресияОбучи класификатор с логистична регресия.
    • Обясни как превръща оценка в вероятност.
    • Обучи го и предскажи вероятности.
    • Промени прага и сравни.
  2. 22Дървета на решениятаОбучи дърво на решенията и прочети разделянията му.
    • Обучи дърво.
    • Начертай разделянията му и ги прочети.
    • Ограничи дълбочината му и сравни оценките.
  3. 23k най-близки съседиКласифицирай с k-NN и избери k.
    • Обясни как гласува k-NN.
    • Пробвай няколко стойности на k.
    • Кажи защо мащабът е важен за k-NN.
  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Предсказване на условията на околната средаПредстави резултати, граници и следващи стъпки.
    • Покажи резултатите и диаграмите си.
    • Обясни границите на модела.
    • Предложи следващи стъпки.