Part 1: Python Basics
Learning Resource →
Part 2: Topic Classifications
The topics are categorized into three distinct sections, indicating the level and nature of knowledge contestants need:
1. Theory (How it works)
Contestants should thoroughly understand core concepts and theoretical underpinnings—essentially, the “why” behind AI. This may involve studying textbooks courses, and other resources to delve into the mechanics that power AI algorithms.
2. Practice (What it does, when to use it, and how to implement it)
Contestants should develop the practical skills necessary to implement AI methods in code. This includes knowing how to use library functions effectively, call the method on a particular data, and interpret outputs. Example: While a contestant need not fully dissect the internal workings of the Adam optimizer, they should be able to decide when and how to employ it.
3. Both
Certain topics require knowledge of both theoretical principles and practical application.
Part 3: Educational Resources
Type | Title | Author/Institution | Contents | Level | URL |
---|---|---|---|---|---|
Online Course | AI Python for Beginners | Andrew Ng, Stanford University | Python basics, API programming | Beginner | Link |
Online Course | Elements of AI | University of Helsinki | Introduction to AI, methods, applications, ethics | Beginner | Link |
Online Course | Python for Everybody | University of Michigan | Python basics, data structures, web scraping, databases | Beginner | Link (Audit) |
Online Course | Data Analysis with Python | IBM | Data analysis with Python, NumPy, Pandas | Beginner | Link (Audit) |
Tutorial | Google's Python Class | Python basics, strings, lists, sorting, dicts, files, regex | Beginner | Link | |
Tutorial | NumPy Tutorial | W3Schools | Introduction to NumPy, arrays, operations | Beginner | Link |
Tutorial | Pandas Tutorial | W3Schools | Introduction to Pandas, dataframes, series, operations | Beginner | Link |
Open Course | Introduction to Computer Science and Programming in Python | MIT OpenCourseWare | Python programming, computational thinking | Beginner | Link |
Online Course | Computer Vision Basics | University at Buffalo, Coursera | Image processing, feature detection, image matching | Beginner | Link (Audit) |
eBook | Python Crash Course | Eric Matthes | Python basics, data structures, file I/O | Beginner | Link (Sample chapters free) |
eBook | Think Python: How to Think Like a Computer Scientist | Allen B. Downey | Python programming, algorithms, debugging | Beginner | Link |
eBook | Automate the Boring Stuff with Python | Al Sweigart | Practical Python: automation, web scraping, working with files | Beginner | Link |
Online Course | Introduction to Artificial Intelligence with Python | Harvard University | Search algorithms, knowledge representation, ML, neural networks | Beginner to Intermediate | Link (Audit) |
Book | Hands-On Large Language Models: Language Understanding and Generation | Jay et al. | LLM basics with most intuitive explanations | Beginner to Intermediate | Link |
Course | Generative AI for Beginners | Microsoft | Generative AI intro | Beginner to Intermediate | Link |
Course | Hugging Face Agents Course | Hugging Face | Agents intro | Beginner to Intermediate | Link |
Online Course | Machine Learning with Python | IBM | ML with Scikit-learn: classification, regression, clustering | Beginner to Intermediate | Link (Audit) |
Tutorial | Natural Language Processing with Python | NLTK | Text processing, classification, tagging, parsing | Beginner to Intermediate | Link |
eBook | Introduction to Machine Learning with Python | Andreas C. Müller, Sarah Guido | ML basics with Scikit-learn: classification, regression, clustering | Beginner to Intermediate | Link (Free via some libraries or promotions) |
eBook | Natural Language Processing with Python | Steven Bird, et. al. | NLP basics, text processing, linguistic analysis | Beginner to Intermediate | Link |
Online Course | Machine Learning | Andrew Ng, Stanford University | Supervised and unsupervised learning, best practices | Intermediate | Link (Audit) |
Online Course | Deep Learning | Andrew Ng, Stanford University | Deep Learning | Intermediate | Link (Audit) |
eBook | Deep Learning with Python | François Chollet | Deep learning concepts, neural networks, Keras | Intermediate | Link (Free chapter previews) |
Online Course | Intro to Deep Learning with PyTorch | Udacity, Facebook AI | Deep learning fundamentals with PyTorch | Intermediate | Link |
Jupyter Notebooks, Slides | Introduction to Machine Learning | Ali Sharifi, Sharif University | Classical ML, Deep Learning, CV and NLP | Intermediate | Link |
eBook | Neural Networks and Deep Learning | Michael Nielsen | Neural network fundamentals, backpropagation, deep learning | Intermediate | Link |
Open Course | Introduction to Machine Learning | MIT OpenCourseWare | Lecture notes, assignments on ML topics | Intermediate to Advanced | Link |
Open Course | Artificial Intelligence | MIT OpenCourseWare | Lecture notes, assignments on AI topics | Intermediate to Advanced | Link |
eBook | Computer Vision: Algorithms and Applications | Richard Szeliski | Image processing, feature detection, recognition | Intermediate to Advanced | Link (Draft version free) |