• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于主觀Bayes方法的不確定推理算法實(shí)現(xiàn)

      2014-11-14 23:50:17董文陽李全艷于海洋李脈
      科技資訊 2014年12期

      董文陽+李全艷+于海洋+李脈

      摘 要:不確定推理是指建立在不確定性知識(shí)和論據(jù)基礎(chǔ)上的推理。本文設(shè)計(jì)了基于主觀Bayes方法的不確定性推理算法,通過實(shí)驗(yàn)結(jié)果比較了結(jié)論不確定的合成算法與更新算法的一致性,實(shí)現(xiàn)了不確定推理問題求解的自動(dòng)化。

      關(guān)鍵詞:不確定推理 主觀Bayes方法 合成與更新算法 求解自動(dòng)化

      中圖分類號(hào):TP181 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2014)04(c)-0196-02

      不確定性推理是指建立在不確定性知識(shí)和論據(jù)基礎(chǔ)上的推理,其實(shí)質(zhì)是一種從不確定的初始證據(jù)出發(fā),通過運(yùn)用不確定性知識(shí),得出具有一定程度的不確定性但卻又是合理的結(jié)論的過程[1]。在現(xiàn)在社會(huì)中,采用不確定性推理是客觀問題的需求。在很多情況下,解決問題所需要的知識(shí)往往是不完備、不精確的,知識(shí)的描述也是很模糊的,而且在現(xiàn)實(shí)世界中,導(dǎo)致統(tǒng)一結(jié)果的原因可能是多種多樣的,解決問題的方案也可能是多種多樣的,這些條件都表示了我們現(xiàn)實(shí)生活中存在太多的不確定性問題。關(guān)于不確定性推理方法有很多種,但較為著名的方法主要有可信度方法、主觀Bayes方法和證據(jù)理論方法[4,5]等。本文將主觀Bayes方法設(shè)計(jì)了詳細(xì)的算法,實(shí)現(xiàn)了結(jié)論不確定的合成算法與更新算法,并通過實(shí)驗(yàn)結(jié)果比較了其一致性,探索自動(dòng)化求解這類不確定性推理問題的實(shí)現(xiàn)方法。

      1 主觀Bayes方法

      主觀Bayes方法又稱主觀概率論,是杜達(dá)(R.O.Duda)等人在1976年提出的,是一種不確定性推理模型,又稱為主觀概率論。成功的應(yīng)用在了地礦勘探專家系統(tǒng)PROSPECTOR中。這一方法在文獻(xiàn)[2,3]有詳細(xì)的描述。

      (1)結(jié)論不確定性的合成算法思想。

      (2)假設(shè)有n條知識(shí)都支持同一個(gè)結(jié)論H,而且這些知識(shí)都分別是相互獨(dú)立的證據(jù)Ei(i=1,2,…,n),且每個(gè)證據(jù)對(duì)應(yīng)的觀察分別是Si(i=1,2,…,n)。在此情況下求P(H/S1,S2,…,Sn)的后驗(yàn)概率的方法如下。

      先分別對(duì)每條知識(shí)求出H的后驗(yàn)幾率,然后在用如下公式求出所有觀察下的后驗(yàn)幾率:

      (1)

      (2)

      (2)結(jié)論不確定性的更新算法思想:如果n條知識(shí)都支持同一個(gè)結(jié)論,先用第一條規(guī)則對(duì)結(jié)論的先驗(yàn)概率進(jìn)行更新,再將得到的更新概率作為第二條規(guī)則的先驗(yàn)概率再對(duì)結(jié)論進(jìn)行更新,依次類推,直到所有的規(guī)則都更新使用完。設(shè)LSi(i=1,2,…,n)表示第i條規(guī)則成立的充分性,用于指出證據(jù)Ei對(duì)結(jié)論H為真的支持程度,而LNi(i=1,2,…,n)表示第i條規(guī)則成立的必要性,用于指出證據(jù)Ei對(duì)結(jié)論H為真的必要性程度。P(H)表示結(jié)論H的先驗(yàn)概率。那么,用如下公式求出結(jié)論H的后驗(yàn)概率P(H/S1,S2,…,Sn):

      ……

      (3)

      2 結(jié)論不確定性的算法設(shè)計(jì)

      在主觀Bayes方法中涉及到了知識(shí)的充分性量度LS和必要性量度LN,因此,在設(shè)計(jì)算法中,我將知識(shí)作為一個(gè)對(duì)象處理,且知識(shí)包含兩個(gè)屬性(LS,LN),即充分性量度LS和必要性量度LN。對(duì)于推理過程,如圖1所示。

      求后驗(yàn)幾率的算法設(shè)計(jì):

      public static double O(double p, ClassE e) {

      if (e.getLs() > 1) { //證據(jù)肯定出現(xiàn)的情況下

      return e.getLs() * O(p);

      } else if (e.getLs() == 1) {

      return O(p);

      } else if (e.getLs() < 1) { // 證據(jù)肯定不出現(xiàn)的情況下

      return e.getLn() * O(p);

      } else { // 此種情況不存在

      return -1;

      }

      }

      算法中,ClassE類包含LS和LN屬性,度量產(chǎn)生式規(guī)則的不確定性。參數(shù) p表示結(jié)論H的先驗(yàn)概率P(H),參數(shù)e表示單條知識(shí)ClassE類的對(duì)象,算法結(jié)果返回證據(jù)E出現(xiàn)時(shí)將結(jié)論H的先驗(yàn)概率,P(H)更新為后驗(yàn)幾率O(H/E),在算法中還應(yīng)用到了將概率轉(zhuǎn)化為幾率的算法,此算法有概率與幾率的關(guān)系可設(shè)計(jì)一重載方法為:

      public static double O(double p) {

      return p/(1 - p);

      }

      算法中參數(shù) p表示概率,算法結(jié)果返回幾率函數(shù)值。

      2.1 結(jié)論不確定性的合成算法

      關(guān)于結(jié)論不確定性的合成算法,可先對(duì)每條知識(shí)分別求出后驗(yàn)幾率,再由公式(1)、(2)進(jìn)行算法設(shè)計(jì):

      public static double nP(Listn, double p){

      double p1=O(p);

      if (n.size()>1){

      double on = 1.0;//表示綜合每條知識(shí)的后驗(yàn)幾率初始值

      for (int i = 0; i < n.size(); i++) {

      on *= O(p1, n.get(i)) / O(p1);

      }

      on = on * O(p1);

      return on / (1 + on);

      } else if (n.size() == 1) {

      return P(p1, n.get(0));

      } else {

      return -1;

      }

      }

      算法中參數(shù)n表示n條知識(shí)都支持相同的結(jié)論的集合,參數(shù)p表示知識(shí)對(duì)結(jié)論H的先驗(yàn)概率P(H),參數(shù)e表示一條知識(shí)對(duì)象,算法結(jié)果綜合每條知識(shí)的合成算法的后驗(yàn)概率值。

      2.2 結(jié)論不確定性的更新算法

      結(jié)論不確定性的更新算法思想,設(shè)計(jì)流程圖如圖2所示。

      詳細(xì)算法代碼設(shè)計(jì)如下:

      public static double rP(List n, double p) {

      //結(jié)論不確定性的更新算法

      if (n.size() > 1) {

      double rp = 0.0;

      for (int i = 1; i < n.size(); i++) {

      rp = P(P(p, n.get(0)), n.get(i));

      }

      return rp;

      } else if (n.size() == 1) {

      return P(p, n.get(0));

      } else {

      return -1;

      }

      }

      算法中參數(shù)n表示n條知識(shí)都支持相同的結(jié)論的集合,參數(shù)p表示知識(shí)對(duì)結(jié)論H的先驗(yàn)概率P(H),參數(shù)e表示一條知識(shí)對(duì)象,算法結(jié)果返回更新后的后驗(yàn)概率值。

      3 主觀Bayes方法算法求解結(jié)果

      應(yīng)用上述Java算法,首先讀取文本文件“Reliability_knowledge_data.txt”的數(shù)據(jù),文本文件如圖3所示。

      結(jié)果如圖4所示。

      在誤差允許的范圍內(nèi),兩種方法得到的結(jié)果是一致的。

      4 結(jié)論

      本文根據(jù)知識(shí)不確定性推理的主觀Bayes方法的求解思想,設(shè)計(jì)了基于主觀Bayes方法的不確定性推理的合成與更新算法,并在Java平臺(tái)上實(shí)現(xiàn)了這一算法。從實(shí)驗(yàn)結(jié)果來看,我們的算法結(jié)果正確,兩種算法的結(jié)果一致,實(shí)現(xiàn)了不確定推理問題求解的自動(dòng)化。

      參考文獻(xiàn)

      [1] 石純一,黃昌寧,王家廞.人工智能原理[M].北京:清華大學(xué)出版社,1993.

      [2] 張仰森,黃改娟.人工智能實(shí)用教程[M].北京:北京希望電子出版社,2002.

      [3] 王萬森.人工智能原理及其應(yīng)用[M].2版.北京:電子工業(yè)出版社,2007.

      [4] 劉玉鳳.Bayes概率在不確定性方法中的應(yīng)用[J].遼寧教育學(xué)院學(xué)報(bào),2002(9):1-2.

      [5] 張文修.包含度理論—— 不確定性研究的方法學(xué)[J].中國科學(xué)基金,1996(4):254-260.

      2.2 結(jié)論不確定性的更新算法

      結(jié)論不確定性的更新算法思想,設(shè)計(jì)流程圖如圖2所示。

      詳細(xì)算法代碼設(shè)計(jì)如下:

      public static double rP(List n, double p) {

      //結(jié)論不確定性的更新算法

      if (n.size() > 1) {

      double rp = 0.0;

      for (int i = 1; i < n.size(); i++) {

      rp = P(P(p, n.get(0)), n.get(i));

      }

      return rp;

      } else if (n.size() == 1) {

      return P(p, n.get(0));

      } else {

      return -1;

      }

      }

      算法中參數(shù)n表示n條知識(shí)都支持相同的結(jié)論的集合,參數(shù)p表示知識(shí)對(duì)結(jié)論H的先驗(yàn)概率P(H),參數(shù)e表示一條知識(shí)對(duì)象,算法結(jié)果返回更新后的后驗(yàn)概率值。

      3 主觀Bayes方法算法求解結(jié)果

      應(yīng)用上述Java算法,首先讀取文本文件“Reliability_knowledge_data.txt”的數(shù)據(jù),文本文件如圖3所示。

      結(jié)果如圖4所示。

      在誤差允許的范圍內(nèi),兩種方法得到的結(jié)果是一致的。

      4 結(jié)論

      本文根據(jù)知識(shí)不確定性推理的主觀Bayes方法的求解思想,設(shè)計(jì)了基于主觀Bayes方法的不確定性推理的合成與更新算法,并在Java平臺(tái)上實(shí)現(xiàn)了這一算法。從實(shí)驗(yàn)結(jié)果來看,我們的算法結(jié)果正確,兩種算法的結(jié)果一致,實(shí)現(xiàn)了不確定推理問題求解的自動(dòng)化。

      參考文獻(xiàn)

      [1] 石純一,黃昌寧,王家廞.人工智能原理[M].北京:清華大學(xué)出版社,1993.

      [2] 張仰森,黃改娟.人工智能實(shí)用教程[M].北京:北京希望電子出版社,2002.

      [3] 王萬森.人工智能原理及其應(yīng)用[M].2版.北京:電子工業(yè)出版社,2007.

      [4] 劉玉鳳.Bayes概率在不確定性方法中的應(yīng)用[J].遼寧教育學(xué)院學(xué)報(bào),2002(9):1-2.

      [5] 張文修.包含度理論—— 不確定性研究的方法學(xué)[J].中國科學(xué)基金,1996(4):254-260.

      2.2 結(jié)論不確定性的更新算法

      結(jié)論不確定性的更新算法思想,設(shè)計(jì)流程圖如圖2所示。

      詳細(xì)算法代碼設(shè)計(jì)如下:

      public static double rP(List n, double p) {

      //結(jié)論不確定性的更新算法

      if (n.size() > 1) {

      double rp = 0.0;

      for (int i = 1; i < n.size(); i++) {

      rp = P(P(p, n.get(0)), n.get(i));

      }

      return rp;

      } else if (n.size() == 1) {

      return P(p, n.get(0));

      } else {

      return -1;

      }

      }

      算法中參數(shù)n表示n條知識(shí)都支持相同的結(jié)論的集合,參數(shù)p表示知識(shí)對(duì)結(jié)論H的先驗(yàn)概率P(H),參數(shù)e表示一條知識(shí)對(duì)象,算法結(jié)果返回更新后的后驗(yàn)概率值。

      3 主觀Bayes方法算法求解結(jié)果

      應(yīng)用上述Java算法,首先讀取文本文件“Reliability_knowledge_data.txt”的數(shù)據(jù),文本文件如圖3所示。

      結(jié)果如圖4所示。

      在誤差允許的范圍內(nèi),兩種方法得到的結(jié)果是一致的。

      4 結(jié)論

      本文根據(jù)知識(shí)不確定性推理的主觀Bayes方法的求解思想,設(shè)計(jì)了基于主觀Bayes方法的不確定性推理的合成與更新算法,并在Java平臺(tái)上實(shí)現(xiàn)了這一算法。從實(shí)驗(yàn)結(jié)果來看,我們的算法結(jié)果正確,兩種算法的結(jié)果一致,實(shí)現(xiàn)了不確定推理問題求解的自動(dòng)化。

      參考文獻(xiàn)

      [1] 石純一,黃昌寧,王家廞.人工智能原理[M].北京:清華大學(xué)出版社,1993.

      [2] 張仰森,黃改娟.人工智能實(shí)用教程[M].北京:北京希望電子出版社,2002.

      [3] 王萬森.人工智能原理及其應(yīng)用[M].2版.北京:電子工業(yè)出版社,2007.

      [4] 劉玉鳳.Bayes概率在不確定性方法中的應(yīng)用[J].遼寧教育學(xué)院學(xué)報(bào),2002(9):1-2.

      [5] 張文修.包含度理論—— 不確定性研究的方法學(xué)[J].中國科學(xué)基金,1996(4):254-260.

      化隆| 宜州市| 遂川县| 富裕县| 吉林市| 宁波市| 黔东| 循化| 隆安县| 渭源县| 五大连池市| 澄迈县| 马尔康县| 台州市| 高淳县| 上虞市| 翼城县| 兴隆县| 孟村| 咸阳市| 洪雅县| 揭阳市| 涪陵区| 永顺县| 通化县| 西宁市| 双桥区| 永泰县| 阿拉尔市| 临夏县| 镇平县| 塔河县| 巴青县| 永定县| 长治市| 临武县| 萝北县| 孟津县| 申扎县| 万荣县| 晋江市|