ATRank
ATRank copied to clipboard
TypeError: Object of type 'HelpFlag' is not JSON serializable
Traceback (most recent call last):
File "train.py", line 184, in
Traceback (most recent call last): File "train.py", line 184, in tf.app.run() File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/platform/app.py", line 40, in run _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef) File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run _run_main(main, args) File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main sys.exit(main(argv)) File "train.py", line 181, in main train() File "train.py", line 132, in train model = create_model(sess, config, cate_list) File "train.py", line 54, in create_model print(json.dumps(config, indent=4), flush=True) File "/usr/lib/python3.6/json/init.py", line 238, in dumps **kw).encode(obj) File "/usr/lib/python3.6/json/encoder.py", line 201, in encode chunks = list(chunks) File "/usr/lib/python3.6/json/encoder.py", line 430, in _iterencode yield from _iterencode_dict(o, _current_indent_level) File "/usr/lib/python3.6/json/encoder.py", line 404, in _iterencode_dict yield from chunks File "/usr/lib/python3.6/json/encoder.py", line 437, in _iterencode o = _default(o) File "/usr/lib/python3.6/json/encoder.py", line 180, in default o.class.name) TypeError: Object of type 'HelpFlag' is not JSON serializable
Hi, this problem can be solved by just remove the line code.
print(json.dumps(config, indent=4), flush=True)
it doesn't make any difference to the result of the training. And do you have occurred the error about : ValueError: setting an array element with a sequence. in the code of bpr.model.py 、rnn.model.py、rnn_att.model.py :
def train(self, sess, uij, l):
113 loss, _ = sess.run([self.loss, self.train_op], feed_dict={
114 self.u: uij[0],
115 self.i: uij[1],
116 self.y: uij[2],
117 self.hist_i: uij[2],
118 self.sl: uij[4],
119 self.lr: l,
120 })