Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- import numpy as np
- np.random.seed(1337) # for reproducibility
- from keras.models import Sequential
- from keras.layers import Dense, Activation, Flatten
- from keras.layers import Convolution2D
- from keras import backend as K
- from keras.optimizers import SGD
- import matplotlib.pyplot as plt
- batch_size = 500
- nb_output = 1
- nb_epoch = 10
- # input image dimensions
- img_rows, img_cols = 16, 16
- # number of convolutional filters to use
- nb_filters = 20
- # size of pooling area for max pooling
- pool_size = (2, 2)
- # convolution kernel size
- kernel_size = (3, 3)
- X_train = np.random.randn(10000, 16*16)
- Y_train = np.mean(X_train, 1)
- X_train = X_train.astype('float32')
- X_test = np.random.randn(1000, 16*16)
- Y_test = np.mean(X_test, 1)
- if K._BACKEND == 'theano':
- X_train = np.reshape(X_train, (10000, 1, 16, 16))
- X_test = np.reshape(X_test, (1000, 1, 16, 16))
- else:
- X_train = np.reshape(X_train, (10000, 16, 16, 1))
- X_test = np.reshape(X_test, (1000, 16, 16, 1))
- print('X_train shape:', X_train.shape)
- print(X_train.shape[0], 'train samples')
- print(X_test.shape[0], 'test samples')
- model = Sequential()
- model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1],
- border_mode='same',
- input_shape=X_train.shape[1:], init='glorot_uniform'))
- model.add(Activation('relu'))
- #model.add(Flatten(input_shape=X_train.shape[1:]))
- model.add(Flatten())
- model.add(Dense(10, init='glorot_uniform'))
- model.add(Activation('sigmoid'))
- model.add(Dense(nb_output, init='glorot_uniform'))
- model.add(Activation('linear'))
- sgd = SGD(lr=0.1, momentum=0.9, nesterov=True)#decay=1e-6,
- model.compile(loss='mse',
- optimizer=sgd)
- model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch,
- verbose=1, validation_data=(X_test, Y_test))
- score = model.evaluate(X_test, Y_test, verbose=1)
- predicts = model.predict(X_test, batch_size=1000, verbose=0)
- print('Test score:', score[0])
- plt.figure()
- plt.scatter(Y_test, predicts)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement