可編程概率處理的制作方法
【專(zhuān)利摘要】本發(fā)明涉及可編程概率處理。在一個(gè)方面,通常,可編程計(jì)算裝置執(zhí)行由多個(gè)變量和多個(gè)因子規(guī)定的推理任務(wù)的計(jì)算,每個(gè)因子與所述變量的子集相關(guān)聯(lián)。所述裝置包括一個(gè)或多個(gè)處理元件。每個(gè)處理元件包括:用于因子的定義的第一存儲(chǔ)裝置;用于與至少某些計(jì)算的輸入和/或輸出相關(guān)聯(lián)的數(shù)據(jù)的第二存儲(chǔ)裝置;以及耦接到所述第一存儲(chǔ)裝置和所述第二存儲(chǔ)裝置的一個(gè)或多個(gè)計(jì)算單元,用于執(zhí)行與因子相關(guān)聯(lián)的所述至少某些計(jì)算的系列部分,所述系列部分由用于所述因子的定義的存儲(chǔ)中的數(shù)據(jù)定義。
【專(zhuān)利說(shuō)明】可編程概率處理
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求2011年6月7日提交的發(fā)明名稱(chēng)為“加速推理計(jì)算”的美國(guó)預(yù)先申請(qǐng)N0.61/494,311的優(yōu)先權(quán)。本申請(qǐng)還要求2011年7月20日提交的美國(guó)專(zhuān)利申請(qǐng)N0.13/187,466的優(yōu)先權(quán),并且對(duì)于美國(guó)的目的本申請(qǐng)是美國(guó)專(zhuān)利申請(qǐng)N0.13/187,466的部分繼續(xù)申請(qǐng)。這些申請(qǐng)通過(guò)引用并入在此。
【技術(shù)領(lǐng)域】
[0003]本發(fā)明涉及可編程概率處理。
【背景技術(shù)】
[0004]基于推理計(jì)算的一種方法(例如,置信傳播(Belief Propagation), BP)利用因子圖(factor graph),例如,如在 Loeliger 所著的“Introduction to Factor Graphs, ”1EEESignal Processing Magazine, 2004年I月中所述的。一種基于圖的推理方法是和-積(Sum-Product (SP))方法,如在上述參考文獻(xiàn)中所述的。另一個(gè)方法是最小-和(Min-Sum, MS)方法(也稱(chēng)為最大-和(Max-Sum)或最大-積(Max-Product)),其可以被視為 SP 方法的近似。可以在 H.Wymeersch 所著的 Iterative Receiver Design, CambridgeUniversity Press, Cambridge, 2007中發(fā)現(xiàn)這樣的算法的描述。
[0005]參照?qǐng)D1,因子圖100的一部分的一個(gè)示例包括因子節(jié)點(diǎn)110-111和可變節(jié)點(diǎn)121-123。因子節(jié)點(diǎn)110實(shí)現(xiàn)依賴(lài)于分別與可變節(jié)點(diǎn)121-123相關(guān)聯(lián)的變量A、B和C的因子。在SP方法中,因子節(jié)點(diǎn)110從鄰近的可變節(jié)點(diǎn)接收消息,并利用這些消息來(lái)計(jì)算并發(fā)送輸出消息回可變節(jié)點(diǎn)。在SP方法中,我們用符號(hào)A4 (或更明確的表示從與變量A相關(guān)聯(lián)的可變節(jié)點(diǎn)121到與因子F相關(guān)聯(lián)的因子節(jié)點(diǎn)110的消息。類(lèi)似地,傳遞回可變節(jié)點(diǎn)的消息被表示為反4 (或更明 確地,Paw)。對(duì)于圖1中所示的因子圖,對(duì)于因子節(jié)點(diǎn)110的消息被計(jì)算如下:
【權(quán)利要求】
1.一種可編程計(jì)算裝置,用于執(zhí)行由多個(gè)變量和多個(gè)因子規(guī)定的推理任務(wù)的計(jì)算,每個(gè)因子與所述變量的子集相關(guān)聯(lián),所述裝置包括一個(gè)或多個(gè)處理元件,每個(gè)處理元件包括: 第一存儲(chǔ)裝置,用于因子的定義; 第二存儲(chǔ)裝置,用于與至少某些計(jì)算的輸入和/或輸出相關(guān)聯(lián)的數(shù)據(jù);以及 一個(gè)或多個(gè)計(jì)算單元,耦接到所述第一存儲(chǔ)裝置和所述第二存儲(chǔ)裝置,用于執(zhí)行所述至少某些計(jì)算的與因子相關(guān)聯(lián)的系列部分,所述系列部分由用于所述因子的定義的存儲(chǔ)裝置中的數(shù)據(jù)定義。
2.根據(jù)權(quán)利要求1所述的裝置,其中每個(gè)計(jì)算單元包括組合單元,其用于組合從所述第二存儲(chǔ)裝置獲取的值。
3.根據(jù)權(quán)利要求2所述的裝置,其中所述組合單元包括數(shù)值計(jì)算邏輯。
4.根據(jù)權(quán)利要求2所述的裝置,其中所述組合單元包括模擬計(jì)算電路。
5.根據(jù)權(quán)利要求2所述的裝置,其中每個(gè)計(jì)算單元還包括累計(jì)單元,用于將所述組合單元的輸出累計(jì)到第二存儲(chǔ)裝置中的值中。
6.根據(jù)權(quán)利要求1所述的裝置,其中每個(gè)處理元件包括多個(gè)所述計(jì)算單元。
7.根據(jù)權(quán)利要求6所述的裝置,其中每個(gè)所述計(jì)算單元具有所述第二存儲(chǔ)裝置的獨(dú)立部分。
8.根據(jù)權(quán)利要求6所述的裝置,其中所述第一存儲(chǔ)裝置由計(jì)算單元共享。
9.根據(jù)權(quán)利要求1所述的裝置,還包括: 并行可操作的多個(gè)處理元件; 耦接到每個(gè)所述處理元件的連接系統(tǒng); 控制器,具有用于接受所述推理任務(wù)的至少部分推理任務(wù)的規(guī)范的對(duì)于主機(jī)系統(tǒng)的接口,所述控制器經(jīng)由所述連接系統(tǒng)耦接到所述處理元件; 其中每個(gè)所述處理元件能夠由所述控制器配置來(lái)執(zhí)行與所述因子中一個(gè)因子相關(guān)聯(lián)的計(jì)算,該計(jì)算與其他處理元件執(zhí)行與所述因子中的不同的因子相關(guān)聯(lián)的計(jì)算同時(shí)地執(zhí)行;以及 其中所述多個(gè)處理元件中的每一個(gè)耦接到所述連接系統(tǒng)以經(jīng)由所述連接系統(tǒng)交換消息,所述消息向與所述因子關(guān)聯(lián)的計(jì)算提供輸入和/或輸出,并向控制器提供所述至少部分所述推理任務(wù)的執(zhí)行的結(jié)果。
10.根據(jù)權(quán)利要求9所述的裝置,其中所述推理任務(wù)的規(guī)范包括基于圖的推理任務(wù)的規(guī)范,并且每個(gè)因子與圖的元素相關(guān)聯(lián)。
11.根據(jù)權(quán)利要求9所述的裝置,其中所述連接系統(tǒng)能夠配置用于根據(jù)所述圖提供處理元件之間的連接。
12.根據(jù)權(quán)利要求9所述的裝置,其中所述連接系統(tǒng)在所述處理元件之間提供下列中的至少一種:網(wǎng)格、樹(shù)、以及鏈連接。
13.一種用于使用具有多個(gè)處理元件的計(jì)算裝置的處理元件執(zhí)行推理任務(wù)的計(jì)算的方法,所述推理任務(wù)由多個(gè)變量和多個(gè)因子規(guī)定,每個(gè)因子與所述變量的子集相關(guān)聯(lián),所述方法包括: 在所述處理元件的第一存儲(chǔ)裝置處存儲(chǔ)因子的定義;在所述處理元件的第二存儲(chǔ)裝置處存儲(chǔ)與至少某些計(jì)算的輸入和/或輸出相關(guān)聯(lián)的數(shù)據(jù);以及 在所述處理元件的一個(gè)或多個(gè)組合單元處執(zhí)行所述至少某些計(jì)算的與因子相關(guān)聯(lián)的系列部分,所述系列部分由第一存儲(chǔ)裝置中的數(shù)據(jù)定義; 其中所述一個(gè)或多個(gè)組合單元中的每一個(gè)耦接到所述第一存儲(chǔ)裝置和所述第二存儲(chǔ) 裝直。
14.根據(jù)權(quán)利要求13所述的方法,其中每個(gè)計(jì)算單元包括組合單元,并且執(zhí)行所述至少某些計(jì)算的與因子相關(guān)聯(lián)的系列部分包括組合從所述第二存儲(chǔ)裝置獲取的值。
15.根據(jù)權(quán)利要求14所述的方法,其中所述組合單元包括在執(zhí)行所述至少某些計(jì)算的所述系列部分中使用的數(shù)值計(jì)算邏輯。
16.根據(jù)權(quán)利要求14所述的方法,所述組合單元包括在執(zhí)行所述至少某些計(jì)算的所述系列部分中使用的模擬計(jì)算電路。
17.根據(jù)權(quán)利要求14所述的方法,其中每個(gè)計(jì)算單元還包括累計(jì)單元,并且 執(zhí)行所述至少某些計(jì)算的與因子相關(guān)聯(lián)的所述系列部分包括:將所述組合單元的輸出累計(jì)到所述第二存儲(chǔ)裝置中的值中。
18.根據(jù)權(quán)利要求13所述的方法,其中每個(gè)處理元件包括多個(gè)所述組合單元,并且 執(zhí)行所述至少某些計(jì)算的所述系列部分包括同時(shí)在多個(gè)所述計(jì)算單元上執(zhí)行所述部分。
19.根據(jù)權(quán)利要求13所述的方法,還包括: 接受所述推理任務(wù)的規(guī)范,所述規(guī)范包括多個(gè)變量和多個(gè)因子,每個(gè)因子與所述變量的子集相關(guān)聯(lián); 對(duì)每個(gè)所述處理元件配置以定義所述多個(gè)因子中的一個(gè)或多個(gè)的數(shù)據(jù); 在每個(gè)所述處理元件處,與其他所述處理元件執(zhí)行與所述因子中的不同因子相關(guān)聯(lián)的計(jì)算同時(shí)地執(zhí)行與所述因子中的一個(gè)因子相關(guān)聯(lián)的計(jì)算; 經(jīng)由所述連接系統(tǒng)交換消息,所述消息向用于與所述因子關(guān)聯(lián)的計(jì)算的所述處理元件提供輸入和/或輸出,并提供所述至少部分推理任務(wù)的執(zhí)行的結(jié)果。
20.根據(jù)權(quán)利要求19所述的方法,其中接受所述至少部分推理任務(wù)的規(guī)范包括在所述裝置的控制器處從主機(jī)接受規(guī)范,所述方法還包括經(jīng)由所述控制器將所述至少部分推理任務(wù)的執(zhí)行的結(jié)果傳遞到所述主機(jī)。
21.根據(jù)權(quán)利要求19所述的方法,其中所述推理任務(wù)的規(guī)范包括基于圖的推理任務(wù)的規(guī)范,并且每個(gè)因子與圖的元素相關(guān)聯(lián)。
22.根據(jù)權(quán)利要求21所述的方法,其中所述推理任務(wù)包括置信傳播任務(wù)。
23.根據(jù)權(quán)利要求19所述的方法,其中所述消息表示所述變量的概率分布。
24.根據(jù)權(quán)利要求21所述的方法,還包括配置所述連接系統(tǒng)用于根據(jù)所述圖提供處理元件之間的連接。
25.根據(jù)權(quán)利要求19所述的方法,還包括根據(jù)使用所述裝置執(zhí)行的計(jì)算的結(jié)果配置所述連接系統(tǒng)。
26.根據(jù)權(quán)利要求19所述的方法,還包括經(jīng)由所述連接系統(tǒng)在所述處理元件之間提供下列中的至少一種:網(wǎng)格、樹(shù)、以及鏈連接。
【文檔編號(hào)】G06N3/063GK103718197SQ201280034859
【公開(kāi)日】2014年4月9日 申請(qǐng)日期:2012年6月7日 優(yōu)先權(quán)日:2011年6月7日
【發(fā)明者】J·伯恩斯特因, B·維格達(dá), K·南達(dá), R·查托韋迪, D·霍薩克, W·皮特, A·施魏策爾, T·卡普托 申請(qǐng)人:美國(guó)亞德諾半導(dǎo)體公司