【Python机器学习】NMF——将NMF应用于模拟信号数据

假设我们对一个信号感兴趣,它是由三个不同信号源合成的:


import matplotlib.pyplot as plt
import mglearn


S=mglearn.datasets.make_signals()
plt.figure(figsize=(6,1))
plt.plot(S,'-')
plt.xlabel('Time')
plt.ylabel('Signal')
plt.show()

不幸的是,我们无法观测到原始数据,只能观测到三个信号的叠加混合。我们想要将混合信号分解为原始分量。

假设我们有许多不同的方法来观测混合信号,每种方法都为我们提供了一系列的测量结果:


A=np.random.RandomState(0).uniform(size=(100,3))
X=np.dot(S,A.T)
print('shape of measurements:{}'.format(X.shape))

我们可以用NMF来还原这三个信号:


nmf=NMF(n_components=3,random_state=42)
S_=nmf.fit_transform(X)
print('Recoveres signal shape:{}'.format(S_.shape))

为了对比,应用PCA,并对比NMF和PCA的信号活动:


pca=PCA(n_components=3)
H=pca.fit_transform(X)

models=[X,S,S_,H]
names=['Observations (first three measurements)',
       'True sourse',
       'NMF ','PCA ']
fig,axes=plt.subplots(4,figsize=(8,4),gridspec_kw={'hspace':.5},subplot_kw={'xticks':(),'yticks':()})

for model,name,ax in zip(models,names,axes):
    ax.set_title(name)
    ax.plot(model[:,:3],'-')
plt.show()

途中包含来自X 的100次测量里的3次用于参考。可以看到,NMF在发现原始信号源时得到了不错的结果,而PCA则失败了。要记住,NMF生成的分量是没有顺序的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IDEA中 pom.xml 设置自动提示

IDEA中 pom.xml 自动提示 IDEA中 pom.xml 自动提示设置如下: file–>Settings–>Build,Execution…–>Build Tools–>Maven–>Repositories 会看到类似表格的画面,内容是你的maven地址,选中后,右边有个Update的按…

深度学习-CPGNet部署运行

1、训练代码部署运行 1.1 部署 新建虚拟环境: conda create --name cpgnet-new python3.7 安装依赖: CUDA11.3 Pytorch1.12.1 PyYAML5.4.1 scipy1.3.1 nuscenes pytz rospkg pyquaternion opencv-python scikit-learn matplotlib tqdm cachetools编译安…

振弦式渗压计:土壤力学与地下水流动研究的关键工具

当谈论到地下水流动和土壤力学时,振弦式渗压计是一种至关重要的工具。这篇文章将探讨振弦式渗压计的原理、工作方式以及其在土壤力学和地下水流动研究中的重要性。 振弦式渗压计的原理 振弦式渗压计利用了振动传感器和压力传感器的组合来测量土壤中的水压力。其基本…

Python数据分析-二手车价格预测分析

一、研究背景 随着我国的机动车数量不断增长,人均保有量也随之增加,机动车以“二手车”形式在流通环节,包括二手车收车、二手车拍卖、二手车零售、二手车置换等环节的流通需求越来越大。二手车作为一种特殊的“电商商品”,因为其…

nacos的创建

nacos压缩包 链接:https://pan.baidu.com/s/1AYVKZvosDkcMMbTIB48Iew?pwd1234 提取码:1234 首先将下载好的nacos压缩包上传到linux环境中,然后解压缩(解压缩命令) tar -zxvf nacos-server-2.3.0.tar.gz解压成功后如…

美的集团员工自爆工资+年终奖收入明细,网友说:这待遇,老婆根本不让跳槽!...

发现需求:研究与实践是关键 在任何领域,只要深入研究,就会发现无数的需求。如果没有发现需求,那只能说明对行业的了解还不够透彻。学校通过考试发现学生的问题,职场上也一样,通过不断实践发现问题。理论知识…

[职场] 提升学历考研再就业有必要吗 #其他#知识分享

提升学历考研再就业有必要吗 有很多人觉得自己学历不够高,求职第一关可能就通过不了。因此想要继续攻读,最近有人问小编提升学历考研有必要吗?“硕士学历和三年的工作经验哪个更重要?” 这个还是要针对具体岗位而言。综合类型的岗位往往不需…

OpenSSL命令手册

正文共:999 字 10 图,预估阅读时间:1 分钟 我们前面编译安装了OpenSSL命令工具(CentOS编译安装OpenSSL 3.3.1),这是一个强大的安全套接字层密码库,可以用于实现各种加密和认证协议,如…

工程文档CAD转换必备!在 Java 中将 DWG 转换为 JPG

Aspose.CAD 是一个独立的类库,以加强Java应用程序处理和渲染CAD图纸,而不需要AutoCAD或任何其他渲染工作流程。该CAD类库允许将DWG, DWT, DWF, DWFX, IFC, PLT, DGN, OBJ, STL, IGES, CFF2文件、布局和图层高质量地转换为PDF和光栅图像格式。 Aspose AP…

金融行业专题|某头部期货基于 K8s 原生存储构建自服务数据库云平台

为了进一步提升资源交付效率,不少用户都将数据库应用从物理环境迁移到容器环境。而对于 Kubernetes 部署环境,用户不仅需要考虑数据库在性能方面的需求,还要为数据存储提供更安全、可靠的高可用保障。 近期,某头部期货机构基于 S…

HTML静态网页成品作业(HTML+CSS)——家乡泉州介绍网页(3个页面)(表格布局)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,table布局,未使用Javacsript代码,共有3个页面。…

想拥有一个独一无二的AI人物?Lora炼丹训练模型教程来啦

之前答应过大家放出来的Lora本地训练教程,终于写好啦。 会训练lora,代表着你可以生成属于你的独一无二的角色。 你可以让这个角色在各种不同背景的地方出现,可以让它摆出各种姿势,满足你的无限幻想。 还有的商家,用…

24.6.16

星期一: 补cf global round26 C2 cf传送门 思路:有效操作2只有一次,且反转后不会再出现负数,即后面能贡献 2^n-i个方案,再乘上前面 2^(k>0的次数) 代码如下&…

Linux源码阅读笔记05-进程优先级与调度策略-实战分析

基础知识 Linux 内核当中有 3 种调度策略: SCHED_OTHER 分时调度策略;SCHED_FIFO 实时调度策略,先到先服务;SCHED_RR 实时调度策略,时间片轮转。 如果有相同优先级的实时进程(根据优先级计算的调度权值是…

用一个实例看如何分享大量照片 续篇一

继续上篇的实例分享,在此罗列一些应该注意的细节,以便在下次可以更加省时省力。 最重要的是呈现构想,如按活动/主题、班级/板块、地区/国家等等,这些都应该事先计划好,事后改动工作量巨大,因为太容易出错&a…

redis高可用-主从同步

目录 一:背景 二:实现方式 三:实际使用 一:背景 上一节我们介绍了centos下redis下的安装配置,是在单台服务器部署一个redis服务,这种模式是单机模式下使用的,如果出现服务故障,re…

windows11关闭microsoft defender实时保护后会自动打开,怎么不让他打开

Windows 11中关闭Microsoft Defender的实时保护 打开windows安全中心 --> 点击病毒和威胁防护 --> 点击管理设置 -->关闭实时保护 单关闭后系统可能会在一段时间后自动重新开启以确保系统安全。如果你确实需要永久关闭实时保护,可以尝试以下方法。但请注…

RecyclerVIew->加速再减速的RecyclerVIew平滑对齐工具类SnapHelper

XML文件 ItemView的XML文件R.layout.shape_item_view <?xml version"1.0" encoding"utf-8"?> <FrameLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"100dp"android:layout_heig…