python
numpy:
np.random.normal正态分布
numpy.random.normal(loc=0,scale=1e-2,size=shape)
参数loc(float):正态分布的均值,对应着这个分布的中心。loc=0说明这一个以Y轴为对称轴的正态分布,
参数scale(float):正态分布的标准差,对应分布的宽度,scale越大,正态分布的曲线越矮胖,scale越小,曲线越高瘦。
参数size(int 或者整数元组):输出的值赋在shape里,默认为None。
shape函数是numpy.core.fromnumeric中的函数,它的功能是查看矩阵或者数组的维数。
transpose 作用是改变序列
transpose(1,0,2):表示将(2[0], 2[1], 2[2])转换为(2[1], 2[0], 2[2])。简单理解就是,将不同位置元素替换掉。
T转置:表示整个顺序颠倒,(2[0], 2[1], 2[2])转换为(2[2], 2[1], 2[0])。相应的分析方法一样,就是内容替换。
np.linalg.pinv():求矩阵的广义逆,输入可以不是方阵
在python 3.5以后,@是一个操作符,表示矩阵-向量乘法 A@x 就是矩阵-向量乘法A*x: np.dot(A, x)
np.mean()函数功能:求取均值
实验内容:
1.生成数据,加入噪声
sin(2πx)生成数据
加入方差0.5的噪声
2. 用高阶多项式函数拟合曲线;
假设m已知,确定参数w:
建立误差函数,测量每个样本点目标值t与预测函数y之间的误差
是最小二乘问题,E是w的二次函数
求导,设倒数=0
存在唯一解w*
加对w的惩罚