You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As part of the [scikit-learn-contrib](https://github.com/scikit-learn-contrib) GitHub organization, we adopt the scikit-learn [code of conduct](https://github.com/scikit-learn/scikit-learn/blob/main/CODE_OF_CONDUCT.md).
@@ -19,6 +20,24 @@ You get to choose from ``skglm``'s already-made estimators or **customize your o
19
20
20
21
Excited to have a tour on ``skglm``[documentation](https://contrib.scikit-learn.org/skglm/)?
21
22
23
+
# Cite
24
+
25
+
``skglm`` is the result of perseverant research. It is licensed under [BSD 3-Clause](https://github.com/scikit-learn-contrib/skglm/blob/main/LICENSE). You are free to use it and if you do so, please cite
26
+
27
+
```bibtex
28
+
@inproceedings{skglm,
29
+
title = {Beyond L1: Faster and better sparse models with skglm},
30
+
author = {Q. Bertrand and Q. Klopfenstein and P.-A. Bannier and G. Gidel and M. Massias},
31
+
booktitle = {NeurIPS},
32
+
year = {2022},
33
+
}
34
+
35
+
@article{moufad2023skglm,
36
+
title={skglm: improving scikit-learn for regularized Generalized Linear Models},
37
+
author={Moufad, Badr and Bannier, Pierre-Antoine and Bertrand, Quentin and Klopfenstein, Quentin and Massias, Mathurin},
38
+
year={2023}
39
+
}
40
+
```
22
41
23
42
# Why ``skglm``?
24
43
@@ -45,10 +64,10 @@ There are several reasons to opt for ``skglm`` among which:
45
64
pip install -U skglm
46
65
```
47
66
48
-
It is also available on Conda _(not yet, but very soon...)_and can be installed via the command
67
+
It is also available on conda-forge and can be installed using, for instance:
49
68
50
69
```shell
51
-
conda install skglm
70
+
conda install -c conda-forge skglm
52
71
```
53
72
54
73
## First steps with ``skglm``
@@ -59,7 +78,7 @@ Once you installed ``skglm``, you can run the following code snippet to fit a MC
59
78
# import model to fit
60
79
from skglm.estimators import MCPRegression
61
80
# import util to create a toy dataset
62
-
from skglm.utils import make_correlated_data
81
+
from skglm.utils.dataimport make_correlated_data
63
82
64
83
# generate a toy dataset
65
84
X, y, _ = make_correlated_data(n_samples=10, n_features=100)
@@ -82,13 +101,15 @@ from skglm.datafits import Huber
82
101
from skglm.penalties import MCPenalty
83
102
from skglm.estimators import GeneralizedLinearEstimator
84
103
85
-
from skglm.utils import make_correlated_data
104
+
from skglm.utils.data import make_correlated_data
105
+
from skglm.solvers import AndersonCD
86
106
87
107
X, y, _ = make_correlated_data(n_samples=10, n_features=100)
88
108
# create and fit GLM estimator with Huber loss and MCP penalty
89
109
estimator = GeneralizedLinearEstimator(
90
110
datafit=Huber(delta=1.),
91
111
penalty=MCPenalty(alpha=1e-2, gamma=3),
112
+
solver=AndersonCD()
92
113
)
93
114
estimator.fit(X, y)
94
115
```
@@ -106,18 +127,7 @@ You can also take our tutorial to learn how to create your own datafit and penal
106
127
-**pull request**: you may have fixed a bug, added a features, or even fixed a small typo in the documentation, ... you can submit a [pull request](https://github.com/scikit-learn-contrib/skglm/pulls) and we will reach out to you asap.
107
128
108
129
109
-
# Cite
110
130
111
-
``skglm`` is the result of perseverant research. It is licensed under [BSD 3-Clause](https://github.com/scikit-learn-contrib/skglm/blob/main/LICENSE). You are free to use it and if you do so, please cite
112
-
113
-
```bibtex
114
-
@inproceedings{skglm,
115
-
title = {Beyond L1: Faster and better sparse models with skglm},
116
-
author = {Q. Bertrand and Q. Klopfenstein and P.-A. Bannier and G. Gidel and M. Massias},
- Add support and tutorial for positive coefficients to :ref:`Group Lasso Penalty <skglm.penalties.WeightedGroupL2>` (PR: :gh:`221`)
7
+
- Check compatibility with datafit and penalty in solver (PR :gh:`137`)
8
+
- Add support to weight samples in the quadratic datafit :ref:`Weighted Quadratic Datafit <skglm.datafit.WeightedQuadratic>` (PR: :gh:`258`)
9
+
- Add support for ElasticNet regularization (`penalty="l1_plus_l2"`) to :ref:`SparseLogisticRegression <skglm.SparseLogisticRegression>` (PR: :gh:`244`)
10
+
11
+
Version 0.3.1 (2023/12/21)
12
+
--------------------------
5
13
- Add support for weights and positive coefficients to :ref:`MCPRegression Estimator <skglm.MCPRegression>` (PR: :gh:`184`)
6
14
- Move solver specific computations from ``Datafit.initialize()`` to separate ``Datafit`` methods to ease ``Solver`` - ``Datafit`` compatibility check (PR: :gh:`192`)
0 commit comments