讀天才與算法:人腦與AI的數(shù)學(xué)思維筆記23_人工智能講故事.png 1. 偉大的自動語法分析器 1.1. 思維呆板機械的阿道夫·奈普(Adolphe Knipe)一直想成為一名作家,可是他寫出來的東西既迂腐又無趣 1.2. 后來,靈光乍現(xiàn),他得到了一個啟示:語言遵循語法規(guī)則,這規(guī)則的本質(zhì)基本上就是數(shù)學(xué) 1.3. 在這樣的認識下,他開始創(chuàng)造一個巨大的機器——“偉大的自動語法分析器”,它能夠在15分鐘內(nèi)模仿在世的獲獎作家,寫出足以以假亂真的,甚至更好的作品 1.4. 奈普以他的“自動語法分析器”為要挾,威脅這些作家,讓他們授權(quán)給自己使用他們的名字 1.5. 在故事的結(jié)尾,講述者與自己的良知做斗爭 2. 第一臺通用型電子計算機 2.1. 最早為計算機編寫的程序是用來寫情書的 2.2. 圖靈 2.2.1. 在布萊奇利公園破解了恩尼格瑪密碼機的密碼后,就動身前往曼徹斯特大學(xué),將他的想法付諸實踐:打造一臺真正的通用型電子計算機 2.2.1.1. 恩尼格瑪密碼機是對二戰(zhàn)時期納粹德國使用的一系列相似的轉(zhuǎn)子機械加解密機器的統(tǒng)稱,它包括許多不同的型號,為密碼學(xué)對稱加密算法的流加密 2.2.2. 在他的指導(dǎo)下,英國皇家學(xué)會計算實驗室很快生產(chǎn)出了世界上第一臺通用型電子計算機——Ferranti Mark 1 2.2.2.1. 這臺計算機用于尋找新的素數(shù),解決原子理論中的問題,以及用于早期的遺傳基因研究 2.2.2.2. 也有人稱世界上第一臺通用型電子計算機是埃尼阿克(ENIAC) 2.2.2.2.1. 1946年2月14日,它誕生于美國賓夕法尼亞大學(xué),研究人員于次日正式對外公布研發(fā)成功 2.2.3. 選擇的隨機性通過圖靈創(chuàng)建的隨機數(shù)生成器實現(xiàn) 3. 潛在文學(xué)工作室 3.1. Oulipo 3.1.1. 此名稱取自法語“Ouvroir de littérature potentielle” 3.1.2. 意為“開發(fā)潛在的文學(xué)” 3.2. 利用算法生成文章并不是什么新鮮事 3.2.1. 20世紀(jì)60年代,一批作家和數(shù)學(xué)家聚集在法國,使用算法生成新的作品 3.3. 規(guī)則的約束是創(chuàng)意過程的重要組成部分。盲目地跟從每一種沖動所帶來的靈感,實際上才是一種真正的奴役。通過對文學(xué)創(chuàng)作施加準(zhǔn)數(shù)學(xué)的規(guī)則約束,你將獲得一種新的自由。 3.3.1. 其創(chuàng)始人之一的雷蒙·格諾(Raymond Queneau) 3.3.1.1. 格諾創(chuàng)作出了文學(xué)版的“莫扎特骰子游戲” 3.4. 讓·萊斯庫爾(Jean Lescure)構(gòu)思出來的“S+7模式”(也就是英語的“N+7模式”) 3.4.1. 這個組織最受歡迎的算法 3.4.2. “S”取自法語的“substantifs”,意為“實體的”,即名詞 3.4.3. 該算法將任意一首詩作為輸入,然后對詩中的所有名詞進行操作,將其替換為該詞在字典中所在位置向前或后移動7位的單詞 3.5. 詩歌是一種特別適合應(yīng)用算法的文體 3.5.1. 模式規(guī)則的約束性確定了一個模板,算法可以嘗試以一種有意義的方式填充該模板 3.5.2. 算法的任務(wù)是選擇與模式匹配的單詞,同時嘗試尋求某種形式以便使其整體連貫 3.5.3. 每當(dāng)寫詩需要押韻時,押韻詞數(shù)據(jù)庫是超級有用的 3.5.4. 通過控制押韻和限制節(jié)奏來編織一行詩,這對于計算機來說完全不是什么事兒 3.5.5. “控制論詩人”(Cybernetic Poet)算法代碼背后的基本原理 4. 控制論詩人 4.1. Cybernetic Poet 4.2. 是未來主義作家雷·庫茲韋爾(Ray Kurzweil)的最新作品,他經(jīng)常撰寫關(guān)于即將到來的“人與機器相互融合”的文章 4.3. 訓(xùn)練他的“控制論詩人”學(xué)習(xí)像雪萊和艾略特這樣有成就的詩人的作品 4.4. “控制論詩人”能夠在大多數(shù)情況下騙過人類評委 4.4.1. 在一定程度上是因為,精辟的作品是現(xiàn)代詩歌的一部分,現(xiàn)代詩歌留下大量解讀的工作給讀者去做 4.4.2. 算法生成高深莫測的詩作足以以假亂真 4.5. “控制論詩人”可能在創(chuàng)作足以以假亂真的詩歌方面做得很好,但要創(chuàng)造一個“控制論小說家”所要面對的挑戰(zhàn)則難得多 5. 全國小說生成月 5.1. National Novel Writing Month 5.1.1. 全國小說寫作月 5.2. 萊斯庫爾想將算法作為寫作現(xiàn)代文的一個工具來使用,所以他組織了“全國小說生成月”(National Novel Generation Month,NaNoGenMo)活動,并成功吸引了眾多的程序員參加 5.3. 軟件開發(fā)員兼藝術(shù)家達萊厄斯·卡澤米(Darius Kazemi)覺得,與其每天絞盡腦汁才只能寫出1667個單詞,還不如花一個月的時間寫代碼,然后瞬間生成一部5萬字的小說 5.3.1. 2013年,他在Twitter上發(fā)布了他的想法,同時發(fā)起了每年一次的“年度編程文學(xué)馬拉松”(Annual Literary Hackathon)大賽 5.4. 參與NaNoGenMo活動的程序員大多數(shù)采用“擾動”現(xiàn)有文學(xué)作品的思路生成小說 5.4.1. 借助“Twitter過濾器”改寫《傲慢與偏見》 5.4.2. 利用“科幻算法”重新演繹小說《白鯨》 5.4.3. 通過代碼重新詮釋古斯塔夫斯·辛德曼·米勒(Gustavus Hindman Miller)的經(jīng)典作品《一萬個夢》 5.5. 一部構(gòu)思非常大膽的作品《探索者》(seeker)引起了人們的廣泛關(guān)注 5.5.1. 生成此小說的算法通過閱讀wikiHow上的文章,努力理解人類的大腦如何“運轉(zhuǎn)” 5.5.1.1. wikiHow 5.5.1.1.1. 該網(wǎng)站旨在建立全世界最大的最高質(zhì)量的指導(dǎo)手冊數(shù)據(jù)庫 5.5.1.1.2. 無論你想做什么,該網(wǎng)站擁有的多語種指導(dǎo)手冊都可以為你提供免費的逐步指導(dǎo) 5.5.2. 該算法的元代碼被劃分為操作、瀏覽、聯(lián)想、再現(xiàn)四個環(huán)節(jié) 5.5.2.1. 在操作環(huán)節(jié),程序閱讀某文章并將其中涉及人類活動的概念剔除 5.5.2.2. 其以上一環(huán)節(jié)得到的“種子概念”為基礎(chǔ),搜索純文本的“記憶”,然后以瀏覽模式中無法識別的概念(已刪除的記錄),圍繞“種子概念”進行“不可見”的聯(lián)想 5.5.3. 《探索者》幾乎可以說是成功的:你會感覺自己開始進入機器的“大腦”,因為它試圖去理解人類 5.5.3.1. 理解一種全新的意識形態(tài),并發(fā)現(xiàn)其與人類自我意識的不同之處 5.5.4. 《探索者》在探索wikiHow數(shù)據(jù)庫的過程中,也記錄了算法的發(fā)現(xiàn)之旅:從無知到某種表象程度上的理解 5.5.4.1. 它瀏覽的第一個“如何……”的頁面是“如何讓女孩提出與你約會”。其從中獲得一個種子概念——“傷害”,涉及怎樣做才能不傷害到一個女孩的感情 5.5.4.2. 之后算法圍繞著“傷害”展開聯(lián)想,即興生成了超現(xiàn)實主義的文字段落 5.6. 如果算法不能生成偉大的文學(xué)作品,或許它們可以生成肯·福萊特所寫的商業(yè)圖書,甚至是算法版的《五十度灰》(Fifty Shades of Grey) 5.6.1. 對于算法的商業(yè)用途而言,可以戰(zhàn)勝《拯救灰姑娘》(Mills&Boon Romance)或丹·布朗(Dan Brown)的冒險小說就已經(jīng)足夠好了 5.7. 暢銷書的讀者更喜歡:短小精悍的句子,強而有力的具有推動性的語言,以對話形式進行的敘事方式以及淺顯易懂的用詞 5.7.1. 組稿編輯朱迪·阿徹(Jodie Archer)和數(shù)據(jù)分析師馬修·喬克斯(Matthew Jockers)合作編寫的算法,可以判斷出一本書能否成為暢銷書