Papers › Naive Feature Selection: a Nearly Tight Convex Relaxation for Sparse Naive Bayes

Naive Feature Selection: a Nearly Tight Convex Relaxation for Sparse Naive Bayes

23 May 2019arXiv:1905.09884archive 2025-07-28

Armin Askari, Alexandre d'Aspremont, Laurent El Ghaoui

Due to its linear complexity, naive Bayes classification remains an attractive supervised learning method, especially in very large-scale settings. We propose a sparse version of naive Bayes, which can be used for feature selection. This leads to a combinatorial maximum-likelihood problem, for which we provide an exact solution in the case of binary data, or a bound in the multinomial case. We prove that our convex relaxation bounds becomes tight as the marginal contribution of additional features decreases, using a priori duality gap bounds dervied from the Shapley-Folkman theorem. We show how to produce primal solutions satisfying these bounds. Both binary and multinomial sparse models are solvable in time almost linear in problem size, representing a very small extra relative cost compared to the classical naive Bayes. Numerical experiments on text data show that the naive Bayes feature selection method is as statistically effective as state-of-the-art feature selection methods such as recursive feature elimination, l₁-penalized logistic regression and LASSO, while being orders of magnitude faster.

PaperPDFCode

Code

aspremon/NaiveFeatureSelection officialmentioned on GitHubtf report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Tasks

feature selection

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

Feature SelectionLogistic Regression

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections