1 归一化函数zscore
在机器学习中采用对应维度均值与方差对特征做归一化,避免训练的到的模型权重过小,引起数值计算不稳定;使参数优化时能以较快的速度收敛.
Z = zscore(X)
[Z,mu,sigma] = zscore(X)
[…] = zscore(X,1)
[…] => zscore(X,flag,dim)
X每一行对应一个样本,每一列对应一维特征
2 minimize函数
使用共轭梯度最小化可微的多元函数
[X, fX, i] = minimize(X, f, length, P1, P2, P3, … )
f 为要最小化的函数。函数f必须返回两个参数,即函数的值,并且它是X元素的偏导数。偏导数必须与X具有相同的类型。
length 运行的长度
P1,P2,… 是传递给函数f的参数
3 bsxfun(fun,A,B)
对两个矩阵A和B之间的每一个元素进行指定的计算(函数fun指定)
一个小例子:
A=[1 2 3;4 5 6;7 8 9;3 2 1];
B=[4;4;7;3];
bsxfun(@rdivide,A,B)
ans =
0.2500 0.5000 0.7500
1.0000 1.2500 1.5000
1.0000 1.1429 1.2857
1.0000 0.6667 0.3333
matlab的操作函数:
操作符 | 作用 |
---|---|
@plus | plus |
@minus | minus |
@times | array multiply |
@rdivide | right array divide |
@ldivide | left array divide |
@power | array power |
@max | binary maximum |
@min | binary minimum |
@rem | remainder after division |
@mod | modulus after division |
@atan2 | four-quadrant inverse tangent ,result in radians |
@atan2d | four-quadrant inverse tangent ,result in degrees |
@hypot | square root of sum of squares |
@eq | equal |
@ne | not equal |
@lt | less than |
@le | less than or equal to |
@gt | greater than |
@ge | greater than or equal to |
@and | element-wise logical AND |
@or | element-wise logical OR |
@xor | logical exclusive OR |
4 varargin
可变长度输入参数列表
5 flipdim函数
1. B=flipdim(A,dim)
A表示一个矩阵,dim指定翻转方式。dim为1,表示每一列进行逆序排列;dim为2,表示每一行进行逆序排列。
>> A=[1 2 3;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
>> B=flipdim(A,1)
B =
7 8 9
4 5 6
1 2 3
>> B=flipdim(A,2)
B =
3 2 1
6 5 4
9 8 7
2. B=flipud(A)=flipdim(A,1)
实现