噪声信号的卷积字典学习
alphacsc的Python项目详细描述
这是一个执行移位不变量sparse dictionary learning的库,也称为 基于时间序列数据的卷积稀疏编码(csc)。 它包括许多不同的型号:
这些模型的数学描述是可用的。
安装
要安装此软件包,最简单的方法是使用pip。它会安装这个 包及其依赖项。setup.py依赖于numpy和 cython用于安装,因此建议提前安装到 安装此软件包,请运行以下两个命令之一:
(最新稳定版本)
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. |