當前位置:
首頁 > 科技 > AI改寫《權游》結局,和編劇比誰更爛?

AI改寫《權游》結局,和編劇比誰更爛?

作者 | Chintan Trivedi

譯者 | 劉暢

責編 | Jane

出品 | AI科技大本營(id:rgznai100)

前言

《權力的遊戲》結局爛尾?

《權力的遊戲》第八季崩盤,在一片「爛尾結局」的評價聲中落下了帷幕。採訪身邊很多劇迷的觀後感,一位同事給的評價只有一句話:「書是一本好書」。

近日,國外,Medium 平台一位作者也分享了他的感受:

「權力的遊戲」第8季的故事情節,因為其匆忙而不盡如人意的結局,讓數百萬名粉絲(包括作者)十分失望。大部分人都在呼籲重寫該劇的最後一季,而其他人為了讓自己舒心,則想出他們自己版本的結局。大家都在等待GRRM完成他的書,希望他能塑造一個更令人難以置信的角色,但這可能需要很多年。

作為一名技術人,任何問題都會忍不住想一下:技術能不能搞一下?

如果讓 AI 學習 GRRM 的寫作風格,然後寫一個結局如何?

AI 能寫得更好嗎?

隨後,作者便用年初 OpenAI 提出的 GPT-2 文本生成模型實踐操作了一波。模型學習的是《冰與火之歌》(A Song of Ice and Fire)原著,輸出三大反派人物(the Night King, Cersei Lannister and Daenerys Targaryen)的結局。

接下來的內容,我們會先簡單一下 GPT-2,詳細的介紹可以參考我們以前給大家推送的文章;然後介紹一下作者訓練模型的方法;最後根據模型生成結果進行總結與反思。文章沒有涉及非常詳細的技術細節,而是從方法上幫助大家整體把握,後續無論是增加數據集,還是結合自己需求做調整,思路都可以借鑒,對技術細節沒有進行詳細說明。

GPT-2(生成預訓練的遷移模型)

在現有的 AI 語言模型中,GPT-2 是一種達到了 SOTA 效果的文本生成模型。他能生成類似人類語言的連貫性語句,並且可以長期關注某個主題。 相比於其他語言模型,GPT-2 兩個較大改進在於:

大量數據:研究人員抓取了 800 萬個網頁,製作了一個 40GB 的文本語料庫,用於進行無監督的訓練。它涵蓋了各種各樣的主題,這就是為什麼預先訓練的模型非常適合遷移到特定領域,比如這次我們用到的原著 GoT。

大量計算:Transformer 模型結構中使用了 15 億個參數。不過,出於安全考慮,他們發布了僅包含 3.45 億個參數的較小版本。這次的模型也是使用這個版本。

遷移模型

GPT-2 使用的是 Transformer 網路架構,而不是序列建模傳統模型 RNN、LSTM 等網路。不同之處在於 Transformer 使用基於注意力機制的解碼/編碼器,而不是擁有"memory"門和時間步長的循環單元。

編碼器利用位元組對和位置嵌入處理輸入,其中位置嵌入描述的是輸入句子中「嵌入的單詞」和「在何處嵌入」。相同的編碼器將位元組和位置嵌入轉換為矢量編碼,然後將該矢量編碼輸入解碼器,解碼器的任務是將編碼轉換為目標文本序列。 該輸出和來自前一步驟的編碼被饋送到下一個編碼- 解碼步驟,並且重複多次,以產生更好的文本序列。

下面的鏈接文章詳細的解釋了這個模型架構:

https://blog.floydhub.com/the-transformer-in-pytorch/

而 GPT-2 就可以經過訓練,預測給定輸入句子中的下一個單詞。如果模型可以相當準確地預測下一個單詞,那麼模型可能具備理解輸入單詞上下文含義的能力。如果不理解文本,語言模型只能預測符合語法規則的單詞,而生成的文本可能不會符合語義規則。不同於機器翻譯任務中的 seq2seq 模型,GPT-2 僅使用預訓練模型 Transformer 中的解碼器來生成後續文本,在文本生成期間並不需要編碼器。

訓練模型

數據:作者從《冰與火之歌》的 5 本書中摘錄,組合文本數據用於訓練。

模型:預訓練 GPT-2 模型包含 345M 參數。

時間:該模型在 Google Colab 的 K80 GPU 上訓練了大約12個小時。

在訓練過程中,作者意外發現,預訓練模型很擅長撰寫《權利的遊戲》里的角色特徵,可能與在初始訓練期已經接觸過這些內容有關。想讓模型撰寫的內容更貼近 GRRM 的風格,需要繼續利用 GoT 數據集。

結果與分析

先在原劇結局中,找出一些令大家感到失望的情節,然後再嘗試用訓練好的 GPT-2 模型生成結果,詳細結果大家可以看下面的視頻介紹,後面會對一些文本輸出做部分介紹。

以下是視頻格式的輸出,後面是相同的文本輸出。

https://youtu.be/_vSov4sldsQ

下面分析一下選取的 3 個場景

失望場景 1:重寫Night King 虎頭蛇尾的結局

根據 GPT-2,Hodor還活著並趕來救營 Bran,這真是一個轉折點! 或者可能是 Hodor的靈魂進入了 Bran 的身體。不過之後,也不知道這個模型想說些什麼。。。

Lightbringer 是殺死 Night King的劍。如果 Night King 的冰劍原來是 Lightbringer 並且最終會殺死他,那會有多酷?!

就算編劇忘了,不過 GPT-2 還記得關於 Azor Ahai 的預言,還圍繞 Lightbringer 做了不少展開。

這裡有個地方很有意思,不是因為故事寫得精彩,而是因為模型居然知道 the dragon 實際上是「Other」(也就是書中的 White Walker)。將所有這些細節正確地放在一個段落中,真的太奇妙了。神奇的是,這個模型已經完全了解有關人物的這些細節!

失望場景 2:Cersei Lannister 在沒有任何計劃或適當的戰鬥的情況下倒下

嗯,好吧,這個生成的劇本完全是垃圾。 但作者還是保留了它,然後再試了一次!

這次稍微好一些! 雖然模型輸出的某些細節錯了,特別是關於 Mad King,但」Jaime試圖在那一刻給予 Cersei 力量的想法「還挺不錯的。 也許在這個時候使用某種野路子會給她的故事情節帶來一些正義感。 兩個瘋狂的女王,激烈戰鬥,毀壞城市的剩餘部分。 這也不失為一個更好的結局,表明為什麼 Iron Throne 的戰爭是不好的。

失望場景 3:Daenerys 急速轉彎的結局

總是吃喝的好時光?我聽說 King"s Landing 有一家很好的咖啡店,Dany 可以嘗試(如果它還沒有被燒掉)

這段真是挺垃圾的,讓我們再試一次。

這段也沒有多大意義。兩次下來,似乎模型堅持 Dany 想要將 King"s Landing 的人們從暴君手中解放出來。

總結

雖然嘗試為這些故事情節生成更多的樣本,但沒有哪個能在故事背景下講得通。儘管生成的故事文本不夠好,不過也能看出來模型清晰地描述了角色特徵和技能。,並且在模型輸出結果中也體現了彼此之間的關聯。此外,作者認為 OpenAI 提出的 GPT-2 研究工作,也體現了近來 NLP 領域取得的一些進展。

同時,我們和作者一樣,都很好奇在最大的 GPT-2 模型上訓練會取得怎樣的結果?畢竟模型訓練數據也不是十分充分,感興趣的小夥伴們可以把原著所有的文本數據加入到最大的 GPT-2 模型訓練中,看看是有更多驚喜還是驚嚇?

而無論是編劇的結局,還是 AI 改寫的結局,其實大家心目中的 Perfect Ending 還是要等 GRRM 趕快寫完他的書。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 AI科技大本營 的精彩文章:

英特爾蠶食AMD和NVIDIA?
老碼農冒死揭開真相:「別吹了,Python無用!」

TAG:AI科技大本營 |