Originally shared on INSEA IT Blog .
During the last two decades , artificial intelligence has become somewhat of a buzzword in the tech community and a must use word in the marketing by tech companies to sell there products easily , and yet no one really explains it or try to make it an easy to understand concept by simple and non tech people ! In this article , I will try to explain a little bit what do we really mean by artificial intelligence and its different approaches before I dig a little bit in a special case in AI , the one behind the state of the art and all the AI based products , the deep learning, then I will try to mention some free resources and courses (with and without certificates of completion) that can help people with and without a technical background to learn and master this techniques and make benefit from them .
According to Encyclopedia Britannica, Artificial Intelligence ( AI ) is the ability of a computer or computer-controlled robot to perform tasks commonly associated with intelligent beings that can adapt to changing circumstances in their environment which means giving machines the ability to learn from experience and data , adjust to new inputs and perform human-like tasks. From the 50s to 80s Symbolic AI took the lead of that new field in computer science. Symbolic AI is based on symbolic representation of knowledge or “facts” wish is easily means all is symbols and variables in the memory, great systems were built using these approaches including the first expert systems and case base systems and more conversational agents, and I would take the chance to mention Professor’s Adil Kabbaj (Professor at INSEA,Rabat,Morocco) book on symbolic artificial intelligence with LISP and Prolog (“intelligence artificielle en Lisp et en Prolog”).
And then after the 80s “connectionist” AI took the lead after the rise of neural networks and the high performance it shows in performing tasks without all that hard-coding symbolic AI required in term of coding all the universal facts and then tell the machine how to do human-like reasoning to infer and generate new knowledge , this approaches is what used today in almost all the AI based tools and products thanks to the work of Geoffrey Hinton, Yan LeCunn and Yushua Bengio , the pioneers and god fathers of modern AI , who received last month the Alan Turing Award (“Nobel Prize for Computer scientists” ).
Connectionist AI relies on detecting patterns in huge amounts of data using statistical and probabilistic methods and clever algorithms that can efficiently detect and understand the distribution of data , those algorithms are gathered in a subset of AI called machine learning that’s contains all the statistical methods from simple linear regression to Bayesian methods, reinforcement learning and deep neural networks.
What do we mean exactly by deep learning?
Deep learning is part of a broader family of machine learning methods based on learning the data representations using artificial neural networks (and here for deep learning the networks contains more than just two layers as opposed the neural networks for classical machine learning that contains generally a maximum of two layers), and depending on the task the networks tries to do (computer vision, classification , regression or times series and sequence data in general) different architectures exist such as convolutional neural networks for computer vision , deep belief networks and Boltzmann machines for “clustering” and recurrent neural networks for sequence data (the architectures mentioned are not used only for the task mentioned , but more and that is what researchers are doing ,trying and building more new architectures or use the existing ones and enhance them to be applicable for different and new tasks). These architectures are inspired by information processing and communication patters in biological nervous systems.
Roger that! so where do I start to lean about these things?
Okay then, if you are not yet familiar with these data related things and you never had a course on machine learning or statistics (by statistics I don’t mean just liner regression and some basic data analysis stuff ! ), I highly recommend that you check the course on machine learning by Stanford on Coursera , it’s the best course to get hands on the theory and code of machine learning and of course get a completion certificate to prove it and add it to your resume. It’s possible to get the course for free if you can’t afford it by applying to the financial aid or scholarship (6 questions form!).
And if you are not really interested in that course or you don’t think you can do it especially you have courses in real life to attend and exams later, you really need to check the Deep Learning text book by Ian Goodfellow (its available for free online but not as a pdf ). The deep learning text book is really the best quick start and a good resource especially that it starts with the math’s fundamentals you need to have in order to understand the theory behind these magical deep learning algorithms before it explains both machine leaning and deep learning algorithms in details with some implemented models for real use cases.
After that , I mean , after having the basics and the intuition being deep learning ,it’s better to check more courses to have more advanced notions and knowledge about it , for that the community highly recommend the specialization by deeplearning.ai on Coursera, it really explains how things are done with deep both theorical and practical explanations of different architectures and things to know (structuring the project and hyper-parameters optimization, etc.). An other course that explains the deep learning from A to Z is deep learning from A to Z TM: hands on artificial neural networks by super data science(xD) on Udemy .
And if you are interested in more free and recognized certificates to level up your profile and get good job/internships opportunities, you may want to check “the Deep learning” learning path on cognitive classes , an IBM initiative with a completion certificate and an IBM verified badge.
- Deep learning by Stanford
Notes and lectures from introduction to deep learning course
- Kaggle learning .
Great! That was interesting, what’s next?
After learning enough and applied enough on some projects simple and advanced ones, it’s better to keep an eye on the advances and the research papers that are published in that field, and for that I recommend these references:
- Code search Engine by Google
- Search code
- Model zoo (pretrained models)
- Github (ML from scratch , 100daysOfMLCode , MLcourse.ai,etc. )
And of course follow deep learning enthusiast and researchers on social media (LinkedIn, twitter mainly) and join communities to get in touch with people like you :
- Artificial intelligence and deep learning group on facebook
- Slack Communities .
You may want to check my article on hakin9 magazine , Feb 2019 edition, on the use of artificial intelligence in cyber security (not that much of technical words xD) https://hakin9.org/download/practical-devops/