噪声信号的卷积字典学习

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如何格式化servlet响应以生成HTML中“accept”参数可接受的媒体类型?   java如何使用JasperReports为单个报表传递多个结果集?   EclipseVBA到JAVA链接   java如何为Gradle中的不同配置配置PMD规则集?   在给出正确答案之前,是否要求回答?Java Eclipse   java查询SearchView崩溃(尝试实现SearchView操作栏)   java为什么跳过我的IF语句?   java循环以获取与输入值最接近的对象   java默认构造函数真正做什么?   java我需要测试类中的测试方法吗   java如何在代码中滚动滚动窗格?   java我需要获得发布和调试证书指纹的帮助   javascript如何在JS中取消Java“DES/CBC/PKCS5Padding”?