How many times have you told yourself that you ‘can’t’ or it’s ‘impossible’? Whether it’s about sticking to a diet or starting a new DIY project you’ve probably thought those words at least once, but they aren’t really true. You tell yourself that you can’t but really you just haven’t yet. I discovered this while starting to explore Artificial Intelligence. I have always thought of AI as some far off thing that I will maybe learn about when I am ‘older’ but recently I dived headfirst into the AI world and found that it’s much closer to ‘possible’ than I thought.
I started my first project in AI by creating a neural network that can classify types of clothing. You may think that it’s a fairly simple task but it actually requires a lot of coding and thought. You can’t just tell the the network to identify them, you have to teach it first.
So how exactly do you accomplish this?
I started off by importing the clothing data from the Fashion MNIST database and assigning each type of clothing a label number. This makes the results much easier to view and understand. Once they each had a label I trained the network by using 60,000 labeled images so it could learn what each type of clothing looked like. Just like in school, after it had learned, it was tested. I tested the network with 10,000 images and came out with an 88% accuracy in correctly classifying the clothing.
Easy? No. Worth the effort? Definitely.
I realize that this may seem like a useless project but it’s not so much the networks positive outcome that makes it purposeful, it’s everything that I learned while doing it. Up until this project I had not done much coding and I had a very basic knowledge of how to code. While doing this project I had so many errors in the code but, they made me grow exponentially in the short time that I did it and helped me understand so much more about coding and neural networks.
“Failure is simply the opportunity to begin again, this time more intelligently.” -Henry Ford
This project may not have been easy but it was definitely worth the effort as I now know 100% more about neural networks and coding that I did before. Some key details that I learned about include:
- How data is used in neural networks
- How to train a network
- How to improve a network after a test
Understanding not just how to code this network but how networks actually work is a very useful tool that I took away from this project. Knowing how they work means that I can more easily fix my network when there is an error but also that I can code more networks in the future.
Want to try?
Are you excited about coding yet? Ready to start diving into an industry that will someday change how we think about the world? If you’re ready I would recommend taking a short intro to coding course in a common programming language like Python. Once you understand the basics, it doesn’t matter what you go and code, just make something that you are passionate about. You will try 100% harder on a project that you enjoy doing. It should not feel like school.
If you ever get stuck, there are always Youtube tutorials and online forums that can help. Try to avoid the tutorials that solely explain to you how to do the project and instead try ones that explain how to fix the specific problem you have. If you are just copying and pasting the text you probably won’t have as good of an understanding of coding than you will if you struggle through it on your own.
All in all, coding and Artificial Intelligence may seem difficult and far-fetched for the average person but once you get started you will find that the mental block of ‘I can’t’ is actually just ‘I haven’t yet’.
“What we can or cannot do, what we consider possible or impossible, is rarely a function of our true capability. It is more likely a function of our beliefs about who we are.” — Anthony Robbins