• Stars
    star
    562
  • Rank 79,281 (Top 2 %)
  • Language
    Jupyter Notebook
  • License
    Apache License 2.0
  • Created almost 3 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

100 exercises to learn JAX

JaxTon

💯 JAX exercises

License GitHub Twitter

Mission 🚀

To provide 100 JAX exercises over different sections structured as a course or tutorials to teach and learn for beginners, intermediates as well as experts.

JAX

The JAX package in Python is a library for high performance and efficient machine learning research.

It is commonly used for various deep learning tasks and runs seamlessly on CPUs, GPUs as well as TPUs.

Exercises 📖

There are a total of 100 JAX exercises divided into 10 sets of Jupyter Notebooks with 10 exercises each. It is recommended to go through the exercises in order but you may start with any set depending on your expertise.

Structured as exercises & tutorials - Choose your style
Suitable for beginners, intermediates & experts - Choose your level
Available on Colab, Kaggle, Binder & GitHub - Choose your platform
Supports running on CPU, GPU & TPU - Choose your backend

All Sets • Exercises 1-100

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 01 • JAX Introduction • Beginner • Exercises 1-10

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 02 • Data Operations • Beginner • Exercises 11-20

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 03 • Pseudorandom Numbers • Beginner • Exercises 21-30

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 04 • Just-In-Time (JIT) Compilation • Beginner • Exercises 31-40

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 05 • Control Flows • Beginner • Exercises 41-50

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 06 • Automatic Differentiation • Intermediate • Exercises 51-60

Style Colab Kaggle Binder GitHub
Exercises Open in Colab Open in Kaggle Open in Binder Open in GitHub
Solutions Open in Colab Open in Kaggle Open in Binder Open in GitHub

Set 07 • Automatic Vectorization • Intermediate • Exercises 61-70

Style Colab Kaggle Binder GitHub
Exercises WIP WIP WIP WIP
Solutions WIP WIP WIP WIP

Set 08 • Pytrees • Intermediate • Exercises 71-80

Style Colab Kaggle Binder GitHub
Exercises WIP WIP WIP WIP
Solutions WIP WIP WIP WIP

Set 09 • Neural Networks • Expert • Exercises 81-90

Style Colab Kaggle Binder GitHub
Exercises WIP WIP WIP WIP
Solutions WIP WIP WIP WIP

Set 10 • Capstone Project • Expert • Exercises 91-100

Style Colab Kaggle Binder GitHub
Exercises WIP WIP WIP WIP
Solutions WIP WIP WIP WIP

The Jupyter Notebooks can also be run locally by cloning the repo and running on your local jupyter server.

git clone https://github.com/vopani/jaxton.git
python3 -m pip install notebook
jupyter notebook

P.S. The notebooks will be periodically updated to improve the exercises and support the latest version.

Contribution 🛠️

Please create an Issue for any improvements, suggestions or errors in the content.

You can also tag @vopani on Twitter for any other queries or feedback.

Credits 🙏

JAX

License 📋

This project is licensed under the Apache License 2.0.