C++ little errors , Big problem

------------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------------

Q1. compile caffe .cpp file , come out an error :

d302@d302-MS-7816-04:~/wangxiao/spl-caffe-master$ make -j8

NVCC src/caffe/layers/euclidean_loss_layer.cu

src/caffe/layers/euclidean_loss_layer.cu(43):error: a value of type "const float " cannot be used to initialize an entity of type "float "

detected during instantiation of "void caffe::EuclideanLossLayer::Backward_gpu(const std::vector *, std::allocator\ *>> &, const std::vector<__nv_bool, std::allocator<__nv_bool>> &, const std::vector *, std::allocator\ *>> &) [with Dtype=float]"

(105): here



the original code is :

1             Dtype* diff_cpu_data = bottom[i]->mutable_cpu_diff();
 2       const Dtype* label_data = bottom[1]->cpu_data();    // label data: 0 or 1
 3       const Dtype* predict_data = bottom[0]->cpu_data();  // predict data
 4        
 5       int spl_num = 0;
 6       int al_num = 0;
 7 
 8       for(int id = 0; id < bottom[i]->count(); ++id) {    // 35*12=420 
 9         
10         // Self Paced Learning 
11         if (label_data[id]==0){  
12           // negative samples ... do nothing 
13         }
14         else{
15           if(predict_data[id]>0.7 && label_data[id]==1 ) {
16               spl_num ++ ;
17             // if the condition is met,  transmit the gradient  
18             // else  make the gradient equal to zero...
19           } 
20           else {
21             diff_cpu_data[id] = 0;
22             // bottom[i]->mutable_cpu_diff()[id] = 0;
23           }
24         }
25 
26 
27         // Active Learning 
28         if (0.4 < predict_data[id] && predict_data[id] < 0.5){
29            
30           if (label_data[id] == 1){
31 
32             predict_data[id] = 1 ;
33           }else
34           if (label_data[id] == 0){
35             predict_data[id] = 0 ;
36           }
37 
38           al_num++;
39           
40         }

Solution 1: No solution, because the char can not give to const char, and the value of const char* can not be changed . and in my problem, we don't need change the predict score at all.

------------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------------

Q2. when trained a AlexNet caffe model, and use the Matlab Interface to extract Features or predicted Scores , However it tell me errors like the following :

C++ little errors , Big problem

d302@d302-MS-7816-04:~$ matlab

libprotobuf ERROR google/protobuf/text_format.cc:172]Error parsing text-format caffe.NetParameter: 339:2: Expected identifier.

WARNING: Logging before InitGoogleLogging() is written to STDERR

F0116 15:34:34.112346 25564 upgrade_proto.cpp:928] Check failed: ReadProtoFromTextFile(param_file, param)Failed to parse NetParameter file: ../../models/bvlc_alexnet/alex_hat_deploy.prototxt

Check failure stack trace:

Killed



Solution 2: layer 6 was repaired when I train my model , i.e.


layer {

name: "fc6_wx"

type: "InnerProduct"

bottom: "pool5"

top: "fc6_wx"

param {

lr_mult: 1

decay_mult: 1

}

param {

lr_mult: 2

decay_mult: 0

}

inner_product_param {

num_output: 4096

weight_filler {

type: "gaussian"

std: 0.005

}

bias_filler {

type: "constant"

value: 0.1

}

}

}

change thename: "fc6_wx"intoname: "fc6", and it will be OK .

------------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------------

原文链接: https://www.cnblogs.com/wangxiaocvpr/p/5134983.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/227484

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午1:36
下一篇 2023年2月13日 下午1:36

相关推荐