JuliaAI / JuliaAI/MLJLinearModels.jl
Feature Requests
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 86
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
@tlienart
-
All Subset (Best K Subset):
I've got parsimonious code for All Subset Regression which might have a nice home in this package that I'd like to share.
While it's much faster than R's Leaps pkg, I would include a strong warning to users:
This optimization problem is sooo not convex. Avoid for p>20. -
Approximate All Subset (MIO):
As you probably know,
Bertsimas etal (2016): show how to use MIO to approximately train all subset regression for p =1000 in minutes.
Bertsimas et al (2019): do this for p=100k in minutes.
The corresponding Julia package is SubsetSelection.jl.
Also see forthcoming Julia package MIP-Boost.
It would be really awesome if these linear models were featured in MLJ. -
Relaxed Lasso:
Hastie et al 2017: responded that relaxed Lasso matches Lasso in low-SNR scenarios & beats All Subset in high-SNR scenarios
glmnet: now features "relaxed Lasso"
Would this be difficult to add to MLJLinearModels? (maybe we can work on it together?) -
Linear Interactions:
There are some cool new packages for interactions in linear models.
I find these compare in out-of-sample fit w/ non-linear models (xgboost etc, no joke)
R: sprintr & HierNet
Python: HierScale -
Nonconvex penalties (MCP SCAD):
https://github.com/joshday/SparseRegression.jl/blob/master/README.md -
Forward selection/stepwise regression:
(stackoverflow, has Julia code)
Textbook code -
Ensembles of Penalized Linear Models:
Christidis et al 2019: Paper, old code EnsembleEN, new code SplitReg
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue is a broad list of seven possible additions, including subset selection, relaxed Lasso, interactions, nonconvex penalties, stepwise regression, and ensembles. Start by choosing one request and reviewing the referenced Julia packages and papers; the work is done only when a single scoped model is integrated into MLJLinearModels with agreed tests and documentation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100