KaiyangZhou / vsumm-reinforce

AAAI 2018 - Unsupervised video summarization with deep reinforcement learning (Theano)
MIT License
137 stars 36 forks source link

Problem with float data type #4

Closed ab-bh closed 6 years ago

ab-bh commented 6 years ago

while running vsum_train.py file as per mentioned in the readme i encounter this error:

Traceback (most recent call last): File "vsum_train.py", line 158, in train_dataset_path=args.dataset) File "vsum_train.py", line 56, in train net = reinforceRNN(model_options) File "/home/abhishek/Desktop/vsumm-reinforce/model_reinforceRNN.py", line 40, in init init_state=None, init_memory=None, go_backwards=False File "/home/abhishek/Desktop/vsumm-reinforce/theano_nets.py", line 342, in init self.output = self.step(self.state_below) File "/home/abhishek/Desktop/vsumm-reinforce/theano_nets.py", line 396, in step go_backwards=self.go_backwards File "/home/abhishek/miniconda3/envs/python2/lib/python2.7/site-packages/theano/scan_module/scan.py", line 1071, in scan scan_outs = local_op(scan_inputs) File "/home/abhishek/miniconda3/envs/python2/lib/python2.7/site-packages/theano/gof/op.py", line 615, in call node = self.make_node(inputs, **kwargs) File "/home/abhishek/miniconda3/envs/python2/lib/python2.7/site-packages/theano/scan_module/scan_op.py", line 572, in make_node inner_sitsot_out.type.dtype)) ValueError: When compiling the inner function of scan the following error has been encountered: The initial state (outputs_info in scan nomenclature) of variable IncSubtensor{Set;:int64:}.0 (argument number 1) has dtype float32, while the result of the inner function (fn) has dtype float64. This can happen if the inner function of scan results in an upcast or downcast.

KaiyangZhou commented 6 years ago

Hi, I guess you have not specified the data type in your .theanorc file. Could you please check if you have .theanorc which contains the following information in your home dir.

[global]
device = cuda
floatX = float32
ab-bh commented 6 years ago

i dont have cuda installed can i run it on cpu? do i have to change floatX to float64?

KaiyangZhou commented 6 years ago

Yes, you can run on cpu. Try to run THEANO_FLAGS='floatX=float32' python vsum_train.py.

ab-bh commented 6 years ago

Thanks , it worked i created a .theanorc fle with floatX=float32 and i can run the vsumm_train.py file now.

KaiyangZhou commented 6 years ago

Good!