吳宇晗 朱峙成 王榮杰 劉佳瑋 陳麗芳
摘 要:為了使游戲玩家從擁有固定文本的文字游戲中體驗(yàn)新鮮感,提出采用深度學(xué)習(xí)Seq2Seq模型,根據(jù)已有文本產(chǎn)生新的符合劇情的文本,增加游戲的趣味性和交互性。本文構(gòu)建深度學(xué)習(xí)Seq2Seq模型,并編寫Python代碼實(shí)現(xiàn)了文本生成模型的仿真,對(duì)生成詞與原文本之間的評(píng)價(jià)標(biāo)準(zhǔn)進(jìn)行了對(duì)比分析,以自創(chuàng)的游戲驗(yàn)證了該方法的有效性。該論文的研究成果,是對(duì)自適應(yīng)文本生成系統(tǒng)研究的有益嘗試和補(bǔ)充,具有一定的應(yīng)用價(jià)值。
關(guān)鍵詞: Seq2Seq;LSTM 神經(jīng)網(wǎng)絡(luò);深度學(xué)習(xí);文本生成
【Abstract】 In order to make game players experience novelty from text games with fixed-text, a deep learning Seq2Seq model is put forward, which can generate new scenario text based on existing text to increase the interesting and interactive nature of the game. The paper constructs a deep learning Seq2Seq model and writes Python code to simulate the text generation model. Besides, the paper also compares and analyzes the evaluation criteria between the generated words and the original text. The effectiveness of the method is verified by the self-created game. The research result is a beneficial trial and supplement to the research of adaptive text generation system , which has certain application value.
【Key words】 ?Seq2Seq; LSTM neural network; deep learning; text generation
0 引 言
互聯(lián)網(wǎng)的飛速發(fā)展使人類的學(xué)習(xí)、工作、生活更加豐富多彩,人們在忙碌的學(xué)習(xí)工作之余,就有相當(dāng)一部分年輕人會(huì)將玩游戲作為娛樂休閑方式之一。在數(shù)以千計(jì)的手游中,大多存在著劇情重復(fù)、模式既成、套路固定等缺乏新意等問題,玩家逐漸摸索出一些固有套路后,就會(huì)對(duì)相似的游戲失去興趣,雖然一些游戲進(jìn)行了創(chuàng)新嘗試,在游戲內(nèi)部添加隨機(jī)元素,但實(shí)際上仍然是程序事先設(shè)計(jì)好的“隨機(jī)性”,因而也削弱了游戲的新奇挑戰(zhàn)性。因此,如何根據(jù)游戲劇情、用戶偏好、實(shí)時(shí)行為等多重屬性,綜合推出個(gè)性化服務(wù),實(shí)現(xiàn)由面到點(diǎn)的智能精準(zhǔn)推薦,實(shí)時(shí)生成新的劇情,使用戶能真正體驗(yàn)到“不可預(yù)期”帶來的游玩樂趣,是目前游戲設(shè)計(jì)中值得深入探討的焦點(diǎn)問題。
鑒于此,本文提出基于深度學(xué)習(xí)的自適應(yīng)劇情生成系統(tǒng):以大數(shù)據(jù)、云計(jì)算、深度學(xué)習(xí)等技術(shù)作為理論支撐,運(yùn)用網(wǎng)絡(luò)爬蟲獲取原生故事,利用文本處理技術(shù)來處理爬取數(shù)據(jù),利用深度學(xué)習(xí)自生成全新的故事,以游戲?yàn)榇翱谡宫F(xiàn)生成的故事。當(dāng)用戶開始游戲時(shí),依據(jù)用戶實(shí)時(shí)的行為建立用戶畫像,利用智能推薦技術(shù)根據(jù)所建立的用戶畫像產(chǎn)生劇情,用戶每次對(duì)劇情的選擇會(huì)影響用戶畫像的改變,從而變換出不同的劇情。整體構(gòu)思如圖1所示。
研究中,故事生成器如何產(chǎn)生新文本是整個(gè)技術(shù)的關(guān)鍵。本文擬利用深度學(xué)習(xí)Seq2Seq模型,根據(jù)已有文本數(shù)據(jù)進(jìn)行新文本生成訓(xùn)練,從而產(chǎn)生新的劇情,實(shí)現(xiàn)游戲的自適應(yīng)劇情生成系統(tǒng)設(shè)計(jì),從游戲開發(fā)的角度,拓展了設(shè)計(jì)思維、提供了建模手段,是對(duì)游戲設(shè)計(jì)的一種有益嘗試和補(bǔ)充。
1 理論基礎(chǔ)
1.1 智能推薦算法
基于協(xié)同過濾的推薦算法是目前國內(nèi)外學(xué)者研究最多、在各個(gè)領(lǐng)域使用最廣泛的推薦算法。其最大的優(yōu)勢是對(duì)于所要進(jìn)行推薦的對(duì)象沒有特殊的種類要求,能夠使用與文本同樣的方式處理音樂、電影等各類以非結(jié)構(gòu)化形式表示的對(duì)象[1]。Yoda綜合了基于內(nèi)容的過濾和協(xié)同過濾推薦兩種技術(shù)的優(yōu)點(diǎn)[2]。根據(jù)個(gè)性的游戲用戶畫像來準(zhǔn)確地智能推薦相應(yīng)的游戲劇情,給予玩家獨(dú)特的游戲感受。
1.2 深度學(xué)習(xí)
近年來,深度學(xué)習(xí)中的遞歸自編碼方法已成功應(yīng)用于情感分析問題。文獻(xiàn)[3]提出采用遞歸自編碼方法來解決較為復(fù)雜的情感分析問題。文獻(xiàn)[4]提出一種新穎的機(jī)器學(xué)習(xí)框架,是基于遞歸自編碼方法對(duì)句子級(jí)別的情感分布的預(yù)測,從數(shù)據(jù)庫中獲取故事文本,并利用深度學(xué)習(xí)來判別故事的類,自動(dòng)訓(xùn)練生成新穎的故事情節(jié)。對(duì)此可做研究論述如下。
1.2.1 長短時(shí)間記憶網(wǎng)絡(luò)
長短時(shí)間記憶網(wǎng)絡(luò)(LSTM)是一種基于遞歸神經(jīng)網(wǎng)絡(luò)模型(RNN)的改進(jìn),其原理如圖2所示。由Hochreiter和Schmidhube于1997年提出[5]。LSTM由一組特殊的記憶模塊單元替換遞歸神經(jīng)網(wǎng)絡(luò)的隱藏層神經(jīng)元,這些模塊可以記憶隱藏層的任意時(shí)間狀態(tài),從而解決RNN梯度消失等問題。當(dāng)使用長短時(shí)間記憶模型進(jìn)行相應(yīng)數(shù)據(jù)反向傳遞時(shí),序列數(shù)據(jù)在循環(huán)神經(jīng)網(wǎng)絡(luò)中會(huì)經(jīng)過很長一段時(shí)間的學(xué)習(xí),從而保證信息進(jìn)行遠(yuǎn)距離傳遞,將誤差保持在更為恒定的水平。
通常,長短時(shí)間記憶單元模塊包括輸入門、輸出門、遺忘門和記憶單元。根據(jù)門用進(jìn)行保存和調(diào)節(jié)存儲(chǔ)單元和環(huán)境之間的相互作用,這樣保證存儲(chǔ)單元的狀態(tài)從一個(gè)單元到另一個(gè)單元保持不變。LSTM網(wǎng)絡(luò)通過遞歸方程更新網(wǎng)絡(luò)單元,激活從輸入x到輸出y的映射[6]。
1.3 用戶畫像
Alan Cooper在早期就對(duì)用戶個(gè)體畫像進(jìn)行了詳細(xì)的分析,并在研究中強(qiáng)調(diào)人物角色這個(gè)概念,該概念主要是指一個(gè)創(chuàng)造出的虛擬用戶[9]。對(duì)用戶分析、畫像,主要是為顧客打上標(biāo)簽,通過標(biāo)簽,讓計(jì)算機(jī)認(rèn)識(shí)了解一個(gè)人,方便信息處理。標(biāo)簽為研究者提供了一種把難以處理的信息進(jìn)行量化的方法,使計(jì)算機(jī)能夠?qū)Ψ爆嵉男畔⑦M(jìn)行程序化處理,根據(jù)玩家輸入的信息,對(duì)玩家進(jìn)行個(gè)性化分析,形成虛擬的用戶畫像,方便利用智能推薦獲取獨(dú)特的游戲劇情。
1.4 云服務(wù)
云服務(wù)也可以稱作為云模式服務(wù),是以數(shù)據(jù)的存儲(chǔ)和管理為主要核心任務(wù)的云計(jì)算系統(tǒng)[10]。主要用于存儲(chǔ)原生故事以及數(shù)據(jù)交互,提供深度學(xué)習(xí)文本的服務(wù),是游戲的一個(gè)核心部位。
2 文本預(yù)處理
文本彼此之間往往難以進(jìn)行有效的計(jì)算,Word2vec提供一種比較好的解決思路。Word2vec實(shí)際上構(gòu)建了一種映射關(guān)系,利用淺層的神經(jīng)網(wǎng)絡(luò)對(duì)文本進(jìn)行訓(xùn)練以獲得文本向量,本文采用此方式實(shí)現(xiàn)文本預(yù)處理。
3 模型構(gòu)建
首先,輸入所需要的文本T={(tk)}mk=1;設(shè)定最大訓(xùn)練次數(shù)maxiter、學(xué)習(xí)率η、新文本最大長度n、訓(xùn)練步長step等參數(shù)。然后,按照算法步驟進(jìn)行訓(xùn)練,初始化網(wǎng)絡(luò)權(quán)重、循環(huán)迭代訓(xùn)練參數(shù)、計(jì)算網(wǎng)絡(luò)梯度、更新網(wǎng)絡(luò)權(quán)重,直到達(dá)到最大的訓(xùn)練次數(shù)為止;最后,循環(huán)生成文本,返回S={(Sk)}nk=1,即訓(xùn)練結(jié)果。Seq2Seq算法的設(shè)計(jì)偽代碼詳見如下。
4.3 實(shí)驗(yàn)結(jié)果
自編小說所給的開始文本:“在新世紀(jì)的某處,一個(gè)村子里的能力覺醒儀式正在舉行著,能力覺醒儀式在這里舉行的時(shí)間或早或晚,這得看相關(guān)者的能力了,不是所有在新世紀(jì)的人都會(huì)有超能力”。本文模型產(chǎn)生新的文本:“墨澤說了,不過他還是自己人,好像沒有傷到一個(gè)人,我也沒有人家大,沒有變解能力的。“嗯??你還是大步出去了?!薄斑馈阏f的話不是,我們也不知道還是那個(gè)意外的事情,你怎么回事?”“你,你怎么還沒有問題?我怎么會(huì)發(fā)現(xiàn)呢。”墨澤說道:“我還不是那么大”。
4.4 結(jié)果分析
經(jīng)過對(duì)7萬余字文本訓(xùn)練20 000次,循環(huán)輸出生成新文本長度與原本的相似度,由圖4可知,相似度是隨著輸出文本長度的增加而增加的,對(duì)于此文本來說,新文本長度為40~300字之間最為合適,在合適的評(píng)價(jià)標(biāo)準(zhǔn)區(qū)間,由此生成的新文本有一部分并不是很通順,但已經(jīng)達(dá)到了符合劇情的新文本產(chǎn)生方式。
建模仿真表明,采用深度學(xué)習(xí)的Seq2Seq模型,根據(jù)已有文本劇情產(chǎn)生新文本是可行的,給定的原始文本長度越長,效果越好,但需要找到一個(gè)合適的臨界值,讓文本產(chǎn)生更有趣的變化。目前,產(chǎn)生文本符合評(píng)價(jià)標(biāo)準(zhǔn)最低的是40個(gè)詞,在今后研究中,將在詞量的縮減上展開后續(xù)的實(shí)驗(yàn)仿真,使本模型能夠適應(yīng)各種不同游戲劇情生成,進(jìn)一步提升性能。
5 結(jié)束語
本文提出利用深度學(xué)習(xí)Seq2Seq模型,根據(jù)已有文本數(shù)據(jù)進(jìn)行新文本生成訓(xùn)練,從而產(chǎn)生新的劇情,實(shí)現(xiàn)游戲的自適應(yīng)劇情生成系統(tǒng)設(shè)計(jì),從游戲開發(fā)的角度,拓展了設(shè)計(jì)思維、提供了建模手段,是對(duì)游戲設(shè)計(jì)的一種有益嘗試和補(bǔ)充。
參考文獻(xiàn)
[1]石靜.基于混合模式的個(gè)性化推薦系統(tǒng)的應(yīng)用研究[D].武漢:武漢理工大學(xué),2010.
[2]SHAHABI C, BANAEI-KASHANI F, CHEN YS, et al. Yoda: An accurate and scalable Web-based recommendation system[M]// BATINI C, GIUNCHIGLIA F, GIORGINI P, et al. Cooperative Information Systems. CoopIS 2001. Lecture Notes in Computer Science. Berlin/Heidelberg:Springer,2001,2172:418-432.
[3]FU Xianghua, LIU Wangwang, XU Yingying, et al. Combine HowNet lexicon to train phrase recursive autoencoder for sentence-level sentiment analysis[J]. Neurocomputing, 2017,241:18-27.
[4]SOCHER R, PENNINGTON J, ERIC H H, et al. Semi-supervised recursive autoencoders for predicting sentiment distributions [C]//Proceedings of the 2011 Conference on Empirical Methods in Natural Language Processing, EMNLP. Edinburgh, UK:ACL, 2011:151-161.
[5]HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural Computation,1997,9(8):1735-1780.
[6]李昭昱,艾芊,張宇帆,等.基于attention機(jī)制的LSTM神經(jīng)網(wǎng)絡(luò)超短期負(fù)荷預(yù)測方法[J].供用電,2019,36(1):17-22.
[7]王鈞,張鵬,袁帥.基于股票預(yù)測的Seq2Seq RNN和LSTM模型比較[J].時(shí)代金融,2018(12):381-382,392.
[8]方旭,過弋,王祺,等.核心詞修正的Seq2Seq短文摘要[J].計(jì)算機(jī)工程與設(shè)計(jì),2018,39(12):3610-3615.
[9]KOBSA A. Genetic user modeling systems[J] .User Modeling and User Adapted Interactive, 2001 (11):49-63
[10]郭金婷. 云計(jì)算環(huán)境下圖書館云服務(wù)模式構(gòu)建[D]. 大連:遼寧師范大學(xué),2012
[11]李巖.基于深度學(xué)習(xí)的短文本分析與計(jì)算方法研究[D].北京:北京科技大學(xué),2016.