Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/networks-learning/l1-ls.py
L1 regularized Least Squares minimization problem solver.
https://github.com/networks-learning/l1-ls.py
Last synced: about 5 hours ago
JSON representation
L1 regularized Least Squares minimization problem solver.
- Host: GitHub
- URL: https://github.com/networks-learning/l1-ls.py
- Owner: Networks-Learning
- Created: 2015-08-15T20:04:14.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-10-12T13:20:44.000Z (about 8 years ago)
- Last Synced: 2024-09-16T13:48:06.919Z (2 months ago)
- Language: Python
- Size: 28.3 KB
- Stars: 17
- Watchers: 3
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
README
l1-ls
=====|BuildStatus|
This is a large scale L1 regularized Least Square (L1-LS) solver written in
Python. The code is based on the MATLAB code made available on `Stephen Boyd's l1_ls page `_.|L1LSProblem|
Installation
------------You can install the bleeding edge directly from the source:
::
pip install git+https://github.com/musically-ut/l1-ls.py.git@master#egg=l1ls
This package is also available on `PyPi `_.
::
pip install l1ls
Usage
-----The module exposes two functions:
- ``l1ls(A, y, lmbda, x0=None, At=None, m=None, n=None, tar_gap=1e-3, quiet=False, eta=1e-3, pcgmaxi=5000)``, and,
- ``l1ls_nonneg(A, y, lmbda, x0=None, At=None, m=None, n=None, tar_gap=1e-3, quiet=False, eta=1e-3, pcgmaxi=5000)``They can be used as follows:
::
import l1ls as L
import numpy as npA = np.array([[1, 0, 0, 0.5], [0, 1, 0.2, 0.3], [0, 0.1, 1, 0.2]])
x0 = np.array([1, 0, 1, 0], dtype='f8') # Original signal
y = A.dot(x0) # noise free signal
lmbda = 0.01 # regularization parameter
rel_tol = 0.01[x, status, hist] = L.l1ls(A, y, lmbda, tar_gap=rel_tol)
# answer_x = np.array([0.993010, 0.00039478, 0.994096, 0.00403702])If your matrix ``A`` is sparse, pass it in `CSR format `_
format for best performance.Reference
---------- S.-J. Kim, K. Koh, M. Lustig, S. Boyd, and D. Gorinevsky. An
Interior-Point Method for Large-Scale l1-Regularized Least Squares,
(2007), IEEE Journal on Selected Topics in Signal Processing,
1(4):606-617... |BuildStatus| image:: https://travis-ci.org/Networks-Learning/l1-ls.py.svg?branch=master
:target: https://travis-ci.org/Networks-Learning/l1-ls.py.. |L1LSProblem| image:: http://i.imgur.com/YB8JDTX.gif