Use Cases

How a 14-year-old Learned Deep Learning in Java using Deep Netts

I am Jirne Van Rillaer, I am 14 years old and I live in Belgium. At school I follow a course called STEM, this stands for ‘Science Technology Engineering Mathematics’. Programming is a small part of it. In the first year of STEM, we learned to program with a software called Arduino, this is how I got a great interest in Programming and when I saw AI for the first time, I got inspired by it. I didn’t know how it works at that moment. How more programming experience I have, how more I like it. When I finish school, I want to become a programmer.

During the lock-down I started learning Python and Java, Java is my favorite programming language. I developed many programs like easy games and algorithms. Once I created a program that solves a sudoku puzzle, it works fine but I wanted to make it better. Filling in the empty field takes a long, I wanted to make a program that can fill in that field by taking a picture of sudoku. I didn’t know how to do that, so I looked on the internet. I found a video of someone who developed a python program with a software called Yolo, that program uses an artificial neural network to recognize playing cards in realtime. When I saw that video I wanted to learn more about ANN programming and how to use it in Java. Python has more options and its AI libraries are developed very well but I found a software called Deep Netts, this made me able to program ANNs in Java.

Machine learning in Java

Because Python has more options, it seems like you need to learn Python but ANN programming is possible in Java as well. One of the best-known AI platforms in Java is Neuroph, personally, I didn’t understand it very well and I think it’s hard to learn for beginners like me. The next platform I tried is Deep Netts, which was easy to learn and use.

Deep Netts

Deep Netts is an AI platform that can be used for 3 things: data classification, image classification, and numeric predictions. There is a standard Java API based on Deep Netts called JSR381, which can be used for visual recognition. The big difference between image classification and visual recognition is that visual recognition can recognize objects in an image or frame of a video, image classification can be used to label images. You can create and train ANNs by writing the codes in your Java IDE or by using the Deep Netts IDE (and loading the trained ANN in Java after that).

My opinion and experience
I’m using Deep Netts for a while, the codes are easy to learn and the Deep Netts IDE makes it even easier. If you use the exert wizard, you can quickly load/create all necessary files into a deepnetts-project. You can learn ANN programming with Deep Netts very easily because there are a lot of examples and a getting started guide with a lot of information in the downloaded folder.

In my first project, I had couldn’t load the dataset, I wrote an e-mail to Deep Netts and a few minutes later Zoran S. (the CEO of Deep Netts) wrote me back. Eventually, it turned out that I wrote the word ‘throws’ wrong which caused the error. Still, I am grateful to him because he wanted to help me.

I recommend this software to people who don’t have much experience with ANN programming because this software is easy to learn. I also recommend this software to people who already have some experience with ANNs because the software offers many possibilities.

A simple example
This video is a screen-recording of a program I created with Deep Netts, I have to load an image in Java using the file’s path on my laptop and the software classifies that image as ‘sudoku’ or ‘negative’.

This post is written by Jirne Van Rillaer, and posted here with his permission. If you have interesting story related to Deep Netts and want to share it let us know.