Inspiration

As first-year students who were exposed to data science and machine learning just a few days ago, our goal was to learn as much as we could. We decided to pursue a beginner-level project in which we trained a ML model off of the MNIST dataset - which are images of hand-written numbers - to predict what the number was.

What it does

Our project includes 2 different approaches. One utilizes libraries such as pandas, numpy, and matplotlib to run machine-learning algorithms on the given data set. The second method was to implement a Multilayer Perceptron program to perform the same task given the same data.

How I built it

The library-based version called methods on our data frames to train and test a model. The MLP approach made a neural network of three layers in which input data sets constituted a 784 entry vector to represent a 28x28 pixel image. The output was a 10 entry vector that represented which numeric digit was written in the image. Our feed forward neural network then iterated through each layer and performed the sigmoid function for randomly generated weights and biases to then determine the optimal weights and balances to minimize our cost function. We used a Stochastic Gradient Descent algorithm to determine these minimum values.

Challenges I ran into

Our main challenge was our inexperience with Data Science and machine learning topics. Everything we made here today, we learned today and had a lot of fun doing so.

Accomplishments that I'm proud of

We're proud that we were able to complete a version of Digit Decode using libraries. We unfortunately were not able to complete the from-scratch implementation but had a fun time researching it none-the-less.

What I learned

Machine learning principles and using python for data science.

What's next for Digit Decode

Finishing the neural network implementation.

Built With

Share this project:

Updates