AGEM: Solving Linear Inverse Problems via Deep Priors and Sampling
Authors: Bichuan Guo, Yuxing Han, Jiangtao Wen
NeurIPS 2019 | Conference PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We demonstrate competitive results for signal denoising, image deblurring and image devignetting. Our approach outperforms the state-of-the-art DAE-based methods on all three tasks. 5 Experimental results. We compare our approach with state-of-the-art DAE-based methods, including DMSP, DAEP, and ADMM, on various noise-blind tasks: signal denoising, image deblurring and image devignetting. For each task, we train a single DAE and use it to evaluate all methods, so that they compete fairly. Table 1: Signal denoising, average RMSE of the test set. Table 3: Average PSNR for image deblurring. Table 4: Average PSNR for image devignetting. Ablation study. We study the behavior of AGEM in detail under the settings of the previous experiment. |
| Researcher Affiliation | Academia | Bichuan Guo Tsinghua University gbc16@mails.tsinghua.edu.cn Yuxing Han South China Agricultural University yuxinghan@scau.edu.cn Jiangtao Wen Tsinghua University jtwen@tsinghua.edu.cn |
| Pseudocode | Yes | Algorithm 1 Estimate latent signal x and noise level Σ with the proposed methods AGEM and AGEM-ADMM. τ is the EM iteration number, initialized as 0. Σ(1) is initialized as σ2 tr I. 1: Train a DAE with quadratic loss and noise η N(0, σ2 tr I) 2: repeat τ τ + 1 3: Initialization: If τ = 1, x(1) τ 0, otherwise x(1) τ x(n MH) τ 1 4: E-step: Draw n MH samples {x(i) τ }n MH i=1 with MALA, discard the first 1/5 samples as burn-in 5: M-step: Use {x(i) τ }n MH i=n MH/5 to compute Σ(τ+1) 6: until τ = n EM 7: [AGEM] Compute ˆx average of {x(i) τ }n MH i=n MH/5; return (ˆx, Σ(n EM)) 8: [AGEM-ADMM] Use ADMM and noise level Σ(n EM) to compute ˆx; return (ˆx, Σ(n EM)) |
| Open Source Code | No | Our code and all simulated datasets will be made available online. |
| Open Datasets | Yes | We perform image deblurring with the STL-10 unlabeled dataset [10], which contains 10^5 colored 96 x 96 images. [...] We perform image devignetting with the Celeb A dataset [42], which contains 0.2 million 218 x 178 colored face images, and a predefined train/val/test split. |
| Dataset Splits | Yes | Signal denoising: Among 6000 samples, 1000 samples are selected as the validation set and another 1000 samples as the test set. The rest are used for DAE training. Image deblurring: We select the last 400 images, the first/second half of which is used as the validation/test set. Image devignetting: We select the first 100 images from the predefined val/test set as our validation/test set. |
| Hardware Specification | Yes | We implement and train DAEs using Py Torch [33], all experiments were run on a Ubuntu server with two Titan X GPUs. |
| Software Dependencies | No | We implement and train DAEs using Py Torch [33], all experiments were run on a Ubuntu server with two Titan X GPUs. |
| Experiment Setup | Yes | All DAEs are trained by SGD with momentum 0.9 under the L2 reconstruction loss, early stopping is based on validation loss. For testing, n EM and n MH are set to sufficiently large values for stable convergence. Signal denoising: The DAE is a multilayer perceptron with Re LU activations and 3 hidden layers, each containing 2000 neurons. It is trained for 500 epochs with noise σtr = 0.01 and learning rate 0.1. We set n EM = 10, n MH = 1000, σprop is chosen by a grid search on [0.001, 0.5]. Image deblurring: It is trained for 250 epochs with noise σtr = 0.02 and learning rate 0.01. We set n EM = 10, n MH = 300, σprop is set to 0.02. Image devignetting: It is trained for 125 epochs with noise σtr = 0.02 and learning rate 0.1. We set n EM = 10, n MH = 200, σprop is set to 0.02. |