huawei-noah / AdderNet

Code for paper " AdderNet: Do We Really Need Multiplications in Deep Learning?"
BSD 3-Clause "New" or "Revised" License
954 stars 187 forks source link

Why use nn.Conv in the ResNet? #60

Open WhatAShot opened 3 years ago

WhatAShot commented 3 years ago

Hello! Why do you use nn.Conv in the ResNet (self.conv1 and self.fc)? Shouldn't they be implemented with adder?

HantingChen commented 3 years ago

We do not replace the first and last conv in the networks, since replacing them would affect the performance and their computational cost is relatively very small in the whole network.

DavideHe commented 2 years ago

We do not replace the first and last conv in the networks, since replacing them would affect the performance and their computational cost is relatively very small in the whole network.

I think addernet's target is for no multiplication on the devices. Because multiplier is expensive for cheap chips such as MCU. AdderNet‘s potential is for more cheap chip's integration,not only for decreasing the computation.Because compared with mature quantification, the training and integration of addernet is a big engineering problem on Arm architecture chip that is more expensive chips.