2016-09-02 12 views
3

JavaでVowpal Wabbitを使用しようとしています。 GitHubからコードをダウンロードして正常にコンパイルしました。コマンドラインツールは正常に動作します。 リポジトリ(特にhere)をすばやく見てから、私はJavaを使ってリポジトリを使用することはすでに可能であると想定することができ、実際には再構築したくありません。Vowpal Wabbit用のJava API?

Javaで使用できるVowpal Wabbitのラッパーです。このラッパーは自己完結型に設計されています。 JNIの使用の があるので、このJARでは多くのプラットフォームがサポートされています。

私は自分のプロジェクトに(hereた)Mavenの依存関係を追加したが、ドキュメントの任意の種類せずに、私は本当にどこから始めれば分かりません。 another questionでは、JavaでVWを使用することは可能ですが、その人は自分のbashコマンドを呼び出すのにRuntime.getRuntime.exec()しか使用していません。他の方法についてはドキュメントが見つかりません。(2 questions VWとJavaをSOにミキシングしても問題ありません)。 私はJNIを初めて使っているので、私には見えないものがあります。 は完全に透明であるために、私の質問は以下のとおりです。

  • 私は、有効なVWコマンドを作成し、Runtime.getRuntime.exec()を通してそれを使用する必要がありますか?これは、JNIの精神ではないようです。なぜなら、このためのラッパー/ライブラリは必要ないからです。さらに、これは非常にポータブルにはなりません。
  • ここで(地獄)は(Java API)のドキュメントですか?

あらゆる種類のヘルプやガイダンスをお待ちしています。

答えて

1

Thisリンクは、JNIラッパーの設定に関して助けになるかもしれません。

+0

ありがとうございました。実際、この2つの他の質問のうちの1つは既にこのリンクを指していました。他のOPを助けた以上に私を助けることはできませんでした。 さらに、私が正しく理解していれば、その人がやろうとしていることは、リポジトリの 'java'ディレクトリで既に行われたことです。私の主な問題は、私がそれを使う方法を知らないことです。 – Vongo

1

どこでもJava APIドキュメントを見つけることができませんでしたが、Javaコードは十分に文書化されているようです。おそらくコードからJavadocを自分自身で生成しようとしましたか?

+1

それは実際には私の最高(誰が "唯一"と言った?)のチャンスです。私はエントリーポイントを与えてくれる何か他のものがあることを期待していました。 – Vongo

0

VWへの基本的なアクセス権を持つJava JNIラッパーがあります。基本的には、あなたのモデルを教え、後で確率を予測することを意味します。また、Java用のラッパーよりもはるかに多くを実行できるPythonライブラリを提供しています。最近、コードを拡張することで、VWメソッドをJavaにさらすことを余儀なくされました。質問へ戻る

  • はむしろ「すべてのJavaを作る」中央Mavenのリポジトリで利用できるVW-jniのアーティファクトを使用して、自分のコードのクローンを作成して実行します。私はコードをコンパイルするケースが唯一の解決策になります。たとえば、提供されたアーティファクトがOpenSuse(私の場合)で実行されません。
  • コードはかなり簡単です。 VWLearners :: createは、JavaからVWのインスタンスを取得するためのファクトリです。
0

私たちが作成したvowpal wabbit JNIラッパーは、Indeed:https://github.com/indeedeng/vowpal-wabbit-javaでチェックアウトすることができます。

私たちは、使用例として機能する統合テストを書いており、APIドキュメントも書いています。 READMEの "using the library"セクションを確認してください。

希望すると、これが役立ちます。

関連する問題