Использование методов нормализации данных, таких как StandardScaling и MinMaxScaling, зависит от особенностей данных и задач машинного обучения. В задачах обработки изображений StandardScaling (стандартизация) часто предпочтительнее MinMaxScaling (масштабирование к диапазону), и вот почему:
Standard Scaling (стандартизация)
Заключается в преобразовании данных таким образом, чтобы они имели нулевое среднее значение и единичное стандартное отклонение. Формула стандартизации:
\[ z = \frac{x - \mu}{\sigma} \]
где \( x \) — исходное значение, \( \mu \) — среднее значение, а \( \sigma \) — стандартное отклонение.
Преимущества:
from sklearn.preprocessing import StandardScaler
import numpy as np
# Пример изображения (грейскейл)
image = np.array([[0, 50, 100], [150, 200, 255], [30, 70, 120]])
# Преобразование в одномерный массив
image_flattened = image.flatten().reshape(-1, 1)
# Стандартизация
scaler = StandardScaler()
image_scaled = scaler.fit_transform(image_flattened)
# Возвращение к оригинальной форме
image_standardized = image_scaled.reshape(image.shape)
print(image_standardized)
Min-Max Scaling (масштабирование к диапазону)
Заключается в преобразовании данных таким образом, чтобы они находились в заданном диапазоне, обычно от 0 до 1. Формула Min-Max Scaling:
\[ x' = \frac{x - \min}{\max - \min} \]
где \( x \) — исходное значение, \( \min \) и \( \max \) — минимальное и максимальное значения в данных.
Преимущества:
Ограничения:
from sklearn.preprocessing import MinMaxScaler
import numpy as np
# Пример изображения (грейскейл)
image = np.array([[0, 50, 100], [150, 200, 255], [30, 70, 120]])
# Преобразование в одномерный массив
image_flattened = image.flatten().reshape(-1, 1)
# Масштабирование к диапазону 0-1
scaler = MinMaxScaler()
image_scaled = scaler.fit_transform(image_flattened)
# Возвращение к оригинальной форме
image_minmax_scaled = image_scaled.reshape(image.shape)
print(image_minmax_scaled)
Почему в картинках используют StandardScaling чаще, чем MinMaxScaling:
StandardScaling часто предпочтительнее при работе с изображениями, так как он обеспечивает более стабильные и предсказуемые результаты в процессе обучения моделей машинного обучения.