預測《權力遊戲》角色生死,AI 演算法魔力何在?

作者 | 發布日期 2019 年 04 月 17 日 7:45 | 分類 AI 人工智慧 , 科技趣聞 line share follow us in feedly line share
預測《權力遊戲》角色生死,AI 演算法魔力何在?


早在 2016 年,《權力遊戲》第六季播出前,慕尼黑工業大學(TUM)學生就開發了 AI 應用程式,預測劇中人物的存活機率。

近兩年後,《權力遊戲》第八季也是最後一季,終於 15 日回歸了。再過 6 個多星期,我們就會知道這部劇 8 年的目標達成與否:多少角色領便當。

和這部劇一起回歸的還有當年的學生團隊,他們使用自己設計的 AI 演算法,在網路搜尋相關資料,並計算劇中每個角色的生存機率。

如果你認為機器學習的預測只是胡言亂語,可別忘了,這群學生之前做的演算法就成功預測了雪諾(Jon Snow)復活。

(Source:PHYS/GoT-Team 2019 / TUM)

演算法預測,龍母(Daenerys Targaryen)最有可能在這個痛苦的世界活下來,存活機率為 99%。她的國王之手小惡魔(Tyrion Lannister)存活率也高達 97%。

Jon Snow 是稍微複雜的命題,但演算法預測,他在第八季倖存的機會為 88%,可說非常強勁。

從統計資料看,Bronn 幾乎肯定會死,預測死亡率為 93%;Gregor Clegane 死亡率也高達 80%;珊莎(Sansa Stark)出生在臨冬城,且已結婚,死亡率為 73%;妹妹艾麗婭(Arya Stark,同時也是十足的壞蛋) 存活機率略高,預估死亡率為 47%。

當然,這只是演算法分析的結果,說到底,只不過是又一次證明機器學習能力的偉大實驗。

演算法「魔力」何在?

機器學習能從過去的海量案例學習,並自動編譯統計資料,然後預測未來。

《權力遊戲》只有少數角色死於老去,大多數角色下台都以暴力收場。這不僅讓人深思,劇中的死亡是隨機發生,還是只發生在表現出類似特徵的人身上?這些特徵可能是年齡、血統和性別,也可能是角色做出錯誤的重大決定。

演算法嘗試分析所有死亡角色的共同特徵,然後利用共同特徵來預測存活角色的死亡百分比(PLOD)。演算法分析的資料擷取自小說《冰與火之歌》和影集《權力遊戲》維基百科內容,這可能是分析系列 5 本書和 8 季電視劇約 2 千個角色的最佳資源。

演算法不僅從資料庫擷取每個角色的死亡或存活資訊,還擷取了說明角色的其他特徵。這樣,資料集就產生了,可用同一特徴來說明不同角色無論死亡或存活。下一步就是,找到最能區分死角和活角的特徵集。

貝葉斯生存分析

此機器學習模型使用與貝葉斯推理相關技術,檢驗不同特徵與角色壽命的關係,類似檢驗治療和併發症對癌症患者的影響,或檢驗地震事件之間的相關性。

團隊假設,一個角色的一生,每年都有一定機率死亡。這基本死亡率對所有角色都一樣,但特徵不同會讓死亡機率增加。例如,男性可能會讓死亡風險增加 60%。

透過計算危險性,機器可為任何角色建立生存函數,以此判斷這段時間,該角色死亡的可能性有多大。模型就房子、情人、婚姻、主/次要角色、性別等特徵進行分析。

神經網路

除了貝葉斯生存分析,另一種方法是訓練神經網路預測某角色某年的死亡率。這種方法也會建立生存函數,但神經網路的型態會比貝葉斯模型更複雜。神經網路會包含更多「意外」死亡,而貝葉斯模型則認為這些死亡是隨機的異常值。

這個模型使用 Python 的 Keras 框架。基本上,最簡單的神經網路架構之一就是使用前饋技術。這意味著輸入一任意實值維數字量,然後透過所謂「隱藏層」處理,最終匯出也是一個數字向量。

此外,神經網路線由許多參數組成,這些參數在訓練過程會調整。訓練是自動改變參數的步驟,使網路匯出盡可能接近給予的輸入─匯出關係。

如何將與角色相關的複雜資訊轉換為向量,是目前要考慮的重中之重。有些資訊是純量,例如角色介紹在維基百科的排名前後。其他資訊,例如角色出現的情節,是一組有預定義的值。

因此,我們可建立維度與集數相同的向量,如果角色出現在相應集數,則將維度設為 1.0,否則設定為 0.0。這樣不同種類的資訊可轉為向量,而這些向量會相加。最後,文字資料提供 1,561 個輸入維度,電視劇資料提供 411 個輸入維度。

一般來說,變老仍是影響角色死亡的最重要因素,畢竟年齡越大,經歷的危險就越多。這就是神經網路也要採納分析角色、年齡的原因。

因為神經網路匯出只是決定「生存百分比」的一個維度,所以為每個角色建立 90 個不同輸入向量有可能達成(每一年對應一個輸入向量)。如果角色到設定的年齡仍然存活,神經網路將預測輸入向量為 1.0,否則為 0.0。

此外,這個神經系統還允許預測 PLOD 隨時間變化:修改角色的輸入年齡很容易,且修改會與 PLOD 的變化直接相關。系統預測的角色死亡率僅針對《權力遊戲》第八季。

為了總結這點,來看看關於預測和神經網路的統計資料。

首先,《冰與火之歌》共有 484 個可用角色,其中 188 個用於訓練(即死亡),其餘 296 個存活角色用於預測。最後,小說資料的訓練準確率達 88.75%,最終驗證準確率為 89.92%。

同樣,《權力遊戲》擷取 146 個可用角色,82 個用於訓練,64 個用於預測。影劇資料最終訓練準確率為 79.64%,最終驗證準確率為 85.69%。

(本文由 雷鋒網 授權轉載;首圖來源:HBO