Upskilling into AI
3AI October 18, 2022
AI has penetrated our lives in a way that sometimes we don’t even realize. Devices and applications we use, are becoming smarter every day. An AI system knows more than what we know of ourselves. It is faster and more accurate than us in specific tasks. Each one of us occupies the AI landscape in one way or the other.
Within the AI landscape, we can fall into one or more of the below 3 groups;
- Users (U) – All application users and Data creators.
- Solvers (S) – Solve business use cases.
- Creators (C) – Bring in advancement in the field of AI.
In the AI landscape, the majority of them fall into the User group. They can be users of a smartphone, Whatsapp, Facebook, browsers, online shopping, digital payment, health app, etc. Users are the final decision-makers of an AI system.
Users generate data every day, lots and lots of data. This is the reason AI systems today know more than ourselves. They can store/remember enormous amounts of data/information and analyze/make connections between them in multi-dimensional space, which is something that humans lack. It can remember, where you have been on what dates, what all you have shopped at what frequency, where all you have spent and on what, what medicines you are taking, how your physical activity has been, your medical report, etc. It can do this not just for your entire life but for everyone else who has fallen into the digital trap. Tech giants give peanuts as rewards to this group and in return just clone them. But this is the most creative group of all and puts life into products.
The AI footprint which was once a very small part of the digital landscape is filling it up faster than ever before. All thanks to the User group. But the User group cannot exist without the other two groups and vice versa with each one having a dependency on the others.
The Solver group is composed of people who consume, “data from users” and “methods from creators”, to solve real-world problems. This is the group that has knowledge of one or more of, the domain, frameworks, MLOps, programming, system design, architecture, algorithm limitations, technologies, etc. This is the group that is most sought after by the industry. There can be multiple subgroups in solvers, like the ones specialized in just MLOps, system design, programming, etc. This group is mainly comprised of engineers.
The Creator group is the one that comes up with SOTA algorithms. Without this group, the solvers have no demand, because the field becomes static. The solver group should be very appreciative of them. This is the smallest group in the AI landscape. They are highly skilled in the various subfields of mathematics and understand the domain well. This group is any nation’s asset. The creator group can actually play the role of a solver or a user in the worst case. This group is mainly comprised of academicians and research groups.
Getting into the User group is the easiest of all, followed by Solver and Creator. When it comes to core technical knowledge in AI, Creators are the most skilled followed by Solvers and Users. So, if one has to get into the field of AI what all does he need to be proficient in?
AI is a fusion of Math, Domain and Computer knowledge. Depending on which group you want to be in, the knowledge of each of these components varies. The knowledge of these components will also be required at different levels.
The knowledge of Math can be divided into 2 levels; M1 and M2.
M1 is the level of math you need to know to have a good understanding of the algorithms. It does not demand you to know the entire subject. It is enough to get an intuition for each of the algorithms and is mostly application-oriented.
M2 is the level of math you need to know to be able to derive the equations. It requires you to have an in-depth knowledge of the entire subject and is mostly research-oriented.
The knowledge of Computers can be divided into 3 levels; C1, C2, and C3.
C1 is to have enough know-how to be able to use a computer in one form or the other, which can basically be a smartphone as well.
C2 is to be able to use tools and frameworks and to have basic programming skills.
C3 is to have in-depth knowledge of software architecture, software design, GPU architecture and programming, data structures, etc.
The knowledge in a domain can be divided into 2 levels; D1 and D2.
D1 is the knowledge that comes out of passion. This is what is your interest, like sport, art, music, etc.
D2 is the real learning that goes into making you a good player in a sport, a good artist, a good music composer, etc. Just having a passion cannot make you an expert, you will have to put in the effort to learn the right skills to become one.
AI, at the end of the day, is an assistant or a tool. As an analogy, you could compare it to some kind of mechanical tool. Assume we give this tool to 3 different types of creatures; a dog, a common man, and a human mechanic. Though the tools are the same, the dog finds no use of these, a normal human finds just a little use to tighten or loosen a bolt, but the same tool in the hands of a mechanic would do wonders. For a mechanic, repairing something is his domain and the tool (AI) finds best use in his hands.
Domain and the knowledge of computers is something anyone in the AI landscape should be familiar with in one way or the other. The below table summarises the kind of skills required for each of the groups
Being a User is the easiest, with literally no training. D1 comes naturally and C1 comes out of usage.
Solvers internally have a number of subgroups. The ones who build systems, the ones who build frameworks, the ones who bring about automation, the ones who maintain, etc.
The most important skill for the Creator to have is Math.
The User group does not need any formal training while the Creator group is mostly in academia or research which is already a formal course\learning. It is only the Solver group that tries to upskill outside of a formal course. Before enrolling on a course, it is important to decide where you want to be in the AI Solver landscape and what you really want to do in this field. Otherwise, you will end up, not only spending a lot of time doing unnecessary courses, but you will also burn your pocket.
Training academies seldom give this picture to you. A lot of them rather confuse you with courses like, Python for AI, Mathematics for AI, MLOps, etc. If you want to be a system designer, you don’t want to get into too much math or programming and if you want to be a data analyst, you better understand the domain well. The courses have to be tailor-made to your choice of profession.
AI is now started as a separate branch of engineering similar to other domains like CS, ECE, Mech, Civil, Aerospace, etc. AI cannot be treated like a domain, it is something that is applied to any domain. Courses offered by training institutes that put you through 700+ hours of training spread over 10 to 24 months, itself was too much for an upskill in today’s fast-changing world, but having it as a separate course in engineering is so irrational. If you decide what you want to be, it will not take more than 3 months to upskill yourself to the expert level. AI training has become a lucrative business not because it is too technical, vast, or difficult. It is because you fail to understand what you want to do. Let’s understand this in more detail by taking a minimal AI stack into account.
A solution to a real-world problem goes through 3 stages. Any real-world problem is described in the language of Nature (mathematics), which is then translated to the language of humans (flowchart) and then into the language of computers (code).
Any system you design starts with a Problem Statement. Problems can be in any domain and for anyone. It can be in agriculture, medical, manufacturing, media, politics, education, etc. Solving a problem does not just mean building a system that is more accurate than a human. It also means bringing in efficiency or scalability in any process to achieve what is humanly not possible.
Let’s take travel for instance. In ancient times humans had to walk long distances. Later, he found that he could tame horses to move faster. He then invented automobiles, followed by trains, airplanes, and now space shuttles for interplanetary travel. Though his initial intention was to not spend his energy too much and still go faster from one place to another (efficiency) eventually his progressive innovations enabled him to travel to space (scalability) which he could not have achieved at any cost if he had stuck to his foot.
Domain is what work we are generally involved in, like farming, manufacturing, sales, marketing, retail, diagnostics, etc.
System Design is about coming up with an end-to-end solution to the problem, starting from input(s) to the final output(s). This might contain software, hardware, process, etc. A self-driving car is an example of a system.
Today is the world of open-source software. If we do not stand on the shoulders of giants, we don’t make progress. In fact, it is this progressive nature of humans that has made him such a superior creature on the planet. Frameworks are the foundations created to jump-start our journey in any field and not re-invent the wheel. Some examples are TensorFlow, PyTorch, AWS, etc. Solvers use the framework in two ways; as an application builder and as a developer. An application builder will only build use cases with the framework, so he need not have an extensive software engineering background. A developer is the one who designs and implements the framework with extensive software engineering. It is similar to Microsoft Office or similar tools; one who develops this is a Software Engineer, while one who uses it can be anyone who has basic computer knowledge.
Algorithms are general ways to solve a specific problem. The computations in the algorithms are such that they are not pen and paper friendly. You need a computer to execute them and that is how CS students were among the first to get the taste of it. But the world has become more digital and computerized now and programming isn’t only for CS graduates. It is for everyone who wants a computer to take up some of his workload and algorithms come along with it. Algorithms can be, using a decision tree, object detection, path planning, etc. Solvers make use of the algorithms while Creators come up with SOTA.
Mathematics is the language of Nature. Everything in nature, whether living or non-living, micro or macro, earthly or heavenly, solid, liquid or gas, inherently abides by mathematics. Humans take it to the next step. They have also designed computers to make use of it for his benefit. Mathematics is what gives predictability to whatever happens in nature. Mathematics is basically about what transformation functions can be used to map inputs to outputs, how certain operations can be performed using matrices, finding solutions to equations, optimizing processes, etc. A creator makes extensive use of mathematics to come up with algorithms that help solve real-world problems.
As seen above, it is the Solvers and Creators who play a major role in the AI stack. A solver or creator need not be an expert in all of these layers as described earlier.
Let’s take the medical profession as an analogy. Before moving into specialization, you have to first decide whether you want to be a cardiologist, neurologist, nephrologist, dermatologist, ophthalmologist, etc. You cannot study bits and pieces of everything. Like every organ plays an important role in the human body, every role in the AI landscape and the stack also plays an important role. One cannot live without the other and they all have to co-exist supporting one another.
Title picture source: freepik.com