日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

用matlab实现感知机学习算法,训练分类器并解决井字游戏

發(fā)布時間:2025/3/21 循环神经网络 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用matlab实现感知机学习算法,训练分类器并解决井字游戏 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題描述: 附件中包含的數(shù)據(jù)是傳統(tǒng)游戲過三關(guān)(tic-tac-toe)的900余種棋局, 目的是要通過統(tǒng)計(jì)學(xué)習(xí)的方法讓機(jī)器自動判別出勝負(fù)。數(shù)據(jù)文件中, 玩家是'x',對手是'o',每行數(shù)據(jù)包含3*3九宮格的布局情況('x'代表玩家棋子的位置, 'o'代表對手棋子的位置, 'b'代表空格), ?'positive'代表玩家贏, 'negative代表玩家負(fù)。整個問題可以看做是一個輸入特征為9維的二分類問題。
樣本數(shù)據(jù)digitdata2.txt文件中,×是1,o是-1,b是0,positive是1,negative是-1。 1-250個是第一類,251-500個是第二類,利用前500個樣本訓(xùn)練分類器,剩下458個樣本做測試
(1)權(quán)向量設(shè)為w,初始值隨機(jī)生成,滿足: ? (2)代價函數(shù)為J(w): 其中,δ是符號系數(shù),x為第一類時δ是-1,x為第二類時δ是1,以保證代價函數(shù)為正。Y是分錯類的樣本的集合。 ? (3)利用梯度下降進(jìn)行迭代: 化簡后是: 其中ρ是每次下降的步長
(4)不斷更新權(quán)向量w值,同時計(jì)算代價函數(shù)J(w),直到代價函數(shù)值為0,迭代結(jié)束。 此時的權(quán)向量w即為所求。利用w和測試樣本x相乘,結(jié)果為正屬第一類,結(jié)果為負(fù)屬第二類。 由于隨機(jī)初始化的權(quán)向量w不同,各次運(yùn)行結(jié)果有所不同。 ? matlab代碼如下: [html]?view plain?copy ?
  • function?ganzhiji()??
  • %利用感知機(jī)學(xué)習(xí)算法訓(xùn)練分類器解決tic?tac?toe游戲問題??
  • %樣本數(shù)據(jù)digitdata2.txt文件中,×是1,o是-1,b是0,positive是1,negative是-1??
  • %樣本數(shù)據(jù)順序進(jìn)行了調(diào)整,1-250個是第一類,251-500個是第二類??
  • %利用前500個樣本訓(xùn)練分類器,剩下458個樣本做測試??
  • %digitdata中,×是1,o是2,b是3,positive是1,negative是-1??
  • ??
  • A?=?importdata('digitdata2.txt');%導(dǎo)入樣本數(shù)據(jù)為一個958行10列的矩陣??
  • %A?=?importdata('digitdata.txt');%導(dǎo)入樣本數(shù)據(jù)為一個958行10列的矩陣??
  • %A?=?importdata('littledata.txt');%少量數(shù)據(jù),調(diào)試用??
  • ??
  • %?B保存剩下用來測試的樣本??
  • for?i?=?501:958??
  • ????B(i-500,:)?=?A(i,:);??
  • end??
  • ??
  • %將矩陣A的第10列置為1,得到每個樣本的增廣向量??
  • for?i?=?1:958??
  • ????A(i,10)?=?1;??
  • end??
  • %disp(A);??
  • ??
  • %初始化一些參數(shù)??
  • w?=?rand(10,1);%初始權(quán)向量,10維列向量??
  • %disp(w);??
  • p?=?1;%梯度下降的步長??
  • ox1?=?-1;%符號系數(shù),保證代價函數(shù)大于0??
  • ox2?=?1;??
  • s?=?1;%迭代標(biāo)志位??
  • n?=?0;%迭代次數(shù)??
  • w1?=?[0?0?0?0?0?0?0?0?0?0]';%10維列向量,臨時權(quán)向量??
  • %disp(w1);??
  • ??
  • %迭代過程??
  • while?s??
  • ????J?=?0;%代價函數(shù)的初值??
  • ????j?=?[0?0?0?0?0?0?0?0?0?0]';%用于每次迭代過程中臨時累加下降量??
  • ????%for?i?=?1:5??
  • ????for?i?=?1:250??%第一類樣本??
  • ????????if(?A(i,:)*w?>0?)%x屬于第一類且w'x>0,分類正確??
  • ????????????w1?=?w;%權(quán)向量不變??
  • ????????else?%分類錯誤??
  • ????????????j?=?j?+?ox1?*?A(i,:)';%累加下降量??
  • ????????????J?=?J?+?ox1?*?A(i,:)?*?w;%更新代價函數(shù)??
  • ????????end??
  • ????end??
  • ????%for?i?=?6:10??
  • ????for?i?=?251:500?%第二類樣本??
  • ????????if(?A(i,:)*w?<0?)%x屬于第二類且w'x<0,分類正確??
  • ????????????w1?=?w;%權(quán)向量不變??
  • ????????else?%分類錯誤??
  • ????????????j?=?j?+?ox2?*?A(i,:)';%累加下降量??
  • ????????????J?=?J?+?ox2?*?A(i,:)?*?w;%更新代價函數(shù)??
  • ????????end??
  • ????end??
  • ????if?J==0?%代價函數(shù)為0,即沒有錯分的樣本了??
  • ????????s?=?0;%迭代終止??
  • ????????disp('迭代終止');??
  • ????else???
  • ????????w1?=?w?-?p*j;%得到新的權(quán)向量??
  • ????????p?=?p?+?0.1;%增加步長??
  • ????????n?=?n?+?1;??
  • ????????%disp(n);??
  • ????????%disp(J);??
  • ????end??
  • ????w?=?w1;%將臨時權(quán)向量w1賦值給w??
  • end?%while?s??
  • disp('迭代次數(shù):');disp(n);%輸出迭代次數(shù)??
  • disp('權(quán)向量:');w%輸出權(quán)向量??
  • ??
  • %迭代結(jié)束后,w即為所得最優(yōu)分類面??
  • count?=?0;%測試樣本分類正確的個數(shù)??
  • for?i?=?501:958??
  • ????if(?A(i,:)?*?w?>0?)?%第一類??
  • ????????B(i-500,11)?=?1;??
  • ????????if(?B(i-500,10)?==?1?)?%分類正確??
  • ????????????count?=?count?+?1;??
  • ????????end??
  • ????else??%第二類??
  • ????????B(i-500,11)?=?-1;??
  • ????????if(?B(i-500,10)?==?-1?)?%分類正確??
  • ????????????count?=?count?+?1;??
  • ????????end??
  • ????end??
  • end??
  • %disp(B);??
  • disp('正確率:');??
  • disp(count/458);%輸出正確率??
  • ??
  • end?%function?ganzhiji()??



  • ?matlab源文件及樣本數(shù)據(jù)下載:http://download.csdn.net/detail/masikkk/4747593
    from:?http://blog.csdn.net/masibuaa/article/details/8163750

    總結(jié)

    以上是生活随笔為你收集整理的用matlab实现感知机学习算法,训练分类器并解决井字游戏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。