本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【j2开奖】开源 | 汉字风格迁移项目Rewrite:利用神经网络学习设计汉字新字体

时间:2016-11-04 22:33来源:天下彩论坛 作者:j2开奖直播 点击:
参与:吴攀、李亚洲 日前,Flipboard 软件工程师 Yuchen Tian 在 GitHub 上发布了用于汉字字体的神经风格迁移的项目,该项目介绍了如何通过神经网络学习设计汉字新字体的方法。机器之心

参与:吴攀、李亚洲

日前,Flipboard 软件工程师 Yuchen Tian 在 GitHub 上发布了用于汉字字体的风格迁移的项目,该项目介绍了如何通过经网络学习设计汉字新字体的方法。机器之心授权编译发布。

  项目地址:https://github.com/kaonashi-tyc/Rewrite

项目目的

创建字体是一件难事,创建汉字字体更是艰难。要做一个兼容 GBK(中国政府设定的字符集标准)的字体,设计师需要为超过 26000 个不同的汉字字符设计外观,这是一项艰巨的工作,可能需要数年时间才能完成。

可不可以让设计师仅设计其中一部分字符的字体,然后让计算机来确定剩下的字符应该是什么模样呢?毕竟,汉字是由一些被称为「偏旁部首」的基本元素构成的;在不同的汉字上,相同的偏旁部首看起来也都相当雷同。

这个项目是使用深度学习的一个探索性的应用。具体而言,整个字体设计流程可被表示成一个风格迁移问题(style transfer problem)——将标准样式字体(比如 SIMSUN 体)转换为目标风格的字体。本项目通过向一个神经网络提供配对样本的子集来训练该神经网络近似学会两种字体设计之间的转换。一旦学习完成,该神经网络就可被用来推理其它字符的外形。下面的框图大概说明了这个思想:

  

码报:【j2开奖】开源 | 汉字风格迁移项目Rewrite:利用神经网络学习设计汉字新字体

这个项目的灵感很大程度上来自于 Erik Bernhardsson 的博客《Analyzing 50k fonts using deep neural networks》和 Shumeet Baluja 的好论文《Learning Typographic Style》。

网络结构

在尝试过了各种不同的架构(包括具有残差(residuals)和去卷积(deconvolution)的更复杂的架构)之后,我最终选择了一种更为传统的自上而下的 CNN 架构,如下所示。

  

码报:【j2开奖】开源 | 汉字风格迁移项目Rewrite:利用神经网络学习设计汉字新字体

注意事项:

每一个卷积层之后都有一个批规范化(Batch Normalization)层,然后是一个 ReLU 层,然后一直向下零填充(zero padding)。

该网络基于预测输出和 ground truth 之间的像素级的平均绝对误差(MAE)进行最小化,而没有使用 Erik 的博客中提到的更常用的均方误差(MSE)。MAE 往往能产出更锐利和更清晰的图像,而 MSE 则会得到更模糊和灰蒙蒙的结果。另外为了图像的平滑度,还使用了总变差损失(total variation loss)。

层数 n 是可配置的,更大的 n 往往会生成更详细和更清晰的输出,但也需要更长的训练时间,通常的选择是在 [2, 4] 之间。大于 4 的时候似乎会达到收益递减的点,即虽然运行时间增加了,但在损失或输出上不会有明显的提升。

大卷积能带来更好的细节。在我的实验过程中,我开始使用的是堆叠的平直的 3×3 卷积,但它最后表现并不好或无法在更困难和更奇异的字体上收敛。所以最后我选择了这种涓滴形状的架构(trickling down shape architecture),其不同的层有不同大小的卷积,每一个都具有差不多相同数量的参数,所以该网络可以获取不同层面的细节。

dropout 是收敛(convergence)的基础。没有它,该网络就只能放弃或受困于毫无价值的解决方案,比如全白或全黑图像。

在 Erik 和 Shumeet 的工作中使用的全连接层(fully-Connected layers)对汉字字符的效果不是非常好,会生成噪声更多和不稳定的输出。我猜想是汉字字符的结构比字母的结构要远远复杂得多,而且从本质上来说更接近于图像,所以一个基于 CNN 的方法在这种情况下更为合理。

和真实世界图像不一样的是,我们可以生成任意分辨率的字符图像。我们可以对这个事实加以利用:用高分辨率的源图像来逼近低分辨率的目标,从而可以保留更多的细节以及避免模糊和噪声。

可视化

训练中的进展

上图展示了模型在多种字体上的训练过程中的验证集上所取得的进展。它们全都在 2000 个样本上进行了训练,层数设置为 3。看该模型如何从随机噪声收敛是很有意思的:首先获取一个字符的可识别的形状,然后获取更为细微的细节。下面是训练过程中某种字体的进展过程。

码报:【j2开奖】开源 | 汉字风格迁移项目Rewrite:利用神经网络学习设计汉字新字体

与 ground truth 比较

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容