噪声信号的卷积字典学习

alphacsc的Python项目详细描述


Build StatusTest coverage

这是一个执行移位不变量sparse dictionary learning的库,也称为 基于时间序列数据的卷积稀疏编码(csc)。 它包括许多不同的型号:

  1. 单变量csc
  2. 多变量csc
  3. 具有秩1约束的多变量csc [1]
  4. α稳定分布的单变量csc [2]

这些模型的数学描述是可用的。

安装

要安装此软件包,最简单的方法是使用pip。它会安装这个 包及其依赖项。setup.py依赖于numpycython用于安装,因此建议提前安装到 安装此软件包,请运行以下两个命令之一:

(最新稳定版本)

pip install numpy cython
pip install alphacsc

(开发版)

pip install numpy cython
pip install git+https://github.com/alphacsc/alphacsc.git#egg=alphacsc

如果您在计算机上没有管理员权限,请使用--user标志 使用pip。要升级,请使用pip提供的--upgrade标志。

要检查一切是否正常,您可以运行:

python -c 'import alphacsc'

它不应该给出任何错误消息。

快速启动

下面是一个简单介绍api的示例:

importnumpyasnpimportmatplotlib.pyplotaspltfromalphacscimportBatchCDL# Define the different dimensions of the problemn_atoms=10n_times_atom=50n_channels=5n_trials=10n_times=1000# Generate a random set of signalsX=np.random.randn(n_trials,n_channels,n_times)# Learn a dictionary with batch algorithm and rank1 constraints.cdl=BatchCDL(n_atoms,n_times_atom,rank1=True)cdl.fit(X)# Display the learned atomsfig,axes=plt.subplots(n_atoms,2,num="Dictionary")forkinrange(n_atoms):axes[k,0].plot(cdl.u_hat_[k])axes[k,1].plot(cdl.v_hat_[k])axes[0,0].set_title("Spatial map")axes[0,1].set_title("Temporal map")foraxinaxes.ravel():ax.set_xticklabels([])ax.set_yticklabels([])plt.show()

错误报告

使用github issue tracker报告错误。

引用我们的工作

如果您在项目中使用此代码,请考虑引用我们的工作:

[1]Dupré La Tour, T., Moreau, T., Jas, M., & Gramfort, A. (2018). Multivariate Convolutional Sparse Coding for Electromagnetic Brain Signals. Advances in Neural Information Processing Systems (NIPS).
[2]Jas, M., Dupré La Tour, T., Şimşekli, U., & Gramfort, A. (2017). Learning the Morphology of Brain Signals Using Alpha-Stable Convolutional Sparse Coding. Advances in Neural Information Processing Systems (NIPS), pages 1099–1108.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何使用Java中的扫描仪读取文本文件中的特定字符?   java如果我们在hibernate中开始事务但不提交它,会发生什么?   Azure CosmosDB Java Springboot中的无服务器帐户不支持spring boot设置提供吞吐量或容器自动导航   附加到新对象的Java注释?   java如何将自定义文本视图添加到。在Kotlin中添加通知操作   java Shibboleth添加_OpenSAMLcookies,导致HTTP头大小>8k   分布式传感器数据(~40Hz)的高效Java观测器设计   java如何在while循环外声明数组,但在while循环中初始化它?   用@XmlElementRef注释的java元素没有显示在JAXB编组字符串中?   java替换二维数组的值   java如何在任务栏上创建Windows7加载栏   java如何在组件注释bean中使用会话或RequestScope bean?   java netbeans freermarker插件错误:在实现版本中请求netbeans桥的插件Lexer   java谷歌地图方向。加载失败,返回服务器错误   java当我试图递归地计算两个值之间的整数之和时,为什么结果返回一个奇怪的值?   java如何通过html文件的用户获取运行时输入,以使用Jsoup进行解析?