2

サードパーティのライブラリで Alea GPU を使用することに興味があり、自分のオプションを理解しようとしています。具体的には、この L-BFGS ライブラリの使用に興味があります。私は F# エコシステムにはかなり慣れていませんが、CUDA と関数型プログラミングの両方の経験があります。

ロジスティック回帰を実装するプログラムの一部として、その L-BFGS ライブラリを使用しています。ライブラリが正しいと仮定して、コードの残りの部分 (GPU で実行されるコードを含む) をタイプ セーフな F# で記述できればすばらしいと思います。

C++ と F#をリンクすることは可能のようです。L-BFGS ライブラリを F# プログラムに統合する方法を理解したと仮定すると、Alea GPU の導入によって問題が発生するでしょうか?

私が避けようとしているのは、Alea を使用して F# で L-BFGS を書き直すことです。ただし、実際にはこれが F# を使用するための最も簡単な方法かもしれません。Alea に非線形最適化の機能がある場合は、代わりにそれらを使用できます。

4

1 に答える 1

1

Alea GPU にはまだ非線形オプティマイザがありません。CUDA バージョンは、標準の CPU L-BFGS とは実装が若干異なるため、精度の問題が発生することがあります。これとは別に、パフォーマンスの向上も目的関数に大きく依存することを除いて、コードで問題に直面することはありませんでした。ロジスティック回帰の目的関数は、数値的に比較的安価です。

Alea GPU に移植されたこのコードの内部 C# バージョンがあり、これは F# からも使用でき、将来のバージョンでリリースする予定です。

于 2017-01-04T02:41:45.163 に答える