Вы можете использовать fastai без какой-либо установки с помощью Google Colab. Фактически, каждая страница этой документации также доступна в виде интерактивной записной книжки — нажмите «Открыть в Colab» вверху любой страницы, чтобы открыть ее (обязательно измените среду выполнения Colab на «GPU», чтобы она работала быстрее!) Дополнительную информацию см. в документации fast.ai по использованию Colab.
Вы можете установить fastai на свои компьютеры с помощью conda (настоятельно рекомендуется), если вы используете Linux или Windows (примечание: Mac не поддерживается). Для Windows см. важные примечания в разделе «Работа в Windows».
Мы рекомендуем использовать миниконду (или минифорж). Сначала установите PyTorch, используя показанную здесь строку conda, а затем запустите:
conda install -c fastai fastai
Для установки с помощью pip используйте: pip install fastai
.
Если вы планируете разрабатывать fastai самостоятельно или хотите быть в курсе последних событий, вы можете использовать редактируемую установку (в этом случае вам также следует использовать редактируемую установку fastcore). Сначала установите PyTorch, а затем :
git clone https://github.com/fastai/fastai
pip install -e "fastai[dev]"
Лучший способ начать заниматься фастаем (и глубоким обучением) — прочитать книгу и пройти бесплатный курс.
Чтобы увидеть возможности fastai, ознакомьтесь с кратким руководством, в котором показано, как использовать около 5 строк кода для создания классификатора изображений, модели сегментации изображений, модели тональности текста, системы рекомендаций и табличной модели. Для каждого из приложений код практически одинаков.
Прочтите учебные пособия, чтобы узнать, как обучать собственные модели на собственных наборах данных. Используйте боковую панель навигации для просмотра документации Fastai. Здесь документирован каждый класс, функция и метод.
Чтобы узнать о дизайне и мотивации библиотеки, прочтите рецензируемую статью.
fastai — это библиотека глубокого обучения, которая предоставляет практикам компоненты высокого уровня, которые могут быстро и легко обеспечить самые современные результаты в стандартных областях глубокого обучения, а также предоставляет исследователям компоненты низкого уровня, которые можно смешивать и сопоставлять для создания новые подходы. Он нацелен на то, чтобы сделать обе вещи без существенных компромиссов в простоте использования, гибкости или производительности. Это возможно благодаря тщательно продуманной многоуровневой архитектуре, которая выражает общие базовые закономерности многих методов глубокого обучения и обработки данных в терминах разделенных абстракций. Эти абстракции можно выразить кратко и ясно, используя динамизм основного языка Python и гибкость библиотеки PyTorch. Фастай включает в себя:
fastai организован вокруг двух основных целей дизайна: быть доступным и быстро продуктивным, а также быть легко взломанным и настраиваемым. Он построен на основе иерархии API-интерфейсов нижнего уровня, которые предоставляют составные строительные блоки. Таким образом, пользователю, желающему переписать часть API высокого уровня или добавить определенное поведение в соответствии со своими потребностями, не нужно учиться использовать самый низкий уровень.
Очень легко перейти с простой библиотеки PyTorch, Ignite или любой другой библиотеки на основе PyTorch или даже использовать fastai в сочетании с другими библиотеками. Как правило, вы сможете использовать весь существующий код обработки данных, но сможете сократить объем кода, необходимого для обучения, и с большей легкостью воспользоваться преимуществами современных передовых методов. Вот руководства по миграции из некоторых популярных библиотек, которые помогут вам в этом:
Из-за проблем с многопроцессорностью Python в Jupyter и Windows, num_workers
Dataloader
автоматически сбрасывается в 0, чтобы избежать зависания Jupyter. Это делает такие задачи, как компьютерное зрение, в Jupyter в Windows во много раз медленнее, чем в Linux. Этого ограничения не существует, если вы используете fastai из скрипта.
Посмотрите этот пример, чтобы полностью использовать API fastai в Windows.
Вместо этого мы рекомендуем использовать подсистему Windows для Linux (WSL) — если вы это сделаете, вы сможете использовать обычный подход к установке Linux, и у вас не возникнет никаких проблем с num_workers
.
Чтобы запустить тесты параллельно, запустите:
nbdev_test
Чтобы все тесты прошли, вам необходимо установить зависимости, указанные как часть dev_requirements в settings.ini.
pip install -e .[dev]
Тесты пишутся с использованием nbdev
, например, см. документацию test_eq
.
После клонирования этого репозитория убедитесь, что вы запустили nbdev_install_hooks
в своем терминале. При этом устанавливаются перехватчики Jupyter и git для автоматической очистки, проверки доверия и исправления конфликтов слияния в блокнотах.
После внесения изменений в репо вам следует запустить nbdev_prepare
и внести дополнительные и необходимые изменения, чтобы пройти все тесты.
Если вас интересуют официальные докер-контейнеры для этого проекта, их можно найти здесь.