dnamite: A Python Package for Neural Additive Models

📅 2025-03-06
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the limited interpretability and scalability of Neural Additive Models (NAMs) on complex tabular tasks—particularly feature selection and survival analysis. We introduce the first open-source NAM toolkit unifying support for regression, classification, and survival analysis. Methodologically, we implement a modular, PyTorch-based NAM architecture incorporating B-spline basis functions, gradient-based optimization, and structured regularization; notably, we pioneer the extension of NAMs to right-censored survival analysis. The toolkit integrates end-to-end feature selection and strictly adheres to the scikit-learn API standard. Empirical evaluation on the MIMIC-III clinical dataset demonstrates competitive predictive accuracy alongside substantially enhanced interpretability of feature importance. The implementation is publicly available on PyPI, accompanied by comprehensive documentation and usage examples.

Technology Category

Application Category

📝 Abstract
Additive models offer accurate and interpretable predictions for tabular data, a critical tool for statistical modeling. Recent advances in Neural Additive Models (NAMs) allow these models to handle complex machine learning tasks, including feature selection and survival analysis, on large-scale data. This paper introduces dnamite, a Python package that implements NAMs for these advanced applications. dnamite provides a scikit-learn style interface to train regression, classification, and survival analysis NAMs, with built-in support for feature selection. We describe the methodology underlying dnamite, its design principles, and its implementation. Through an application to the MIMIC III clinical dataset, we demonstrate the utility of dnamite in a real-world setting where feature selection and survival analysis are both important. The package is publicly available via pip and documented at dnamite.readthedocs.io.
Problem

Research questions and friction points this paper is trying to address.

Develops a Python package for Neural Additive Models
Enables feature selection and survival analysis on large data
Provides interpretable predictions for complex machine learning tasks
Innovation

Methods, ideas, or system contributions that make the work stand out.

Python package for Neural Additive Models
Scikit-learn interface for regression, classification
Feature selection and survival analysis support
🔎 Similar Papers
No similar papers found.