@ 2016.01.28 , 10:00

让神经网络设计字体会怎样

神经网络正在慢慢地接手过去由人类大脑完成的工作。也因此Erik Bernhardsson想知道如果他将五万种字体丢到神经网络里,并让神经网络自行消化这些字体,最后会发生什么事。最终他得到的结果非常有意思。

人工神经网络就是模拟人思维的第二种方式。这是一个非线性动力学系统,其特色在于信息的分布式存储和并行协同处理。虽然单个神经元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现的行为却是极其丰富多彩的。

[-]

为了将字体输送给人工智能,他为每个字符创造出了网格,即每个字符被安排在一个64x64像素的盒子里,这样接下来Bernhardsson才能更直观地比较每种字体的区别。在此过程中Bernhardsson还让神经网络生成了一种Bernhardsson所说的“矢量字体”。(矢量字体中的每一个字形是通过数学曲线来描述的,它包含了字形边界上的关键点,连线的导数信息等,字体的渲染引擎通过读取这些数学矢量,然后进行一定的数学运算来进行渲染。这类字体的优点是字体实际尺寸可以任意缩放而不变形、变色。)他操作的具体细节你可以点击这里阅读。

[-]

[-]

[-]

更有趣的是你能用生成的向量来做的一些事情,正如Bernhardsson描述的那样:

鉴于每个字体都是一个矢量,我们能够创造任意矢量字体并从中得到产品。我们可以挑选某个矢量字体并从随机扰动中得到新的字体,我们还可以生成全新的字体。如果我们将矢量字体的分配塑造成一种多元常态,那么我们能够从中得到随机的矢量样本,并观察它们生成的字体。

[-]

事实上,上面的动图更直观地展现出了上述描写。它也很智能:它明白在后面跟着许多小写字母的情况下,许多字体应该采用大写字母的形式;它能够根据它正在创造的字体类型自如地切换大小写形态。

当然目前神经网络尚未完全接手人类设计师的工作,不过这个超酷的项目向我们展示了它们的多才多艺究竟达到了什么地步。

本文译自 Gizmodo,由 肌肉桃 编辑发布。

支付宝打赏 [x]
您的大名: 打赏金额:
赞一个 (9)