일부 프로그래밍 언어(golang 및 Python)에서 catboost 모델을 사용해야 합니다. 성능 및 호환성을 위한 가장 좋은 옵션은 C 또는 C++ API일 수 있는 평가 라이브러리를 사용하는 것입니다. 공식 문서에 따라 C API를 컴파일했는데, 제대로 작동하려면 해결해야 할 문제가 많습니다.
다음은 c에서 평가 라이브러리를 생성하려고 할 때 직면한 문제입니다:
1.
으아아아해결책:
modelhandle
변수를 다음과 같이 재정의하여 문제 #1을 해결했습니다. 이렇게 변경하면 C 프로그램을 컴파일할 수 있지만 새로운 오류가 발생합니다.
으아아아그리고
으아아아코드 수정부터 C 코드 컴파일 방법까지 전체 솔루션을 댓글에 추가하겠습니다.
완전한 솔루션은 다음과 같습니다.
git 克隆 https://github.com/catboost/catboost.git
catboost 저장소의 로컬 복사본에서 catboost 디렉터리를 엽니다.
평가 라이브러리를 구축합니다(저는 공유 라이브러리를 선택했지만 필요한 라이브러리를 선택할 수 있습니다). 제 경우에는 --target-platform
매개변수를 변경해야 했습니다. 저는 mac m1과 macos Ventura 13.1을 사용하고 있으며 clang 버전은 14.0.0입니다.
고려 사항:
setpredictiontype
을 apt_probabilityresult[4]
. calcmodelpredictionsingle
방법을 사용합니다. 중요: 경고나 오류 메시지가 표시되지 않는지 확인하세요.
중요: catboost 모델 파일이 program.out
와 동일한 경로에 있는지 확인하세요.
위 내용은 Catboost C 평가 라이브러리 API를 구축하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!