首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在连续数据上使用scikit学习OrthogonalMatchingPursuit模块

在连续数据上使用scikit学习OrthogonalMatchingPursuit模块
EN

Stack Overflow用户
提问于 2016-12-14 09:18:57
回答 1查看 391关注 0票数 1

我想用匹配追踪来构造连续神经数据的连续时间窗口的稀疏表示,并最终检测数据中发生的事件。我附上了我的一些数据的快照,它显示了我的波包检测器的输出(原始数据是蓝色的,40-100 of希尔伯特包络是红色的,波纹管是多色的)。正如你所看到的,它包含振荡爆发(我们称之为波阵),我想找出稀疏的表示。最后,我想使用这些稀疏表示来制作波包检测器。目前,我使用小波变换的力量来检测波包,并且我正在试图观察匹配追踪是否会更精确和计算效率更高(我有相当高的假阳性率)。

我的理解是,在scikit的OMP模块中,没有内置于字典中的内容(比如Gabor、DCT、wpsym等等)。在其他匹配的追踪工具箱中很常见。相反,我们必须首先根据示例数据和培训标签来训练我们自己的字典。我觉得这很有吸引力,因为我们可以生成我们自己的字典,但我很难理解如何用我的数据来做到这一点。

文档提供的示例中,数据是用make_sparse_coded_signal生成的。这给了我们y,X,w,从这里我们可以训练一个模型。我的神经数据是一个连续的追踪。我可以把它划分为时间窗口(假设500个样本长),这样我就可以在每个500个样本长窗口上单独运行OMP。但是我怎么拿到标签呢?如何根据我的数据构造y,X和w?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-19 06:04:52

我相信我知道我自己问题的答案。它很糟糕,因为你不能用你的数据构造y,X,w。您试图通过将一组字典元素(X)乘以一组权重(w),从而使y= Xw来重构数据(y)。

因此,您必须从预先设计的字典(X)开始,然后运行

代码语言:javascript
复制
omp = OrthogonalMatchingPursuit(n_nonzero_coefs=n_nonzero_coefs)
omp.fit(X, y)

去找那些人。

我误以为您可以从这个函数中获得一个最佳稀疏字典,因为我阅读了文档中引用的,它确实提供了一个misled算法,用于生成高效的稀疏字典,然后可以用于正交匹配搜索。

如果这里有什么不对的地方,请有人指正我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41138832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档