MyStyle++: A Controllable Personalized Generative Prior
Texas A&M University; Sony AI; OPPO US Research Center
一句话总结
在 MyStyle 个性化生成先验的基础上,通过重排隐空间中的锚点、让每个属性沿一条固定方向变化,得到一个既忠于个人面部特征、又能对表情/偏航/俯仰/年龄等属性做解耦精确控制的个性化 StyleGAN 先验。
研究背景
- 领域现状:StyleGAN 能生成以假乱真的人脸,配合 InterFaceGAN、GANSpace、StyleFlow 等方法可对表情、姿态等语义属性做编辑。MyStyle 进一步用少量个人照片微调生成器,形成局部、低维的”个性化流形”,在合成、编辑、增强任务中都能很好地保留目标人物的身份特征。
- 核心痛点:MyStyle 对生成图像的属性缺乏精确控制。想合成带特定属性的图像只能在锚点凸包里随机采样、碰运气;做编辑时借用 InterFaceGAN 这类在全域学到的方向,方向往往不落在个性化子空间内,直接编辑会让隐码很快跑出子空间、导致身份被改。把编辑方向投影回子空间虽能保住身份,却让属性纠缠在一起(例如去掉笑容时偏航角也跟着变)。
- 本文 idea:作者观察到同一个人的锚点通常聚集在隐空间的一小块区域,因此可以只通过重排这块区域内的锚点来”整理”隐空间。由于 StyleGAN 输出随输入平滑变化,移动锚点会把周围的空间一起拖动,从而得到一个按属性组织好的隐空间。
方法
整体框架:给定一个人的若干张带属性标注的照片,先按 MyStyle 的流程对齐裁剪,并估计每张图的 \(M\) 个预定义属性(如偏航、表情),对连续属性做量化分级。再用预训练编码器把图片投影到 StyleGAN 的 W 空间得到一组锚点,然后同时优化两件事:微调生成器保证对目标个体的重建保真度,优化锚点位置把隐空间按属性整理好。优化收敛后得到一个整理过的隐空间 \(W^*\) 和微调后的生成器 \(G^*\)。
flowchart LR
A["输入个人照片 + 属性标注"] --> B["对齐裁剪 + 属性量化"]
B --> C["编码进 W 空间得到锚点"]
C --> D["联合优化: 锚点损失 + 重建损失"]
D --> E["整理后的隐空间 W* + 微调生成器 G*"]
E --> F["可控合成 / 编辑 / 增强"]
关键设计:
-
理想隐空间的三条性质。作者先定义目标:每个属性沿一条已知方向 \(\boldsymbol{d}_m\) 变化;所有在某属性方向上投影到同一值的隐码应具有相同属性;不同属性的方向应相互正交以保证完全解耦。
-
锚点损失(anchor loss)。把上述性质编码成损失,核心是让同一属性的锚点在对应方向上投影到同一点: \[L_{anc} = \sum_{m=1}^{M} L_d(\boldsymbol{d}_m), \quad L_d = \sum_{n=1}^{N} \lVert \boldsymbol{w}_n \cdot \boldsymbol{d}_m - c_{n,m} \rVert\] 其中 \(c_{n,m}\) 是所有与第 \(n\) 张图具有相同第 \(m\) 个属性的锚点在方向 \(\boldsymbol{d}_m\) 上投影的均值。最小化该损失使同属性锚点投影一致(第二条性质),并使属性沿其专属方向变化(第一条性质)。
-
用 PCA 选取正交属性方向。对全部锚点做主成分分析,并通过 \(\boldsymbol{d}_m = \arg\min_{\boldsymbol{v}_i \in V} L_d(\boldsymbol{v}_i)\) 为每个属性挑选一个主成分作为方向。主成分天然正交,满足第三条性质;选择最契合的成分意味着做最少的重排。PCA 在每次迭代都重新计算,随锚点移动更新方向。
-
联合损失与三类任务应用。总损失 \(L = L_{anc} + L_{rec}\),重建损失用 LPIPS 与 L2 的组合,既微调生成器又防止锚点全部塌缩到一点这种平凡解。得到整理后的隐空间后,所有属性都能在一个 \(M\) 维超立方体内控制:合成时先在凸包内采样再把属性方向上的投影设为目标值;编辑时把隐码投到 PCA 空间、改超立方体坐标即可;图像增强时在重建目标上加一项,约束隐码在属性方向上的投影靠近期望值 \(a_m\)。
实验结果
在 StyleGAN2(FFHQ 预训练)上对多位名人(各几十到几百张图)微调,与两个 MyStyle 变体对比:MyStyle_I(编辑方向来自 InterFaceGAN)和 MyStyle_P(方向来自 PCA、不整理隐空间只微调生成器)。可控合成的主实验固定一个属性、随机采样其余属性,生成 100 张图并统计目标属性的标准差(越小说明控制越精确):
| 方法 | Exp 标准差↓ | Yaw 标准差↓ | Pitch 标准差↓ | Age 标准差↓ |
|---|---|---|---|---|
| MyStyle_P | 0.092~0.242 | 4.088~8.346 | 1.680~5.029 | 4.134~6.380 |
| MyStyle_I | 0.003~0.348 | 2.648~4.067 | -(无方向) | 3.234~4.933 |
| Ours | 0.002~0.094 | 1.462~2.879 | 1.008~3.534 | 1.906~2.577 |
(数据为 Leonardo DiCaprio 在 5 个归一化属性值上的范围)本文方法在所有属性上都取得最小标准差,控制最精确。此外 ID 身份保持指标和多样性得分与 MyStyle 相当(ID 约 0.76/0.78,本文略高),说明隐空间整理不损害生成质量与身份保真;真实图像编辑的解耦性与身份保持也全面领先两个基线。分析实验表明图像数量下降到 46 张时编辑质量明显下降。
亮点与局限
- 亮点:
- 关键洞察简洁有力——只需重排一小块区域的锚点,靠 StyleGAN 的平滑性”拖动”周边空间即可整理隐空间。
- 锚点损失 + PCA 选方向的设计同时满足”沿已知方向、同属性同投影、方向正交”三条性质,实现了属性的解耦精确控制。
- 在控制精度、解耦性、身份保持上均优于 MyStyle,且不牺牲多样性;还能自然扩展到可控的图像修复与超分。
- 局限:
- 所需图像数量随属性个数显著增长,锚点稀疏的区域无法被充分个性化(MyStyle 也有此问题)。
- 对视角等属性的重建并非物理精确,未引入成像过程建模。
- 方法目前面向单一个体;若要整理整个 StyleGAN 隐空间,需要大量锚点、优化困难,还要防止不同身份的锚点被排到一起。
延伸思考
方法本质是”用少量带标注样本在预训练生成器的隐空间里种下正交属性轴”,这一思路与后来基于扩散模型的个性化(DreamBooth、Textual Inversion 等)关注点互补——后者强于文本可控性但属性解耦与身份保真未必更好。把”锚点重排整理隐空间”的想法迁移到扩散模型的隐/条件空间,或结合 3D 感知生成(如生成式 NeRF)以获得物理准确的视角控制,都是值得追问的方向。此外论文提到把方案推广到整个 StyleGAN 隐空间的挑战,也指向如何在多身份场景下避免锚点混叠这一开放问题。