MATLAB 归一化 函数用法以及实例
来源:互联网 发布:大连软件学校 编辑:程序博客网 时间:2024/06/06 01:44
原文地址:http://jingyan.baidu.com/article/48b37f8d649ce31a646488e9.html
在用MATLAB进行各种回归运算以及矩阵运算中,为了避免不同数量级的数字之间相互影响,防止大数吃小数等情况,我们需要对其进行归一化,下面我们就介绍几种常用的归一化方法,并通过实例进行介绍。
工具/原料
MATLAB
mapminmax
示例
这个函数是十分常用的归一化函数,最常用的是进行多元回归,包括神经网络以及支持向量机回归过程当中。下面我们通过一个实例进行介绍。我们以A=[100 200 300 400]为例。
在MATLAB主窗口中输入[A1,PS]=mapminmax(A),这里PS是一种对应关系,里面包括一些相应的特征值。
对应关系说明
MATLAB 帮助文档中告诉我们,这种对应关系是
y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin
在A向量中我们可以看到xrows代表行数,行数为1,并且对这一行向量来说,x最大值是400,最小值是100,x的变化范围时300。至于后面的关于y的,在归一化一维向量时,可以忽略不看,我们只需要知道ymin=-1,ymax=1,就可以。
我们可以验证某一个元素的值,比方说200,则y=1*(200-100)/(400-100)+(-1)=-1/3=-0.333.
对其他数值进行归一化
我们可以利用这个对应关系PS对其他数值进行归一化,但是有个前提,这个数必须要在xmin 和xmax之间,不然归一化的结果,与整体进行归一化,结果会不一样,例如,我们用如上对应关系归一化260,输入命令
temp= mapminmax('apply',260,PS)
结果如下,我们可以看到,用对应关系PS进行归一化,与整体进行归一化结果一致。
反例:
但是我们如果归一化不介于xmin 和xmax之间的数,结果就会出现不同,如下:
我们可以看到单独归一化500与整体归一化的结果不一样,所以用这种方式归一化其他值的时候一定要注意这一点。
反归一化
我们还是以最开始的向量A=[100 200 300 400]进行示例,进行归一化之后归一化的结果
A1=[-1.0000 -0.3333 0.3333 1.0000],那么我们要反归一化得到原来的值,怎么处理呢?
在MATLAB主窗口输入如下命令:A2= mapminmax('reverse',A1,PS) 回车
我们可以看到A2=[100 200 300 400]=A,成功的进行了反归一化。
- MATLAB 归一化 函数用法以及实例
- matlab归一化函数
- 再议Matlab归一化函数
- matlab归一化函数
- Matlab 归一化函数premnmx
- 【matlab】eps 意义用法以及实例
- matlab归一化和反归一化函数——mapminmax
- matlab归一化和反归一化函数——mapminmax
- MATLAB save 函数用法及实例
- matlab std函数 用法及实例
- matlab曲线拟合 函数 用法以及例子
- matlab premnmx归一化函数的使用
- Matlab 归一化函数premnmx [-1,1]
- Matlab归一化
- matlab xlswrite 用法以及实例(转自“百度经验”)
- matlab中归一化到[0,1]的函数mapminmax使用
- Matlab中矩阵的归一化和正交化函数
- Matlab函数fir1(n,Wn)中的归一化频率的含义
- 笔记——float型数据的int引用
- 模拟-POJ-3087-Shuffle'm up
- 操作符(operator)
- 深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件
- equals()方法和“==”的区别
- MATLAB 归一化 函数用法以及实例
- 暑假第2周周报
- javascript中的美元符号$是做什么的?
- Java虚拟机工作原理详解
- Matlab中配置LibSVM的操作步骤
- hdoj5336
- 黑马程序员-多线程基础知识2
- Android之——ListView优化
- 利用tomcat解决get提交中文乱码问题