Hand-coded neural networks

Here’s a JavaScript function that returns a positive value if both x and y are positive:

function bothPos(x, y) {
  const negX = Math.max(0, -x);
  const negY = Math.max(0, -y);
  return Math.max(0, 1-negX-negY);

Surprise - this function is also a neural network! Neural networks are usually drawn as

No, the neural network is not a series of neurons; it’s a JavaScript function which uses a restricted set of operations.

It approximates the function below, which is perhaps how you might naturally implement it:

function bothPos(x, y) {
  return x > 0 && y > 0 ? 1 : 0;

Hear “neural network” and you probably think “machine learning”. But it’s useful to think of neural networks independently of machine learning.

I just released Vidrio, a free app for macOS and Windows to make your screen-sharing awesomely holographic. Vidrio shows your webcam video on your screen, just like a mirror. Then you just share or record your screen with Zoom, QuickTime, or any other app. Vidrio makes your presentations effortlessly engaging, showing your gestures, gazes, and expressions. #1 on Product Hunt. Available for macOS and Windows.

With Vidrio

With generic competitor

More by Jim

Tagged #programming, #machine-learning. All content copyright James Fisher 2019. This post is not associated with my employer. Found an error? Edit this page.