Boolean Circuits are Neural Networks

Boolean Circuits are Neural Networks

We were motivated initially by the fact that in very low precision FPGA neural network architectures, lookup tables are often used for arithmetic, but they are often used for very specific functions: while a -LUT is capable of implementing any nonlinear Boolean function with inputs, it ends up getting used for only a tiny fraction of these functions. Our basic approach is to start with a weight-binarised neural network, add inputs to each node to bring them up to support, and then retrain the Boolean function implemented by that node. We generate a smooth interpolating function over the LUT entries, allowing us to use standard neural network training software (we use TensorFlow).

Source: constantinides.net