cover image

Neural Networks Part 3: Neurons to Layers


Extrapolating neuron code to layers for added efficiency and scale of the network

If you haven’t been following along with the previous posts in this neural networks series, I highly recommend reading those before continuing forward. At this point in the series, we’ve talked about layers, and we’ve talked about coding neurons. Now, we’re going to scale up the neuron code to be applicable for layers of the network, to make it more customizable and functional. Why are we doing this? The reason we can’t just take the neuron code from Part 2 and move forward is because it isn’t really practical in the context of our network....

August 28, 2023 · Olin Johnson
cover image

Neural Networks Part 2: Neuron Code


A more thorough examination of neurons and how to represent them in code

If you haven’t been following along with the previous posts in this neural networks series, I highly recommend reading those before continuing forward. At this point in the series, I’ve laid out the general concept for how neural networks are composed and how they can utilize interconnected layers of neurons to make predictions. In this post, we’ll check out how to compute the exact values of neurons and begin to lay down some code for a simple neural net....

July 20, 2023 · Olin Johnson
cover image

Neural Networks Part 1: Looking at Layers


Modeling and understanding the function of neurons in a network

If you haven’t already, it might be a good idea to go back and check out Part 0 before continuing on to part 1. Alright – the first step in the process of coding a neural network from scratch is representing the different components of the network in code. Since the individual neurons form the foundation of the network, I figured we’d start with those. Before we begin… It’s important to realize that the network we create isn’t just going to be a singular chain of neurons strung together one-by-one....

June 10, 2023 · Olin Johnson
cover image

Neural Networks Part 0: Bits and Brains?


A conceptual overview of the theory behind neural networks

Recently, I’ve been doing a lot of work learning about AI and neural networks – specifically by creating deep learning models from scratch. So, I thought I’d document some of that learning in a multi-part series about deep learning. In case you’re not already familiar, neural networks are AI processes that are modeled after the human brain and can solve problems by simulating human methods of learning. For example, in the same way that your brain has learned to differentiate between cats and dogs, we can also teach a neural network to classify types of pets (among other things)....

May 28, 2023 · Olin Johnson
cover image

The Pieplatter Project


An overview of a deep learning library I've been building from the ground up and an introduction to the upcoming neural networks series

Over the past month, what started as a school project has turned into a custom-built deep learning library called pieplatter that I’ve been building from scratch. It’s been quite the ordeal, and I thought I’d document some of of the build process here. I’ve been working hard to put the library together and get some degree of functionality. As it currently stands, it’s equipped to create small neural networks for simple problems, but I’m still adding more support and optimizations so that hopefully much bigger and more powerful networks can be created in the future....

May 27, 2023 · Olin Johnson