You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ML-For-Beginners/translations/uk/1-Introduction/4-techniques-of-ML
localizeflow[bot] 6a29b8049f
chore(i18n): sync translations with latest source changes (chunk 1/1, 12 changes)
4 months ago
..
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 12 changes) 4 months ago
assignment.md chore(i18n): sync translations with latest source changes (chunk 1/1, 300 changes) 7 months ago

README.md

Техніки машинного навчання

Процес створення, використання та підтримки моделей машинного навчання та даних, які вони використовують, дуже відрізняється від багатьох інших робочих процесів розробки. У цьому уроці ми розкриємо цей процес і окреслимо основні техніки, які вам потрібно знати. Ви:

  • Зрозумієте процеси, що лежать в основі машинного навчання на високому рівні.
  • Дослідите базові поняття, такі як «моделі», «прогнози» та «навчальні дані».

Опитування перед лекцією

ML for beginners - Techniques of Machine Learning

🎥 Натисніть на зображення вище для перегляду короткого відео, яке розбирає цей урок.

Вступ

На високому рівні миттєва створення процесів машинного навчання (ML) складається з кількох кроків:

  1. Визначте питання. Більшість процесів ML починаються з запитання, на яке не можна відповісти простою умовною програмою або системою правил. Ці питання часто пов’язані з прогнозами на базі зібраних даних.
  2. Збір та підготовка даних. Щоб відповісти на ваше питання, потрібні дані. Якість і, іноді, кількість ваших даних визначать, наскільки добре ви зможете відповісти на початкове питання. Візуалізація даних є важливим аспектом цього етапу. Цей етап також включає розподіл даних на навчальну та тестову групи для побудови моделі.
  3. Вибір методу навчання. Залежно від вашого питання та характеру даних, потрібно вибрати, як ви хочете навчати модель, щоб найкраще відобразити ваші дані та робити точні прогнози. Це частина процесу ML, яка вимагає спеціалізованих знань і, часто, значних експериментів.
  4. Навчання моделі. Використовуючи навчальні дані, ви застосуєте різні алгоритми для навчання моделі розпізнавати закономірності в даних. Модель може використовувати внутрішні ваги, які можна налаштовувати, щоб акцентувати певні частини даних для покращення моделі.
  5. Оцінка моделі. Ви використовуєте ще не бачені раніше дані (тестові), щоб перевірити, як працює модель.
  6. Налаштування параметрів. На основі продуктивності моделі ви можете повторити процес із різними параметрами або змінними, які керують поведінкою алгоритмів навчання.
  7. Прогнозування. Використовуйте нові вхідні дані, щоб перевірити точність вашої моделі.

Яке питання ставити

Комп’ютери особливо добре виявляють приховані закономірності в даних. Ця корисність дуже цінна для дослідників, які мають питання про певну галузь, на які не можна легко відповісти, створивши систему умовних правил. Для прикладу, в актуарних завданнях, дата-сайєнтист міг би виготовити ручні правила щодо смертності курців на відміну від некурців.

Однак, коли до рівняння додається багато інших змінних, модель ML може бути ефективнішою для прогнозування майбутніх показників смертності на основі минулої медичної історії. Веселіший приклад — прогнозування погоди на квітень для певного місця з урахуванням широти, довготи, зміни клімату, близькості до океану, закономірностей струменевого течії тощо.

Цей презентаційний матеріал про погодні моделі пропонує історичний погляд на використання ML у погодному аналізі.

Завдання перед побудовою

Перед тим, як почати будувати модель, потрібно виконати кілька завдань. Щоб перевірити своє питання та сформувати гіпотезу на основі прогнозів моделі, потрібно визначити та налаштувати кілька елементів.

Дані

Щоб із певною впевненістю відповісти на ваше питання, потрібна достатня кількість відповідних даних. На цьому етапі потрібно зробити дві речі:

  • Зібрати дані. Пам’ятайте про попередній урок щодо справедливості в аналізі даних — збирайте дані ретельно. Усвідомлюйте джерела цих даних, існуючі упередження та документуйте походження.
  • Підготувати дані. Процес підготовки даних складається з кількох кроків. Можливо, потрібно об’єднати та нормалізувати дані, якщо вони походять з різних джерел. Ви можете покращити якість і кількість даних різними методами, наприклад, перетворювати рядки у числа (як у Кластеризації). Можна також генерувати нові дані на основі оригіналу (як у Класифікації). Можна очищувати та редагувати дані (як ми робитимемо перед уроком Web App). Нарешті, можливо, потрібно їх перемішати або рандомізувати залежно від вашої техніки навчання.

Після збору та обробки даних приділіть час, щоб оцінити, чи їх форма дозволить вам відповісти на поставлене питання. Можливо, дані не будуть відповідними для вашої задачі, як ми дізнаємося у наших уроках із Кластеризації!

Ознаки та ціль

Ознака — це вимірювана властивість ваших даних. У багатьох наборах даних вона виражена у вигляді заголовка стовпця, наприклад 'дата', 'розмір' або 'колір'. Ваша змінна ознаки, зазвичай позначена X в коді, — це вхідна змінна, яка використовується для навчання моделі.

Ціль — це те, що ви намагаєтеся спрогнозувати. Ціль, зазвичай позначена y у коді, — це відповідь на питання, яке ви ставите своїм даним: у грудні, який колір гарбузів буде найдешевший? в Сан-Франциско, які райони матимуть найкращу ціну на нерухомість? Іноді ціль також називають атрибутом мітки.

Вибір змінної ознаки

🎓 Вибір ознак та вилучення ознак Як зрозуміти, яку змінну обрати для побудови моделі? Ймовірно, ви пройдете процес вибору або вилучення ознак, щоб вибрати правильні змінні для максимально ефективної моделі. Проте це не те саме: "Вилучення ознак створює нові ознаки з функцій початкових ознак, тоді як вибір ознак повертає підмножину початкових ознак." (джерело)

Візуалізуйте свої дані

Важливим інструментом дата-сайєнтиста є можливість візуалізації даних за допомогою чудових бібліотек, таких як Seaborn або MatPlotLib. Відображення даних у вигляді графіків може допомогти виявити приховані кореляції, які можна використати. Візуалізації також можуть допомогти виявити упередженість або дисбаланс у даних (як ми бачимо у Класифікації).

Розділіть ваш набір даних

Перед навчанням вам потрібно розділити набір даних на дві чи більше частин нерівного розміру, які при цьому добре відображають дані.

  • Навчання. Цю частину даних використовують для навчання моделі. Вона становить більшість оригінального набору.
  • Тестування. Тестовий набір — це незалежна група даних, часто отримана з оригіналу, яку використовують для перевірки продуктивності побудованої моделі.
  • Валідація. Валідаційний набір — це менша незалежна група прикладів, яку використовують для налаштування гіперпараметрів або архітектури моделі задля її покращення. Залежно від розміру даних та поставленого питання, третій набір може бути не потрібен (як ми зазначаємо у Прогнозуванні часових рядів).

Побудова моделі

Використовуючи навчальні дані, ваша мета — побудувати модель, або статистичне уявлення ваших даних, застосовуючи різні алгоритми для тренування її. Навчання моделі дає їй змогу аналізувати дані та робити припущення про виявлені закономірності, підтверджує їх та приймає або відхиляє.

Визначте метод навчання

Залежно від вашого питання та природи даних, ви оберете метод для навчання. Переглядаючи документацію Scikit-learn - яку ми використовуємо в цьому курсі - ви знайдете багато способів навчання моделей. Залежно від вашого досвіду, можливо, доведеться спробувати кілька різних методів, щоб побудувати найкращу модель. Зазвичай дата-сайєнтисти проходять процес оцінки якості моделі, подаючи їй нові дані, оцінюючи точність, упередженість та інші проблеми, що знижують якість, і вибирають найбільш відповідний метод навчання.

Навчання моделі

Маючи навчальні дані, ви готові 'натренувати' модель. Ви побачите у багатьох ML бібліотеках код 'model.fit' — саме в цей момент передаються значення змінної ознаки масивом (зазвичай 'X') та цільової змінної (зазвичай 'y').

Оцінка моделі

Після завершення навчання (це може зайняти багато ітерацій, або 'епох', для великої моделі) ви зможете оцінити якість моделі, використавши тестові дані для вимірювання її продуктивності. Ці дані — підмножина оригінальних, які модель раніше не обробляла. Ви можете вивести таблицю з метриками щодо якості моделі.

🎓 Підгонка моделі

У контексті машинного навчання підгонка моделі означає точність функції моделі при спробі аналізувати незнайомі для неї дані.

🎓 Недонавчання і перенавчання — це поширені проблеми, які погіршують якість моделі: модель або погано навчається, або занадто добре. Це призводить до дуже точних або, навпаки, надто загальних прогнозів щодо тренувальних даних. Модель із перенавчанням занадто добре слідкує за деталями та шумом тренувальних даних. Модель із недонавчанням є неточною, бо вона не може ні точно проаналізувати тренувальні, ні нові дані.

overfitting model

Інфографіка від Jen Looper

Налаштування параметрів

Після початкового навчання спостерігайте за якістю моделі і подумайте про можливість її покращення, налаштовуючи її «гіперпараметри». Детальніше про цей процес читайте у документації.

Прогнозування

Ось момент, коли ви можете використати абсолютно нові дані для перевірки точності вашої моделі. У прикладному середовищі ML, коли ви створюєте веб-ресурси для використання моделі в продакшені, цей процес може означати збір вводу користувача (наприклад, натискання кнопки) для встановлення змінної і надсилання її в модель для висновку або оцінки.

У цих уроках ви дізнаєтеся, як використати ці кроки для підготовки, побудови, тестування, оцінки та прогнозування — всі дії, притаманні дата-сайєнтисту, і не тільки, у вашій подорожі до становлення «повноцінним» ML-інженером.


🚀Виклик

Намалюйте схему кроків практикуючого ML-фахівця. Де ви зараз у цьому процесі? Де, на вашу думку, можуть виникнути труднощі? Що вам здається легким?

Опитування після лекції

Огляд та самостійне вивчення

Пошукайте в інтернеті інтерв’ю з дата-сайєнтистами, які говорять про свою щоденну роботу. Ось одне.

Завдання

Інтерв’ю з дата-сайєнтистом


Відмова від відповідальності: Цей документ було перекладено за допомогою сервісу штучного інтелекту Co-op Translator. Хоч ми й прагнемо до точності, будь ласка, зверніть увагу, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для важливої інформації рекомендується звертатися до професійного людського перекладу. Ми не несемо відповідальності за будь-які непорозуміння або неправильне тлумачення, що виникли внаслідок використання цього перекладу.