Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # univariate cnn example
- from numpy import array
- from keras.models import Sequential
- from keras.layers import Dense
- from keras.layers import Flatten
- from keras.layers.convolutional import Conv1D
- from keras.layers.convolutional import MaxPooling1D
- InputPath = ('/content/drive/My Drive/Colabe Notebook/AAPL.csv')
- # split a univariate sequence into samples
- def split_sequence(sequence, n_steps):
- X, y = list(), list()
- for i in range(len(sequence)):
- # find the end of this pattern
- end_ix = i + n_steps
- # check if we are beyond the sequence
- if end_ix > len(sequence) - 1:
- break
- # gather input and output parts of the pattern
- seq_x, seq_y = sequence[i:end_ix], sequence[end_ix]
- X.append(seq_x)
- y.append(seq_y)
- return array(X), array(y)
- # define input sequence
- raw_seq = [InputPath]
- # choose a number of time steps
- n_steps = 120
- # split into samples
- X, y = split_sequence(raw_seq, n_steps)
- # reshape from [samples, timesteps] into [samples, timesteps, features]
- n_features = 0
- print("här" + X.shape[0])
- X = X.reshape((X.shape[0], X.shape[0], n_features)) #Numb array? kolla upp de mer?
- # define model
- model = Sequential()
- model.add(Conv1D(filters=64, kernel_size=2, activation='relu', input_shape=(n_steps, n_features)))
- model.add(MaxPooling1D(pool_size=2))
- model.add(Flatten())
- model.add(Dense(50, activation='relu'))
- model.add(Dense(1))
- model.compile(optimizer='adam', loss='mse')
- # fit model
- model.fit(X, y, epochs=1000, verbose=0)
- # demonstrate prediction
- yhat = model.predict(x_input, verbose=0)
- print(yhat)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement