Google针对生成对抗网路(Generative Adversarial Network,GAN)的高运算复杂度提出解决方案,将原本需要在伺服器执行的脸部编辑模型轻量化,推出可在手机上运作的少样本脸部风格模型MediaPipe FaceStylizer,提供高品质脸部图片生成,并且透过MediaPipe平台公开,让用户能够自订部署到行动装置上。
生成对抗网路是一种深度学习模型,其包含生成器和监别器两部分,生成器负责生成图像,而监别器的任务则是分辨图像是不是真实的,也就是发现该图像是否由生成器所产生。而MediaPipe FaceStylizer针对脸部风格化设计,具有脸部生成器和脸部编码器两个主要元件。脸部编码器的主要功能用於生成对抗网路反转(GAN Inversion),将图像映射到生成器的潜在码(Latent Code)中。
生成对抗网路反转是指用於寻找导致模型输出的输入,这个输入再经过生成对抗网路的生成器时,会产生特定图像,换句话说,当存在一张图片,想要知道生成对抗网路的生成器中,可以产生该张图片的潜在码,这个过程便称为生成对抗网路反转。脸部编码器便是找出潜在码的角色,以便脸部生成器可以再次使用该潜在码,生成相同或是类似的脸部图像。
除此之外,研究人员为了最佳化生成器,特别设计了一些损失函式,并且结合常用的生成对抗网路损失函式,藉以最小化生成器的错误,他们从一个较为复杂的StyleGAN模型,提炼出一个更轻量的生成器BlazeStyleGAN。轻量生成器虽然容量小、执行快,但生成的图片品质仍然很高。下图研究结果显示,BlazeStyleGAN生成的图像品质很好(图下),而且因为研究人员在损失函式的设计,进一步减少了StyleGAN可能产生的瑕疵和伪影(图上)。
从参数数量和计算FLOPs评估模型复杂度,与StyleGAN拥有3,340万参数相比,BlazeStyleGAN的复杂度大幅降低,在输出图片解析度为256×256的情况下,仅需要约200万参数和1.28G FLOPs的BlazeStyleGAN模型。当输出解析度为1024×1024,BlazeStyleGAN-1024可减少95%运算复杂度,而且输出图像品质与StyleGAN-1024模型没有明显差异,甚至抑制来自StyleGAN模型的伪影。
研究人员在高效能的装置上,对MediaPipe FaceStylizer的推论时间进行基准测试,BlazeStyleGAN-256和BlazeStyleGAN-512在所有拥有GPU的装置上都能达到即时运算,在更高阶手机的执行时间甚至不到10毫秒。BlazeStyleGAN-256还可以在iOS装置上以CPU即时生成结果。
Google将会透过MediaPipe平台,向用户公开MediaPipe FaceStylizer。BlazeStyleGAN模型经过训练之後,只需要几行程式码,就能透过MediaPipe Tasks FaceStylizer API部署已汇出的TFLite模型到各平台的应用程式。