AI开发平台MODELARTS-创建ModelArts数据增强任务:数据生成算子(StyleGan算子)
数据生成算子(StyleGan算子)
图像生成利用Gan网络依据已知的数据集生成新的数据集。Gan是一个包含生成器和判别器的网络,生成器从潜在空间中随机取样作为输入,其输出结果需要尽量模仿训练集中的真实样本。判别器的输入则为真实样本或生成网络的输出,其目的是将生成网络的输出从真实样本中尽可能分辨出来。而生成网络则要尽可能地欺骗判别网络。两个网络相互对抗、不断调整参数,最终目的是使判别网络无法判断生成网络的输出结果是否真实。训练中获得的生成器网络可用于生成与输入图片相似的图片,用作新的数据集参与训练。基于Gan网络生成新的数据集不会生成相应的标签。图像生成过程不会改动原始数据,新生成的图片或xml文件保存在指定的输出路径下。
参数名 |
默认值 |
参数说明 |
---|---|---|
resolution |
256 |
生成正方形图像的高宽,大小需要是2的次方。 |
batch-size |
8 |
批量训练样本个数。 |
total-kimg |
300 |
总共训练的图像数量为total_kimg*1000。 |
generate_num |
300 |
生成的图像数量,如果是多个类的,则为每类生成的数量。 |
predict |
False |
是否进行推理预测,默认为False。如果设置True,需要在resume参数设置已经训练完成的模型的obs路径。 |
resume |
empty |
如果predict设置为True,需要填写Tensorflow模型文件的obs路径用于推理预测。当前仅支持“.pb”格式的模型。示例:obs://xxx/xxxx.pb。 默认值为empty。 |
do_validation |
True |
是否做数据校验,默认为True,表示数据生成前需要进行数据校验,否则只进行数据生成。 |
- 输入要求
- 选择“数据集”,请从下拉框中选择ModelArts中管理的数据集及其版本。要求数据集类型与您在本任务中选择的场景类别一致。
- 选择“OBS目录”,图像生成算子不需要标注信息,输入支持单层级或双层级目录,存放结构支持“单层级”或“双层级”模式。
单层级目录结构如下所示:
image_folder----0001.jpg ----0002.jpg ----0003.jpg ... ----1000.jpg
双层级目录结构如下所示:
image_folder----sub_folder_1----0001.jpg ----0002.jpg ----0003.jpg ... ----0500.jpg ----sub_folder_2----0001.jpg ----0002.jpg ----0003.jpg ... ----0500.jpg ... ----sub_folder_100----0001.jpg ----0002.jpg ----0003.jpg ... ----0500.jpg
- 输出说明
输出目录的结构如下所示。其中“model”文件夹存放用于推理的“frozen pb”模型,“samples”文件夹存放训练过程中输出图像,“Data”文件夹存放训练模型生成的图像。
train_url----model----CYcleGan_epoch_10.pb ----CYcleGan_epoch_20.pb ... ----CYcleGan_epoch_1000.pb ----samples----0000_0.jpg ----0000_1.jpg ... ----0100_15.jpg ----Data----CYcleGan_0_0.jpg ----CYcleGan_0_1.jpg ... ----CYcleGan_16_8.jpg ----output_0.manifest
其中manifest文件内容示例如下所示。
{ "id": "xss", "source": "obs://home/fc8e2688015d4a1784dcbda44d840307_14.jpg", "usage": "train", "annotation": [ { "name": "Cat", "type": "modelarts/image_classification" } ] }