2017-02-01 14 views
0

この分野ではすでにいくつかの質問がありましたが、私の問題に対する答えは見つかりませんでした。 回帰問題のLSTM(tflearn付き)があります。 私はどのような変更を行っても3種類のエラーが発生します。tflearn pythonを使用してlstmにデータを入力

新しいカーネルを起動したとき、私はその後

ValueError: Cannot feed value of shape (100, 10) for Tensor 'InputData/X:0', which has shape '(?, 1, 10)' 

を取得する最初の実行時に

import pandas 
import tflearn 
import tensorflow as tf 
from sklearn.cross_validation import train_test_split 


csv = pandas.read_csv('something.csv', sep = ',') 

X_train, X_test = train_test_split(csv.loc[:,['x1', 'x2', 
           'x3','x4','x5','x6', 
           'x7','x8','x9', 
           'x10']].as_matrix()) 
Y_train, Y_test = train_test_split(csv.loc[:,['y']].as_matrix()) 

#create LSTM 
g = tflearn.input_data(shape=[None, 1, 10]) 
g = tflearn.lstm(g, 512, return_seq = True) 
g = tflearn.dropout(g, 0.5) 
g = tflearn.lstm(g, 512) 
g = tflearn.dropout(g, 0.5) 
g = tflearn.fully_connected(g, 1, activation='softmax') 
g = tflearn.regression(g, optimizer='adam', loss = 'mean_square', 
        learning_rate=0.001) 

model = tflearn.DNN(g) 
model.fit(X_train, Y_train, validation_set = (Y_train, Y_test)) 

n_examples = Y_train.size 
def mean_squared_error(y,y_): 
    return tf.reduce_sum(tf.pow(y_ - y, 2))/(2 * n_examples) 

print() 
print("\nTest prediction") 
print(model.predict(X_test)) 
print(Y_test) 
Y_pred = model.predict(X_test) 
print('MSE Test: %.3f' % (mean_squared_error(Y_test,Y_pred))) 

、2回目の

AssertionError: Input dim should be at least 3. 

、それは二LSTMの層を意味します。私は2番目のLSTMドロップアウト層を除去しようとしましたが、あなたはこれを読めば、私は

feed_dict[net_inputs[i]] = x 
IndexError: list index out of range 

を取得し、良い一日を。私はあなたにそれに答える、ありがとう!

答えて

3

[OK]を解決しました。私はそれを投稿して誰かを助けるかもしれない:

X_train = X_train.reshape([-1,1,10]) 
X_test = X_test.reshape([-1,1,10]) 
関連する問題