Physarum Powered Differentiable Linear Programming Layers and Applications
Authors: Zihang Meng, Sathya N. Ravi, Vikas Singh8939-8949
AAAI 2021 | Conference PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We describe our development and show the use of our solver in a video segmentation task and meta-learning for few-shot learning. Our solver performs comparably with a customized projected gradient descent method on the first task and outperforms the differentiable CVXPY-SCS solver on the second task. Experiments show that our solver converges quickly without the need for a feasible initial point. |
| Researcher Affiliation | Academia | Zihang Meng, 1 Sathya N. Ravi, 2 Vikas Singh 1 1 University of Wisconsin-Madison 2 University of Illinois at Chicago zihangm@cs.wisc.edu, sathya@uic.edu, vsingh@biostat.wisc.edu |
| Pseudocode | Yes | Algorithm 1: γ Aux PD Layer |
| Open Source Code | Yes | Our code is available at https://github.com/zihangm/Physarum-Differentiable-LP-Layer and integration with CVXPY is ongoing, which will complement functionality offered by tools like Opt Net and CVXPY-SCS. |
| Open Datasets | Yes | Experiments on Youtube-VOS. Parameter settings. Datasets. We follow the code from (Lee et al. 2019) to conduct the experiments on CIFAR-FS and FC100. |
| Dataset Splits | Yes | We use Ngrad = 40, Nproj = 5, lr = 0.1 as in their paper to reproduce their results. For γ Aux PD layer, the choice is simple: step size h = 1 and K = 10 iterations work well for both two experiments and the other tests we performed. The results on CIFAR-FS and FC100 are shown in Table 3. Using the ℓ1 normalized SVM, our solver achieves better performance than CVXPY-SCS (Agrawal et al. 2019) and Optnet (with a small quadratic term as regularization) on both datasets and both the 1-shot and 5-shot setting. |
| Hardware Specification | No | The paper mentions "on GPU" in Table 4, but does not specify any particular GPU models, CPU models, or other detailed hardware specifications for running the experiments. |
| Software Dependencies | No | The paper mentions using the "CVXPY package" and refers to "Opt Net" but does not provide specific version numbers for these or any other software dependencies. |
| Experiment Setup | Yes | Parameter settings. The projection gradient descent solver in (Zeng et al. 2019) has three parameters to tune: number of gradient steps, number of projections, and learning rate. We use Ngrad = 40, Nproj = 5, lr = 0.1 as in their paper to reproduce their results. For γ Aux PD layer, the choice is simple: step size h = 1 and K = 10 iterations work well for both two experiments and the other tests we performed. The implementation of Optnet (Amos and Kolter 2017) does not directly support solving LPs since it requires a positive definite quadratic term. Still, to test its ability of solving LPs, we add a diagonal matrix with a small value (0.1, since diagonal value smaller than 0.1 leads to numerical errors in our experiment) as the quadratic term (can be thought of as a regularization term). |