操作系统:UBUNTU16.04,使用this caffe
在“ contrastive_loss_layer.cpp”文件中进行更改后,使所有操作成功完成 但是让运行测试产生此错误
CXX src/caffe/test/test_power_layer.cpp
In file included from src/caffe/test/test_power_layer.cpp:12:0:
./include/caffe/test/test_gradient_check_util.hpp: In instantiation of ‘void caffe::GradientChecker::CheckGradientSingle(caffe::Layer, const std::vector<caffe::Blob>&, const std::vector<caffe::Blob>&, int, int, int, bool) [with Dtype = float]’:
./include/caffe/test/test_gradient_check_util.hpp:208:26: required from ‘void caffe::GradientChecker::CheckGradientEltwise(caffe::Layer, const std::vector<caffe::Blob>&, const std::vector<caffe::Blob>&) [with Dtype = float]’
src/caffe/test/test_power_layer.cpp:78:5: required from ‘void caffe::PowerLayerTest::TestBackward(caffe::PowerLayerTest::Dtype, caffe::PowerLayerTest::Dtype, caffe::PowerLayerTest::Dtype) [with TypeParam = caffe::CPUDevice; caffe::PowerLayerTest::Dtype = float]’
src/caffe/test/test_power_layer.cpp:167:3: required from ‘void caffe::PowerLayerTest_TestPowerTwoScaleHalfGradient_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = caffe::CPUDevice]’
src/caffe/test/test_power_layer.cpp:170:1: required from here
./include/caffe/test/test_gradient_check_util.hpp:167:31: error: no matching function for call to ‘max(const double&, float)’
Dtype scale = std::max(
^
In file included from /usr/include/c++/5/algorithm:61:0,
from src/caffe/test/test_power_layer.cpp:1:
/usr/include/c++/5/bits/stl_algobase.h:219:5: note: candidate: template const _Tp& std::max(const _Tp&, const _Tp&)
max(const _Tp& __a, const _Tp& __b)
^
/usr/include/c++/5/bits/stl_algobase.h:219:5: note: template argument deduction/substitution failed:
In file included from src/caffe/test/test_power_layer.cpp:12:0:
./include/caffe/test/test_gradient_check_util.hpp:167:31: note: deduced conflicting types for parameter ‘const _Tp’ (‘double’ and ‘float’)
Dtype scale = std::max(
^
In file included from /usr/include/c++/5/algorithm:61:0,
from src/caffe/test/test_power_layer.cpp:1:
/usr/include/c++/5/bits/stl_algobase.h:265:5: note: candidate: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)
max(const _Tp& __a, const _Tp& __b, _Compare __comp)
^
/usr/include/c++/5/bits/stl_algobase.h:265:5: note: template argument deduction/substitution failed:
In file included from src/caffe/test/test_power_layer.cpp:12:0:
./include/caffe/test/test_gradient_check_util.hpp:167:31: note: deduced conflicting types for parameter ‘const _Tp’ (‘double’ and ‘float’)
Dtype scale = std::max(
^
Makefile:526: recipe for target '.build_release/src/caffe/test/test_power_layer.o' failed
make: *** [.build_release/src/caffe/test/test_power_layer.o] Error 1