Artificial Intelligence. Well, it looks like this cutting-edge technology is now the most popular and at the same time the most decisive one for humanity. We are ceaselessly amazed at the AI capabilities and the effective way they can be used in almost any industry. Robots now is just like the airplane 100 years ago. So what’s next? This question raises many emotions starting from great interest, encouragement, the desire to be part of this process, and ending with the fear, complete confusion and ignorance. But what’s stopping you from sitting in one of the front seats of AI development and just don’t be a passive observer?
You may assume getting started as a developer in AI is a long and hard path. Well, yes, but it doesn’t mean you can’t handle it. Let me say one word for those who doubt. Even if you don’t have any prior experience in programming, math, engineering, you can learn AI from scratch sitting at home and start applying your knowledge in practice, creating simple machine learning solutions and making first steps towards your new profession.
Just for the record, Kaggle’s user survey a few years ago showed that only 30% of those working in this field studied machine learning or data science as part of formal education. On the contrary, 66% of respondents consider themselves self-taught. And just over half of all respondents say they used online courses to learn new disciplines. So, it means only one thing:
Stop dreaming and start doing!
If you decide to do so, this article will be an amazing instrument for you to make your first steps. Here I will showcase the most effective learning path of becoming an AI developer as I see it. You know, there are lots of options available, but I tried differentiating what really matters.
Are you ready?
Part I. First Off, Gain Basic Skills Required to Start Learning AI
As far as the study of Artificial Intelligence is one of the most complicated one, it is better to approach learning correctly. I mean, you need to prepare for the learning and first acquire some basic skills. If you already know something, you can avoid it. But in other cases, I recommend spending at least a few days or a weak for gaining certain knowledge concerning the stuff listed above.
At the same time, you don’t need to be a master in everything. Just take some time to discover general information of what is what. Don’t rush things now, if you want to see the profound result later. One way or another, it will help you in the future to google much fewer details.
# 1 Abstract Thinking
Abstract thinking is important for becoming smarter and have the ability to solve problems. Are you an abstract thinker? If not, it’s time to change this situation.
Good problem-solving skills and logical reasoning skills is your top priority now. Machine learning revolves around finding patterns in data. Data Scientist, for example, devotes much more time to generating hypotheses, preparing and conducting endless experiments on data arrays, than designing service architectures and debugging them.
In the mind of a specialist, the roads and google maps intersections turn into graphs, and the statistics on cash withdrawals at ATMs — in the time series in the analytical system. One cannot do without the skill of representing ordinary things in an abstract form. So, when it comes to thinking, depth-first is the way to go.
How to learn to think like that? Start asking questions about everything you see. Perhaps the best way to improve abstract thinking skills is to increase your mental endurance and start thinking about things more. Here are some not boring videos that might help you with this:
- What is a Thought? How the Brain Creates New Ideas
- 4 Ways of Thinking About Abstract Objects
- Creative thinking — how to get out of the box and generate ideas
By the way, developing your math skills can also help as math is an abstract way of thinking. Trying to find patterns in statistical data can also increase your ability in this area. So, pay attention to the next skills.
# 2 General Maths Literacy
A career in AI and machine learning requires general mathematical literacy. The key word here is general. You need to read or refresh the underlying theory. No need to read a whole tutorial, just focus on key concepts:
- Linear algebra for data analysis: Scalars, Vectors, Matrices, and Tensors
- Mathematical Analysis: Derivatives and Gradients
- Probability Theory Fundamentals
For quick learning of Linear Algebra and Math Analysis, I would recommend these courses:
- Khan Academy provides short practical lessons on linear algebra and math analysis
- MIT OpenCourseWare offers great courses for learning math for ML
- Artificial Intelligence: Machine Learning and Predictive Analyticssteer through the endless possibilities of AI with ease
# 3 Physics If You Want to Work with Robotics
Having a solid understanding of science is important for all branches of engineering. Physics is particularly useful because it gives grounding knowledge in energy, electrical circuits, mechanics, material science and other key topics for robotics. However, all sciences are useful as they teach how to apply mathematics to real-world problems.
Where to learn physics? Don’t Panic. Here is a great YouTube channel to learn engineering physics. Enjoy!
# 4 Statistical Methods
Statistical Methods an important foundation area of mathematics required for achieving a deeper understanding of the behavior of machine learning algorithms. The mainly used techniques for analyzing data and sets of data:
- Mean
- Standard Deviation
- Regression Analysis
- Sample Size Determination
- Hypothesis Testing
Free statistical analysis courses on EdX
Key Types of Regressions: Which One to Use?
Statistical Methods for Machine Learning by Jason Brownlee
# 5 Algorithms, All the Way!
Attention! We have now moved into the most essential stuff for learning AI. Algorithms are more than just a must. If you want to be a candidate for the AI domain you must become an expert in a broad set of algorithms. You should be well-versed with superb problem solving and analytical skills for this, so don’t avoid previous steps. It will help you in performing the given tasks in an efficient manner.
Algorithms may seem too boring and complicated subject to be mastered. Well, to some extent, it is true. However, if you truly, madly, deeply want to be an AI expert, you have to brush up your knowledge and there is no other way to be. You can simplify this task with one of my previous posts — Top 10 Machine Learning Algorithms for Data Science — here I explained the core principles of the 10 most common algorithms in simple words.
But this will not be enough, so I will also recommend taking it one step further. Check out some useful stuff like this:
- The Algorithm Design Manual by Steven S Skiena
- Machine Learning Algorithms: Which One to Choose for Your Problem by Daniil Korbut
- Visualizing Algorithms Before Implementation by Daniel P. Clark
All the above stuff is like preparation. If you have already mastered all of these basic skills, you can confidently go teaching machines.
Part II. Start Learning AI — the Most Important Part
And just like that, we come to the most interesting part. Having the accumulated knowledge base necessary for studying AI, you can confidently absorb the points below and making the small baby steps get closer to your dream. Yes, exactly, these are baby steps. It is impossible here to count on fast results, remember?
# 1 Computer Science, Programming (Pay Attention to Python)
A significant part of AI developer’s work is dealing with computer science-based applications that include programming languages like Python and coding. So, on this step, get patience and set yourself up for super attention and focus, cause you got to learn lots of things.
Why Python? According to all polls, Python is now the most popular language for working in the field of AI and Data Science. Moreover, this tool is easy to get along with for learning. There are a huge number of libraries, training courses and materials on the net you can find now. So you can choose the format that matches your preferences, your stirring life and study opportunities.
Resources and must-learn things for absolute beginners:
- A Beginner’s Guide to Python for Data Science — comprehensive guide, also suitable for those who dream about working in the AI domain.
- Automate the Boring Stuff with Python — this book proves the fact the main thing in programming is not the knowledge of syntax, but the understanding of how to make the machine execute your instructions.
- How to Think Like a Computer Scientist — another one good open book project that instructs you to program like a pro.
- Learn Python the Hard Way — a brilliant manual-like book that explains both basics and more complex applications.
- The Python Tutorial — official documentation.
You can also learn other languages like C++/R/Java, but personally, for me, Python is the most suitable tool for AI and Data Science. Wanna know why? Read my previous article, where I explain everything in detail on this matter: Python vs R. Choosing the Best Tool for AI, ML & Data Science.
# 2 Learning AI Itself
Imagining how you understand the scheme above, I will say just like Andrew Ng “If you don’t understand, don’t worry about it”. It is just necessary to see the whole picture and understand the place for every element. By the way, Andrew is one of the most influential people in Artificial Intelligence domain and you will come across this name many times. He co-founded online Machine Learning website Coursera, and now is an adjunct professor at Stanford.
So, okay we go back to the main topic, AI Is a broad field of study that includes many theories, methods, technologies, and practices, as well as the following basic concepts:
Machine learning. Machine learning is the process of implementing artificial intelligence. This is the ability of a computer to learn without human intervention. Artificial intelligence is possible without machine learning, but this will require a million lines of code with complex rules and conditions. In other words, instead of writing down detailed instructions for each specific task, an algorithm is used that learns to find solutions on its own.
There are four main types of machine learning: supervised, unsupervised, semi-supervised, and reinforcement learning. In supervised machine learning, the algorithm learns to identify data by processing and categorizing vast quantities of labeled data. In unsupervised machine learning, the algorithm identifies patterns and categories within large amounts of unlabeled data — often much more quickly than a human brain could.
Where and what to learn:
- Beginner’s Guide to Machine Learning with Python
- Intro to Machine Learning — free courses from Udacity
- How to Become a Machine Learning Engineer: 15 Steps
Neural network
To date, the fastest-growing part of artificial intelligence is, perhaps, neural networks. The study of neural networks and AI should begin with the development of two branches of mathematics — linear algebra and probability theory. This is a mandatory minimum, the unshakable pillars of artificial intelligence. A neural network is a type of machine learning that helps a smart machine find the right connections to correct a task or make a predetermined decision in a particular situation.
Here are some good walkthroughs:
- Neural Network in Python — This is a great tutorial in which you can build a simple neural network from start. You will find useful illustrations and learn how gradient descent works.
- How to build your own Neural Network from scratch in Python
- Implementing a Neural Network from Scratch in Python — An Introduction.
- Machine Learning for Beginners: An Introduction to Neural Networks — one more good simple explanation of how Neural Networks work and how to implement one from scratch in Python.
Deep learning. Deep learning attempts to mimic the activity in layers of neurons in the neocortex. Artificial neural networks (ANNs) — algorithms that have appeared to do so. ANN consists of artificial neurons that interact with each other. They are arranged in layers — each layer reacts to certain signs, for example, bends and borders of figures when recognizing the image. Learning is called deep because of the large number of layers.
A practical guide to Deep Learning in 6 months
Efficient BackProp by Yann LeCun and others
Cognitive computing
AI uses cognitive computing to simulate processes that are commonly performed by humans, interpret images and language, and can then speak and act sequentially in response. AI and machine learning are filled with examples of biological inspiration. And, while early AI focused on the grand goals of building machines that mimicked the human brain, cognitive computing is working toward this goal.
Cognitive computing, building on neural networks and deep learning, is applying knowledge from cognitive science to build systems that simulate human thought processes. However, rather than focus on a singular set of technologies, cognitive computing covers several disciplines, including machine learning, natural language processing, vision, and human-computer interaction.
Cognitive Computing: A Brief Guide for Game Changers by Peter Fingar
Computer vision
AI relies on image recognition and a deep study of what’s happening in an image or video. When machines are able to process, analyze, and understand images, they can interpret them individually and offer their own decisions regarding the processing and use of the material.
Multiple View Geometry in Computer Vision
Computer Vision: Models, Learning, and Inference
Beginner’s Guide to Computer Vision
The topic of AI is incredibly deep, and we’ve only scratched the surface so far. Now is time to move towards practice.
Part III. Practice your skills
Well, if you have already been able to do such a long way, my congratulations! Now the ball is in the court of practice. For me personally, the most effective solution at this stage is two ways: to participate in Kaggle contests, select datasets to work on and practice the process.
- Take part in Kaggle competitions
Kaggle often holds data analysis contests. I advise first to participate in contests without prizes because they are the easiest and more beginners-friendly. With time you can move to more complex tasks. If this method of practice suits you, read the guide on how to participate in Kaggle contests — The Beginner’s Guide to Kaggle.
- Practice on Datasets:
Practice Machine Learning with Small In-Memory Datasets
Tour of Real-World Machine Learning Problems
Work on Machine Learning Problems That Matter To You
Top 10 Great Sites with Free Data Sets
Modest Takeaway and a Bit of Motivation
As you may have guessed, you got a lot of things to learn. But if you have your goal and you are really interested in all this stuff, you’ll be glad to have that tough learning path.
Now, let’s remember all the key points you need to focus on studying AI:
- Preparation and gaining knowledge base
- Learning key things about AI
- Practise skills
- Feel like a winner
And finally, a little more motivation, because can never have too much motivation, right?
Everyone suffers from fear in the ring. You are afraid. Your opponent is afraid.
Well, the real difference is someone will step forward, and someone will take a step back.
Your task is to choose the first option, of course. For this, take advantage of your fear, invest it in something valuable to you. For example, fear can serve as an outstanding impetus for doing more things or doing them better, for moving forward and constantly improve. In such a way, you will make your fear a friend.
Inspired to learn more about AI, ML & Data Science?
Welcome to my Instagram and Medium blog
Cheers