二进制连接如何消除乘法?

How do binary connections eliminate multiplication?

我正在阅读 Neural Network with Few Multiplications,但我无法理解 Binary 或 Ternary Connect 如何消除乘法的需要。

他们解释说,通过从 [-1, 0, 1] 中随机抽样权重,我们消除了乘法的需要,并且可以仅使用符号变化来计算 Wx。但是,即使权重严格为 -1、0 和 1,如何在不乘法的情况下更改 x 的符号?

例如。 W = [0,1,-1] 和 x = [0.3, 0.2, 0.4]。我是否还需要将 W 和 x 相乘才能得到 [0, 0.2, -0.4]?还是有其他比乘法更有效地更改符号的方法?

是的。自 "early days"(比如 1970 年)以来,我所知道的所有通用处理器都有一个机器操作来获取一个数的大小、另一个数的符号,以及 return 结果。数据传输并行发生:运算的算术部分是一个机器周期。

许多高级语言都将此功能作为内置函数。它通常以 "copy_sign".

之类的名称出现