# Recovering Simultaneously Structured Data via Non-Convex Iteratively Reweighted Least Squares - SimIRLS
[Christian Kümmerle](http://ckuemmerle.com) and [Johannes Maly](https://johannes-maly.github.io)
This repository contains the code for the *NeurIPS 2023* paper [*Recovering Simultaneously Structured Data via Non-Convex Iteratively Reweighted Least Squares*](https://openreview.net/pdf?id=50hs53Zb3w) [[KM23]](#KM23), which studies an iteratively reweighted least squares approach (`IRLS` or `IRLS-LRRS`) based on a smoothing strategy and a non-convex surrogate modelling for the problem of recovering simultaneously low-rank and row-sparse matrices from linear masureuments.
[[arXiv]](https://arxiv.org/pdf/2306.04961.pdf) [[Paper at OpenReview]](https://openreview.net/pdf?id=50hs53Zb3w)
Reproducibile experiments and algorithmic implementations are provided in MATLAB.
### Citation
Please cite this work as:
```
@inproceedings{KuemmerleMaly2023,
title = {Recovering Simultaneously Structured Data via Non-Convex Iteratively Reweighted Least Squares},
author = {K{\"u}mmerle, Christian and Maly, Johannes},
booktitle = {Advances in Neural Information Processing Systems (NeurIPS)},
volume = {36},
year = {2023}
}
```
## Installation
1. Obtain files of repository via either:
- Clone repository via `git clone --recurse-submodules https://github.com/ckuemmerle/simirls.git` (note the flag `--recurse-submodules` due to usage of submodule [riemannian_thresholding](https://github.com/ckuemmerle/riemannian_thresholding)))
- Download files and unpack into your MATLAB path, then download [riemannian_thresholding](https://github.com/ckuemmerle/riemannian_thresholding) and unpack into `/algorithms/riemannian_thresholding`.
2. Run `setup.m` from main folder of repository as current MATLAB folder.
## Usage
* `demo_LRRS_Gaussian_rank1_IRLS`: Minimal example of how to use `IRLS-LRRS` [[KM23]](#KM23) to solve a randomly generated simultaneous low-rank and row-sparse recovery problem (Gaussian measurements).
* `demo_LRRS_Gaussian_rank1`: Also runs `SPF` [[LWB18]](#LWB18) and `RiemAdaIHT` [[EKPU23]](#EKPU23) alongside of `IRLS-LRRS` for problem above.
* `run_single_Example_LRRS`: Run to choose one of the problem setups of folder `/Examples/` via text input. Use repository's main folder as current folder when doing this.
### Subfolders
* `/Examples`: Contains files to define the parameters for various example problem setups
* `/algorithms`: Contains algorithm implementations
* `/experiment_setup`: Code to setup and run experiments
* `/experiments`: Scripts to load data and reproduce experiments of Figures 1-7 in [[KM23]](#KM23)
* `/results`: Plots containing experimental results of Figures 1-7 of [[KM23]](#KM23)
* `/utilities`: Contains various helper functions
Please contact the authors [[KM23]](#KM23) for access to the original data for phase transitions experiments of Figure 1-2, 4-5 in [[KM23]](#KM23).
## List of algorithms
* `IRLS` (or `IRLS-LRRS`): *Iteratively Reweighted Least Squares (for Low-Rank and Row-Sparse recovery)*, Algorithm 1 of [[KM23]](#KM23).
* `SPF`: *Sparse Power Factorization* [[LWB18]](#LWB18) in the version of Algorithm 4 of [[LWB18]](#LWB18) (`rSPF_HTP`).
* `RiemAdaIHT`: *Adaptive Riemannian Iterative Hard Thresholding* as used in [[EKPU23]](#EKPU23), cf. also [repository here](https://github.com/maxpfeffer/riemannian_thresholding).
## References
- **[KM23]** Christian Kümmerle and Johannes Maly, [**Recovering Simultaneously Structured Data via Non-Convex Iteratively Reweighted Least Squares**](https://openreview.net/pdf?id=50hs53Zb3w). _NeurIPS 2023_, 2023. <a name="KM23"></a>
- **[EKPU23]** Henrik Eisenmann, Felix Krahmer, Max Pfeffer, and André Uschmajew. [**Riemannian thresholding methods for row-sparse and low-rank matrix recovery**](https://doi.org/10.1007/s11075-022-01433-5). _Numerical Algorithms_, 93 (2):669–693, 2023. <a name="EKPU23"></a>
- **[LWB18]** Kiryung Lee, Yihong Wu, and Yoram Bresler. [**Near-optimal compressed sensing of a class of sparse low-rank matrices via sparse power factorization**](https://doi.org/10.1109/TIT.2017.2784479). IEEE Transactions on Information Theory, 64(3):1666–1698, 2018. <a name="LWB18"></a>
没有合适的资源?快使用搜索试试~ 我知道了~
非凸迭代加权最小二乘法恢复同时结构化数据MATLAB实现.zip
共58个文件
m:45个
eps:4个
fig:4个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 57 浏览量
2024-03-11
20:47:58
上传
评论 1
收藏 506KB ZIP 举报
温馨提示
1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 5.作者介绍:某大厂资深算法工程师,从事Matlab算法仿真工作10年;擅长智能优化算法、神经网络预测、信号处理、元胞自动机等多种领域的算法仿真实验,更多仿真源码、数据集定制私信+。
资源推荐
资源详情
资源评论
收起资源包目录
非凸迭代加权最小二乘法恢复同时结构化数据MATLAB实现.zip (58个子文件)
非凸迭代加权最小二乘法恢复同时结构化数据MATLAB实现
Examples
LRRS_Gaussian_illcond_def.m 2KB
LRRS_Gaussian_rank5_convg_plot_def.m 2KB
LRRS_Gaussian_phasetransition_def.m 2KB
LoadExampleDefinitions.m 972B
LRRS_Gaussian_rank5_obj_tracking_rec_def.m 2KB
SelectExample.m 1KB
LRRS_GRankOne_rank1_def.m 2KB
LRRS_Gaussian_rank1_def.m 2KB
LRRS_Gaussian_rank1_noisy_def.m 2KB
LRRS_Gaussian_rank5_def.m 2KB
LRRS_Gaussian_rank5_obj_tracking_def.m 2KB
LRRS_RankOneFourier_rank1_def.m 2KB
algorithms
run_LRJS_algos.m 6KB
SPF
rSPF
getGr.m 497B
LeastSquares.m 483B
rSPF.m 2KB
getFr.m 493B
B_HTP.m 956B
IRLS
tangspace_to_matrixspace.m 777B
set_weight_infovec.m 2KB
IRLS_LRRS.m 11KB
compute_Cmat_LRRS.m 2KB
get_weight_vec.m 3KB
weight_op_lowrank_prec.m 6KB
getDefaultOpts_IRLS.m 4KB
get_rankobjective.m 3KB
matrixspace_to_tangspace.m 1KB
get_Tk_matrices.m 2KB
compute_Umat_LRRS.m 761B
update_sparspara.m 1KB
compute_Vmat_LRRS.m 765B
riemannian_thresholding
experiment_setup
run_instances_LRRS.m 7KB
run_methods_LRRS.m 3KB
wrapper_experiment_LRRS.m 3KB
compute_measurements_LRRS.m 1KB
prepare_samplemodel_LRRS.m 676B
SampleGaussianPhi_matrix.m 663B
snippet_LRRS_Gaussian_rank1_successrates.m 1KB
experiment_LRRS_Gaussian_rank1_successrates.m 2KB
sample_MatrixRecovery.m 1KB
sampling_X_jointsparselowrank.m 3KB
compute_measurements_LRRS_sparsitys.m 1KB
experiment_LRRS_Gaussian_successrates.m 2KB
experiments
LRRS_Figure7_noisy_Gaussian.tex 4KB
LRRS_Gaussian_rank5_convg_plot.pdf 92KB
LRRS_Figure3_Gaussian_rank5_convg_plot.fig 28KB
LRRS_Figure3_Gaussian_rank5_convg_plot.eps 134KB
LRRS_Gaussian_rank5_convg_plot.eps 53KB
LRRS_Figure7_noisy_Gaussian.fig 33KB
LRRS_Gaussian_rank5_obj_tracking.fig 32KB
LRRS_Figure3_Gaussian_rank5_convg_plot.pdf 53KB
LRRS_Gaussian_rank5_convg_plot.fig 62KB
LRRS_Gaussian_rank5_obj_tracking.eps 176KB
LRRS_Figure7_noisy_Gaussian.eps 149KB
LRRS_Figure7_noisy_Gaussian.pdf 63KB
demo_LRRS_Gaussian_rank1.m 2KB
demo_LRRS_Gaussian_rank1_IRLS.m 1KB
README.md 4KB
共 58 条
- 1
资源评论
matlab科研助手
- 粉丝: 1w+
- 资源: 2085
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功