Skip links

How to prepare

Training for IOAI

We recognize that AI is not typically included in high school curricula worldwide, so below we present some resources which will be useful for preparing for the IOAI. In addition, we will offer a complimentary online course for all participants before the announcement of the problems for the scientific round. This initiative ensures that every participant has the opportunity to gain foundational knowledge in AI, leveling the playing field and enriching their experience in the competition

Essential skills

Teams at the IOAI will be expected to have knowledge of the following areas of AI, programming languages, and frameworks

Python

Python is the main programming language used in the development of machine learning models. It is a high-level programming language, preferred by AI practitioners for its intuitive syntax and wide community support, among other things.

Check out a Python tutorial which uses Google Colab, an interactive computing platform, where you can execute Python code directly in a browser. Google Colab supports simple code like the one presented in the tutorial, as well as much more complex code for building and training machine learning models.

Visit

PyTorch

PyTorch is a widely used machine learning framework, based on Python. It provides high-level functionalities like building a machine learning model from pre-configured blocks, loading data from files of various formats, executing model training with just a few lines, and many more.

Notice that at the top of every tutorial page, there is a “Run in Google Colab” link that opens up the tutorial in Google Colab and allows you to interact with the code.

Visit

Machine Learning

While AI has evolved a lot in recent years, the fundamental principles of machine learning remain unchanged, so this course from 2018 is still a great resource. Focus specifically on lectures 1 through 5 and 11 through 13.

Visit

Deep Learning

Deep learning is what makes AI possible. This Coursera course from Andrew Ng and colleagues will give you the best introduction to the subject.
Once you've gained some skill with PyTorch (see below), also check out this interactive textbook on DL: https://d2l.ai/.

Visit

Natural Language Processing

The "Speech and Language Processing" textbook by Dan Jurafsky and James H. Martin is the Bible of NLP. Focus on Part 1.

Visit

Word Embeddings

This is a practical implementation of the word2vec algorithm you learn about in Chapter 6 of the textbook above. Word embeddings are a prerequisite for any machine learning performed over text. Use this tutorial to better understand the concept of word embeddings, and the use of Pytorch and Google Colab for building and training machine learning models.

Visit

Transformers

The main model architecture used in both text and image processing these days is the transformer architecture. It revolutionized the field of NLP because it is highly parallelizable and in that way able to consume much larger amounts of data than was ever possible before.
The main Python library for working with this architecture is called transformers and many existing models using the architecture can be found in the HuggingFace.co hub.

Visit

Generative Modeling

Generative AI is what really caught the eye of the public and brought AI into production overnight. This repository by Andrej Karpathy is a great practical introduction to the workings of generative language models.

Visit

Computer Vision

A course on deep learning for CV from 2015, good for getting a sense of the fundamentals in the field.

Visit

Recent Developments in CV

The Deep Learning 1 course here covers key concepts in recent CV research like ResNet, adversarial attacks and the vision transformer.

Visit

Sample problems

Below you will find three examples of problems which you can expect to see in the Scientific round of the IOAI, and one for the Practical round.

Morphological
Inflection

(Scientific round;
Take-home problem)

Visit

Morphological
Inflection

(Scientific round;
On-site problem)

Visit

Biased
Embeddings

(Scientific round;
Take-home problem)​

Visit

Biased
Embeddings

(Scientific round;
On-site problem)​

Visit

Adaptive
Attacks

(Scientific round;
Take-home problem)

Visit

Adaptive
Attacks

(Scientific round;
On-site problem)

Visit

Can you fool ChatGPT

(Practical round)

Visit

Additional courses

Check out the following online courses for further information on Artificial Intelligence

AI for Everyone

DeepLearning.AI

Visit

Machine Learning

DeepLearning.AI

Visit

Mathematics for Machine Learning

DeepLearning.AI

Visit

Natural Language Processing

DeepLearning.AI

Visit

Deep Learning

DeepLearning.AI

Visit

Generative AI

DeepLearning.AI

Visit