Advertisement
4ever_bored

keras_test.py

Oct 6th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.04 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. import numpy as np
  3. np.random.seed(1337)  # for reproducibility
  4.  
  5. from keras.models import Sequential
  6. from keras.layers import Dense, Activation, Flatten
  7. from keras.layers import Convolution2D
  8. from keras import backend as K
  9. from keras.optimizers import SGD
  10. import matplotlib.pyplot as plt
  11.  
  12.  
  13. batch_size = 500
  14. nb_output = 1
  15. nb_epoch = 10
  16.  
  17. # input image dimensions
  18. img_rows, img_cols = 16, 16
  19. # number of convolutional filters to use
  20. nb_filters = 20
  21. # size of pooling area for max pooling
  22. pool_size = (2, 2)
  23. # convolution kernel size
  24. kernel_size = (3, 3)
  25.  
  26.  
  27. X_train = np.random.randn(10000, 16*16)
  28. Y_train = np.mean(X_train, 1)
  29.  
  30. X_train = X_train.astype('float32')
  31. X_test = np.random.randn(1000, 16*16)
  32. Y_test = np.mean(X_test, 1)
  33.  
  34. if K._BACKEND == 'theano':
  35.     X_train = np.reshape(X_train, (10000, 1, 16, 16))
  36.     X_test = np.reshape(X_test, (1000, 1, 16, 16))
  37. else:
  38.     X_train = np.reshape(X_train, (10000, 16, 16, 1))    
  39.     X_test = np.reshape(X_test, (1000, 16, 16, 1))
  40.  
  41. print('X_train shape:', X_train.shape)
  42. print(X_train.shape[0], 'train samples')
  43. print(X_test.shape[0], 'test samples')
  44.  
  45.  
  46. model = Sequential()
  47.  
  48. model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1],
  49.                         border_mode='same',
  50.                         input_shape=X_train.shape[1:], init='glorot_uniform'))
  51. model.add(Activation('relu'))
  52.  
  53. #model.add(Flatten(input_shape=X_train.shape[1:]))
  54. model.add(Flatten())
  55. model.add(Dense(10, init='glorot_uniform'))
  56. model.add(Activation('sigmoid'))
  57. model.add(Dense(nb_output, init='glorot_uniform'))
  58. model.add(Activation('linear'))
  59.  
  60. sgd = SGD(lr=0.1,  momentum=0.9, nesterov=True)#decay=1e-6,
  61. model.compile(loss='mse',
  62.               optimizer=sgd)
  63.  
  64. model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch,
  65.           verbose=1, validation_data=(X_test, Y_test))
  66. score = model.evaluate(X_test, Y_test, verbose=1)
  67. predicts = model.predict(X_test, batch_size=1000, verbose=0)
  68. print('Test score:', score[0])
  69. plt.figure()
  70. plt.scatter(Y_test, predicts)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement