看板 MATLAB 關於我們 聯絡資訊
小弟我 最近做研究 用類神經 遇到了一些問題 程式本身已經訓練好了 也知道用save存起來 程式如下 X=[...] Y=[...] net=newff(0 0 0;1 1 1],[24 8 1],('logsig','logsig','purelin')); Y1 = sim(net,X') net....epoch=50 net....goal=0.01 net=train(net,X',Y') Y2 =sim(net,X') 這個研究是用三個輸入值 一個目標值 訓練 我現在想用我預留的 一些資料 來測試 (不知道可不可以 用三個輸入 直接跑出值來) 不知道怎麼用 快到繳交期限了 十萬火急 希望大大們能為我解答 小弟也不是本科系出身 若有不對的地方 敬請指教 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.135.254.64 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1424590842.A.ABC.html
profyang: 你想測試是指想用別的輸入(不在你用來train的輸入裡)來 02/22 17:41
profyang: 測試嗎? 假設你輸入是x y z好了 就這樣應該就可以跑出: 02/22 17:41
profyang: net([x;y;z]) 02/22 17:41
profyang: 這樣跑出來就是你已經train好的network在x y z這組輸入 02/22 17:42
profyang: 下的輸出值 02/22 17:42
bill820620: 對 應該說是 一筆資料 三個輸入 輸入資料是X*3的格式 02/23 17:29
profyang: 那就轉成3*X的形式吧 02/23 19:31
t78923t: 把你train好的network每層的weighting跟bias取出來 02/23 22:01
t78923t: 取出來會是矩陣的形式 然後去乘你要測試的data(矩陣型式) 02/23 22:02
t78923t: 看答案是不是跟你設定的目標值一不一樣 02/23 22:03
profyang: 樓上說的事其實matlab現在有個genFunction可以幫你做了 02/23 22:59
bill820620: 謝謝你們喔~ 我最後是把 測試值設為 Xa Ya 02/28 00:16
bill820620: 然後把我原本的最後一行 改成 Yaa=sim(net,Xa')就好了 02/28 00:18