feature scaling(特征缩放).: make sure multiple features are on a similar scale. Because different features take on similar ranges of values can help gradient descent converge more quickly.
公式基础:
代码演示:
function [X_norm, mu, sigma] = featureNormalize(X)
% featureNormalize特征缩放
mu = mean(X); %mean求平均
X_norm = bsxfun(@minus, X, mu); %减法
sigma = std(X_norm); %std求标准差,var求方差
X_norm = bsxfun(@rdivide, X_norm, sigma); %rdivide数组右除,X_norm ./ sigma
%********************bsxfun函数*************************************%
% 该函数的作用是对连个矩阵之间的每一个元素进行指定的计算,并具有自动扩维的功能。
% 如果A和B的维度不同,则A或者B必须有一个在某个维度上是1,比如,上例中的B在列方向维度是1,
% 那么,该函数将会对列向量B在列方向上进行复制,使其与矩阵A具有相同的列维度,
% 然后,再进行A./B维度扩充后的矩阵