From b47c5c0ed384ce5bddbf9e35f16cb58b70736457 Mon Sep 17 00:00:00 2001 From: Victor Hall Date: Wed, 16 Nov 2022 13:52:06 -0500 Subject: [PATCH] unload old images for better sys ram use, fix up crop jitter --- .../v1-finetune_everydream.yaml | 7 +- .../stable-diffusion/v1-finetune_huge.yaml | 109 ++++++++++++++++++ .../stable-diffusion/v1-finetune_test.yaml | 40 ++++--- demo/crop.gif | Bin 0 -> 200148 bytes ldm/data/aspects.py | 76 ++++++++++++ ldm/data/data_loader.py | 50 ++------ ldm/data/ed_validate.py | 1 - ldm/data/every_dream.py | 37 ++++-- ldm/data/image_train_item.py | 89 ++++++++------ ldm/lr_scheduler.py | 32 +++++ ldm/models/diffusion/ddpm.py | 5 +- test/test_aspects.py | 15 +++ test/test_batch.py | 36 ++++++ test/test_crop.py | 48 ++++++++ test/test_dl.py | 18 +++ test/test_image_train_item.py | 24 ++++ test/test_linearsch.py | 7 ++ 17 files changed, 485 insertions(+), 109 deletions(-) create mode 100644 configs/stable-diffusion/v1-finetune_huge.yaml create mode 100644 demo/crop.gif create mode 100644 ldm/data/aspects.py create mode 100644 test/test_aspects.py create mode 100644 test/test_batch.py create mode 100644 test/test_crop.py create mode 100644 test/test_dl.py create mode 100644 test/test_image_train_item.py create mode 100644 test/test_linearsch.py diff --git a/configs/stable-diffusion/v1-finetune_everydream.yaml b/configs/stable-diffusion/v1-finetune_everydream.yaml index efcbf57..b2d8655 100644 --- a/configs/stable-diffusion/v1-finetune_everydream.yaml +++ b/configs/stable-diffusion/v1-finetune_everydream.yaml @@ -65,7 +65,7 @@ model: data: target: main.DataModuleFromConfig params: - batch_size: 6 # prefer highest possible without getting CUDA Out of Memory error + batch_size: 6 # prefer highest possible without getting CUDA Out of Memory error, A100 40GB =~20 80GB= ~48 num_workers: 6 wrap: falsegit train: @@ -73,9 +73,10 @@ data: params: repeats: 5 # rough suggestions: 5 with 5000+ images, 15 for 1000 images, use micro yaml for <100 debug_level: 1 # 1 to print if images are dropped due to multiple-aspect ratio image batching - conditional_dropout: 0.01 # experimental, likelihood to drop the caption, may help with poorly captioned images + conditional_dropout: 0.08 # experimental, likelihood to drop the caption, may help with poorly captioned images crop_jitter: 5 # adds N pixels of jitter to cropping algorithm for non-square images only - big_mode: 0 # set to 1 or 2 to use larger image sizes for training, USES LOTS OF VRAM! Requires 40GB+ + resolution: 512 # 512, 576, or 640, increases VRAM substantially + seed: 555 # seed used to shuffle the dataset ordering, keep constant for reproducibility validation: target: ldm.data.ed_validate.EDValidateBatch params: diff --git a/configs/stable-diffusion/v1-finetune_huge.yaml b/configs/stable-diffusion/v1-finetune_huge.yaml new file mode 100644 index 0000000..a5077fe --- /dev/null +++ b/configs/stable-diffusion/v1-finetune_huge.yaml @@ -0,0 +1,109 @@ +model: + base_learning_rate: 1.2e-6 + target: ldm.models.diffusion.ddpm.LatentDiffusion + params: + linear_start: 0.00085 + linear_end: 0.0120 + num_timesteps_cond: 1 + log_every_t: 300 + timesteps: 1000 + first_stage_key: image + cond_stage_key: caption + image_size: 64 + channels: 4 + cond_stage_trainable: true + conditioning_key: crossattn + monitor: val/loss_simple_ema + scale_factor: 0.18215 + use_ema: False + unfreeze_model: True + model_lr: 1.2e-6 + + unet_config: + target: ldm.modules.diffusionmodules.openaimodel.UNetModel + params: + image_size: 32 # unused + in_channels: 4 + out_channels: 4 + model_channels: 320 + attention_resolutions: [ 4, 2, 1 ] + num_res_blocks: 2 + channel_mult: [ 1, 2, 4, 4 ] + num_heads: 8 + use_spatial_transformer: True + transformer_depth: 1 + context_dim: 768 + use_checkpoint: True + legacy: False + + first_stage_config: + target: ldm.models.autoencoder.AutoencoderKL + params: + embed_dim: 4 + monitor: val/rec_loss + ddconfig: + double_z: true + z_channels: 4 + resolution: 512 + in_channels: 3 + out_ch: 3 + ch: 128 + ch_mult: + - 1 + - 2 + - 4 + - 4 + num_res_blocks: 2 + attn_resolutions: [] + dropout: 0.0 + lossconfig: + target: torch.nn.Identity + + cond_stage_config: + target: ldm.modules.encoders.modules.FrozenCLIPEmbedder + +data: + target: main.DataModuleFromConfig + params: + batch_size: 6 # prefer highest possible without getting CUDA Out of Memory error, A100 40GB =~20 80GB= ~48 + num_workers: 6 + wrap: falsegit + train: + target: ldm.data.every_dream.EveryDreamBatch + params: + repeats: 1 # rough suggestions: 5 with 5000+ images, 15 for 1000 images, use micro yaml for <100 + debug_level: 1 # 1 to print if images are dropped due to multiple-aspect ratio image batching + conditional_dropout: 0.08 # experimental, likelihood to drop the caption, may help with poorly captioned images + crop_jitter: 15 # adds N pixels of jitter to cropping algorithm for non-square images only + big_mode: 0 # set to 1 or 2 to use larger image sizes for training, USES LOTS OF VRAM! Requires 40GB+ + validation: + target: ldm.data.ed_validate.EDValidateBatch + params: + repeats: 0.3 + test: + target: ldm.data.ed_validate.EDValidateBatch + params: + repeats: 0.2 + +lightning: + modelcheckpoint: + params: + every_n_epochs: 1 # produce a ckpt every epoch, leave 1! + #every_n_train_steps: 1400 # can only use epoch or train step checkpoints + save_top_k: 6 # save the best N ckpts according to loss, can reduce to save disk space but suggest at LEAST 2, more if you have max_epochs below higher! + save_last: True + filename: "{epoch:02d}-{step:05d}" + callbacks: + image_logger: + target: main.ImageLogger + params: + batch_frequency: 500 + max_images: 16 + increase_log_steps: False + + trainer: + benchmark: True + max_epochs: 1 # better to run several epochs and test your checkpoints! Try 4-5, you get a checkpoint every epoch to test! + max_steps: 99000 # better to end on epochs not steps, especially with >500 images to ensure even distribution, but you can set this if you really want... + check_val_every_n_epoch: 1 + gpus: 0, \ No newline at end of file diff --git a/configs/stable-diffusion/v1-finetune_test.yaml b/configs/stable-diffusion/v1-finetune_test.yaml index 42cbcaf..85c459c 100644 --- a/configs/stable-diffusion/v1-finetune_test.yaml +++ b/configs/stable-diffusion/v1-finetune_test.yaml @@ -1,5 +1,5 @@ model: - base_learning_rate: 1.0e-6 + base_learning_rate: 1.2e-6 target: ldm.models.diffusion.ddpm.LatentDiffusion params: linear_start: 0.00085 @@ -17,16 +17,17 @@ model: scale_factor: 0.18215 use_ema: False unfreeze_model: True - #model_lr: 1.0e-6 + model_lr: 1.1e-6 + #use_scheduler: True scheduler_config: - target: ldm.lr_scheduler.LambdaLinearScheduler + target: ldm.lr_scheduler.EveryDreamScheduler params: - warm_up_steps: [ 5 ] - cycle_lengths: [ 1000 ] # incredibly large number to prevent corner cases - verbosity_interval: 25 # how often to print LR updates - f_start: [ 1.e-6 ] - f_max: [ 1.e-6 ] # 1. - f_min: [ 1.e-8 ] # 1. + f_start: 5.0e-1 # starting LR multiplier + warm_up_steps: 50 # number of steps to warm up to f_start before decaying LR + f_max: 1.0 # maximum LR multiplier + f_min: 5.0e-1 # minimum LR multiplier + steps_to_min: 10000 # number of steps to decay from f_max to f_min + verbosity_interval: 200 # how often to print LR multiplier (steps) unet_config: target: ldm.modules.diffusionmodules.openaimodel.UNetModel @@ -74,19 +75,22 @@ model: data: target: main.DataModuleFromConfig params: - batch_size: 6 + batch_size: 6 num_workers: 12 wrap: falsegit train: target: ldm.data.every_dream.EveryDreamBatch params: - repeats: 5 - flip_p: 0 - debug_level: 1 + repeats: 1 # rough suggestions: 5 with 5000+ images, 15 for 1000 images, use micro yaml for <100 + debug_level: 1 # 1 to print if images are dropped due to multiple-aspect ratio image batching + conditional_dropout: 0.08 # experimental, likelihood to drop the caption, may help with poorly captioned images + crop_jitter: 20 # adds N pixels of jitter to cropping algorithm for non-square images only + resolution: 512 # defines max pixels for all aspects, 512, 576, 640, 704, or 768 + seed: 555 # seed used to shuffle the dataset, keep constant for reproducibility validation: target: ldm.data.ed_validate.EDValidateBatch params: - repeats: 0.5 + repeats: 0.25 test: target: ldm.data.ed_validate.EDValidateBatch params: @@ -96,21 +100,21 @@ lightning: modelcheckpoint: params: every_n_epochs: 1 - #every_n_train_steps: 1400 # can only use every_n_epochs OR every_n_train_steps, suggest you stick with epochs + #every_n_train_steps: 1500 # can only use every_n_epochs OR every_n_train_steps, suggest you stick with epochs save_last: True - save_top_k: 5 + save_top_k: 99 filename: "{epoch:02d}-{step:05d}" callbacks: image_logger: target: main.ImageLogger params: - batch_frequency: 100 + batch_frequency: 400 max_images: 16 increase_log_steps: False trainer: benchmark: True - max_epochs: 4 + max_epochs: 5 max_steps: 99000 # better to end on epochs not steps, especially with >500 images to ensure even distribution, but you can set this if you really want... check_val_every_n_epoch: 1 gpus: 0, diff --git a/demo/crop.gif b/demo/crop.gif new file mode 100644 index 0000000000000000000000000000000000000000..c8a7433c86d647b5df0920fe34d9ab4e04548638 GIT binary patch literal 200148 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 0: print(f" * DLMA Example: {self.image_caption_pairs[0]} images") + def get_all_images(self): return self.image_caption_pairs @staticmethod - def __read_caption_from_file(self, file_path, fallback_caption): + def __read_caption_from_file(file_path, fallback_caption): caption = fallback_caption try: with open(file_path, 'r') as caption_file: @@ -91,15 +63,13 @@ class DataLoaderMultiAspect(): else: caption = caption_from_filename - if debug_level > 1: print(f" * DLMA file: {pathname} with caption: {caption}") + #if debug_level > 1: print(f" * DLMA file: {pathname} with caption: {caption}") image = Image.open(pathname) width, height = image.size image_aspect = width / height - aspects = [ASPECTS, BIG_ASPECTS, HUGE_ASPECTS][self.big_mode] - - target_wh = min(aspects, key=lambda x:abs(x[0]/x[1]-image_aspect)) + target_wh = min(self.aspects, key=lambda aspects:abs(aspects[0]/aspects[1] - image_aspect)) image_train_item = ImageTrainItem(image=None, caption=caption, target_wh=target_wh, pathname=pathname, flip_p=flip_p) @@ -129,7 +99,9 @@ class DataLoaderMultiAspect(): truncate_count = len(buckets[bucket]) % batch_size current_bucket_size = len(buckets[bucket]) buckets[bucket] = buckets[bucket][:current_bucket_size - truncate_count] - print(f" ** Bucket {bucket} with {current_bucket_size} will drop {truncate_count} images due to batch size {batch_size}") if debug_level > 0 else None + + if debug_level > 0: + print(f" ** Bucket {bucket} with {current_bucket_size} will drop {truncate_count} images due to batch size {batch_size}") # flatten the buckets image_caption_pairs = [] diff --git a/ldm/data/ed_validate.py b/ldm/data/ed_validate.py index c371e97..687b234 100644 --- a/ldm/data/ed_validate.py +++ b/ldm/data/ed_validate.py @@ -1,6 +1,5 @@ import numpy as np from torch.utils.data import Dataset -from torchvision import transforms from ldm.data.data_loader import DataLoaderMultiAspect as dlma import math import ldm.data.dl_singleton as dls diff --git a/ldm/data/every_dream.py b/ldm/data/every_dream.py index eb48b95..f2e91fa 100644 --- a/ldm/data/every_dream.py +++ b/ldm/data/every_dream.py @@ -10,10 +10,10 @@ class EveryDreamBatch(Dataset): data_root: root path of all your training images, will be recursively searched for images repeats: how many times to repeat each image in the dataset flip_p: probability of flipping the image horizontally - debug_level: 0=none, 1=print drops due to unfilled batches on aspect ratio buckets, 2=save crops to disk for inspection + debug_level: 0=none, 1=print drops due to unfilled batches on aspect ratio buckets, 2=debug info per image, 3=save crops to disk for inspection batch_size: how many images to return in a batch conditional_dropout: probability of dropping the caption for a given image - big_mode: 0=normal, 1=big, 2=biggest + resolution: max resolution (relative to square) jitter: number of pixels to jitter the crop by, only for non-square images """ def __init__(self, @@ -24,18 +24,22 @@ class EveryDreamBatch(Dataset): batch_size=1, set='train', conditional_dropout=0.0, - big_mode=0, + resolution=512, crop_jitter=0, + seed=555, + image_cache_size=200 ): self.data_root = data_root self.batch_size = batch_size self.debug_level = debug_level self.conditional_dropout = conditional_dropout self.crop_jitter = crop_jitter + self.unloaded_to_idx = 0 + self.image_cache_size = image_cache_size if not dls.shared_dataloader: print(" * Creating new dataloader singleton") - dls.shared_dataloader = dlma(data_root=data_root, debug_level=debug_level, batch_size=self.batch_size, flip_p=flip_p, big_mode=big_mode) + dls.shared_dataloader = dlma(data_root=data_root, seed=seed, debug_level=debug_level, batch_size=self.batch_size, flip_p=flip_p, resolution=resolution) self.image_train_items = dls.shared_dataloader.get_all_images() @@ -54,20 +58,35 @@ class EveryDreamBatch(Dataset): idx = i % self.num_images image_train_item = self.image_train_items[idx] example = self.__get_image_for_trainer(image_train_item, self.debug_level) + + if self.unloaded_to_idx > idx: + self.unloaded_to_idx = 0 + + if idx % (self.batch_size*3) == 0 and idx > (self.batch_size * 5) and idx > self.image_cache_size: + start_del = max(self.image_cache_size, self.unloaded_to_idx) + self.unloaded_to_idx = int(idx / self.batch_size)*self.batch_size - self.batch_size*8 + + print(f"{idx}: {start_del}, {self.unloaded_to_idx}") if self.debug_level > 1 else None + + if self.unloaded_to_idx > self.image_cache_size: + for j in range(start_del, self.unloaded_to_idx): + del self.image_train_items[j].image + if self.debug_level > 1: print(f" * Unloaded images from idx {start_del} to {self.unloaded_to_idx}") + return example def __get_image_for_trainer(self, image_train_item: ImageTrainItem, debug_level=0): example = {} - save = debug_level > 1 + save = debug_level > 2 image_train_tmp = image_train_item.hydrate(crop=False, save=save, crop_jitter=self.crop_jitter) example["image"] = image_train_tmp.image - #if random.random() > self.conditional_dropout: - example["caption"] = image_train_tmp.caption - #else: - # example["caption"] = " " + if random.random() > self.conditional_dropout: + example["caption"] = image_train_tmp.caption + else: + example["caption"] = " " return example diff --git a/ldm/data/image_train_item.py b/ldm/data/image_train_item.py index 40e0f24..cc8b1ed 100644 --- a/ldm/data/image_train_item.py +++ b/ldm/data/image_train_item.py @@ -8,7 +8,11 @@ import os class ImageTrainItem(): """ - # [image, identifier, target_aspect, closest_aspect_wh(w,h), pathname] + image: PIL.Image + identifier: caption, + target_aspect: (width, height), + pathname: path to image file + flip_p: probability of flipping image (0.0 to 1.0) """ def __init__(self, image: PIL.Image, caption: str, target_wh: list, pathname: str, flip_p=0.0): self.caption = caption @@ -18,49 +22,62 @@ class ImageTrainItem(): self.cropped_img = None if image is None: - self.image = PIL.Image.new(mode='RGB',size=(1,1)) + self.image = [] else: self.image = image def hydrate(self, crop=False, save=False, crop_jitter=0): - self.image = PIL.Image.open(self.pathname).convert('RGB') + """ + crop: hard center crop to 512x512 + save: save the cropped image to disk, for manual inspection of resize/crop + crop_jitter: randomly shift cropp by N pixels when using multiple aspect ratios to improve training quality + """ + if not hasattr(self, 'image') or len(self.image) == 0: + self.image = PIL.Image.open(self.pathname).convert('RGB') - width, height = self.image.size - if crop: - cropped_img = self.__autocrop(self.image) - self.image = cropped_img.resize((512,512), resample=PIL.Image.BICUBIC) - else: - if width == 512 and height == 512: - pass - elif self.target_wh[0] == self.target_wh[1]: - pass - else: - width, height = self.image.size - image_aspect = width / height - jitter_amount = random.randint(-crop_jitter, crop_jitter) - jitter_amount = min(jitter_amount, int(abs(width-height)/2)) - target_aspect = self.target_wh[0] / self.target_wh[1] - if image_aspect > target_aspect: - new_width = int(height * target_aspect) - left = int((width - new_width) / 2) + jitter_amount - right = left + new_width - self.image = self.image.crop((left, 0, right, height)) - else: - new_height = int(width / target_aspect) - top = int((height - new_height) / 2) + jitter_amount - bottom = top + new_height - self.image = self.image.crop((0, top, width, bottom)) - self.image = self.image.resize(self.target_wh, resample=PIL.Image.BICUBIC) + width, height = self.image.size + if crop: + cropped_img = self.__autocrop(self.image) + self.image = cropped_img.resize((512,512), resample=PIL.Image.BICUBIC) + else: + if self.target_wh[0] == self.target_wh[1]: + pass + else: + width, height = self.image.size + image_aspect = width / height + jitter_amount = random.randint(0, crop_jitter) + target_aspect = self.target_wh[0] / self.target_wh[1] + print(f"{target_aspect}, {self.target_wh}") + if image_aspect > target_aspect: + new_width = int(height * target_aspect) + jitter_amount = max(min(jitter_amount, int(abs(width-new_width)/2)), 0) + left = jitter_amount + right = left + new_width + print(f"crop left: {left}, right: {right}, jitteramt:{jitter_amount}, [{width}, {height}] img: {self.pathname}") + self.image = self.image.crop((left, 0, right, height)) + else: + new_height = int(width / target_aspect) + jitter_amount = max(min(jitter_amount, int(abs(height-new_height)/2)), 0) + top = jitter_amount + bottom = top + new_height + print(f"crop top: {top}, bottom: {bottom}, jitteramt:{jitter_amount}, [{width}, {height}] img: {self.pathname}") + self.image = self.image.crop((0, top, width, bottom)) + self.image = self.image.resize(self.target_wh, resample=PIL.Image.BICUBIC) - self.image = self.flip(self.image) + self.image = self.flip(self.image) - if save: # for manual inspection - base_name = os.path.basename(self.pathname) - self.image.save(f"test/output/{random.randint(0,4)}/{base_name}") + if type(self.image) is not np.ndarray: + if save: + base_name = os.path.basename(self.pathname) + if not os.path.exists("test/output"): + os.makedirs("test/output") + self.image.save(f"test/output/{base_name}") + + self.image = np.array(self.image).astype(np.uint8) + + self.image = (self.image / 127.5 - 1.0).astype(np.float32) - self.image = np.array(self.image).astype(np.uint8) - - self.image = (self.image / 127.5 - 1.0).astype(np.float32) + print(self.image.shape) return self diff --git a/ldm/lr_scheduler.py b/ldm/lr_scheduler.py index be39da9..67261da 100644 --- a/ldm/lr_scheduler.py +++ b/ldm/lr_scheduler.py @@ -96,3 +96,35 @@ class LambdaLinearScheduler(LambdaWarmUpCosineScheduler2): self.last_f = f return f +class EveryDreamScheduler: + """ + f_min: minimum lr multiplier + f_max: maximum lr multiplier + f_start: lr multiplier at the beginning of the warm-up phase + warm_up_steps: number of steps in the warm-up phase + steps_to_min: number of steps to reach the minimum lr multiplier + """ + def __init__(self, f_min=0.5, f_max=1.0, f_start=1.0, warm_up_steps=1000, steps_to_min=5000, verbosity_interval=100) -> None: + self.f_min = f_min + self.f_max = f_max + self.f_start = f_start + self.warm_up_steps = warm_up_steps + self.steps_to_min = steps_to_min + self.last_f = 0. + self.verbosity_interval = verbosity_interval + + def __call__(self, n, **kwargs): + return self.schedule(n, **kwargs) + + def schedule(self, n, **kawrgs): + if self.verbosity_interval > 0: + if n % self.verbosity_interval == 0: print(f"current step: {n}, recent lr-multiplier: {self.last_f:0.3f}, current cycle: {0}") + + if n < self.warm_up_steps: + self.last_f = self.f_start + elif n < self.steps_to_min: + self.last_f = self.f_min + (self.f_max - self.f_min) * (self.steps_to_min - n) / (self.steps_to_min) + else: + self.last_f = self.f_min + + return self.last_f \ No newline at end of file diff --git a/ldm/models/diffusion/ddpm.py b/ldm/models/diffusion/ddpm.py index c150a78..4dca8d9 100644 --- a/ldm/models/diffusion/ddpm.py +++ b/ldm/models/diffusion/ddpm.py @@ -453,6 +453,7 @@ class LatentDiffusion(DDPM): conditioning_key=None, scale_factor=1.0, scale_by_std=False, + scheduler_config=None, *args, **kwargs): self.num_timesteps_cond = default(num_timesteps_cond, 1) @@ -465,7 +466,7 @@ class LatentDiffusion(DDPM): conditioning_key = None ckpt_path = kwargs.pop("ckpt_path", None) ignore_keys = kwargs.pop("ignore_keys", []) - super().__init__(conditioning_key=conditioning_key, *args, **kwargs) + super().__init__(conditioning_key=conditioning_key, scheduler_config=scheduler_config, *args, **kwargs) self.concat_mode = concat_mode self.cond_stage_trainable = cond_stage_trainable self.cond_stage_key = cond_stage_key @@ -704,8 +705,6 @@ class LatentDiffusion(DDPM): if cond_key != self.first_stage_key: if cond_key in ['caption', 'coordinates_bbox']: xc = batch[cond_key] - elif cond_key == 'class_label': - xc = batch else: xc = super().get_input(batch, cond_key).to(self.device) else: diff --git a/test/test_aspects.py b/test/test_aspects.py new file mode 100644 index 0000000..35e1914 --- /dev/null +++ b/test/test_aspects.py @@ -0,0 +1,15 @@ +import ldm.data.aspects as aspects + +resolutions = [512, 576, 640, 704, 768] +oops = [532, 576, 640, 704, 768] + +for res in resolutions: + example_aspects = aspects.get_aspect_buckets(res) + print(f" *{res} buckets: {example_aspects}") + + max_pixels = example_aspects[0][0] * example_aspects[0][1] + + for aspect in example_aspects: + pixels = aspect[0] * aspect[1] + print (f"max: {max_pixels}: {aspect}: {pixels}, pct {pixels/max_pixels:.2f}") + assert pixels <= max_pixels, f" * {aspect} is larger than {max_pixels}" \ No newline at end of file diff --git a/test/test_batch.py b/test/test_batch.py new file mode 100644 index 0000000..abb019a --- /dev/null +++ b/test/test_batch.py @@ -0,0 +1,36 @@ +# script to test data loader by itself +# run from training root, edit the data_root manually + +from ldm.data.every_dream import EveryDreamBatch +import time + +s = time.perf_counter() + +#data_root = "r:/everydream-trainer/test/input" +data_root = "r:/everydream-trainer/training_samples" + +batch_size = 6 +repeats=3 +every_dream_batch = EveryDreamBatch(data_root=data_root, flip_p=0.0, debug_level=2, batch_size=batch_size, repeats=repeats, crop_jitter=25, conditional_dropout=0.3, resolution=512) + +print(f" *TEST* EveryDreamBatch epoch image length: {len(every_dream_batch)}") +print(f" max test cycles: {int(len(every_dream_batch) / batch_size)}, batch_size: {batch_size}, repeats: {repeats}") +i = 0 + +while i < 99: # and i < len(every_dream_batch): + curr_batch = [] + for j in range(i,i+batch_size): + curr_batch.append(every_dream_batch[j]) + + # all in batch must have the same image size + assert all(x == curr_batch[0]['image'].shape for x in [e['image'].shape for e in curr_batch]) + assert all(x[0] > 2 for x in [e['image'].shape for e in curr_batch]) + + #print(f"idx: {i}, batch sample: shape: {curr_batch[0]['image'].shape}: {curr_batch[0]['caption']}") + + i += batch_size + +print(f" *TEST* test cycles: {i}") +print(f" *TEST* EveryDreamBatch epoch image length: {len(every_dream_batch)}") +elapsed = time.perf_counter() - s +print(f"{__file__} executed in {elapsed:5.2f} seconds.") \ No newline at end of file diff --git a/test/test_crop.py b/test/test_crop.py new file mode 100644 index 0000000..5dd4aed --- /dev/null +++ b/test/test_crop.py @@ -0,0 +1,48 @@ +# script to what cropping does to your images +# execute from root everydream-trainer folder +# ex. +# (everydream) R:\everydream-trainer>python scripts/test_crop.py +# dumps to /test/output + +from ldm.data.every_dream import EveryDreamBatch +import time +import argparse + +parser = argparse.ArgumentParser() +parser.add_argument('--data_root', type=str, default=None, help='root path of all your training images, will be recursively searched for images') +parser.add_argument('--resolution', type=int, default=512, help='resolution class, 512, 576, 640, 704, or 768') +args = parser.parse_args() + +s = time.perf_counter() + +# put in your own data_root here, WARNING don't do this on a lot of images unless you are prepared for it... +if args.data_root is None: + data_root = "R:/everydream-trainer/test/input" +else: + data_root = args.data_root + +debug_level = 3 # 3 = dump images to disk after cropping and a bunch of crap into the console be warned +batch_size = 1 +repeats = 1 +crop_jitter = 50 +resolution = args.resolution # 512, 576, 640, 704, 768 +every_dream_batch = EveryDreamBatch(data_root=data_root, flip_p=0.0, debug_level=3, batch_size=batch_size, repeats=repeats, crop_jitter=crop_jitter, conditional_dropout=0.1, resolution=resolution) + +print(f" *TEST* EveryDreamBatch epoch image length: {len(every_dream_batch)}") +print(f" max test cycles: {int(len(every_dream_batch) / batch_size)}, batch_size: {batch_size}, repeats: {repeats}") +i = 0 + +while i < len(every_dream_batch): + curr_batch = [] + for j in range(i,i+batch_size): + curr_batch.append(every_dream_batch[j]) + + assert all(x == curr_batch[0]['image'].shape for x in [e['image'].shape for e in curr_batch]) + assert all(x[0] > 2 for x in [e['image'].shape for e in curr_batch]) + + i += batch_size + +print(f" *TEST* test cycles: {i}") +print(f" *TEST* EveryDreamBatch epoch image length: {len(every_dream_batch)}") +elapsed = time.perf_counter() - s +print(f"{__file__} executed in {elapsed:5.2f} seconds.") \ No newline at end of file diff --git a/test/test_dl.py b/test/test_dl.py new file mode 100644 index 0000000..9b52b6f --- /dev/null +++ b/test/test_dl.py @@ -0,0 +1,18 @@ +# script to test data loader by itself +# run from training root, edit the data_root manually +# python ldm/data/test_dl.py +import ldm.data.data_loader as dl + +data_root = "r:/everydream-trainer/test/input" + +data_loader = dl.DataLoaderMultiAspect(data_root=data_root, batch_size=2, seed=555, debug_level=2) + +image_caption_pairs = data_loader.get_all_images() + +print(f"Loaded {len(image_caption_pairs)} image-caption pairs") + +for image_caption_pair in image_caption_pairs: + print(image_caption_pair) + + +print(f"**** Done loading. Loaded {len(image_caption_pairs)} images from data_root: {data_root} ****") \ No newline at end of file diff --git a/test/test_image_train_item.py b/test/test_image_train_item.py new file mode 100644 index 0000000..af32e9d --- /dev/null +++ b/test/test_image_train_item.py @@ -0,0 +1,24 @@ +# script to test data loader by itself +# run from training root, edit the data_root manually +# python ldm/data/test_dl.py +from ldm.data.image_train_item import ImageTrainItem +import glob +import os + +data_root = "training_samples\multiaspect" + +for idx, f in enumerate(glob.iglob(f"{data_root}/*.jpg")): + for i in range(0, 40): + #print(f) + #image: PIL.Image, caption: str, target_wh: list, pathname: str, flip_p=0.0): + caption = os.path.basename(f) + caption = os.path.splitext(caption)[0] + my_iti = ImageTrainItem(None,caption,[512,512],f,0.0) + + my_iti = my_iti.hydrate() + + out_file_path = os.path.join(data_root, "output", f"{caption}_{i}.jpg") + #print(out_file_path) + my_iti.cropped_img.save(out_file_path) + + diff --git a/test/test_linearsch.py b/test/test_linearsch.py new file mode 100644 index 0000000..442c070 --- /dev/null +++ b/test/test_linearsch.py @@ -0,0 +1,7 @@ +import ldm.lr_scheduler as lrs + +#def __init__(self, warm_up_steps, f_min, f_max, f_start, cycle_lengths, verbosity_interval=0): +sch = lrs.EveryDreamScheduler(warm_up_steps=10, f_min=5.0e-1, f_max=1.0, f_start=1.0, steps_to_min=25, verbosity_interval=5) + +for i in range(50): + print(f"step {i}: {sch(i)}")