scikit-learn-contrib/category_encoders

A library of sklearn compatible categorical variable encoders

해결하는 문제

기계학습 모델은 일반적으로 수치형 입력을 필요로 하지만, 현실 세계의 데이터셋에는 국가나 성별과 같은 범주형 변수가 포함되어 있습니다. 이 라이브러리는 이러한 범주형 레이블을 모델이 효과적으로 처리할 수 있는 수치 형식으로 변환하기 위한 포괄적인 도구 세트를 제공합니다.

작동 방식

다양한 인코딩 기법을 scikit-learn 스타일의 트랜스포머로 구현합니다. 이들은 주로 두 가지 주요 범주로 나뉩니다:

  • 비지도 인코더: 타겟 변수를 보지 않고 범주를 숫자로 변환합니다 (예: One-Hot, Binary, Hashing, Ordinal 인코딩).
  • 지도된 인코더: 타겟 변수를 활용하여 인코딩 과정을 안내하며, 특정 모델에 대해 더 강력한 성능을 발휘할 수 있습니다 (예: Target Encoding, CatBoost, LeaveOneOut 인코딩).

이 라이브러리는 pandas DataFrames와 numpy 배열과 직접 통합되며, scikit-learn 파이프라인 내에서 사용하도록 설계되었습니다.

대상 사용자

고카디널리티 특징(고차원 범주형 변수)을 다룰 때 단순 One-Hot 인코딩이 비효율적인 경우, 모델 학습을 위한 범주형 데이터 전처리가 필요한 데이터 과학자 및 머신러닝 엔지니어.

주요 특징

  • scikit-learn 호환성: 표준 트랜스포머로 작동하여 기존 ML 파이프라인에 쉽게 통합 가능.
  • 풍부한 라이브러리: 지도 및 비지도 인코딩 방법을 포함한 다양한 기법 제공.
  • 과적합 방지: NestedCVWrapper와 특정 fit_transform 로직을 포함하여 데이터 누출을 최소화.
  • 유연한 입력: pandas DataFrames와 numpy 배열 모두 지원.

관련

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