私は、LSTM RNNがどのように動作し、どのようにそれらをKerasで実装してバイナリ分類の問題を解決できるかを理解しようとしています。私のコードと私が使用しているデータセットは下に表示されています。私はcompilrコードを私はエラーTypeError: __init__() got multiple values for keyword argument 'input_dim'
を得る、誰も助けることができますか?ケラスでのLSTMの実装特定のデータセットの使用
from keras.models import Sequential
from keras.layers import LSTM
from keras.layers.embeddings import Embedding
from keras.layers import Dense
from sklearn.cross_validation import train_test_split
import numpy
from sklearn.preprocessing import StandardScaler # data normalization
seed = 7
numpy.random.seed(seed)
dataset = numpy.loadtxt("sorted output.csv", delimiter=",")
X = dataset[:,0:4]
scaler = StandardScaler(copy=True, with_mean=True, with_std=True) #data normalization
X = scaler.fit_transform(X) #data normalization
Y = dataset[:4]
# split into 67% for train and 33% for test
X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size=0.33, random_state=seed)
# create model
model = Sequential()
model.add(Embedding(12,input_dim=4,init='uniform',activation='relu'))
model.add(Dense(4, init='uniform', activation='relu'))
model.add(LSTM(100))
model.add(Dense(1, init='uniform', activation='sigmoid'))
# Compile model
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Fit the model
model.fit(X_train, y_train, validation_data=(X_test,y_test), nb_epoch=150, batch_size=10)
これはニューラルネットワーク、theanoまたはkerasとは関係ありません。 'numpy.loadtxt(" sorted output.csv "、delimiter ="、 ")'はファイル 'sorted output.csv'を見つけることができないという唯一の問題です。あなたはアプリケーションを起動したときにディレクトリに存在していると確信していますか?また、絶対パスを試してください、そして、それがファイル名のスペースを削除しようとしないならば。私はあなたの "しかし、私がインポートしようとしているデータセットは、あなたがPythonコードを持っている場合は、このファイルがnumpy関数が呼び出される前に存在することを確認していると信じるだろう... – example
私は確かに私のデータセットは、私は別のNN(再発しないもの)を同じデータセットで試してみると、うまく動作します。したがって、唯一の選択肢は、自分のRNNネットワークが正しく実装されていないことです。 – Adriano10
NNはファイル名を認識しません。したがって、提供されるエラーは発生しません。通常は、Pythonでエラーが発生したときにスタックトレースを取得します。それを使ってエラーがどこで発生したのか把握し、発生した行を提供してください。 – example