2016-03-23 16 views
3

Ben onların given code kullanmış Long-term Recurrent Convolutional Networks paper.Uzun Dönem Tekrarlayan Konvolüsyon Ağları LSTM'de kağıt üretimi hatası mı?

yeniden çalışıyorum. Ve talimatlarını takip ettiler ve tek çerçeve modelini ürettiler. Ancak LSTM hibrid ağını eğitmeye çalışırken başarısız olur. instructions.

belirtildiği gibi zaten ben koşmak komutu alıyorum çıktı

I0323 18:16:30.685951 9123 net.cpp:205] This network produces output loss 
I0323 18:16:30.685967 9123 net.cpp:446] Collecting Learning Rate and Weight Decay. 
I0323 18:16:30.685976 9123 net.cpp:218] Network initialization done. 
I0323 18:16:30.685982 9123 net.cpp:219] Memory required for data: 817327112 
I0323 18:16:30.686339 9123 solver.cpp:42] Solver scaffolding done. 
I0323 18:16:30.686388 9123 caffe.cpp:86] Finetuning from singleframe_flow/snaps/snapshots_singleFrame_flow_v2_iter_50000.caffemodel 
I0323 18:16:33.377488 9123 solver.cpp:247] Solving lstm_joints 
I0323 18:16:33.377518 9123 solver.cpp:248] Learning Rate Policy: step 
I0323 18:16:33.391726 9123 solver.cpp:291] Iteration 0, Testing net (#0) 
Traceback (most recent call last): 
    File "/home/anilil/projects/lstm/lisa-caffe-public/examples/LRCN_activity_recognition/sequence_input_layer.py", line 220, in forward 
    new_result_data = [None]*len(self.batch_advancer.result['data']) 
KeyError: 'data' 
terminate called after throwing an instance of 'boost::python::error_already_set' 
*** Aborted at 1458753393 (unix time) try "date -d @1458753393" if you are using GNU date *** 
PC: @  0x7f243731bcc9 (unknown) 
*** SIGABRT (@0x23a3) received by PID 9123 (TID 0x7f24389077c0) from PID 9123; stack trace: *** 
    @  0x7f243731bd40 (unknown) 
    @  0x7f243731bcc9 (unknown) 
    @  0x7f243731f0d8 (unknown) 
    @  0x7f2437920535 (unknown) 
    @  0x7f243791e6d6 (unknown) 
    @  0x7f243791e703 (unknown) 
    @  0x7f243791e976 (unknown) 
    @  0x7f2397bb5bfd caffe::PythonLayer<>::Forward_cpu() 
    @  0x7f243821d87f caffe::Net<>::ForwardFromTo() 
    @  0x7f243821dca7 caffe::Net<>::ForwardPrefilled() 
    @  0x7f243822fd77 caffe::Solver<>::Test() 
    @  0x7f2438230636 caffe::Solver<>::TestAll() 
    @  0x7f243823837b caffe::Solver<>::Step() 
    @  0x7f2438238d5f caffe::Solver<>::Solve() 
    @   0x4071c8 train() 
    @   0x405701 main 
    @  0x7f2437306ec5 (unknown) 
    @   0x405cad (unknown) 
    @    0x0 (unknown) 
run_lstm_flow.sh: line 8: 9123 Aborted     (core dumped) GLOG_logtostderr=1 $TOOLS/caffe train -solver lstm_solver_flow.prototxt -weights singleframe_flow/snaps/snapshots_singleFrame_flow_v2_iter_50000.caffemodel 
Done. 

Bu benim değişti sequence_input_layer.py ve prototext dosyalar caffe train -solver lstm_solver_flow.prototxt -weights singleframe_flow/snaps/snapshots_singleFrame_flow_v2_iter_50000.caffemodel olan gerekli değişiklikleri yaptık. Giriş trenim ve ağa test txts bu format.

Ben asıl sorun bana biraz karışık bu çözmek mümkün değildi ##rearrange the data: The LSTM takes inputs as [video0_frame0, video1_frame0,...] but the data is currently arranged as [video0_frame0, video0_frame1, ...]

olduğunu düşünüyorum. Ama yanılıyor olabilirim.

cevap

0

Aynı soruyla karşılaşıyorum. sequence_input_layer.py'da birkaç yere uyum sağlıyorum ve şu anda benim için iyi çalışıyor:
1. Ben 95'i değiştiriyorum ve ne için kullanıldığını bilmediğimden beri %i'u kaldırıyorum. yani yazarın veri dizini madenin farklı olduğundan frames değişken verilerim için doğru olduğundan emin olmak için 157 civarında
frames.append(self.video_dict[key]['frames']) 2. Ben değişim hattına
frames.append(self.video_dict[key]['frames'] %i) değiştirin.

Bu yardımcı olacaktır umarım.

+0

Merhabalar. Ne yazık ki bunu işe alamadım ve Tensorflow'daki LSTM katmanını uyguladı. Bu iyi çalıştı. Numunenin özelliklerini çıkarmak ve tensorflow modeline beslemek için piton kullanmıştım. @yunfeng –