任何关于算法、编程、AI行业知识或博客内容的问题,可以随时扫码关注公众号「图灵的猫」,加入”学习小组“,沙雕博主在线答疑~此外,公众号内还有更多AI、算法、编程和大数据知识分享,以及免费的SSR节点和学习资料。其他平台(知乎/B站)也是同名「图灵的猫」,不要迷路哦~

最近在学习矩阵分析时了解到了NMF这个方法,发现其潜力巨大,应用场景广阔。目前的算法场景中,NMF可以应用的领域很广,源于其对事物的局部特性有很好的解释。在众多应用中,NMF能被用于发现数据库中的图像特征,便于快速自动识别应用;能够发现文档的语义相关度,用于信息自动索引和提取;能够在DNA阵列分析中识别基因等等。我们将对此作一些大致的描述。但是最有效的就是图像处理领域,是图像处理的数据降维和特征提取的一种有效方法。

1、特征学习

这一点思想类似(Principal Component Analysis)主成分分析,但是在实际工程环境当中都要比PCA效果要好,其中思想如下:

  • 测试数据在NMF算法上学习 Vtrain→dictionaryW
  • 利用W去分解新的测试examples Vn:
vn≈∑n=1Khknwk,其中kn>=0
  • 把hn作为example n的特征向量

下面是对人物脸部特征学习的NMF算法,图为把人的脸部的不同特征显示出来:

2、图像分析

NMF最成功的一类应用是在图像的分析和处理领域。图像本身包含大量的数据,计算机一般将图像的信息按照矩阵的形式进行存放,针对图像的识别、分析和处理也是在矩阵的基础上进行的。这些特点使得NMF方法能很好地与图像分析处理相结合。人们已经利用NMF算法,对卫星发回的图像进行处理,以自动辨别太空中的垃圾碎片;使用NMF算法对天文望远镜拍摄到的图像进行分析,有助于天文学家识别星体;美国还尝试在机场安装由NMF算法驱动的识别系统,根据事先输入计算机的恐怖分子的特征图像库来自动识别进出机场的可疑恐怖分子。

学术界中:(1)NMF首次被Lee教授用于处理人脸识别。(2)LNMF被宋教授后面提出用于提取人脸子空间,将人脸图像在特征空间上进行投影,得到投影系数作为人脸识别的特征向量,用来进行人脸识别。一定程度上提高了识别率。(3)GNMF被杨教授提出,该算法是基于gamma分布的NMF进行构建特征子空间,采用最小距离分类对ORL人脸库部分图像进行识别。

对于人脸识别,其中以LNMF最为有效突出,比普通的NMF高效且精度高。

3、话题识别

文本在人类日常接触的信息中占有很大分量,为了更快更精确地从大量的文本数据中取得所需要的信息,针对文本信息处理的研究一直没有停止过。文本数据不光信息量大,而且一般是无结构的。此外,典型的文本数据通常以矩阵的形式被计算机处理,此时的数据矩阵具有高维稀疏的特征,因此,对大规模文本信息进行处理分析的另一个障碍便是如何削减原始数据的维数。NMF算法正是解决这方面难题的一种新手段。NMF在挖掘用户所需数据和进行文本聚类研究中都有着成功的应用例子。由于NMF算法在处理文本数据方面的高效性,著名的商业数据库软件Oracle在其第10版中专门利用NMF算法来进行文本特征的提取和分类。为什么NMF对于文本信息提取得很好呢?原因在于智能文本处理的核心问题是以一种能捕获语义或相关信息的方式来表示文本,但是传统的常用分析方法仅仅是对词进行统计,而不考虑其他的信息。而NMF不同,它往往能达到表示信息的局部之间相关关系的效果,从而获得更好的处理结果。

话题识别的话跟Probabilistic Latent Semantic Analysis概率隐语义分析相似。

  • 首先假设V=[vfn]是一个单词-文件的矩阵,vfn是单词mf在文件dn的出现频率;
  • 假设wfk=P(tk)P(mf|tk)和hkn=P(dn|tk);
  • 那么模型可以变成:
  • [P(mf,dn)]=[vfn]=WH

在这里,wk 可以被解释成为与数据hk的主题相关度

4、语音处理

语音的自动识别一直是计算机科学家努力的方向,也是未来智能应用实现的基础技术。语音同样包含大量的数据信息,识别语音的过程也是对这些信息处理的过程。NMF算法在这方面也为我们提供了一种新方法,在已有的应用中,NMF算法成功实现了有效的语音特征提取,并且由于NMF算法的快速性,对实现机器的实时语音识别有着促进意义。也有使用NMF方法进行音乐分析的应用。复调音乐的识别是个很困难的问题,三菱研究所和MIT(麻省理工学院)的科学家合作,利用NMF从演奏中的复调音乐中识别出各个调子,并将它们分别记录下来。实验结果表明,这种采用NMF算法的方法不光简单,而且无须基于知识库。

NMF处理声频产生局部特征数据

5、时序分割(temporal segmentation)

这里的话思想可以引用隐马尔科夫模型hidden markov models HMM,可以处理时间序列的数据,例如音频视频:

NMF可以通过阈值设置把文件序列数据分割成不同兴趣主题,下面为挖掘电影剪辑结构的一个例子:

同样基于时序分割的想法下有了这样一个语音处理项目,对很多人说的一段话进行语音特征分割,识别出每段话属于哪个人说的:

6、聚类

聚类最常用的方法是K-means,俗称K均值算法,NMF算法比K-means算法更优之处因为它是一种软聚类方法(也就是一个元素可以被分为多种类型,不是K-means那种非彼则此),对于有可能重复的聚类方法NMF是简单高效哦。

半年前做姓名聚类的时候一个老外的名字叫 Handsome Yokota, 有时候又写成Hand. Yokota,当大量这种情况出现对于聚类是很不和谐的,用软聚类可以有效过滤这种情况,降低后续数据处理压力。

7 机器人控制

如何快速准确地让机器人识别周围的物体对于机器人研究具有重要的意义,因为这是机器人能迅速作出相应反应和动作的基础。机器人通过传感器获得周围环境的图像信息,这些图像信息也是以矩阵的形式存储的。已经有研究人员采用NMF算法实现了机器人对周围对象的快速识别,根据现有的研究资料显示,识别的准确率达到了80%以上。

8、生物医学工程和化学工程

生物医学和化学研究中,也常常需要借助计算机来分析处理试验的数据,往往一些烦杂的数据会耗费研究人员的过多精力。NMF算法也为这些数据的处理提供了一种新的高效快速的途径。科学家将NMF方法用于处理核医学中的电子发射过程的动态连续图像,有效地从这些动态图像中提取所需要的特征。NMF还可以应用到遗传学和药物发现中。因为NMF的分解不出现负值,因此采用NMF分析基因DNA的分子序列可使分析结果更加可靠。同样,用NMF来选择药物成分还可以获得最有效的且负作用最小的新药物。

9、滤波和源分离

参考 Independent Component Analysis, ICA 独立成分分析

而滤波当中一篇SIC使用了一个例子,就是使用深度轮廓进行动作识别Action Recognition using depth silhouettes,NMF算法作为特征学习的算法。最后论文使用微软开源的Kinect的骨骼特征、PCA算法、NMF算法进行轮廓特征学习对比,发现NMF的精确率最高91%,而微软开源的骨骼特征识别度只达到78%。

具体的NMF讲解请参考:点击打开链接

NMF(非负矩阵分解)的场景应用相关推荐

  1. 独立成分分析ICA、因子分析、LDA降维、NMF非负矩阵分解

    独立成分分析ICA.因子分析.LDA降维.NMF非负矩阵分解 目录 独立成分分析ICA.因子分析.LDA降维.NMF非负矩阵分解 独立成分分析ICA

  2. NMF 非负矩阵分解(Non-negative Matrix Factorization)实践

    1. NMF-based 推荐算法 在例如Netflix或MovieLens这样的推荐系统中,有用户和电影两个集合.给出每个用户对部分电影的打分,希望预测该用户对其他没看过电影的打分值,这样可以根据打 ...

  3. NMF非负矩阵分解初探

    NMF非负矩阵分解初探 NMF非负矩阵分解初探 简介 NMF信号分解 最优化问题NMF 简介 数据可以表示为一个矩阵 VVV,列 vn" role="presentation&qu ...

  4. 【机器学习】NMF(非负矩阵分解)

    写在篇前   本篇文章主要介绍NMF算法原理以及使用sklearn中的封装方法实现该算法,最重要的是理解要NMF矩阵分解的实际意义,将其运用到自己的数据分析中! 理论概述   NMF(Non-nega ...

  5. NMF 非负矩阵分解 -- 原理与应用

    1.原理 发现写关于非负矩阵的博文还是蛮多的,还是以自己的角度总结一下自己的最近看的若干东西以及对非负矩阵分解有用的一些资料链接.NMF,全称为non-negative matrix factoriz ...

  6. NMF 非负矩阵分解

    矩阵: 行为doc, 列为word, 构成一个矩阵A  n * m. n个doc,m个word NMF: A(nm) = B(nq) * C(qm) 其中: B称作权重矩阵, 每行为一个doc, 每列 ...

  7. 【降维之NMF】NMF(非负矩阵分解)实例

    数据介绍: NMF人脸数据特征提取目标:已知 Olivetti 人脸数据共400个,每个数据是 64*64 大小. 由于NMF分解得到的 W 矩阵相当于从原始矩阵中提取的特征,那么就可以使用NMF对4 ...

  8. sklearn基础篇(十)-- 非负矩阵分解与t-SNE

    1 非负矩阵分解(NFM) NMF(Non-negative matrix factorization),即对于任意给定的一个非负矩阵V\pmb{V}VVV,其能够寻找到一个非负矩阵W\pmb{W}W ...

  9. 10 降维算法(PCA降维/LDA分类/NMF非负矩阵)

    数据降维简介 降维就是一种对高维度特征数据预处理方法.降维是将高维度的数据保留下最重要的一些特征,去除噪声和不重要的特征,从而实现提升数据处理速度的目的. 降维具有如下一些优点: 减少所需的存储空间. ...

  10. 稀疏表示(5)之帕德博恩轴承数据集测试非负矩阵分解

    稀疏表示(5)之帕德博恩轴承数据集测试非负矩阵分解 1. 非负矩阵分解的数学原理 1.1 基本数学原理 1.1.1 基本思想 1.1.2 局部特征提取能力 1.2 NMF的通俗理解 1.3 digit ...

最新文章

  1. 程序员效率低下的35个坏习惯
  2. QCon上海2015十大热点
  3. 武汉专科计算机学校排名2015,武汉前十名的大专:2021武汉职校排名榜
  4. 深度解读NLP文本情感分析Pipeline
  5. P3435-[POI2006]OKR-Periods of Words【KMP】
  6. ajax读取.txt文件出现乱码
  7. TCP/IP协议族之运输层(TCP流量控制和拥塞控制 [1])
  8. windows-server-2012R2离线中文语言包安装
  9. 第一节 生命周期和Zend引擎
  10. .NET Framework3.0答疑
  11. Spring 事务失效的 8 大场景,看看你都遇到过几个?
  12. StarkWare发布零知识证明工具链
  13. html5 显示圆形图片,《小白HTML5成长之路40》怎样显示圆角图片
  14. 2020区块链百强榜暨战疫优秀企业评选|链塔智库
  15. VNN结合金蝶Kis9.1专业版Sp1的应用及解决方案
  16. 计算机打开资源管理器停止工作,windows资源管理器已停止工作,教您windows资源管理器已停止工作怎么解决...
  17. 为植物种子备份 “末日种子库”收集样本逾百万
  18. 在线支付功能实现代码
  19. 静心解压,或许你需要一个电子木鱼
  20. 【SSH框架/国际物流商综平台】-05 单点登录 用户-角色-权限分配 Ztree.js structs2.0 异常框架 细粒度权限控制 BaseEntitity中createby degree

热门文章

  1. 人像处理:不要用减淡工具了!用柔光叠加去擦!加深也不如正片叠底
  2. jackson set properties to default value (取消让jackson 赋予默认值)
  3. $.each(callback)方法
  4. [转]使用RDLC报表(1) -(4)
  5. 在回传时保持滚动位置
  6. [转]一个软件设计的全过程(基于UML)
  7. 嵌入式基础面八股文——进程与线程的基本概念(1)
  8. node-amqp 使用fanout发布订阅rabbitmq消息
  9. day69-oracle 22-DBCA
  10. HDU 2255 - 奔小康赚大钱