私の計画は、ピアソンの相関を使用して距離行列を計算し、距離行列から各ノード (q=ln(n)) の q-最近傍を取得し、それらを結果ベクトルに入れることです。相関関数のループ内で STL プライオリティ キューを使用して C++ で実行しました。
しかし、GPUでそれを行う方法はあると思いますか?
- GPUで同じことを行うにはどうすればよいですか(おそらくThrustの方が簡単です!)
- GPU でプライオリティ キューを実装する方法は?
これが私のCPU(C ++ STL)コードです:
例えば、
距離行列 ----------------------- 0 3 2 4 3 0 4 5 2 4 0 6 ..... オブジェクト ベクトルでの出力 ================= ソース ターゲット ウェイト -------------------------------- 0 2 2 0 1 3 .... (エッジの重みでソート) 1 0 3 1 2 4 2 0 2 ..... calculatePearsonCorrelation(float vector1[], float vector2[], int m) { // float distancePearson(ベクトル vector1, ベクトル vector2){ int i; float a=0,b=0,c=0,d=0, e = 0, sumX=0, sumY=0; //m = vector1.size(); for(i=0;iq){ MIN=pqx.top().get_corr(); if(corr::iterator it = qNNVector.begin(); it!=qNNVector.end(); ++it) { ファウト