亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種蒙特卡洛逆向求解PageRank問題的加速方法與流程

文檔序號(hào):12063821閱讀:來源:國(guó)知局

技術(shù)特征:

1.一種蒙特卡洛逆向求解PageRank問題的加速方法,其特征在于,包括以下步驟:

S1:確定初始方向數(shù),由初始方向數(shù)得到擬隨機(jī)序列的方向數(shù),然后計(jì)算得到擬隨機(jī)數(shù)列;

S2:將PageRank迭代公式進(jìn)行轉(zhuǎn)換,得到新的迭代矩陣G和其對(duì)應(yīng)的線性方程組系數(shù)矩陣A,計(jì)算矩陣特征值極值,根據(jù)特征值的分布得到松弛因子,利用該松弛因子對(duì)PageRank迭代公式進(jìn)行松弛化處理,再利用S1中得到的擬隨機(jī)數(shù)列,對(duì)松弛化后的PageRank迭代公式使用馬爾科夫蒙特卡洛方法進(jìn)行仿真,得到求解的目標(biāo)分量xi的每條馬爾科夫鏈仿真結(jié)果;

S3:對(duì)求解的目標(biāo)分量xi的每條馬爾科夫鏈仿真結(jié)果,首先申請(qǐng)分配GPU共享內(nèi)存進(jìn)行緩存,接著在GPU共享內(nèi)存中對(duì)各個(gè)仿真結(jié)果進(jìn)行歸約并行求和,然后將匯總的結(jié)果除以仿真的鏈數(shù),求得目標(biāo)分量xi的期望值。

2.根據(jù)權(quán)利要求1所述的蒙特卡洛逆向求解PageRank問題的加速方法,其特征在于,所述步驟S1的具體過程如下:

S11:使用T個(gè)在二元有限域GF(2)上的本原多項(xiàng)式,其中第i維序列使用的本原多項(xiàng)式為:

Pi(x)=xr+t1,ixr-1+tr-1,ix+1,

其中r為Pi的度數(shù),t1,i,t2,i,…,tr-1,i是取值為0或1的本原多項(xiàng)式的系數(shù);

S12:選取初始方向數(shù),對(duì)于一個(gè)度數(shù)為r的本原多項(xiàng)式Pi有r個(gè)初始方向數(shù):v1,i,…,vr,i,其中mj,i為一個(gè)小于2j的正奇數(shù);

S13:由初始方向數(shù)計(jì)算出方向數(shù),公式如下:

<mrow> <msub> <mi>v</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>=</mo> <msub> <mi>t</mi> <mrow> <mn>1</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>v</mi> <mrow> <mi>j</mi> <mo>-</mo> <mn>1</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>&CirclePlus;</mo> <msub> <mi>t</mi> <mrow> <mn>2</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>v</mi> <mrow> <mi>j</mi> <mo>-</mo> <mn>2</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>...</mo> <mo>&CirclePlus;</mo> <msub> <mi>t</mi> <mrow> <mi>r</mi> <mo>-</mo> <mn>1</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>v</mi> <mrow> <mi>j</mi> <mo>-</mo> <mi>r</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>i</mi> </mrow> </msub> </mrow>

S14:初始化序列起始值根據(jù)求得的方向數(shù),以及使用格雷碼方法求得第i維的序列,公式如下:

<mrow> <msubsup> <mi>x</mi> <mi>n</mi> <mi>i</mi> </msubsup> <mo>=</mo> <msubsup> <mi>x</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> <mi>i</mi> </msubsup> <mo>&CirclePlus;</mo> <msub> <mi>v</mi> <msub> <mi>c</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </msub> <mo>.</mo> </mrow>

3.根據(jù)權(quán)利要求2所述的蒙特卡洛逆向求解PageRank問題的加速方法,其特征在于,所述步驟S2中計(jì)算松弛因子并應(yīng)用松弛法求解PageRank迭代公式的過程包括以下步驟:

S21:將PageRank迭代公式進(jìn)行轉(zhuǎn)化:

由公式得,記為x=Gx+b,得到對(duì)應(yīng)的線性方程組為Ax=b。其中相關(guān)參數(shù)說明如下:x是求解的PageRank值目標(biāo)向量,α是阻尼系數(shù),M是PageRank迭代矩陣,N是結(jié)點(diǎn)個(gè)數(shù),E是元素全為1的矩陣,e是元素全為1的列向量,G為αM,b為A=(I-G);

S22:計(jì)算矩陣特征值極值,其中為A的對(duì)角矩陣的逆矩陣,得到特征值最大值λmax和特征值最小值λmin,根據(jù)求出的特征值極值算出松弛因子ω;

S23:應(yīng)用松弛法求解PageRank迭代公式:

DωAx=Dωb,其中Dω為對(duì)角矩陣,對(duì)角線的元素為其中ai,j為矩陣A的元素,得到松弛化后的迭代矩陣Gω=I-DωA;

S24:使用步驟S1中得到的擬隨機(jī)序列來模擬馬爾科夫鏈,將模擬過程分配到GPU的多個(gè)線程束warp執(zhí)行,線程束warp里面的每個(gè)線程執(zhí)行一條馬爾科夫鏈的隨機(jī)游走,多個(gè)線程同時(shí)執(zhí)行,各自求解目標(biāo)分量的一個(gè)解,得到求解的目標(biāo)分量xi的每條馬爾科夫鏈仿真結(jié)果。

4.根據(jù)權(quán)利要求3所述的蒙特卡洛逆向求解PageRank問題的加速方法,其特征在于,所述步驟S3的具體過程如下:

S31:首先申請(qǐng)分配GPU共享內(nèi)存,用于保存每個(gè)目標(biāo)分量的一個(gè)仿真結(jié)果;

S32:將S2中計(jì)算得到的各個(gè)馬爾科夫鏈隨機(jī)游走的仿真結(jié)果存放在GPU的共享內(nèi)存中,存放的位置為當(dāng)前線程獨(dú)有的線程id對(duì)應(yīng)的共享內(nèi)存數(shù)組下標(biāo);

S33:在GPU的共享內(nèi)存對(duì)各個(gè)部分解進(jìn)行reduce并行化求和:

首先在第一輪迭代中,根據(jù)GPU的線程塊block數(shù)blockDimX將歸約求解數(shù)據(jù)分為兩個(gè)子集,子集大小為然后將線程id=i保存的值與線程id=i+size的值求和,結(jié)果保存到線程id=i的對(duì)應(yīng)的共享內(nèi)存上,接著在下一輪迭代中,將步長(zhǎng)size減半,繼續(xù)進(jìn)行歸約求和;

重復(fù)以上過程,直至步長(zhǎng)為0時(shí)結(jié)束,并將最終結(jié)果sum除以馬爾科夫鏈的數(shù)目求解期望值,即返回該期望值,并將求解結(jié)果由GPU內(nèi)存復(fù)制回CPU內(nèi)存。

當(dāng)前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1