关于矩阵的归一化

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


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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Python 学习笔记 列表 xxx XXX

    Python 学习笔记 列表 xxx XXXPython学习笔记列表xxxXXXbicycles=[‘trek’,’cannondale’,’redline’,’specialized’]print(bicycles)print(bicycles[0])print(bicycles[0].title())print(bicycles[-1])names=[‘wenwen’,’juanjuan’,’yuyu’]forxinnames: prin…

    2022年8月22日
  • vfs_fsync[通俗易懂]

    vfs_fsync[通俗易懂]在Linux系统中,对文件系统上文件的读写一般是通过页缓存(pagecache)进行的(DirectIO除外),这样设计的可以延时磁盘IO的操作,从而可以减少磁盘读写的次数,提升IO性能。但是性能和可靠性在一定程度上往往是矛盾的,虽然内核中设计有一个工作队列执行赃页回写同磁盘文件进行同步,但是在一些极端的情况下还是免不了掉电数据丢失。因此内核提供了sync、fsync、fdatasync和msync系统调用用于同步,其中sync会同步整个系统下的所有文件系统以及块设备,而fsync和fdatasync只针

    2022年5月7日
  • 软件测试工程师女生_能进阿里的程序员都很强吗

    软件测试工程师女生_能进阿里的程序员都很强吗简单的先说一下,坐标杭州,14届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少)

    2022年10月14日
  • ElementUI响应式布局bug、其中中el-col-sm-0会导致响应式布局失效的解决方法

    ElementUI响应式布局bug、其中中el-col-sm-0会导致响应式布局失效的解决方法如下布局,如果将:sm=”0″则会导致456始终不显示下面得响应式布局目的就是希望在sm也就是屏幕宽度在小于992px时将456隐藏,不显示,但是如果这样做就会出现bug<el-col:xs=”24″:sm=”24″:md=”17″:lg=”19″:xl=”20″>123</el-col><el-col:xs=”0″:sm=”0″:md=”7″:lg=”5″:xl=”4″>456</el-col>完整得例子新建一个demo

    2022年9月23日
  • vue的双向绑定原理及实现_vue绑定数据

    vue的双向绑定原理及实现_vue绑定数据一、什么是双向绑定我们先从单向绑定切入单向绑定非常简单,就是把Model绑定到View,当我们用JavaScript代码更新Model时,View就会自动更新双向绑定就很容易联想到了,在单向绑定的基础上,用户更新了View,Model的数据也自动被更新了,这种情况就是双向绑定举个栗子当用户填写表单时,View的状态就被更新了,如果此时可以自动更新Model的状态,那就相当于我们把Model和View做了双向绑定关系图如下二、双向绑定的原理是什么我们都知道Vue是数

    2022年9月14日
  • python爬虫入门

    python爬虫入门毕设是做爬虫相关的,本来想的是用java写,也写了几个爬虫,其中一个是爬网易云音乐的用户信息,爬了大概100多万,效果不是太满意。之前听说Python这方面比较强,就想用Python试试,之前也没用过

    2022年7月5日

发表回复

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

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