Як нормалізувати та стандартизувати дані машинного навчання в Weka

Останнє оновлення 11 грудня 2019 року

Алгоритми машинного навчання роблять припущення щодо набору даних, який ви моделюєте.

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

У цій публікації ви дізнаєтесь, як можна масштабувати дані, щоб усі дані мали однаковий масштаб.

Прочитавши цю публікацію, ви дізнаєтесь:

  • Як нормалізувати числові атрибути між діапазоном від 0 до 1.
  • Як стандартизувати числові атрибути, щоб мати середнє значення та одиничну дисперсію 0.
  • Коли обирати нормалізацію чи стандартизацію.

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

Давайте розпочнемо.

  • Оновлення в березні/2018: Додано альтернативне посилання для завантаження набору даних, оскільки оригінал видалено.

Прогнозувати початок діабету

Набір даних, що використовується для цього прикладу, - це набір даних про діабет Pima Indians.

Це проблема класифікації, коли кожен екземпляр представляє медичні дані для одного пацієнта, і завдання полягає в тому, щоб передбачити, чи буде у пацієнта початок діабету протягом наступних п’яти років.

Це хороший набір даних для практики масштабування, оскільки 8 вхідних змінних мають різні шкали, такі як кількість випадків, коли пацієнтка була вагітною (preg), і розрахунок індексу маси тіла (маси) пацієнтів.

Завантажте набір даних і розмістіть його у своєму поточному робочому каталозі.

Ви також можете отримати доступ до цього набору даних у вашій установці Weka, у каталозі даних/у файлі, який називається diabetes.arff.

машинного

Weka Load Diabetes Dataset

Про фільтри даних у Weka

Weka пропонує фільтри для перетворення вашого набору даних. Найкращий спосіб дізнатись, які фільтри підтримуються, і пограти з ними у наборі даних - це використовувати Провідник Weka.

Панель "Фільтр" дозволяє вибрати фільтр.

Область фільтру Weka для вибору фільтрів даних

Фільтри поділяються на два типи:

  • Фільтри під контролем: Це можна застосувати, але вимагати певного контролю від користувача. Такі як перебалансування екземплярів для класу.
  • Фільтри без нагляду: Це можна застосовувати в ненаправленому порядку. Наприклад, масштабуйте всі значення в діапазоні від 0 до 1.

Особисто я вважаю, що різниця між цими двома типами фільтрів є трохи довільною та заплутаною. Тим не менше, саме так вони викладені.

У межах цих двох груп фільтри поділяються на фільтри для атрибутів та екземплярів:

  • Фільтри атрибутів: Застосувати операцію над атрибутами або одним атрибутом за раз.
  • Фільтри екземплярів: Застосувати операцію над екземпляром або окремим екземпляром за раз.

Ця різниця має набагато більше сенсу.

Після того, як ви вибрали фільтр, його ім'я з'явиться у полі біля кнопки «Вибрати».

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