精华内容
下载资源
问答
  • Matlab归一化

    千次阅读 2015-04-28 12:58:22
    提起数据的归一化处理,其实有好多种方法,大多都是根据自己需要的来进行初始化。 根据归一化后的数据是分布在0-1之间还是分布在-1到+1之间,归一化方法基本可以分成两类。 第一种方法,某个属性的最大值max,...
    提起数据的归一化处理,其实有好多种方法,大多都是根据自己需要的来进行初始化。
    根据归一化后的数据是分布在0-1之间还是分布在-1到+1之间,归一化方法基本可以分成两类。


    第一种方法,某个属性的最大值max,最小值min,对每个属性的值x做如下处理
    normalizedx=(x-min)/(max-min);
    这样normalizedx就会分布在0-1之间。这种归一化方法是线性的归一化方法
    第二种方法,与第一种方法对应的将数据归一化-1到+1的方法是,在做完第一步处理后,只需要将
    normalizedx=normalizedx*2-1;
    就会将数据归一化到-1到1之间,matlab自带的归一化处理方法premnmx处理结果完全一模一样。
    premnmx对应的用法是:
    [Pn,minp,maxp,Tn,mint,maxt]=premnmx(data(:,1:9)',data(:,10)');
    对测试数据做[testPn]=tramnmx(dataTest(:,1:9)',minp,maxp);这样的处理就可以了。如果在做预测的时候要反归一化,通过mint,和maxt就可以按照前面说的方法进行反归一化
    matlab中的mapminmax函数和premnmx处理方法一模一样。
    还是也举一个例子来说一下吧。
    对训练数据处理:    [pn,ps]=mapminmax(P) P训练数据的输入数据
                                        [tn, ts]=mapminmax(t) t训练数据的输出数据
    对测试数据的处理:pnt=mapminmax('apply',pt,ps) pt测试数据
    反归一化:              out=mapminmax('reverse',An,ts) An预测结果数据


    第三种方法,第三种方法是通过mapstd进行归一化处理的,但是处理后的结果比不是分布在0-1或者-1到1之间的。
    举例说明下:
    对训练数据处理:  [pn,ps]=mapstd(P) P训练数据的输入数据
                      [tn, ts]=mapstd(t) t训练数据的输出数据
    对测试数据的处理:pnt=mapstd('apply',pt,ps) pt测试数据
    反归一化:        out=mapstd('reverse',An,ts) An预测结果数据
    其实具体处理的方法还不是很清楚。下篇文章在详细讲述。
    展开全文
  • matlab归一化

    2016-03-13 14:01:00
    X = mapminmax('reverse',Y,PS)的作用就是进行反归一化,讲归一化的数据反归一化再得到原来的数据: >> [y1,ps] = mapminmax(x1); >> xtt = mapminmax('reverse',y1,ps) xtt =  1 2 4 此时又得到了原来的x1(xtt = ...

    ============外一篇 有关mapminmax的用法详解 by faruto==================================
    几个要说明的函数接口:
    [Y,PS] = mapminmax(X)
    [Y,PS] = mapminmax(X,FP)
    Y = mapminmax('apply',X,PS)
    X = mapminmax('reverse',Y,PS)

    用实例来讲解,测试数据 x1 = [1 2 4], x2 = [5 2 3];
    >> [y,ps] = mapminmax(x1)
    y =
       -1.0000   -0.3333    1.0000

    ps = 
          name: 'mapminmax'
         xrows: 1
          xmax: 4
          xmin: 1
        xrange: 3
         yrows: 1
          ymax: 1
          ymin: -1
        yrange: 2

    其中y是对进行某种规范化后得到的数据,这种规范化的映射记录在结构体ps中.让我们来看一下这个规范化的映射到底是怎样的?

    Algorithm
    It is assumed that X has only finite real values, and that the elements of each row are not all equal.

    • y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;
    • [关于此算法的一个问题.算法的假设是每一行的元素都不想相同,那如果都相同怎么办?实现的办法是,如果有一行的元素都相同比如xt = [1 1 1],此时xmax = xmin = 1,把此时的变换变为y = ymin,matlab内部就是这么解决的.否则该除以0了,没有意义!]


    也就是说对x1 = [1 2 4]采用这个映射 f: 2*(x-xmin)/(xmax-xmin)+(-1),就可以得到y = [ -1.0000   -0.3333    1.0000]
    我们来看一下是不是: 对于x1而言 xmin = 1,xmax = 4;
    则y(1) = 2*(1 - 1)/(4-1)+(-1) = -1;
        y(2) = 2*(2 - 1)/(4-1)+(-1) = -1/3 = -0.3333;
        y(3) = 2*(4-1)/(4-1)+(-1) = 1;
    看来的确就是这个映射来实现的.
    对于上面algorithm中的映射函数 其中ymin,和ymax是参数,可以自己设定,默认为-1,1;

    比如:

    >>[y,ps] = mapminmax(x1)
    >> ps.ymin = 0;
    >> [y,ps] = mapminmax(x1,ps)
    y =
             0    0.3333    1.0000

    ps = 
          name: 'mapminmax'
         xrows: 1
          xmax: 4
          xmin: 1
        xrange: 3
         yrows: 1
          ymax: 1
          ymin: 0
        yrange: 1
    则此时的映射函数为: f: 1*(x-xmin)/(xmax-xmin)+(0),是否是这样的这回你可自己验证.O(∩_∩)O

    如果我对x1 = [1 2 4]采用了某种规范化的方式, 现在我要对x2 = [5 2 3]采用同样的规范化方式[同样的映射],如下可办到:
    >> [y1,ps] = mapminmax(x1);
    >> y2 = mapminmax('apply',x2,ps)

    y2 =
        1.6667   -0.3333    0.3333
    即对x1采用的规范化映射为: f: 2*(x-1)/(4-1)+(-1),(记录在ps中),对x2也要采取这个映射.
    x2 = [5,2,3],用这个映射我们来算一下.
    y2(1) = 2(5-1)/(4-1)+(-1) = 5/3 = 1+2/3 = 1.66667
    y2(2) = 2(2-1)/(4-1)+(-1) = -1/3 = -0.3333
    y2(3) = 2(3-1)/(4-1)+(-1) = 1/3 = 0.3333

    X = mapminmax('reverse',Y,PS)的作用就是进行反归一化,讲归一化的数据反归一化再得到原来的数据:
    >> [y1,ps] = mapminmax(x1);

    >> xtt = mapminmax('reverse',y1,ps)
    xtt =
         1     2     4
    此时又得到了原来的x1(xtt = x1);

    =================================
    Matlab 数字归一化问题(by yingzhilian)
    http://www.ilovematlab.cn/viewthread.php?tid=26409&extra=page%3D1&sid=Xs3tJM
    -------------------------------------------------------
    归一化化定义:我是这样认为的,归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保正程序运行时收敛加快。
    matlab里面,用于归一化的方法共有三种
    :
    1premnmxpostmnmx
    tramnmx
    2prestdpoststd
    trastd
    3)是用matlab语言自己编程。

    转载于:https://www.cnblogs.com/zhaopengdt/p/5271888.html

    展开全文
  • matlab归一化相关函数\归一化相关算法。
  • MatLab归一化说明

    2016-02-24 21:13:30
    MatLab归一化说明

    MatLab归一化说明

    matlab premnmx归一化函数的使用

    1、premnmx
    预处理数据使数据的最小值和最大值分别为-1和1.
    [PN,minp,maxp,TN,mint,maxt] = premnmx(P,T)

    premnmx(P,T)
    输入
    P - R x Q 矩阵(输入向量,其中一列表示输入变量).
    T - S x Q 矩阵(目标/输出 向量).

    输出
    PN - R x Q 矩阵 (归一化的输入向量).
    minp- R x 1 向量,包含对于P的最小值.
    maxp- R x 1 向量,包含P的最大值.
    TN - S x Q 矩阵,归一化的目标向量.
    mint- S x 1 向量,包含每个目标值T的最小值。
    maxt- S x 1 向量,包含每个目标值T的最大值。

    [PN,minp,maxp] = premnmx(P)

    实例:
    P = [
    1 2 3
    4 5 6
    7 8 9
    ]
    T = [10 11 12]
    [PN,minp,maxp,TN,mint,maxt] = premnmx(P,T)

    P =

     1     2     3
     4     5     6
     7     8     9
    

    T =

    10    11    12
    

    PN =

    -1     0     1
    -1     0     1
    -1     0     1
    

    minp =

     1
     4
     7
    

    maxp =

     3
     6
     9
    

    TN =

    -1     0     1
    

    mint =

    10
    

    maxt =

    12
    

    由上面可知,premnmx是将一列作为一个样本输入来处理的。

    2、postmnmx
    对那些归一化后的数据进行后处理
    [P,T] = postmnmx(PN,minp,maxp,TN,mint,maxt)
    [p] = postmnmx(PN,minp,maxp)

    输入

    PN - R x Q 矩阵 (归一化的输入向量).
    minp- R x 1 向量,包含对于P的最小值.
    maxp- R x 1 向量,包含P的最大值.
    TN - S x Q 矩阵,归一化的目标向量.
    mint- S x 1 向量,包含每个目标值T的最小值。
    maxt- S x 1 向量,包含每个目标值T的最大值
    输出
    P - R x Q 矩阵(输入向量,其中一列表示输入变量).
    T - S x Q 矩阵(目标/输出 向量).
    postmnmx与premnmx成对使用,premnmx的输出作为postmnmx的输入

    运用时,首先通过premnmx对训练数据进行归一化,但对测试数据归一化是需用到另外一个函数tramnmx;实现测试数据的归一化处理

    premnmx与tramnmx的区别

    premnmx是训练数据归一化,此时不知道输入数据范围

    tramnmx是对预测数据归一化,此时用的最大最小是训练数据的最大最小。要先用了premnmx后才可以用,主要是用于归一化神经网络的输入,其中要用到premnmx的输出minp,maxp.

    展开全文
  • matlab归一化和反归一化函数——mapminmax 在做BP神经网络的时候经常会遇到数据的归一化,这个时候需要用到mapminmax函数,老版本可以用premnmx和tramnmx 用函数mapminmax 1 默认的map范围是[-1, 1],所以如果...

    matlab归一化和反归一化函数——mapminmax

    在做BP神经网络的时候经常会遇到数据的归一化,这个时候需要用到mapminmax函数,老版本可以用premnmx和tramnmx

    用函数mapminmax
    
    1 默认的map范围是[-1, 1],所以如果需要[0, 1],则按这样的格式提供参数:
    MappedData = mapminmax(OriginalData, 0, 1);
    
    
    2 只按行归一化,如果是矩阵,则每行各自归一化,如果需要对整个矩阵归一化,用如下方法:
    FlattenedData = OriginalData(:)'; % 展开矩阵为一列,然后转置为一行。
    MappedFlattened = mapminmax(FlattenedData, 0, 1); % 归一化。
    MappedData = reshape(MappedFlattened, size(OriginalData)); % 还原为原始矩阵形式。此处不需转置回去,因为reshape恰好是按列重新排序
    
    
    A=[1 2 3;4 5 6]  
      
    A =  
      
         1     2     3  
         4     5     6  
      
    >> [B,PS]=mapminmax(A,0,1)  
      
    B =  
      
             0    0.5000    1.0000  
             0    0.5000    1.0000  
      
      
    PS =   
      
             name: 'mapminmax'  
            xrows: 2  
             xmax: [2x1 double]  
             xmin: [2x1 double]  
           xrange: [2x1 double]  
            yrows: 2  
             ymax: 1  
             ymin: 0  
           yrange: 1  
        no_change: 0  
             gain: [2x1 double]  
          xoffset: [2x1 double]  
      
    >> mapminmax('reverse',B,PS)  
      
    ans =  
      
         1     2     3  
         4     5     6  
      

    展开全文
  • matlab归一化相关函数

    2009-11-18 21:38:31
    matlab归一化相关函数 一个相当不错的图像相关函数
  • matlab归一化函数

    千次阅读 2014-03-11 16:46:56
    原文地址:matlab归一化函数作者:CrazyMatrix归一化用到最多的应该是在聚类分析中,为什么要用归一化呢?这是为了消去不同量纲对结果的影响。 matlab提供了一个简单的归一化函数[y,ps] = mapminmax(x,ymin,ymax),x...
  • matlab 归一化详解

    2018-01-08 00:13:10
    prestd已被obsoleted,代替的是mapminmax,对于神经网络,输入输出数据的归一化非常重要,通常作为数据预处理的重要手段。
  • 我用的[Y,PS] = mapminmax(X)进行归一化归一化之前为序号 姓名 主频 8Hz 9Hz 10Hz 熵值 运动水平级别1 钟XX 10 3.3 13.4 54.6 0.69 9.82 ...
  • matlab归一化和标准化

    千次阅读 2020-03-27 22:32:43
    归一化是将数据限制在[0,1]之间,标准化是将数据限制在一定范围内,一般是指正态化,即均值是0,方差是1,即使数据不满足正态分布,亦可以...在matlab里面归一化的方法有:premnmx、postmnmx、tramnmx、mapminmax...
  • 转自:这里 用函数mapminmax 1 默认的map范围是[-1, 1],...2 只按行归一化,如果是矩阵,则每行各自归一化,如果需要对整个矩阵归一化,用如下方法: FlattenedData = OriginalData(:)'; % 展开矩阵为一列,然后...
  • 我们在用matlab设计滤波器后,可以用fvtool来看滤波器的频响,比如我们有了滤波器的系数后,直接用fvtool。fircoe = [0.018641, 0.018275,-0.020377,-0.071243,-0.049673,... 0.094562, 0.28841, 0.37949, 0.28841,...
  • matlab图像处理为什么要归一化和如何归一化 2015年11月25日 09:51:28 zengjiqin 阅读数:12681 ...
  • 主要用函数mapminmax 1 默认的map范围是[-1, 1],所以如果需要[0, 1],则按这样的格式提供参数: MappedData = mapminmax(OriginalData, ...2 只按行归一化,如果是矩阵,则每行各自归一化,如果需要对整个矩阵归一化...
  • Matlab归一化方法

    万次阅读 2018-05-10 10:41:09
    1,标准归一化。 将原始数据集归一化为均值为0、方差1的数据集,归一化公式如下: x∗=x−μδ 其中μ为所有样本数据的均值,δ为所有样本数据的标准差。 这种方式要求原始数据集的分布近似为正态(高斯)分布。...
  • Matlab归一化实现

    2020-12-21 17:22:46
    如何实现图像0-255归一化? 自己写一个函数: function normalizedImg=Normalize(inputImg) ymax=255; ymin=0; xmax=max(max(inputImg)); xmin=min(min(inputImg)); normalizedImg=round((ymax-ymin)*(inputImg-...
  • matlab 归一化处理

    2020-02-27 14:17:52
    x:待归一化信号(1n或者n1); 过程如下: x_max = max(x); x_min = min(x); x_norm = (x-x_min)/(x_max-x_min);
  • MATLAB归一化 code

    2020-02-05 16:55:03
    第一步求得最大值和最小值;第二部求取 归一化的数值 function [y]=guiyiha_gan(x) max=0;min=0; y=[]; for i=1;length(x) if x(i)>max max=x(i); end if x(i)<min min=x(i); end end fo...
  • 给定数据p_train=1000×4;t_train=100×1;...%%归一化处理[pn_train,inputps] = mapminmax(p_train',0,1);pn_train = pn_train';pn_test = mapminmax('apply',p_test',inputps);pn_test = pn_test';% 测试...
  • 一、图像归一化的好处:1、转换成标准模式,防止仿射变换的影响。2、减小几何变换的影响。3、加快梯度下降求最优解的速度。二、图像归一化的方法1、线性函数转换,表达式如下:y=(x-MinValue)/(MaxValue-MinValue)...
  • 这个函数在MATLAB7.1以上的版本才有。mapminmax语法[Y,PS] = mapminmax(YMIN,YMAX)[Y,PS] =mapminmax(X,FP)Y = mapminmax('apply',X,PS)X = mapminmax('reverse',Y,PS)dx_dy = mapminmax('dx',X,Y,PS)dx_dy = ...
  • 数据规范中的归一化与标准化:A.归一化 vs. 标准化归一化:要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保正程序运行时收敛加快。一般指将...
  • 直方图归一化有些灰度图像的像素并没有分布在 [0,255] 内,而是分布在 [0,255] 的子区间内。这样的图像肉眼看上去往往不是很清晰。我们可以通过直方图归一化的方式,将它的像素分布从 [0,255] 的子区间变为 [0,255]...
  • Triple Collocation(TC)方法可用于估计同一地球物理变量的不同数据集中的随机误差方差,特别在卫星反演产品(反射率、植被指数、土壤水分等)星地校验中应用广泛。...归一化之前的数据集2. 归一化数据集以任一数...
  • matlab归一化&标准化

    千次阅读 2016-01-14 17:23:15
    数据规范中的归一化与标准化: A.归一化 vs. 标准化  归一化:要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保正程序运行时收敛加快。...
  • Matlab归一化函数(mapminmax)

    千次阅读 2019-11-26 10:30:27
    处理需要归一化的m*n矩阵X,归一化后的矩阵记为Y。 主要有5种调用形式 1.[Y,PS] = mapminmax(X,YMIN,YMAX) 其中,YMIN是我们期望归一化后矩阵Y每行的最小值,YMAX是我们期望归一化后矩阵Y每行的最大值。 例1:待...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,363
精华内容 545
热门标签
关键字:

matlab归一化

matlab 订阅