Guest User

Untitled

a guest
Sep 11th, 2021
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. prng = np.random.RandomState(1234567891)
  2. x = prng.rand(10000, 1)
  3. # x = np.random.rand(10000, 1)
  4. y = x
  5.  
  6. print(f"minimum = {min(x)}")
  7. time.sleep(1)
  8.  
  9. def create_model():
  10. # dropout_nodes = 0.1
  11. dropout_nodes = 0.0
  12. # intermediary_activation = 'linear'
  13. intermediary_activation = 'relu'
  14. final_activation = 'linear'
  15.  
  16. # initialize sequential model
  17. model = tf.keras.models.Sequential()
  18.  
  19. layer_nodes = [16, 8, 4, 2]
  20. for i, layer_node in enumerate(layer_nodes):
  21. if i==0:
  22. # first layer
  23. model.add(tf.keras.layers.Dense(layer_node, input_dim=1))
  24. model.add(tf.keras.layers.Activation(intermediary_activation))
  25. model.add(tf.keras.layers.Dropout(dropout_nodes))
  26. # model.add(tf.keras.layers.BatchNormalization()) #we can re-normalize the data after each layer
  27. else:
  28. # other layers
  29. model.add(tf.keras.layers.Dense(layer_node))
  30. model.add(tf.keras.layers.Activation(intermediary_activation))
  31. model.add(tf.keras.layers.Dropout(dropout_nodes))
  32. # model.add(tf.keras.layers.BatchNormalization()) #we can re-normalize the data after each layer
  33. model.add(tf.keras.layers.Dense(1))
  34. # model.add(tf.keras.layers.Activation('relu'))
  35. model.add(tf.keras.layers.Activation(final_activation))
  36.  
  37. loss = 'mse'
  38. metric = ["mae", "mape"]
  39. opt = tf.keras.optimizers.SGD(learning_rate=1e-2)
  40. # opt = tf.keras.optimizers.Adam(learning_rate=1e-3)
  41.  
  42. model.compile(loss=loss, optimizer=opt, metrics=[metric])
  43.  
  44. return model
  45.  
  46. model = create_model()
  47.  
  48. history = model.fit(x=x, y=y,
  49. validation_split=0.1, shuffle=False,
  50. epochs=20,
  51. batch_size=32,
  52. verbose=1, )
  53.  
  54. pred = model.predict(x)
  55.  
  56. df = pd.DataFrame(x, columns=["x"])
  57. df['y'] = y
  58. df['pred'] = pred
  59. model_evaluation = model.evaluate(x, y, verbose=2)
  60. dict_model_evaluation = {k.name: model_evaluation[i] for i, k in enumerate(model.metrics)}
  61. print(dict_model_evaluation)
Advertisement
Add Comment
Please, Sign In to add comment