Среда тонкой настройки основана на открытом исходном коде и его инструкциях: https://github.com/tencent-ailab/IP-Adapter
Я обучил Модель IP-адаптера для точной настройки с использованием пар изображение + подсказка в качестве обучающих данных. Однако точно настроенная модель не отражает ожидаемый результат на основе подсказки.
2 случая неудачи для изображений поезда и файла подсказки .json:
Тот же запрос для изображений при дневном свете (17 изображений):
Например, «image_file»: «day_1.jpg», «text»: «Город в дневное время при солнечном свете».
То же самое приглашение для ночные изображения (17 изображений):
Например, «image_file»: «night_1.jpg», «text»: «Ночной город с освещением. Никакого солнечного света».
Результат вывода: После тренировки введите дневные изображения с подсказкой, например «Город в дневное время с солнечным светом». для вывода сгенерированные выходные изображения представляют собой неподвижные дневные изображения, а не ночные.
Обучайтесь на тысячах изображений (1500 нейтральных лиц и 2500 грустных). изображения лиц):
4 различных запроса на нейтральные изображения, обозначающие нейтральное выражение лица.
Например,
"image_file": "sad_1.jpg", "text": "The person is showing a sorrowful expression."
Результат вывода: после тренировки примените нейтральные изображения с подсказкой, например: «Мужчина очень грустно.» или «У человека печальное выражение лица». , созданные выходные изображения лиц по-прежнему нейтральны и совсем не грустны.
Этапы точной настройки:
Измените код в файле Tutorial_train_plus.py:
замените Accelerator.save_state(save_path)
на Accelerator.save_state(save_path, Safe_serialization=False)
Для точной настройки запустите приведенные ниже сценарии:
accelerate запуск --num_processes 2 --multi_gpu --mixed_precision "fp16"
к обученной модели ip_ckpt = "models/ip-adapter.bin"
запустить python3 ip_adapter-plus_demo.py для вывода
Что-то не так в описанном выше процессе или проблема во входных изображениях или подсказках?В моем случае, сколько пар наборов данных (одно изображение и одно приглашение) обычно требуется, как минимум, для достижения эффективных результатов?
Среда тонкой настройки основана на открытом исходном коде и его инструкциях: https://github.com/tencent-ailab/IP-Adapter Я обучил Модель IP-адаптера для точной настройки с использованием пар изображение + подсказка в качестве обучающих данных. Однако точно настроенная модель не отражает ожидаемый результат на основе подсказки. 2 случая неудачи для изображений поезда и файла подсказки .json: [list] [*]Тот же запрос для изображений при дневном свете (17 изображений): Например, «image_file»: «day_1.jpg», «text»: «Город в дневное время при солнечном свете». То же самое приглашение для ночные изображения (17 изображений): Например, «image_file»: «night_1.jpg», «text»: «Ночной город с освещением. Никакого солнечного света». Результат вывода: После тренировки введите дневные изображения с подсказкой, например «Город в дневное время с солнечным светом». для вывода сгенерированные выходные изображения представляют собой неподвижные дневные изображения, а не ночные.
[*]Обучайтесь на тысячах изображений (1500 нейтральных лиц и 2500 грустных). изображения лиц): 4 различных запроса на нейтральные изображения, обозначающие нейтральное выражение лица. Например,[code]"image_file": "neu_1.jpg", "text": "The person's face has a neutral expression."[/code] 4 разных запроса к грустным изображениям, обозначающим грустное выражение лица. Например,[code]"image_file": "sad_1.jpg", "text": "The person is showing a sorrowful expression."[/code]
[/list] Результат вывода: после тренировки примените нейтральные изображения с подсказкой, например: «Мужчина очень грустно.» или «У человека печальное выражение лица». , созданные выходные изображения лиц по-прежнему нейтральны и совсем не грустны. Этапы точной настройки: [list] [*] Измените код в файле Tutorial_train_plus.py: замените Accelerator.save_state(save_path) на Accelerator.save_state(save_path, Safe_serialization=False)
[*]См. инструкции в readme и преобразуйте pytorch.bin в ip-adapter.bin. В файле вывода [code]ip_adapter-plus_demo.py[/code], Измените исходную модель: ip_ckpt = "models/ip-adapter-plus_sd15.bin"
к обученной модели ip_ckpt = "models/ip-adapter.bin"
[*]запустить python3 ip_adapter-plus_demo.py для вывода [/list] Что-то не так в описанном выше процессе или проблема во входных изображениях или подсказках?В моем случае, сколько пар наборов данных (одно изображение и одно приглашение) обычно требуется, как минимум, для достижения эффективных результатов?