Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.47 KB | None | 0 0
  1. def train(trainDB, testDB, n_iter, batch_size, evaluate_every, test_size,
  2. loss_every):
  3. print("Starting training process!")
  4. print("-------------------------------------")
  5.  
  6. best = -1
  7. t_start = time.time()
  8.  
  9. inputs=trainDB.getTripletTrainData(batch_size)
  10. targets=np.ones([batch_size])
  11.  
  12. for i in range(0, n_iter):
  13. loss=tripletNet.fit(inputs, targets)
  14.  
  15. #print("Loss: {0}".format(loss))
  16.  
  17. if i % evaluate_every == 0:
  18. print("Time for {0} iterations: {1}".format(i, time.time()-t_start))
  19. val_acc = self.test_oneshot(testDB, test_size)
  20. if val_acc > best:
  21. print("Current best: {0}, previous best: {1}".format(val_acc, best))
  22. print("Saving weights to: {0} n".format(weights_path))
  23. self.tripletNet.save_weights(weights_path)
  24. best=val_acc
  25.  
  26. if i % loss_every == 0:
  27. print("iteration {}, training loss: {:.2f},".format(i,loss))
  28.  
  29. Starting training process!
  30. -------------------------------------
  31. ---------------------------------------------------------------------------
  32. AttributeError Traceback (most recent call last)
  33. <ipython-input-163-b5442e61de2d> in <module>()
  34. ----> 1 train(trainDatabase, testDatabase, n_iter, batch_size, evaluate_every, test_size, loss_every)
  35.  
  36. 5 frames
  37. <ipython-input-161-f417f0ebcfc7> in train(trainDB, testDB, n_iter, batch_size, evaluate_every, test_size, loss_every)
  38. 10
  39. 11 for i in range(0, n_iter):
  40. ---> 12 loss=tripletNet.fit(inputs, targets)
  41. 13
  42. 14 #print("Loss: {0}".format(loss))
  43.  
  44. /usr/local/lib/python3.6/dist-packages/keras/engine/training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, **kwargs)
  45. 950 sample_weight=sample_weight,
  46. 951 class_weight=class_weight,
  47. --> 952 batch_size=batch_size)
  48. 953 # Prepare validation data.
  49. 954 do_validation = False
  50.  
  51. /usr/local/lib/python3.6/dist-packages/keras/engine/training.py in _standardize_user_data(self, x, y, sample_weight, class_weight, check_array_lengths, batch_size)
  52. 749 feed_input_shapes,
  53. 750 check_batch_axis=False, # Don't enforce the batch size.
  54. --> 751 exception_prefix='input')
  55. 752
  56. 753 if y is not None:
  57.  
  58. /usr/local/lib/python3.6/dist-packages/keras/engine/training_utils.py in standardize_input_data(data, names, shapes, check_batch_axis, exception_prefix)
  59. 90 data = data.values if data.__class__.__name__ == 'DataFrame' else data
  60. 91 data = [data]
  61. ---> 92 data = [standardize_single_array(x) for x in data]
  62. 93
  63. 94 if len(data) != len(names):
  64.  
  65. /usr/local/lib/python3.6/dist-packages/keras/engine/training_utils.py in <listcomp>(.0)
  66. 90 data = data.values if data.__class__.__name__ == 'DataFrame' else data
  67. 91 data = [data]
  68. ---> 92 data = [standardize_single_array(x) for x in data]
  69. 93
  70. 94 if len(data) != len(names):
  71.  
  72. /usr/local/lib/python3.6/dist-packages/keras/engine/training_utils.py in standardize_single_array(x)
  73. 25 'Got tensor with shape: %s' % str(shape))
  74. 26 return x
  75. ---> 27 elif x.ndim == 1:
  76. 28 x = np.expand_dims(x, 1)
  77. 29 return x
  78.  
  79. **AttributeError: 'generator' object has no attribute 'ndim'**
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement