归一化函数 normalized()

2023-11-03

1. 归一化定义与作用

    归一化就是要把需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。

首先归一化是为了后面数据处理的方便,其次是保证程序运行时收敛加快。归一化的具体作用是归纳统一样本的统计分布性。归一化在0-1之间是统计的概率分布,归一化在某个区间上是统计的坐标分布。归一化有同一、统一和合一的意思。


    归一化的目的是使得没有可比性的数据变得具有可比性,同时又保持相比较的两个数据之间的相对关系,如大小关系或是为了作图方便,原来很难在一张图上作出来的图形,归一化后就可以很方便的显示出在图上的相对位置等。


    在使用机器学习算法的数据预处理阶段,归一化也是非常重要的一个步骤。例如在应用SVM之前,缩放是非常重要的。Sarle的神经网络FAQ的第二部分(1997)阐述了缩放的重要性,大多数注意事项也适用于SVM。缩放的最主要优点是能够避免大数值区间的属性过分支配了小数值区间的属性。另一个优点能避免计算过程中数值复杂度。因为关键值通常依赖特征向量的内积(inner products),例如,线性核和多项式核力,属性的大数值可能会导致数值问题。我们推荐将每个属性线性缩放到区间[-1,+1]或者[0, 1]。


    当然,我们必须使用同样的方法缩放训练数据和测试数据。例如,假设我们把训练数据的第一个属性从[-10,+10]缩放到[-1, +1],那么如果测试数据的第一个属性属于区间[-11, +8],我们必须将测试数据转变成[-1.1, +0.8]。

参考:“SVM:从理论到OpenCV实践” 4.2 归一化数据:

http://blog.csdn.net/zhazhiqiang/article/details/20146243


2. normalize 函数介绍

函数原型:

    void normalize(InputArray src,OutputArray dst, double alpha=1, doublebeta=0, int norm_type=NORM_L2, int dtype=-1, InputArray mask=noArray() )

    该函数归一化输入数组使它的范数或者数值范围在一定的范围内。

Parameters:

src:  输入数组

dst :输出数组,支持原地运算

alpha:range normalization模式的最小值

beta:range normalization模式的最大值,不用于norm normalization(范数归一化)模式。

normType:归一化的类型,可以有以下的取值

    NORM_MINMAX:数组的数值被平移或缩放到一个指定的范围,线性归一化,一般较常用。

    NORM_INF此类型的定义没有查到,根据OpenCV3的对应项,可能是归一化数组的C-范数(绝对值的最大值)

   NORM_L1 :  归一化数组的L1-范数(绝对值的和)

    NORM_L2: 归一化数组的(欧几里德)L2-范数

dtype

    dtype为负数时,输出数组的type与输入数组的type相同;

否则,输出数组与输入数组只是通道数相同,而tpye=CV_MAT_DEPTH(dtype).

mask

    操作掩膜,用于指示函数是否仅仅对指定的元素进行操作。


3.归一化公式:

1、线性函数转换,表达式如下:(对应NORM_MINMAX)

if(mask(i,j)!=0

    dst(i,j)=(src(i,j)-min(src))*(b‘-a‘)/(max(src)-min(src))+ a‘;

else

     dst(i,j)=src(i,j);


 其中b‘=MAX(a,b), a‘=MIN(a,b);


2. 当norm_type!=CV_MINMAX:

if(mask(i,j)!=0)

    dst(i,j)=src(i,j)*a/norm (src,norm_type,mask);

else

    dst(i,j)=src(i,j);

其中,函数norm的功能是计算norm(范数)的绝对值


Thefunctions norm calculate an absolute norm of src1 (when there is no src2 ):

技术分享

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

归一化函数 normalized() 的相关文章

随机推荐

  • hdu 1024 Max Sum Plus Plus

    Problem acm hdu edu cn showproblem php pid 1024 题意 给一个长为 n 的序列 有从中挑 m 个相互不重合的子序列求总和 让总和最大 分析 没能看懂百度的前几份题解 好像都跟 kuangbin
  • UE4 适用于多人游戏的简单小地图制作探索

    网络上大部分使用Capture2D直接映射小地图方式不仅没有扩展性 且性能要求直接翻倍 实际效果极差 不可支持多人 多物件显示麻烦 纯浪费时间的sb方案 除了初学者超小demo制作 建议不学 学了不使用 该博客仅用于多次制作时快速翻阅 要详
  • 重定向http://www.domain.com到http://domain.com

    Make your site Class B Sep 3 2003 Class B means that all of the traffic to http www yourdomain com is politely and silen
  • java-使用BufferedWriter离线下载csv/Excel文件,使用response在线下载csv/Excel文件

    离线下载 Scheduled cron dmp task download task cron public void isRun throws IOException if null isDownload isDownload equal
  • 盘点 2012 年没落科技巨头

    当我们安然度过2012年12月21日 世界末日 的谣言已不攻自破时 在家电 IT 通信 互联网等科技领域 一些企业却正在经受着 末日征兆 的考验甚至正在走向 末日终结 开篇残酷的选择 与金融能源领域的企业不同 即使扩大到全球范围 也没有一家
  • Python中字符串切片

    在Python中 可以对字符串按自己需要切片 注意 1 第一个字符串排序为0 最后一个字符串为 1 2 切片时 从小切到大 3 切片时 不包含最后一个字符 举例 str 0123456789 print str 0 3 截取第一位到第三位的
  • Android面试必刷Framewrok面试题(附答案),打破面试难点(2023年最新版)

    最近收到身边很多人反馈 现在的android面试 大多数企业除了对求职者的语言和编码等基础能力提出要求外 越来越强调对于 Framework 层的理解和 UI 框架的掌控能力 而完整的项目经历和多端知识也成了重要的加分项 于是小编收拾了一下
  • 【跨模态】【对比学习】CLIP:文本监督CV的预训练(2021)

    文章目录 前言 一 整体架构 1 训练 2 测试 迁移学习zero shot 3 prompt engineering and ensembling 二 实验 1 few shot与zero shot的对比 2 Representation
  • C#实现多语言切换

    代码 https github com tangbb1 C shop tree master 思路描述 窗体的language属性修改为自己需要设定语言 localizable属性改为true 在窗体上进行英文编辑 即可生成对应的资源文件
  • osgearth消除近裁剪平面离物体太近时的裁剪问题

    This will mitigate near clip plane issues if you zoom in close to the ground LogarithmicDepthBuffer buf buf install view
  • JavaScript 新增两个原始数据类型Record 和 Tuple

    JavaScript即将推出两个新的数据类型 Record 和 Tuple 这俩是啥呢 其实就是一个只读的 Object 和 Array 其实在其它语言中已经有类似的数据类型了 例如 Python 中也有 Tuple 元祖 这一类型 作用也
  • 优雅的后端参数验证javax.validation

    为什么要用validator javax validation的一系列注解可以帮我们完成参数校验 免去繁琐的串行校验 不然我们的代码就像下面这样 PostMapping save serial public Object save Requ
  • EDA14--DC脚本实例

    这里写目录标题 一 示例1 同步设计 fifo1 二 示例2 异步设计 fifo2 三 具体操作 fifo1为例 DC的所有理论知识已经简单的概述完了 包括 DC简介概念流程 逻辑推断 DC脚本命令 最后给出DC的两个示例 下面是大的目录
  • 18650锂电池充电方案及保护板电路构思

    18650锂电池充电方案及保护板电路构思 一 电路参数 1 充电电源为USB电源 额定电压为5V 2 蓄电池为18650锂电池 3 7V 容量2600mAh 3 负载电机参数 二 电路板功能要求 1 充电电压保护 防止因选用错误的充电器 过
  • JSONObject出现重复引用$ref

    现象 保存的时候红框里内容是一样的 结果JSON toJSONString的时候第二个就变成了 ref 原因 JSONObject 默认开启引用检测 重复引用对象时会被 ref代替 返回的json对象出现 ref 对象 地址值 解决办法 S
  • PhpStorm 基本设置

    更换皮肤 File gt Settings gt Appearance gt Theme 字体 File gt Settings gt Editor gt Colors Font gt font 点save as 然后再自定义 typo设置
  • oracle和sqlite区别,数据库sqlserver与sqlite的区别

    sqlserver 与sqlite的区别 sqlserver是大型数据库 常用于企业级应用的后台数据存储 sqlite 是轻量级数据库 对小数据量的数据存储方便 文件型数据库 其语法区别大 比如查询前10条数据 sqlserver SELE
  • 聊聊Api接口优化的几个方法

    转载 聊聊Api接口优化的几个方法 知乎 作为记录 用于学习
  • Vendor ID对照表(不定期更新)

    Vendor ID对照表 不定期更新 可自行查询原网址 8086 Intel Corporation 0731 Jingjia Microelectronics Co Ltd 1DB7 Phytium Technology Co Ltd 1
  • 归一化函数 normalized()

    1 归一化定义与作用 归一化就是要把需要处理的数据经过处理后 通过某种算法 限制在你需要的一定范围内 首先归一化是为了后面数据处理的方便 其次是保证程序运行时收敛加快 归一化的具体作用是归纳统一样本的统计分布性 归一化在0 1之间是统计的概