Preparing to work in AI

by Natalia Alexandrov, PhD, Principal Investigator at NASA Langley Research Center

What is AI?

The term “Artificial Intelligence” or “AI” most likely evokes aspects of artificial general intelligence (AGI), sometimes referred to as strong AI. It is the putative ability of a software agent to duplicate or exceed intellectual abilities of a human being, hypothetically requiring sentience and consciousness. Think Terminator or Isaac Asimov’s robots. If developing this―for now only conjectured―ability is your interest, and you are an undergrad in a math department, an additional major in computer science or cognitive science would be useful. Websites of organizations, such as OpenAI and Machine Intelligence Research Institute, are a good source of information about research directions in AGI.

In all versions of AI, the word “intelligence” has to do with the historical origins of the discipline: the initial premise was that human-like intelligence in a machine was possible, leading to attempts to create an artificial mind. The problem proved to be much more difficult than anticipated. However, the word intelligence still points to the target functional domain – problems traditionally solved by humans; for instance, visual recognition, understanding natural languages, playing complex games, and giving expert advice in complicated situations, such as those involving medical diagnosis and prognosis. In contrast to AGI, weak AI traditionally refers to attempts to implement a part of mind.

The recent resurgence and success of machine learning (ML), due to improvements in computational power and availability of data, has led to frequent conflation of AI and ML, as in “AI/ML”. Although machine learning is in the arsenal of AI tools, it is not the entire AI. ML algorithms are models or approximators of functions, given data.

Narrow AI is not concerned with implementing a mind in its entirety or in part. Instead, it is focused on a specific task. For instance, Siri can be classified as narrow AI. It uses natural language processing governed by a set of rules, in a context. The perspective of this article is that of narrow AI – problem solutions in specific domains. I will discuss training useful to prepare for work with ML in application domains.

Training for AI

The scope of training needed to work with AI tools, including ML, depends on whether your future work of interest will involve using algorithms or developing them.

Users

Regardless of the future use, taking a course in ML is highly recommended. It is likely available in your school’s computer science department. There you will learn about the types of ML models, including support-vector machines, decision trees, and neural networks, among others. You will also get experience in accessing and using various ML platforms, such as PyTorch and TensorFlow.

Even if you plan to be only a user of AI algorithms as a means of working in a specific domain area, you should get a thorough understanding of the underlying modeling principles. For instance, you may plan to use algorithms for data analysis in operations research or in bioinformatics, or you could use an AI expert system to help with medical diagnostics and prognostics if you plan to work in the intersection of medicine and mathematics. In any case, you should get a good grounding in statistics and probability. If you are in a pure math department, and these courses are offered in an applied math department, it is a good idea to take them anyway. A real analysis course, usually offered in pure math departments, will strengthen foundations for probability. You need this deep grounding as a user to understand the value and uncertainty in the answers you get from ML or other statistical models.

Developers

AI is about modeling a problem in a specified context and making decisions about that problem. To develop and improve AI models and algorithms, you will benefit from a set of mathematical essentials. Additional training will depend on your research or work domain. Fortunately, many of the basics are already in your course plans. Others are usually available in the neighboring departments. It is always useful to discuss your interests as early as possible with your undergraduate advisor, to help with creating an optimal course plan, especially if you need to take classes from other departments. If your school doesn’t offer some of the classes you need, training is likely available in numerous excellent online courses and tutorials.

Some of the subjects listed in this section may appear in a curriculum under the names given here (e.g., you will see “real analysis” and “complex analysis” listed explicitly in a curriculum). Others may be part of a course under a different name. For instance, the curriculum of your school’s math department may include explicit courses on mathematical logic and graph theory. Alternatively, mathematical logic may be taught from the philosophy department, and graph theory may be part of a course on discrete mathematics. Your undergraduate advisor and course instructors can help you navigate the content of the courses during planning, to make sure you acquire the needed training.

The following essential subjects will help you prepare for AI model and algorithm development:

  • Mathematical analysis (calculus, real analysis, complex analysis). You came up with an algorithm. What can you say about its convergence properties?  Mathematical analysis is a fundamental tool for assessing the quality of the model and the outcomes of computational processes.
  • Probability and statistics. Modern AI algorithms are usually based on statistical models. A thorough familiarity with probability and statistics is necessary to understand the properties of the models, including errors, uncertainties, and risks. 
  • Numerical linear algebra. Arguably, under the hood, all computation comes down to numerical linear algebra, making it an indispensable skill.
  • Numerical optimization, linear and nonlinear. I would like to emphasize the importance of sound training in optimization, as machine learning and model building, in general, are closely connected with optimization algorithms. For instance, in building a model, we attempt to minimize the error between the model’s prediction of a phenomenon and its physical manifestation.
  • Mathematical logic and reasoning. AI is about making decisions that are a basis for action.   
  • Information theory. All computing problems are represented and communicated as digital information. This is the subject of information theory.
  • Graph theory. This is one of the principal tools for representation and analysis of relations and processes in complex systems, spanning the range from physical and technical to biological and social. 
  • Software engineering, including programming languages.
  • Machine learning.

The following additional training will be useful:

  • Multiobjective optimization or multicriteria decision-making. All real-world decision-making problems involve multiple criteria or objectives. This area is especially important in formulating reinforcement learning problems, where the algorithm takes actions based on rewards. Defining the right reward is a difficult problem that involves several, sometimes many, objectives. This subject may be offered separately or be part of a basic optimization course. If it is not offered in your math or applied math department, consider looking for it in one of your school’s engineering departments.
  • Game theory. Decision-making usually involves many agents, human or machine or both. Game theory studies interactions among decision makers and is thus useful in informing AI that deals with decision-making in multiagent systems.
  • Geometry and computer vision. Visual perception is an application area where machine learning is a necessary tool. Training in geometry will help you to understand and work with digital representations of visual information. Computer vision involves perception. That is, geometrical information is conveyed via physical sensors and then interpreted, i.e., perceived, to be understood by a human or another agent. Reliable perception is a major unsolved problem in AI. A class in computer vision will acquaint you with the state of the art and open problems in this important area.  It may be offered in a computer science or computer engineering department.
  • Formal verification methods. Verification and validation (V&V) of ML models and algorithms is another active and open area. A course in fundamental software engineering will likely acquaint you with the basics of V&V, but you would benefit from a sound grounding in formal methods – a mathematically rigorous approach to specification and verification of software. A course in formal methods may be offered in your computer science department.
  • Uncertainty quantification (UQ) and propagation; reasoning and decision-making under uncertainty; risk-based design and decision-making. As AI-based tools and decision-making become pervasive in our lives, the importance of understanding the uncertainties associated the AI models and algorithms cannot be overstated.  Decision-making under uncertainty may be explicitly offered in a course, such as stochastic optimization. However, it is more likely that you will assemble the knowledge in this highly multidisciplinary area from several sources: probability and statistics, optimization, discrete mathematics, as well as independent work with literature.
  • Cognitive science; neurolinguistics.  Enough of the human mind is a terra incognita so that mimicking human thinking and decision-making will, arguably, remain an unsolved problem for a long time. However, some of the known and continually discovered processes in human cognition may serve as a fruitful source of algorithm development.  Moreover, staying informed about the progress in cognitive science is helpful in designing productive human-machine interaction (HMI), which is another active and open area of research. And it should be, as I am sure you think every time you try to talk to an actual human in IT tech support, only to be referred to a machine helper.
  • A course in system safety may be found in a system engineering or other engineering departments. Such courses in any application area augment training in software safety. They are interesting and instructive as they usually discuss and analyze cases of failure in existing systems in various domains.
  • Finally, you would benefit from training in ethics. Relegating decision-making to software or relying on software to inform human decision-making means that fairness, equity, and other aspects of ethics must be considered in model and algorithm development as never before. Because ethical and moral standards are not universal, this is a very difficult endeavor. Becoming familiar with basics and open questions is necessary.
Next Steps

The list of subjects in this section is not exhaustive, and your chosen application domain will guide you to other disciplines. For instance, if you are interested in AI for designing a new air transportation system, you should learn about the current air traffic control and existing ideas on the future of advanced air mobility. Your instructor in operations research will advise you on further courses or self-study. In addition, for this example, you could consider a summer internship at the Federal Aviation Administration or NASA or a commercial aviation company. So, regard the suggestions above as your starting point as you and your advisor plan coursework and other training in AI.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s