Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def generate_data():
- X=[]
- Y=[]
- for i in range(50000):
- start=random.randint(1,100)
- d=random.randrange(-1,2,2) #-1 or 1
- param=[(start),(start+d),(start+d+d)]
- X.append(np.array(param))
- if d<0:
- Y.append([1,0])
- elif len(Y)>2 and d>0 and Y[-1][1]==1 and Y[-2][1]==1:
- Y.append([1,0])
- elif d>0:
- Y.append([0,1])
- X=np.array(X)
- Y=np.array(Y)
- return X,Y
- X,Y = generate_data()
- X=np.asarray(X,'float32')
- Y=np.asarray(Y,'float32')
- X=np.reshape(X,(1,len(X),3))
- Y=np.reshape(Y,(1,len(Y),2))
- model=Sequential()
- model.add(LSTM(20, input_shape=(50000,3), return_sequences=True))
- model.add(Dense(2))
- model.add(Activation('softmax'))
- model.compile(loss='categorical_crossentropy', optimizer=RMSprop(), metrics=['accuracy'])
- history = model.fit(X, Y,batch_size=100, nb_epoch=250, verbose=2)
- model.add(CuDNNLSTM(20, input_shape=(50000,3), return_sequences=True))
Add Comment
Please, Sign In to add comment