csinva/imodels

Interpretable ML package 🔍 for concise, transparent, and accurate predictive modeling (sklearn-compatible).

imodels – Python용 해석 가능한 머신러닝 모델

개요imodels는 방대한 양의 해석 가능한 지도 학습 알고리즘(규칙 기반, 트리 기반, 희소 선형 모델)을 번들로 제공하며, 친숙한 scikit-learn estimator API (fit, predict, predict_proba 등)를 통해 사용할 수 있도록 만든 Python 라이브러리입니다. 이 패키지는 임상 의사 결정 지원, 금융 또는 규제 대상 분야와 같이 정확하면서도 이해하기 쉬운 모델이 필요한 실무자를 대상으로 합니다.

주요 특징 (README 설명 기준)

  • 폭넓은 모델 카탈로그 – 규칙 세트 학습기 (RuleFit, SkopeRules, BoostedRules, SLIPPER, Bayesian rule set/list), 규칙 리스트 학습기 (Greedy, OneR, Fast-and-Frugal trees), 트리 학습기 (CART, C4.5, TAO, hierarchical-shrinkage wrappers), 그리고 대수 모델 (SLIM integer-coefficient linear models, Tree-GAM, FIGS – greedy tree sums, BART, marginal-shrinkage linear models). 각 모델은 from imodels import RuleFitClassifier와 같이 직접 임포트할 수 있습니다.
  • Scikit-learn 호환성 – 모든 estimator는 표준 estimator 메서드를 구현하며, pipeline 내에서 작동하고, 하이퍼파라미터 탐색을 지원하며, 적절한 feature_names_in_ 속성을 반환합니다.
  • 사후 유틸리티증류(distillation) (블랙박스 모델을 훈련한 후 해석 가능한 모델로 압축) 및 AutoML (주어진 데이터셋에 대해 최적의 해석 가능한 모델을 자동으로 선택)을 위한 래퍼.
  • 모델별 트릭 – 계층적 수축 (HSTree*)은 모든 트리 기반 모델에 초고속 정규화를 추가합니다; RF+ (MDI+)는 더 유연한 랜덤 포레스트 특성 중요도 지표를 제공합니다.
  • 설치pip install imodels (Python 3.10-3.13, NumPy ≥ 2.0). 배지는 MIT 라이선스, PyPI 버전, 다운로드 수, CI 상태 및 JOSS 논문을 나타냅니다.
  • 문서 및 데모 – 온라인 문서, JOSS 연구 논문 및 여러 Jupyter notebook (빠른 시작, 임상 의사 결정 규칙 예시, 사후 분석, 불확실성 추정, Autogluon AutoML 데모).

전형적인 사용법 (README 기준)

from imodels import get_clean_dataset, HSTreeClassifierCV
from sklearn.model_selection import train_test_split

X, y, feature_names = get_clean_dataset('csi_pecarn_pred')
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)

model = HSTreeClassifierCV(max_leaf_nodes=4)   # 수축 정규화된 결정 트리
model.fit(X_train, y_train, feature_names=feature_names)

preds = model.predict(X_test)
preds_proba = model.predict_proba(X_test)
print(model)   # 트리의 간결한 텍스트 표현 출력

출력 결과는 단 4개의 잎(leaf)을 가진 아주 작은 결정 트리를 보여주며, 이는 이 라이브러리가 간결한 모델에 집중하고 있음을 보여줍니다.

중요성 – 현대의 앙상블 모델(랜덤 포레스트, 그래디언트 부스팅 트리, 딥 네트워크)은 종종 높은 정확도를 달성하지만 불투명합니다. imodels를 사용하면 사용자는 이러한 블랙박스 모델 중 상당수를 예측 성능을 유지하면서도 투명하고, 감사가 용이하며, 평가가 빠른 규칙 기반 또는 희소 선형 대안으로 교체할 수 있습니다.

다음 단계 – README는 두 가지 관련 프로젝트를 안내합니다:

  • 텍스트 기반 해석 가능성을 위한 imodelsX,
  • 정형 데이터에 대한 에이전트 기반 해석 가능성을 위한 agentic-imodels.

위의 모든 정보는 저장소의 README에서 직접 가져왔으며, 외부의 가정이 추가되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트