驚呆了:神經(jīng)網(wǎng)絡(luò)也開(kāi)始設(shè)計(jì)字體?
在很多以前只能靠人腦的任務(wù)中,神經(jīng)網(wǎng)絡(luò)正在發(fā)揮越來(lái)越重要的作用。所以Eric Bernhardsson決定研究一下將50000種字體放入神經(jīng)網(wǎng)絡(luò) 后會(huì)發(fā)生什么。結(jié)果相當(dāng)有趣。為了讓人工智能能夠消化字體,他創(chuàng)建了一個(gè)字符柵格——每一個(gè)字符都放置在一個(gè)64×64像素空間中,這樣每一個(gè)字符就可以 和其它字符進(jìn)行直接對(duì)比。在這個(gè)過(guò)程中,他讓神經(jīng)網(wǎng)絡(luò)創(chuàng)建他所稱(chēng)的“矢量字體”——一種能夠單獨(dú)定義字體的抽象數(shù)學(xué)結(jié)構(gòu),詳情可以查看他的博客進(jìn)行了解。
而對(duì)于得到的矢量,Bernhardsson還有更有趣的用途,他解釋說(shuō):
因?yàn)槊總€(gè)字體都是一個(gè)矢量,我們可以創(chuàng)建任意字體矢量并從中生成結(jié)果。我們可以……選擇一個(gè)字體矢量并通過(guò)隨機(jī)擾動(dòng)生成新字體……我們也可以生成完全全新的字體。如果我們建立一個(gè)字體矢量分布作為一個(gè)多元正態(tài)分布的模型,我們可以從中隨機(jī)取樣矢量,然后看看它們會(huì)產(chǎn)生什么字體。
所得到的結(jié)果即如文中圖片所示。這個(gè)神經(jīng)網(wǎng)絡(luò)也相當(dāng)聰明。比如說(shuō)它學(xué)習(xí)到很多字體使用大寫(xiě)字母作為小寫(xiě)字母,然后它就聰明地根據(jù)其所創(chuàng)建字體的不同在兩者之間切換。
字體設(shè)計(jì)師們不要過(guò)于驚慌,神經(jīng)網(wǎng)絡(luò)暫時(shí)還沒(méi)辦法取代你們的工作。但這個(gè)項(xiàng)目讓我們了解到神經(jīng)網(wǎng)絡(luò)也能完成很酷的項(xiàng)目,也能多才多藝。