一般來說,高考作文可以透過批量化、模式化的訓練達到一個令人滿意的分數。實際上就是把學生當做一個寫作機器進行訓練,為學生輸入大量範文,提供寫作模式,然後進行長時間的學習。等等,這不是和人工智慧的訓練過程相同嗎? 那麼,如果給一個人工智慧系統同樣的資料,是否可以教會它寫作文呢? 答案是,當然可以。B 站 UP 主 - 圖靈的貓,秉承了心動不如行動的理念,一個人利用三個月,500 個小時,10000 行程式碼,200000000 條資料,1700000000 個引數,開發了一個會寫作文的人工智慧 - EssayKiller。EssayKiller 的基本組成 一個 AI 不管外形和功能如何,其核心都是人工神經網路。EssayKiller 也是由四個不同的神經網路所組成。第一部分是類似於人類的視覺處理系統的識別網路。它透過外接攝像頭的實時 OCR 以及卷積神經網路及漢字的識別與提取並將結果輸入到下一層的網路中。第二部分是語言網路,旨在模範人類大腦的語言功能。在這裡 UP 主將它分為兩個子網路,相較於人類的顳葉區和額葉區等複雜構成,它更加簡明扼要。一個子網路為讀題網路,也就是對高考題目進行準確的閱讀和主題摘要提取。
另一個子網路為寫作網路,也就是根據主題摘要進行文章的寫作。後者是整個 AI 的核心,基於這個神經網路,EssayKiller 才能獲得理解並輸出漢字的能力。第三部分是判分網路。正常學生寫完一篇八百字的高考作文通常需要 40 分鐘,而 EssayKiller 只需要 0.1 分鐘。顯然,在同樣的時間裡,EssayKiller 可以利用其快速寫作的能力,在它的大腦中同時生成多篇作文,然後選出最好的一篇來作答。UP 主說,這個想法借鑑了 AlphaGo 的設計理念。他利用 API 呼叫單獨的神經網路,對 100 篇作文進行通順度打分,取分數最高的一篇作文輸出。理論上,只要瞭解於出題人的偏好,並且讓 AI 完美擬合閱卷人喜歡的作文,就可以輕而易舉的拿到高分。
這和訓練學生寫高考作文的過程是如出一轍,這也是近年來很多滿分作文的套路,比如《生活在樹上》。
EssayKiller的學習過程
透過 UP 主說起來看似很簡單,其實非大神一操作就跪拜的四大網路搭建過程後,EssayKiller 就算是出生了。此時的它還是一張白紙,需要投餵大量資料養成。俗話說,讀萬卷書 AI 才能寫出好作文。接下來就是 EssayKiller 不是很漫長的學習過程了。UP 給它投餵了大量的優質散文、議論文,比如近現代散文集、歷年高考作文等,然後讓它自我訓練並進行寫作能力的提升。出於 UP 主的個人喜好,還為它增加了林語堂、木心、魯迅等散文作家,也加入了一些現代作家,比如王小波、史鐵生、王碩等。最後透過整理來的 360 萬張影像資料、2 億條中文預訓練語料以及上千篇微調文章,EssayKiller 帶著 UP 主滿滿的愛開始了它的“漫漫”求學之路。事實證明,沒有人能夠隨隨便便成功。此時,出現了一個 “愉快” 的小插曲。OOM,全稱 “Out of Memory”,翻譯成中文就是“記憶體用完了。”