現在、x_train.shape = (10000,10)としたデータを用いています。
モデルは以下のようなものです。
python
1class ChainLSTM(Chain): 2 def __init__(self): 3 super(ChainLSTM, self).__init__( 4 l1 = L.Linear(1, 5), 5 b1 = L.BatchNormalization(5), 6 lstm1 = L.LSTM(5, 5), 7 b2 = L.BatchNormalization(5), 8 l2 = L.Linear(5, 5), 9 l3 = L.Linear(1, 5), 10 l4 = L.Linear(5, 1) 11 ) 12 13 def __call__(self, x, t): 14 y = self.fwd(x) 15 return F.mean_squared_error(y, t) 16 17 def fwd(self,x): 18 for i in range(9): 19 h = self.b1(F.relu(self.l1(x[i]))) 20 h = self.b2(self.lstm1(h)) 21 h = F.relu(self.l3(x[-1]) + self.l2(h)) 22 h = F.dropout(h) 23 h = self.l4(h) 24 return F.sigmoid(h) 25
fwdにおいて、一つのdataに含まれる10個の時系列データに対して、順にアクセスをしたいのですが、以下のようなエラーが出ます。
python
1 x_type.shape[1] == w_type.shape[1], 2IndexError: tuple index out of range
原因としては、そもそものデータの型(reshapeの仕方)がおかしい・fwdにおけるxへのアクセスの仕方がおかしい などなのではないかと考えていますが、修正の仕方がわかりません。
ご教授いただけると助かります。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。