Codementor Events

How I learned Neural Networks,Tensorflow,Keras

Published Dec 21, 2018
How I learned Neural Networks,Tensorflow,Keras

About me

I am a computer science graduate with a civil engineering background. I have experience working on some projects and as a teacher.

Why I wanted to learn Neural Networks,Tensorflow,Keras

I wanted to learn this technology to be able to create programs that are flexible and are able to learn instead of memorize. Building deep learning models is a great asset nowadays. There is a lot of funding going into AI like self-driving cars.

How I approached learning Neural Networks,Tensorflow,Keras

Other than course material. I read chapters from a couple of books, most notably deep learning and hands on machine learning using tensorflow.

Challenges I faced

The learning curve of deep learning with it's technology is exponential. You would have to learn the theory and technology hand in hand to be able to integrate them and make sense of the models you build.

Key takeaways

We have very smart and cool tools that are based on complicated math and statistics.The tools allow us to build models inspired by human biology.They model functions which are almost applicable to all phenomena in the universe.In return, these models try to fit the functions that describe specific things like learning the classification of an image. The most fun thing is when you successfully train (fit a function that represent the knowledge you are trying to learn) a model (deep learning neural network) then test it and get good results.

Tips and advice

First, get an overview of different neural network architectures from an online video or blog.
Second, try understandding the workings of a network by building one easily using a high level API like keras.
Third, after getting a general idea of the architecture and the jist. You can visit a book like deep learning or more detailed blogs on the things you can tweak and play with in models. Also, indulge in the theory behind the models.
Fourth, now you go into a lower level of programming like tensorflow to create your own model layers and specifications based on the domain you are coding for.

Final thoughts and next steps

Like I said the learning curve is high, and the theory can get pretty complicated. So make sure to organize your time properly and set goals to achieve. My next step is to increase my knowledge of more network architectures out there that I did not learn, experiment with different configurations/architectures for various domains, and finally dive deeper into the theory behind deep learning.

Discover and read more posts from Mohamed Nassouh
get started
post commentsBe the first to share your opinion
Show more replies