2017-05-19 1 views
0

Chainer로 단일 레이어 rnn-s를 만들고 가르 칠 수 있지만 네트워크 확장을 시도 할 때 오류가 발생합니다. 여기 내 코드는, 나는 2 숨겨진 레이어 부분 주석, 그래서 이것은 순 단층chainer (LSTM)가있는 멀티 레이어 RNN

#Regression 
class Regression(Chain): 
    def __init__(self, predictor): 
     super(Regression, self).__init__(predictor=predictor) 
    def __call__(self, x, t): 
     y = self.predictor(x) 
     loss = F.mean_squared_error(y, t) 
     report({'loss': loss}, self) 
     return loss 
     #return loss 
#%% 
#RNN 
class RNN(Chain): 
    def __init__(self): 
     super(RNN, self).__init__(
      lstm=L.LSTM(12, 50), # 
      # lstm2=L.LSTM(100, 100), 
      out=L.Linear(50, 1), # 
     ) 

    def reset_state(self): 
     self.lstm.reset_state() 
     #self.lstm2.reset_state() 

    def __call__(self, x): 
     h = self.lstm(x) 
     # h2 = self.lstm(h) 
     y = self.out(h2) 
     return y 

오류로 실행해야합니다 내어 쓰기는 행에있는 모든 외부 들여 쓰기 수준 일치하지 않습니다 H2 = 자기 .lstm (시)

내가 뭘 잘못하고 있니?

답변

0

탭을 공백으로 혼합했는지 확인하십시오. 더 좋은 점은 IDE로 이동하여 탭을 자동으로 공백을 삽입하도록하십시오. 그렇지 않으면이 코드가 제대로 실행됩니다 (모든 항목을 가져온 후에)

관련 문제