Repolode
nok

nok/sklearn-porter

학습된 scikit-learn 모델과 트랜스포머를 C, C#, Go, Java, JavaScript, PHP 또는 Ruby 코드로 변환하는 Python 도구입니다.

스타
1,304
포크
168
열린 이슈
4
마지막 커밋
그저께

어떤 프로젝트인가요?

sklearn-porter는 학습된 scikit-learn 추정기, 트랜스포머 또는 파이프라인을 받아 C, C#, Go, Java, JavaScript, PHP 또는 Ruby 소스 코드로 생성합니다. 생성된 코드는 Python 런타임 없이 예측을 수행하므로 임베디드 기기, 브라우저 또는 다른 언어로 작성된 기존 애플리케이션에서 유용합니다.

이 프로젝트는 트리 앙상블, 선형 모델, SVM, 신경망을 비롯해 다양한 분류기, 회귀기, 이상치 탐지기, 전처리 및 특성 선택 트랜스포머를 지원합니다. 변환된 추정기는 원본과 동일한 예측을 내고, 변환된 트랜스포머는 특성을 동일한 방식으로 변환하도록 설계되었습니다.

모델 데이터는 코드에 포함하거나 별도의 JSON 파일로 내보낼 수 있으며, 중첩된 if-else 문으로 로직에 컴파일할 수도 있습니다. 이 패키지는 Python API, `porter` 명령줄 도구, 변환된 출력과 원본 모델을 비교하는 `test` 헬퍼를 제공합니다. 설치하려면 Python 3.11 이상과 scikit-learn 1.8 이상이 필요합니다.

핵심 기능

  • 01분류기, 회귀기, 이상치 탐지기를 7개 언어로 변환합니다.
  • 02일반적인 전처리 및 특성 선택 트랜스포머와 파이프라인을 변환합니다.
  • 03모델 데이터를 저장하는 첨부형, 내보내기형, 결합형 템플릿을 제공합니다.
  • 04Python API와 `porter` 명령줄 인터페이스를 모두 제공합니다.
  • 05변환된 예측 결과와 원본 모델을 비교하는 테스트 함수를 포함합니다.

활용 사례

  • Python 없이 임베디드 기기에서 학습된 scikit-learn 모델을 실행합니다.
  • Python 서비스를 두지 않고 Java, Go 또는 PHP 백엔드에 모델 예측 기능을 추가합니다.
  • 브라우저에서 JavaScript로 분류기를 실행합니다.

빠른 시작

  1. 1

    uv로 패키지를 설치하세요

    uv add sklearn-porter
  2. 2

    또는 pip로 설치하세요

    pip install sklearn-porter
  3. 3

    Python에서 scikit-learn 모델을 학습하고 port(clf, language='js')로 포팅하세요

사용 전 알아둘 점

  • Python 3.11 이상과 scikit-learn 1.8 이상이 필요합니다.
  • 정해진 목록에 포함된 scikit-learn 추정기와 변환기만 지원합니다.

포함된 컬렉션

토픽

자주 묻는 질문

sklearn-porter은(는) 무엇인가요?
학습된 scikit-learn 모델과 트랜스포머를 C, C#, Go, Java, JavaScript, PHP 또는 Ruby 코드로 변환하는 Python 도구입니다. sklearn-porter는 학습된 scikit-learn 추정기, 트랜스포머 또는 파이프라인을 받아 C, C#, Go, Java, JavaScript, PHP 또는 Ruby 소스 코드로 생성합니다. 생성된 코드는 Python 런타임 없이 예측을 수행하므로 임베디드 기기, 브라우저 또는 다른 언어로 작성된 기존 애플리케이션에서 유용합니다.
sklearn-porter은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
sklearn-porter은(는) BSD-3-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
sklearn-porter은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. sklearn-porter의 마지막 커밋은 2026년 11월 5일입니다.
sklearn-porter은(는) 어디에 사용할 수 있나요?
Python 없이 임베디드 기기에서 학습된 scikit-learn 모델을 실행합니다. Python 서비스를 두지 않고 Java, Go 또는 PHP 백엔드에 모델 예측 기능을 추가합니다. 브라우저에서 JavaScript로 분류기를 실행합니다.
sklearn-porter는 어떻게 설치하나요?
uv로 패키지를 설치하세요: uv add sklearn-porter 또는 pip로 설치하세요: pip install sklearn-porter Python에서 scikit-learn 모델을 학습하고 port(clf, language='js')로 포팅하세요
sklearn-porter은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/nok/sklearn-porter

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트