Python numpy 归一化和标准化 代码实现

归一化 (Normalization)、标准化 (Standardization)和中心化/零均值化 (Zero-centered)

def normalization(data):
    _range = np.max(data) - np.min(data)
    return (data - np.min(data)) / _range


def standardization(data):
    mu = np.mean(data, axis=0)
    sigma = np.std(data, axis=0)
    return (data - mu) / sigma

Python numpy 归一化和标准化 代码实现_第1张图片


更新,如果归一化后的范围是[-1, 1]的话,可以将normalization()函数改为:

def normalization(data):
    _range = np.max(abs(data))
    return data / _range

Python numpy 归一化和标准化 代码实现_第2张图片


此外,我看了一些GitHub上面的代码,发现很多人在预处理输入到神经网络中的数据时,使用的normalization函数其实是进行了标准化,而不是归一化,比如:

你可能感兴趣的:(机器学习,Python)