Re: [討論] 使用anfis判讀動作

作者: jack10313 (彩色筆)   2014-05-22 20:42:23
以下僅為猜測,不代表本人立場,看看就好
ANFIS是類神經網路的一種
先介紹類神經Neural Netwrok
基本上你可以把他看成神經元架構
input neuron output
Wmd Zm Wkm
Xd O—————O—————O Yk
╲ W1d / ╲ W1m /
. ╲ / ╲ /
. ╳ ╳
. / ╲ / ╲
/ Wm1 ╲ / Wk1 ╲
X1 O—————O—————O Y1
W11 Z1 W11
其中input維度為d維,資料n筆
神經元為一個activation function,扮演著非線性的角色
所以類神經網路是非線性架構
通常是logistic sigmoid function,但是我想在ANFIS是fuzzy logistic
其中神經元可以說代表你的變數數目
越多的神經元,所需要的資料要越多筆,所以不是越多越好
因為未知參數會越多,成了ill-postd problem
Generate FIS就是在產生你的神經元數目,和神經元的function型態
在training的過程中,主要是求W係數
forward propagation的training過程中,係數是從前面算到後面
要花的時間比較久
所以以back propagation的training方式為主,係數從後面算到前面
input每一次都會依照output與target所計算出的error functin調整參數
資料有n筆,n筆餵完之後叫做一個epochs
所以epochs是設定你要重複做幾次
training好之後,就可以餵testing資料點,不用包含output
checking是讓你作valdiation用的,看哪一種hypothesis的model最好
所以也要給output好作評估
這個模型是regression model
但是你的問題是像classification
舉例來說
你今天是舉手還是抬腿
舉手是1
抬腿是0
你算出來是0.5,請問是抬半隻加不舉嗎
你必須再利用softmax轉成classification
問題應該迎刃而解
※ 引述《jenny920218 (jenny)》之銘言:
: 最近做專題實在卡關很久了
: 有些問題實在想不通想請教大家
: 我想要用六個部位肌電訊號的數據判讀目前在做什麼動作
: 每個部位的肌電訊號取300個數據
: 所以總共的input是6*300
: 然後需要判讀的動作有六個(假設為ABCDEF)
: 我目前想先用anfisedit做初步的判斷
: 原本的想法是假設第一組數據所輸出的結果是A
: 那我給的training data為7*300(六組input 一組output)
: (我的想法是,假設output (1*300)輸出的值為 1 時為動作A)
: 輸出的值為 2 時為動作B以此類推
: 那我給的checking data要如何設定
: 再輸入checking data的時候也要給output
: 不過我不是很清楚為什麼
: 希望可以幫忙解答
: 謝謝

Links booklink

Contact Us: admin [ a t ] ucptt.com