bug fix when using hsigmoid with gpu

release/0.11.0
peterzhang2029 7 years ago
parent cda3a7747a
commit 539462839b

@ -129,8 +129,7 @@ void HierarchicalSigmoidLayer::forward(PassType passType) {
*cpuOutput_,
-1); // scaleSum
preOutput_.value->softrelu(*preOutput_.value);
MatrixPtr sum =
Matrix::create(batchSize, 1, /* trans= */ false, false);
MatrixPtr sum = Matrix::create(batchSize, 1, /* trans= */ false, false);
preOutput_.value->rowSum(*sum);
cpuOutput_->add(*sum);
if (useGpu_) {
@ -164,8 +163,7 @@ void HierarchicalSigmoidLayer::backward(const UpdateCallback& callback) {
} else {
cpuBias_ = biases_grad;
}
preOutput_.grad->addByBitCodeBackward(
numClasses_, *cpuLabel_, *cpuBias_);
preOutput_.grad->addByBitCodeBackward(numClasses_, *cpuLabel_, *cpuBias_);
if (useGpu) {
biases_grad->copyFrom(*cpuBias_);
} else {

@ -89,7 +89,6 @@ protected:
MatrixPtr cpuBias_;
MatrixPtr cpuOutput_;
IVectorPtr cpuLabel_;
};
} // namespace paddle

Loading…
Cancel
Save