一部のプログラミング言語(golangとpython)でcatboostモデルを使用する必要があります。 (パフォーマンスと互換性の点で) 最良のオプションは、C または C API の評価ライブラリを使用することです。公式ドキュメントに従って C API をコンパイルしましたが、動作させるために解決する必要のある問題がたくさんあります。
これらは、C で評価ライブラリを作成しようとしたときに遭遇した問題です:
1.
リーリー
リーリー
この変更を加えた後、C プログラムはコンパイルできますが、新しいエラーが発生します: セグメンテーション違反は、質問 2 にリストされている警告に関連しています。それを修正するには変数を再定義する必要があります:
正解
これが完全な解決策です:
catboost リポジトリのローカル コピーから catboost ディレクトリを開きます。
--target-platform
パラメータを変更する必要がありました。mac m1 と macos ventura 13.1 を使用しており、clang バージョンは 14.0.0 です:
リーリー
c ファイルを作成します。修正された C サンプルコード:
result[4] となります。
一度に 1 つのレコードのみを予測する必要があるため、
リーリー
警告やエラー メッセージが表示されないことを確認してください。
catboost モデル ファイルが program.out と同じパスにあることを確認してください。
リーリー以上がCatboost C 評価ライブラリ API を構築するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。