matlab中mapminmax函数的总结

01 mapminmax()函数

mapminmax()函数主要是用来对数据进行归一化处理的函数,它把所有的数据都转换为(0,1)之间的数,目的就是取消各维数据间的数量别差别,防止大数吃小数的现象。

02 函数接口

[Y,PS] = mapminmax(X)
[Y,PS] = mapminmax(X,FP)
Y = mapminmax('apply',X,PS)
X = mapminmax('reverse',Y,PS)

02-1 函数参数说明

Y是归一化得到的数据,PS是一种描述数据的结构。它们的计算方式是y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;

倘若这个向量里面有两个相同的数,那么上式就变成分母xmax-xmin为零,这样怎么处理?

matlab在这时会变成y=yminymaxymin这两个值默认为-11,也可以自己设置。

设置举例:

>> clear
>> l=[1,2,3,4] l = 1 2 3 4 >> k.ymin=0 k = 包含以下字段的 struct: ymin: 0 >> k.ymax=1 k = 包含以下字段的 struct: ymin: 0
ymax: 1 >> [m,n]=mapminmax(l,k) m = 0 0.3333 0.6667 1.0000 n = 包含以下字段的 struct: name: 'mapminmax'
xrows: 1
xmax: 4
xmin: 1
xrange: 3
yrows: 1
ymax: 1
ymin: 0
yrange: 1
gain: 0.3333
xoffset: 1
no_change: 0 > 上面还可以这样设置:[Y,PS] = mapminmax(X,ymin,ymax)

03 函数接口说明

上面已经讲了,12函数接口,3函数接口Y = mapminmax('apply',X,PS)主要是用来对其他向量采取同样的归一化(继续采用上面向量的xmaxxmin)对其归一化。 第三种X = mapminmax('reverse',Y,PS)就是对数据进行反归一化,就是通过存储在PS的结构的值计算原来的值。

04 矩阵归一化

默认规范范围(-1,1)若想将规范范围划为(-1,1),可编写Y=mapminmax(A,0,1);

此函数规整行向量中最大最小值,如果运用此函数,则A矩阵每一行为一个维度,每一列是一个样本,所以一般在使用这个函数对样本进行归一化的时候就要将矩阵转置。


 上一篇
Empire-powershell渗透攻击框架工具 Empire-powershell渗透攻击框架工具
1. 工具简介Empire是一款针对windows平台的、使用Powershell脚本作为攻击载荷的渗透攻击框架工具,具有从stager生成、提权到渗透维持的一系列功能。Empire实现不需要powershell.exe就可以运行的Powe
2019-04-12 starjian
下一篇 
机器学习之线性回归方法 机器学习之线性回归方法
1. 多元线性回归以预测房子价格为例,房子的属性除了其面积大小外,这里还有房子楼层数、房子年龄、厅室数等。也就是说一个房子的特征将不只一个,而是多个。这里用n表示特征数目,x(i)表示的是训练集中第i个样本的特征向量,x(i)j表示的第i个
2019-04-12 starjian
  目录