Matlab归一化函数(mapminmax)

功能:将矩阵的每一行处理成[-1,1]区间。处理需要归一化的m*n矩阵X,归一化后的矩阵记为Y。

主要有5种调用形式

1.[Y,PS] = mapminmax(X,YMIN,YMAX)

其中,YMIN是我们期望归一化后矩阵Y每行的最小值,YMAX是我们期望归一化后矩阵Y每行的最大值。

例1:待处理矩阵X=[4 5 6;7 8 9]我们期望归一化后每行的最小值为0,最大值为1.程序如下

X=[4 5 6;7 8 9];mapminmax(X,0,1)

运行结果:

ans =

 

         0    0.5000    1.0000

         0    0.5000    1.0000

2.[Y,PS] = mapminmax(X,FP)

FP是一个结构体成员,主要是FP.ymin(相当于YMIN), FP.ymax(相当于YMAX)。1和2处理效果一样,只不过参数的带入形式不同。

例2:

X=[4 5 6;7 8 9];FP.ymin = 0;FP.ymax = 1;mapminmax(X,FP)

运行结果:

ans =

 

         0    0.5000    1.0000

         0    0.5000    1.0000

3.Y = mapminmax('apply',X,PS)

PS是训练样本的映射,测试样本的预处理方式应与训练样本相同。只需将映射PS apply到测试样本。

例3.训练样本是X,测试样本是M,归一化后的训练样本是Y

X=[4 5 6;7 8 9];M = [2 3;4 5];[Y,PS] = mapminmax(X,0,1);mapminmax('apply',M,PS)

运行结果:

ans =

 

   -1.0000   -0.5000

   -1.5000   -1.0000

4.X = mapminmax('reverse',Y,PS)

将归一化后的Y反转为归一化之前

例4.将n(M的归一化)反转为M

X=[4 5 6;7 8 9];M = [2 3;4 5];[Y,PS] = mapminmax(X,0,1);n = mapminmax('apply',M,PS);mapminmax('reverse',n,PS)

运行结果:

ans =

 

     2     3

     4     5

5.dx_dy = mapminmax('dx_dy',X,Y,PS)

根据给定的矩阵X、标准化矩阵Y及映射PS,获取逆向导数(reverse derivative)。如果给定的X和Y是m行n列的矩阵,那么其结果dx_dy是一个1×n结构体数组,其每个元素又是一个m×n的对角矩阵。这种用法不常用,这里不再举例。

mapminmax的数学公式为y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin。如果某行的数据全部相同,此时xmax=xmin,除数为0,则此时数据不变。

参考文献

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/351744.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ansible puppet saltstack三款自动化运维工具的对比

一、基础介绍 ansible基础介绍可参考:http://www.linuxidc.com/Linux/2017-12/149671.htm puppet基础介绍可参考:http://www.linuxidc.com/Linux/2017-12/149672.htm saltstack基础介绍可参考:http://www.linuxidc.com/Linux/2017-12/149675.…

Matlab repmat函数

repmat函数主要是以已知的数、向量或矩阵为基本元素,快速得产生一个大的矩阵,它的用法一般有下面几种: 1.使用相同元素初始化矩阵 A repmat(6,3,2) A 6 6 6 6 6 6 2.方块与矩形块格式 A diag([1 2 3]) b repm…

Linux虚拟地址空间布局

在多任务操作系统中,每个进程都运行在属于自己的内存沙盘中。这个沙盘就是虚拟地址空间(Virtual Address Space),在32位模式下它是一个4GB的内存地址块。在Linux系统中, 内核进程和用户进程所占的虚拟内存比例是1:3,而Windows系统为2:2(通过设…

我的方法在这方面看起来很大吗?

以下Java方法的大小是多少? public Collection getDescription() {SystemLibrary systemLib registry.get(SystemLibrary.class);Analysis analysis systemLib.getCurrentAnalysis(registry);return getDescription(analysis);}这个不起眼的方法查找某种系统库&a…

arduino 舵机接线图_求用5个电位器分别控制舵机的arduino的原码和连线图

按照上图连线,按照如下代码烧程序。123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960#define Sin_1 A0 //设置变阻器1路电压采集端口为A0#define Sin_2 A1 //设置变阻器2路电压采集端口为A…

Leetcode 152.乘机最大子序列

乘积最大子序列 给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。 示例 1: 输入: [2,3,-2,4] 输出: 6 解释: 子数组 [2,3] 有最大乘积 6。 示例 2: 输入: [-2,0,-1] 输出: 0 解释: 结果不能为 2,…

Matlab sumsqr函数

功能:求矩阵所有元素的平方和 调用形式: [s,n] sumsqr(x) 例1 a [1 2 3;1 2 3]; [s,n] sumsqr(a) s 28 n 6 例2 c [1 2 3 4;1 2 3 4]; [m,n] sumsqr(c) A sumsqr(c) m 60 n 8 A 60 可以看出n返回值是矩阵元素个数

Kali linux安装漏洞扫描工具Nessus指南

引子:Nessus是著名信息安全服务公司tenable推出的一款漏洞扫描与分析软件,号称是"世界上最流行的漏洞扫描程序,全世界超过75,000个组织在使用它"。尽管这个扫描程序可以免费下载得到,但是要从Tenable更新到所有最新的威胁信息,每年…

*p++和*(p++)的区别_同是华为顶级旗舰,P系和Mate系谁最值得购买?明白这点很重要!...

近两年,华为手机凭借P系列和Mate系列的优异设计和销量口碑,已经毫无争议地成为了国产品牌高端代表。同时,华为自身也牢牢占据住中国大陆市场份额第一名宝座,在全球名次中以微弱差距排在第三,与第二名的苹果iPhone厮杀激…

Matlab xlim ylim zlim函数

xlim([xl xr]); 用于限定x轴上下限,其中, xl:x轴下限 xr:x轴上限 ylim([yl yr]);zlim([yl yr])同理。 例子 x [1:0.1:10]; y 3*sin(x); subplot(2,1,1); plot(x,y) subplot(2,1,2); plot(x,y); ylim([-1,1]); …

在Myeclipse buildpath 加server lib (server runtime)

使用Myeclipse,将eclipse下的工程复制过来后,发现提示Tomcat 7.0 unbound。缺少Server Runtime。 解决方法如下: 1,File->New->Other->Server->Server(注意在new时,需要勾上Show All Wizards),下一步,选择…

Go--4大基本数据类型之布尔类型

一:布尔类的定义 布尔类型只取值true和false,且布尔类型只占一个字节,多用于逻辑判断 二:使用举例 转载于:https://www.cnblogs.com/louis181214/p/10196338.html

Excel中数字、数值和文本的区别

数字包括文本型数字和数值型数字两种形式,数值型数字可以计算,文本型数字不能计算。 例1:文本型数字不能计算 例2:数值型数字可以计算 数值型数字如果输入大于11位数,则会显示为科学计数法。如果输入001,则…

单片机全局有必要封装_MCU-C程序基本编程规范(转)

为了提高源程序的质量和可维护性,从而最终提高软件产品生产力,特编写此规范。本标准规定了程序设计人员进行程序设计时必须遵循的规范。本规范主要针对单片机编程语言和08编译器而言,包括排版、注释、命名、变量使用、代码可测性、程序效率、…

The selected server is enabled,but is not configured pro

The selectedserver is enabled,but is not configured properly.Deployment to itwill not be permitted until the problem is corrected.Pleasenavigate to the server preference pages and verify the field withthe prompt:tomcat jdk name: 翻译:选定的服务器…

懒惰评估

最近,我正在编写log4j附加程序,并希望在自定义附加程序创建过程中使用logger记录一些诊断详细信息,但是log4j初始化仅在创建附加程序实例后才完成,因此该阶段记录的消息将被忽略。 我感到需要在自定义附加程序中进行延迟初始化&a…

python基础_格式化输出(%用法和format用法)

%用法 1、整数的输出 %o —— oct 八进制%d —— dec 十进制%x —— hex 十六进制 >>> print(%o % 20) 24 >>> print(%d % 20) 20 >>> print(%x % 20) 14 2、浮点数输出 2.1 格式化输出 %f ——保留小数点后面六位有效数字  %.3f,保留…

CSV大文件的处理(以ngsim数据为例):分割、导入与合并

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列&…

python用scrapy爬虫豆瓣_爬虫教程——用Scrapy爬取豆瓣TOP250

最好的学习方式就是输入之后再输出,分享一个自己学习scrapy框架的小案例,方便快速的掌握使用scrapy的基本方法。本想从零开始写一个用Scrapy爬取教程,但是官方已经有了样例,所以还是不写了,尽量分享在网上不太容易找到…

context-param与init-param的区别与作用

<context-param>的作用:web.xml的配置中<context-param>配置作用1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param>2.紧接着,容器创建一个Servl…