参与:蛋酱、泽南
头可断,发型不能乱。
最近有一个男人的名字实在太火了,他叫「张东升」;比他本人更出名的,是他溘然摘下假发后露出的发际线。
在看完《隐秘的角落》往后,你会不会溘然脑洞大开,思考秃顶后的自己是什么样子呢?
结果便是这么巧,几天前,一位 UP 主隆重推出了低廉甜头的光头天生器,不管你现在有多年轻,头发有多么浓密,这个天生器都能让你一眼望穿二十年后的自己。
众所周知,目前机器学习领域大部分的图片天生工具都是基于 GAN(天生对抗网络)来实现的。英伟达在 2018 年推出了 StyleGAN 之后,AI 天生的人脸已经极其逼真,很难用肉眼来分辨。随后,英伟达也开源了 StyleGAN 的代码,从此,越来越多的假脸就这样被创造了出来,并且发型、皮肤、五官等特色都可以随心变革。
不掏一分钱,也不用出门,在家编程就能实现自己秃顶的梦想。这可不便是程序员们常说的「代码改变天下」?
直到瞥见了天生结果,这发际线后移的速率太过胆怯:
望着光头的自己,一瞬间,心就凉了:
虽然也知道自己终将会有这么一天,但还是想躲避:
发量日渐稀疏的程序员看完之后表示:「技能不错,但有被搪突到。」
详细教程
纵然这样你也要考试测验?UP 主暂时没有分享出全部代码,但你也可以如法炮制,预知一下自己未来光头后的颜值(误)。
MarsLUL 提到,该天生器的思路和代码大部分来源于一篇 Medium 教程《Hairstyle Transfer — Semantic Editing GAN Latent Code》。
教程地址;https://medium.com/swlh/hairstyle-transfer-semantic-editing-gan-latent-code-b3a6ccf91e82
这里借用了汤晓鸥、周博磊等人在论文《Interpreting the Latent Space of GANs for Semantic Face Editing》提出的「InterfaceGAN」。
第一步:潜码估计
首先,我们将输入图像发送到预演习的残差网络中,以便在 StyleGAN 中进行初始潜码估计。然后把这个估计值发送给天生器,这让我们对原始输入图像有一个初步的预测。对此图像我们可以将预演习的图像分类器运用于特色提取。同时,我们将对输入图像也进行同样的特色提取。
然后在特色空间中,我们实行梯度低落,将特色向量的 L2 丢失最小化并更新潜码估计(赤色箭头部分)。
现在,我们就可以在 StyleGAN 潜在空间内查找任何图像。
带边界语义编辑
在进行编辑之前,我们须要探求可以在潜在空间等分离二元属性的特定边界。每个边界对应一个头发属性。比如:
发型:波浪 / 直发、刘海;
颜色:玄色 / 棕色 / 金色 / 灰色;
发际线:退却撤退发际线;
面部毛发:胡子、鬓角。
但是如何找到边界?首先要做潜在空间分离,
终极利用 10 个分别于属性匹配的分类器来天生 2 万个潜码和 score pairs。我们在头发属性上演习独立线性 SVM,然后在验证集上进行评估,终极准确性可以达到 80%。
把它们放在一起,对付每个输入图像,我们先在 StyleGAN 潜在空间中找到其特定位置,然后将其按照特定方向移动,以进行语义编辑。
我们对每个属性利用线性超平面,将其法线向量作为输出面相对付目标属性连续变革的方向。例如在上图中,我们在 StyleGAN 空间中找到了年轻的莱昂纳多 · 迪卡普里奥的图像隐代码,绘制了与刘海超平面正交的方向,将隐代码的位置沿该方向移动。这样我们就可以创建不同刘海状态的,迪卡普里奥的图片了。
末了,说到条件边界(Conditional Boundary),它也在 InterfaceGAN 中被引入。常日,许多属性会相互耦合,比如发际线与人的年事干系,长发更多涌如今女性照片中,髯毛仅涌如今男性面部。但是把不同属性区分开非常主要。
作者先容
MarsLUL 本科毕业于同济大学土木工程系,是一名头发很多的年轻人。
2015 年,他进入 UC Irvine 开始学习打算机知识,后来成为一名程序员,并进入谷歌事情。
在以往的视频作品中,他也分享了自己转专业和求职的诸多履历。
首先便是,转行打算机一定要以兴趣为先,不能纯挚由于「报酬好」、「随意马虎找事情」等成分,就扎进一个自己并不喜好的专业,如此是得不偿失落的。
但如果决定了,下一步便是若何在最短的韶光内节制一门学科的知识体系。
他会将一门学科分为三条路线进行学习:根本知识、专业知识和兴趣知识。
根本知识相称于建筑的地基,也是其余两条路线的先决条件,比如打算机专业的根本知识便是算法、数据构造、操作系统等等。这些知识都可以在 Coursera 等课程网站上得到。
然后是专业知识,在没有从业履历的时候,你可以考试测验参加一些培训项目(比如 Udemy),来理解在真正的事情岗位上,一个程序员到底须要节制什么技能。
其余一方面,可以通过读书和专业知识的论坛,进行兴趣知识的补充。比如 Hacker News,切实其实是程序员摄取干系知识的福地。书本方面,MarsLUL 推举了《免费的编程中文书本索引》这个 GitHub 项目,分门别类地整理了多本书本资源,学习者可以根据自己的兴趣来挑选。
项目地址:https://github.com/justjavac/free-programming-books-zh_CN
在另一期视频中,MarsLUL 也细致地分享了作为一名转专业职员,如何闯过简历这一关。
末了的末了,关于制作光头天生器的初衷,UP 主也说了:「实在是为了见告大家熬夜的危害,为了自己的头发,能早点睡就早点睡吧。」
编程不易,且编且珍惜。