关于矩阵的归一化

关于矩阵的归一化最近在看Yang大牛稀疏表示论文的代码,发现里面很多的操作的用到了矩阵的列归一化,这里谈一谈列归一化的实现,以及其带来的好处。矩阵的列归一化,就是将矩阵每一列的值,除以每一列所有元素平方和的绝对值,这样做的结果就是,矩阵每一列元素的平方和为1了。举个例子,矩阵[1,2,3]’,将其归一化的结果就是[0.2673,0.5345,0.8018]。其平方和就为1了。Y

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

最近在看Yang大牛稀疏表示论文的代码,发现里面很多的操作的用到了矩阵的列归一化,这里谈一谈列归一化的实现,以及其带来的好处。

矩阵的列归一化,就是将矩阵每一列的值,除以每一列所有元素平方和开根号,这样做的结果就是,矩阵每一列元素的平方和为1了。

举个例子,矩阵[1,2,3]’,将其归一化的结果就是[0.2673,0.5345,0.8018]。其平方和就为1了。

Yang在代码中,将那些平方和为0,以及平方和很小的列向量的剔除了,不用做训练,所以最后训练样本矩阵中的每一列就是一个训练图像块,行数代表了图像块的大小。

之前一直不清楚,为什么要做这么多的归一化,直到想到了对称矩阵(请原谅数学不好的我,在理解的路上磕磕绊绊)。

假设通过上述归一化处理的样本集合为X,x的没一列的平方和都是1,假设X是25*1000的一个矩阵好了,那么X‘为一个1000*25的矩阵,Yang等人的方法里用到了

A=X’*X。那么通过上面的那些变化,X的每列元素的平方和都是1,那么A的对角线元素都是1,且A是关于对角线对称的。那么A就是一个对角线元素全为1的对称矩阵,而实对称矩阵具有如下的性质:

关于矩阵的归一化

这就为之后的处理奠定了基础。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183109.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 实现MyBatis批量插入

    ServiceintcreateList(List<ProductDeviceEntity>roductDeviceEntityList);ServiceImpl @Override publicintcreateList(List<ProductDeviceEntity>roductDeviceEntityList){ log.info(…

    2022年4月9日
    51
  • BlueZ_bluebonnet

    BlueZ_bluebonnet一、BlueZ在ubuntuPC上的基础应用1、bluez的安装及基本功能dong@ubuntu:~/bluez$lsbluez-5.47.tar.xzSPP-loopback.pydong@ubuntu:~/bluez$tarxvfbluez-5.47.tar.xzdong@ubuntu:~/bluez/bluez-5.47$./configure–pr…

    2022年10月22日
    0
  • pycharm结果显示窗口_pycharm怎么显示图片

    pycharm结果显示窗口_pycharm怎么显示图片问题描述在电脑中重新安装Anaconda3&PyCharm后,运行原来的程序画图时出现了下图界面。不能弹出如下图所示的“figure”窗口。解决方法:这是因为PyCharm在Sciview中开放它。具体操作步骤如下所示:1、“File—&gt;Settings”,打开Settings窗口。2、找到“PythonScientific”,去除右边候选框中的勾号。…

    2022年8月25日
    4
  • java策略模式例子(一个完整的java程序示例)

    以一个顾客价格计算策略为背景,写一个策略模式的demo参考代码:https://github.com/zhang-xiaoxiang/DesignPatterns23没有用策略模式我们一般是下面的写法,直接写一个类,在类里面直接写策略算法(功能实现)//packagecom.demo.strategy;/***NoStrategy:没有策略的做法*实现起来比较容…

    2022年4月14日
    51
  • PHP程序开发之使用header定义一个php页面为utf-8编码或GBK编码「建议收藏」

    PHP程序开发之使用header定义一个php页面为utf-8编码或GBK编码「建议收藏」php页面为utf-8编码 header(“Content-type:text/html;charset=utf-8”); php页面为gbk编码 header(“Content-type:text/html;charset=gb2312”); php页面为big5编码 header(“Content-type:text/html;charset=b

    2022年7月11日
    15
  • 字符串全排列cpp_输出字符串的全排列

    字符串全排列cpp_输出字符串的全排列String对象描述字符串是JavaScript的一种基本的数据类型String类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串。需要注意的是:JavaScript的字符串是不可变的(immutable),String类定义的方法都不能改变字符串的内容。像String.toUpperCase()这样的方法,返回的是全新的字符串,而不是修改原始字符串。String对象属性属性描述constructor对创建该对象的函数的引用

    2025年6月20日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号