Масштабирование Min-Max
Часть раздела Статистика для машинного обучения путешествия по Machine Learning на Coddy. Урок 48 из 64.
Масштабирование min-max даёт каждому признаку равные возможности: в каждом столбце наименьшее значение становится 0, наибольшее — 1, а остальные оказываются между ними.
Добавьте 40-летнего человека с доходом $80,000, затем масштабируйте все четыре значения:
Широковещание выполняет это одной строкой, используя для каждого столбца его собственное минимальное значение и диапазон:
X = np.array([[25, 52000],
[61, 53000],
[26, 55000],
[40, 80000]])
lows = X.min(axis=0)
highs = X.max(axis=0)
scaled = (X - lows) / (highs - lows)Теперь учитывается и возраст. Ближайшим соседом клиента 0 больше не является 61-летний клиент:
Одно экстремальное значение становится равным 1 и сжимает остальные значения к 0, поэтому нормализация min-max подходит для столбцов без выбросов.
Задание
СреднеОбжарщик подбирает кофе, который заваривается одинаково. Каждая строка beans — это один сорт кофе: температура воды (C), время заваривания (s) и содержание кофеина (mg). Программа считывает позиции i и j; функция distance(a, b) из начального кода измеряет расстояние между двумя образцами.
- Масштабируй
beansметодом min-max. - Выведи
Every column from 0 to 1:, затем таблицу масштабированных данных с точностью до 2 знаков после запятой. - Выведи расстояние между ними до и после масштабирования, как показано ниже.
Для трёх других сортов кофе, позиции 0 и 1:
Every column from 0 to 1:
[[1. 1. 0.67]
[0.5 0.5 0. ]
[0. 0. 1. ]]
Coffees 0 and 1: 63.28 apart before scaling, 0.97 afterПопробуйте сами
import numpy as np
# Возвращает расстояние между двумя образцами (из Why Scale Features)
def distance(a, b):
return np.sqrt(((a - b) ** 2).sum())
# Одна строка для каждого вида кофе: температура воды в C, время заваривания в секундах, содержание кофеина в mg
beans = np.array([[88, 120, 60],
[96, 300, 30],
[86, 90, 70],
[94, 240, 120],
[90, 180, 90],
[84, 60, 50]])
i = int(input())
j = int(input())
# Напишите свой код ниже
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Статистика для машинного обучения
1Центр и разброс
Среднее и медианаПроцентили и квартилиДисперсия и стандартное отклонениеВыборка или генеральная совокупность?Самое частое значениеПовторение: сроки доставки4Выборки и генеральные совокупности
Генеральная совокупность и выборкаСредние значения выборок различаютсяРаспределение выборочных среднихЧем больше выборка, тем меньше шумИтоги: опрос жителей города2Распределения
Гистограммы плотностиФормы распределения данныхНормальная криваяПравило 68–95–99,7Z-оценкиПовторение: время работы батареи3Вероятность с помощью моделирования
Вероятность как частотаЗакон больших чиселСуммы значений на кубикахМатематическое ожиданиеУсловная вероятностьПовторение: шансы в игре в кости6Взаимосвязи
Чтение диаграмм рассеянияКорреляцияМатрица корреляцийТепловые карты корреляцийКорреляция не означает причинностьПовторение: мороженое и солнце9Масштабирование признаков
Зачем масштабировать признакиМасштабирование Min-MaxСтандартизацияStandardScalerПовторение: партнёры по восхождениюПотренируйтесь самостоятельно: Онлайн-компилятор Python