Быстрый старт
PaddleGAN — это набор инструментов для разработки генеративно-состязательных сетей (GAN) на основе PaddlePaddle, который обеспечивает высокопроизводительное воспроизведение различных классических сетей. Он находит применение в широком спектре областей, таких как генерация изображений, миграция стилей, управление анимацией, суперразрешение изображений и видео и раскраска.
В этом разделе вы узнаете, как быстро начать работу с PaddleGAN на примере обучения и оценки модели CycleGAN на наборе данных Cityscapes.
Обратите внимание, что все файлы конфигурации моделей в PaddleGAN доступны по адресу ./PaddleGAN/configs.
Содержание
Установка
Для установки и настройки среды выполнения обратитесь к документации по установке (installation documentation), чтобы завершить установку PaddlePaddle и PaddleGAN.
Предполагается, что пользователь клонировал и поместил код PaddleGAN в каталог /home/paddle. Пользователь выполняет команды в каталоге /home/paddle/PaddleGAN.
Подготовка данных
Подготовьте набор данных Cityscapes в соответствии с документацией по подготовке данных (data preparation).
Скачайте набор данных Cityscapes в ~/.cache/ppgan и создайте символическую ссылку на PaddleGAN/data/ с помощью следующего скрипта:
python data/download_cyclegan_data.py --name cityscapes
Обучение
python -u tools/main.py --config-file configs/cyclegan_cityscapes.yaml
--config-file (str)
: путь к файлу конфигурации. Это файл конфигурации, используемый здесь для обучения CycleGAN на наборе данных Cityscapes.
Выходные журналы, веса и результаты визуализации сохраняются по умолчанию в . /output_dir
, что можно изменить с помощью параметра output_dir
в файле конфигурации:
output_dir: output_dir
В созданной папке автоматически создаётся новый каталог на основе имени модели и метки времени. Пример каталога:
output_dir
└── CycleGANModel-2020-10-29-09-21
├── epoch_1_checkpoint.pkl
├── log.txt
└── visual_train
├── epoch001_fake_A.png
├── epoch001_fake_B.png
├── epoch001_idt_A.png
├── epoch001_idt_B.png
├── epoch001_real_A.png
├── epoch001_real_B.png
├── epoch001_rec_A.png
├── epoch001_rec_B.png
├── epoch002_fake_A.png
├── epoch002_fake_B.png
├── epoch002_idt_A.png
├── epoch002_idt_B.png
├── epoch002_real_A.png
├── epoch002_real_B.png
├── epoch002_rec_A.png
└── epoch002_rec_B.png
``` **cyclegan_cityscapes.yaml и запуск соответствующей команды для мониторинга процесса обучения в реальном времени**
<div align='center'>
<img src='https://user-images.githubusercontent.com/48054808/122736527-b786ab80-d2b2-11eb-96f8-235f6bbfba5a.png' width=60%>
</div>
Если вы хотите настроить содержимое визуализации VisualDL, вы можете перейти в . /PaddleGAN/ppgan/engine/trainer.py.
Запустите VisualDL локально:
visualdl --logdir output_dir/CycleGANModel-2020-10-29-09-21/
Для получения дополнительной информации о том, как запустить и использовать эти функции визуализации, обратитесь к Руководству пользователя VisualDL (https://github.com/PaddlePaddle/VisualDL/blob/develop/docs/components/README.md).
#### Возобновление обучения
Контрольная точка предыдущей эпохи сохраняется в `output_dir` по умолчанию во время процесса обучения, чтобы облегчить возобновление обучения.
В этом демо, обучение cyclegan будет сохранять контрольную точку каждые пять эпох по умолчанию, и если вы хотите изменить количество эпох, вы можете обратиться к файлу конфигурации, чтобы настроить параметр `interval`.
<div align='center'>
<img src='https://user-images.githubusercontent.com/48054808/122886954-fda34400-d372-11eb-91a0-cd0e8328335f.png' width=60%>
</div>
python -u tools/main.py --config-file configs/cyclegan_cityscapes.yaml --resume your_checkpoint_path
- `--resume (str)`: путь контрольной точки.
### 2. Обучение на нескольких картах
CUDA_VISIBLE_DEVICES=0,1 python -m paddle.distributed.launch tools/main.py --config-file configs/cyclegan_cityscapes.yaml
## Оценка
python tools/main.py --config-file configs/cyclegan_cityscapes.yaml --evaluate-only --load your_weight_path
#### Args
- `--evaluate-only`: делать прогнозы только или нет
- `--load (str)`: путь веса
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )