{ "cells": [ { "cell_type": "markdown", "source": [ "---\n", "description: Understand the Avalanche Package Structure\n", "---\n", "\n", "# Introduction\n", "\n", "Welcome to the \"_Introduction_\" tutorial of the \"_From Zero to Hero_\" series. We will start our journey by taking a quick look at the _Avalanche_ main modules to understand its **general architecture**.\n", "\n", "As hinted in the getting started introduction _Avalanche_ is organized in **five main modules**:\n", "\n", "* **`Benchmarks`**: This module maintains a uniform API for data handling: mostly generating a stream of data from one or more datasets. It contains all the major CL benchmarks \\(similar to what has been done for [torchvision](https://pytorch.org/docs/stable/torchvision/index.html)\\).\n", "* **`Training`**: This module provides all the necessary utilities concerning model training. This includes simple and efficient ways of implement new _continual learning_ strategies as well as a set pre-implemented CL baselines and state-of-the-art algorithms you will be able to use for comparison!\n", "* **`Evaluation`**: This module provides all the utilities and metrics that can help evaluate a CL algorithm with respect to all the factors we believe to be important for a continually learning system. It also includes advanced logging and plotting features, including native [Tensorboard](https://www.tensorflow.org/tensorboard) support.\n", "* **`Models`**: In this module you'll be able to find several model architectures and pre-trained models that can be used for your continual learning experiment \\(similar to what has been done in [torchvision.models](https://pytorch.org/docs/stable/torchvision/index.html)\\).\n", "* **`Logging`**: It includes advanced logging and plotting features, including native _stdout_, _file_ and [Tensorboard](https://www.tensorflow.org/tensorboard) support \\(How cool it is to have a complete, interactive dashboard, tracking your experiment metrics in real-time with a single line of code?\\)\n", "\n", "{% code title=\"Avalanche Main Modules and Sub-Modules\" %}\n", "```text\n", "Avalanche\n", "├── Benchmarks\n", "│ ├── Classic\n", "│ ├── Datasets\n", "│ ├── Generators\n", "│ ├── Scenarios\n", "│ └── Utils\n", "├── Evaluation\n", "│ ├── Metrics\n", "│ ├── Tensorboard\n", "| └── Utils\n", "├── Training\n", "│ ├── Strategies\n", "│ ├── Plugins\n", "| └── Utils\n", "├── Models\n", "└── Loggers\n", "\n", "```\n", "{% endcode %}\n", "\n", "In this series of tutorials, you'll get the chance to learn in-depth all the features offered by each module and sub-module of _Avalanche_, how to put them together and how to master _Avalanche_, for a **stress-free continual learning prototyping experience**!\n", "\n", "{% hint style=\"info\" %}\n", "In the following tutorials we will assume you have already installed _Avalanche on your computer_ or server. If you haven't yet, check out how you can do it following our [How to Install](../getting-started/how-to-install.md) guide.\n", "{% endhint %}\n", "\n", "## 🤝 Run it on Google Colab\n", "\n", "You can run _this chapter_ and play with it on Google Colaboratory: [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ContinualAI/colab/blob/master/notebooks/avalanche/introduction.ipynb)" ], "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } } } ], "metadata": {}, "nbformat": 4, "nbformat_minor": 2 }