探索归一化如何提升模型训练效率与预测精度。了解最小-最大缩放、Z分标准化及其Ultralytics 中的应用价值。
归一化是数据预处理中的基础技术,涉及将数值属性重新缩放至标准范围。在机器学习(ML)领域,数据集常包含尺度差异显著的特征——例如年龄范围(0–100)与收入水平(0–100,000)。 若不加处理,这些差异可能导致优化算法向较大数值产生偏倚,从而减缓收敛速度并产生次优性能。通过数据归一化,工程师可确保每个特征对最终结果的贡献成比例,使神经网络得以更高效地学习。
数据转换有多种标准方法,每种方法都适用于不同的分布和算法要求。
标准化是各行业高性能人工智能系统管道中的标准步骤。
区分归一化与深度学习中出现的类似预处理和架构术语至关重要。
在计算机视觉领域,归一化通常是处理流程中的第一步。以下 Python 示例演示了如何使用 NumPy 手动对图像数据进行归一化处理——该过程在 Ultralytics 加载器训练时会自动执行。
import numpy as np
# Simulate a 2x2 pixel image with values ranging from 0 to 255
raw_image = np.array([[0, 255], [127, 64]], dtype=np.float32)
# Apply Min-Max normalization to scale values to [0, 1]
# This standardizes the input for the neural network
normalized_image = raw_image / 255.0
print(f"Original Range: {raw_image.min()} - {raw_image.max()}")
print(f"Normalized Range: {normalized_image.min()} - {normalized_image.max()}")