趙莉珺
(西藏民族大學(xué)信息工程學(xué)院,咸陽 712082)
小說是文學(xué)作品中的一種,是人類文化中重要的組成部分,具有豐富的文化內(nèi)涵和情感表達(dá)。然而,小說的創(chuàng)作過程需要作者投入大量時(shí)間和精力,對(duì)于需求量極大的文學(xué)市場(chǎng)來說,創(chuàng)作大量高質(zhì)量小說是一項(xiàng)困難的任務(wù)。因此,研究如何利用機(jī)器生成具有特色的小說具有重要的現(xiàn)實(shí)意義。
隨著自然語言處理技術(shù)的飛速發(fā)展,GPT3.5 模型已經(jīng)在各種自然語言處理任務(wù)中取得了顯著進(jìn)展。其大規(guī)模的訓(xùn)練使得GPT3.5 能夠在給定提示的基礎(chǔ)上生成有質(zhì)量保障的文本[1],但其在生成長篇小說內(nèi)容方面的能力較為普通。本文旨在通過微調(diào)GPT3.5 模型,使得模型提高生成小說方面的能力,使得模型成為一種生成連貫、有創(chuàng)意且保持情節(jié)一致性、人物發(fā)展和主題元素一致性的小說模型。
OpenAI 的GPT3.5 模型是基于Transformer 架構(gòu)的大規(guī)模預(yù)訓(xùn)練模型,其參數(shù)規(guī)模達(dá)到了1750 億。通過在大量多樣化的數(shù)據(jù)集上進(jìn)行訓(xùn)練,GPT3.5 可以理解和生成多種類型的文本,包括文章、對(duì)話和新聞等。因此,GPT3.5 模型具有廣泛的應(yīng)用潛力。
在小說文本生成方面,GPT3.5 的一些顯著特征與能力包括:
(1)高度的語言生成能力:GPT3.5 可以生成流暢且富有表現(xiàn)力的文本,使得生成的小說內(nèi)容具有較高的可讀性。
(2)上下文理解:GPT3.5 能夠理解給定提示中的上下文信息,并根據(jù)這些信息生成相關(guān)的文本內(nèi)容。這一特性有助于在生成小說文本時(shí)保持情節(jié)的連貫性。
(3)風(fēng)格模仿:由于GPT3.5 在大量不同風(fēng)格的文本上進(jìn)行了訓(xùn)練,它可以模仿多種不同的寫作風(fēng)格。這使得在生成小說時(shí)可以針對(duì)特定的文學(xué)風(fēng)格進(jìn)行調(diào)整。
(4)自動(dòng)完成和推理:GPT3.5 具有一定程度的自動(dòng)完成和推理能力,能夠在生成小說文本時(shí),自動(dòng)補(bǔ)全對(duì)話、情節(jié)和人物關(guān)系等方面的內(nèi)容。
然而,盡管GPT3.5 具有這些優(yōu)勢(shì),但在生成長篇小說時(shí),保持情節(jié)一致性、人物發(fā)展和主題元素一致性仍然是一個(gè)挑戰(zhàn)。因此,本文旨在通過微調(diào)GPT3.5 模型,進(jìn)一步優(yōu)化其在小說文本生成方面的表現(xiàn)。
為了提高模型生成小說的質(zhì)量和多樣性,需對(duì)模型進(jìn)行微調(diào)。微調(diào)是指在一個(gè)已訓(xùn)練好的模型基礎(chǔ)上,通過在新的數(shù)據(jù)集上重新訓(xùn)練模型的部分參數(shù)來使模型更好地適應(yīng)新的任務(wù)。在OpenAI的研究中指出,使用小于GPT3.5模型1%大小的GPT 模型,結(jié)合使用少量標(biāo)注數(shù)據(jù)可產(chǎn)生優(yōu)于GPT3.5 模型的符合人類偏好的模型,微調(diào)可以大幅度地提高GPT3.5 模型在特定生成任務(wù)下的性能[2]。在該研究中,微調(diào)過程可以分為以下幾個(gè)步驟。
2.1.1 收集數(shù)據(jù)
首先選擇一些優(yōu)秀的小說作為微調(diào)數(shù)據(jù)集,涵蓋不同的體裁、時(shí)代和風(fēng)格,以確保訓(xùn)練數(shù)據(jù)的多樣性,以便訓(xùn)練模型更好地生成具有特色的小說。
2.1.2 數(shù)據(jù)預(yù)處理
對(duì)于OpenAI 的API 中對(duì)訓(xùn)練數(shù)據(jù)的格式要求,需對(duì)收集到的數(shù)據(jù)進(jìn)行處理,以便構(gòu)建合適的提示,引導(dǎo)模型生成符合預(yù)期的小說文本。以下是數(shù)據(jù)預(yù)處理的關(guān)鍵步驟:
(1)提取關(guān)鍵信息:從收集到的小說樣本中提取關(guān)鍵信息,如人物描述、情節(jié)梗概、對(duì)話示例等。這些信息有助于為API 構(gòu)建提供更具指導(dǎo)性的提示。
(2)構(gòu)建樣式參考:為了引導(dǎo)模型生成特定風(fēng)格的文本,從數(shù)據(jù)集中提取具有代表性的文本片段,作為風(fēng)格參考。這將有利于訓(xùn)練模型在生成過程中遵循相應(yīng)的風(fēng)格特征。
(3)組合提示:將上述提取的關(guān)鍵信息和樣式參考組合成具體的提示,以便與API交互時(shí)使用。提示可以包括一系列描述性短語、問題或命令,使模型能夠更好地理解生成任務(wù)的需求。
經(jīng)過上述預(yù)處理步驟,就能夠構(gòu)建有效的提示,以引導(dǎo)GPT3.5 模型的微調(diào)訓(xùn)練,便于生成高質(zhì)量的小說文本。但在微調(diào)過程中,還需要根據(jù)生成結(jié)果對(duì)提示進(jìn)行調(diào)整和優(yōu)化,以進(jìn)一步提高文本質(zhì)量。
微調(diào)GPT3.5模型需在遵循OpenAI微調(diào)指南的前提下進(jìn)行,例如增加一些全連接層和Dropout層,這些層可以隨機(jī)地刪除一些神經(jīng)元,以減少模型的復(fù)雜度,從而提高模型的泛化能力,防止過擬合。
為確保微調(diào)的可控性,引入微調(diào)控制的方法。通過設(shè)計(jì)提示、調(diào)整參數(shù)、多樣性采樣、迭代生成與反饋等步驟,確保模型在生成小說時(shí)的能力可以提高,減少訓(xùn)練時(shí)模型的能力衰減。
在提高小說文本質(zhì)量方面,針對(duì)人物性格、動(dòng)機(jī)和行為等特征引入監(jiān)督與評(píng)估模型。使得模型在生成小說內(nèi)容時(shí),能夠更好地跟蹤小說內(nèi)容的質(zhì)量及其變化,保證小說文本的高質(zhì)量生成。
為減少微調(diào)的訓(xùn)練量,在訓(xùn)練過程中為加入提示工程。通過對(duì)人類的知識(shí)來對(duì)模型進(jìn)行引導(dǎo)監(jiān)督學(xué)習(xí),使得模型能夠在生成小說時(shí),更好地符合人類的偏好以及接觸到小說之美。
在微調(diào)過程中,要定期檢測(cè)評(píng)估模型,以確保模型可以繼續(xù)通過本微調(diào)模型繼續(xù)提高。當(dāng)模型的小說寫作能力不再提高時(shí),即可停止訓(xùn)練,并采用最終微調(diào)結(jié)束后的模型作為最終模型。
由于OpenAI API 的限制,API 并沒有直接提供調(diào)整目標(biāo)函數(shù)的功能。將采用間接的方法來調(diào)整和優(yōu)化微調(diào)過程中GPT3.5 模型,以生成高質(zhì)量的小說文本。
(1)提示設(shè)計(jì):通過精心設(shè)計(jì)輸入提示,來引導(dǎo)模型生成更符合預(yù)期的文本。提示內(nèi)容可以包括人物描述、情節(jié)梗概、特定風(fēng)格的示例等,這有助于模型更好地理解生成任務(wù)的需求[3]。
(2)調(diào)整微調(diào)參數(shù):微調(diào)過程中通過調(diào)整微調(diào)參數(shù),例如學(xué)習(xí)率、批大小、微調(diào)輪數(shù)等等,來影響模型的收斂速度和準(zhǔn)確性,從而提高生成文本的質(zhì)量。
(3)調(diào)整微調(diào)數(shù)據(jù)集:微調(diào)數(shù)據(jù)集是指在微調(diào)過程中用來訓(xùn)練GPT3.5 模型的數(shù)據(jù)集。如果生成的文本質(zhì)量沒有達(dá)到預(yù)期時(shí),可以考慮更改微調(diào)數(shù)據(jù)集或增加微調(diào)數(shù)據(jù)集的規(guī)模,以便GPT3.5 模型在訓(xùn)練時(shí),可以獲得更多的高質(zhì)量輸入和更多的上下文信息。
(4)使用后處理技術(shù):即使用后處理技術(shù)來優(yōu)化生成的文本。使用語言模型來評(píng)估生成的文本的質(zhì)量,并對(duì)文本進(jìn)行改進(jìn),以提高文本的質(zhì)量。如文本過濾、替換和拼接等,以優(yōu)化生成結(jié)果。該策略可以糾正模型可能產(chǎn)生的錯(cuò)誤,如重復(fù)、不連貫或不一致的內(nèi)容。
(5)使用自定義的生成器,以此來生成小說文本。這些生成器可以基于GAN、VAE等技術(shù),以及其他的神經(jīng)網(wǎng)絡(luò)模型來生成文本,從而提高生成文本的質(zhì)量。
通過應(yīng)用上述的調(diào)整和優(yōu)化方法,在OpenAI API 的基礎(chǔ)上,將實(shí)現(xiàn)對(duì)GPT3.5 模型微調(diào)的有限控制,進(jìn)而保證該模型在生成小說文本方面表現(xiàn)的提升。雖然這些方法可能不如直接調(diào)整目標(biāo)函數(shù)那樣有效,但它們?cè)谝欢ǔ潭壬峡梢源俪赡繕?biāo)的實(shí)現(xiàn)。
為了評(píng)估GPT3.5 模型微調(diào)生成的小說的質(zhì)量和多樣性,采用多種指標(biāo)進(jìn)行評(píng)估。本節(jié)將分別討論生成內(nèi)容的評(píng)估和評(píng)估模型的建立。
生成內(nèi)容的評(píng)估是衡量模型生成小說文本質(zhì)量的重要步驟。評(píng)估的目標(biāo)是確保生成的文本具有良好的文學(xué)品質(zhì)、連貫性、個(gè)性化和風(fēng)格一致性。以下是一些評(píng)估生成內(nèi)容的方法。
(1)一致性:檢查生成的文本在情節(jié)、人物設(shè)定、時(shí)間線等方面的一致性,確保文本在邏輯上沒有明顯的錯(cuò)誤。
(2)語法和拼寫:評(píng)估生成文本的語法和拼寫正確性,確保文本沒有明顯的語法錯(cuò)誤和拼寫錯(cuò)誤。
(3)小說特性:評(píng)估生成文本的小說性,包括情節(jié)設(shè)定、人物描繪和故事發(fā)展等方面。
(4)風(fēng)格一致性:檢查生成文本的風(fēng)格是否與預(yù)期的風(fēng)格一致,包括敘述方式、對(duì)話風(fēng)格和文學(xué)手法等方面。
為了檢測(cè)GPT3.5 在生成小說文本方面性能的提高程度,需建立一個(gè)評(píng)估模型,以達(dá)到可控制微調(diào)的效果,其中評(píng)估模型包括機(jī)器初評(píng)估和人工審查評(píng)估。
3.2.1 機(jī)器評(píng)估
機(jī)器評(píng)估可以快速地對(duì)大量生成的文本進(jìn)行初步評(píng)估。以下是一些機(jī)器評(píng)估方法:
(1)自動(dòng)評(píng)估指標(biāo):BLEU 分?jǐn)?shù)是一種機(jī)器翻譯中常用的評(píng)估指標(biāo),它用于衡量模型生成的文本與參考文本之間的相似度。該指標(biāo)對(duì)生成文本與參考文本之間的相似性進(jìn)行評(píng)估。雖然這些指標(biāo)可能無法完全捕捉文學(xué)品質(zhì),但它可以提供一個(gè)初步的評(píng)估結(jié)果[4]。
(2)語言模型得分:使用預(yù)訓(xùn)練的大語言模型(如GPT-4、ChatGPT、百度文心等)對(duì)生成文本進(jìn)行打分,衡量生成文本的流暢度和自然性。
3.2.2 人工審查評(píng)估
人工評(píng)估是通過邀請(qǐng)人類評(píng)審員對(duì)模型生成的小說進(jìn)行評(píng)估,如小說的故事情節(jié)、人物刻畫、文學(xué)價(jià)值等方面。人工對(duì)機(jī)器模型生成的小說文本評(píng)估可以包括以下幾個(gè)方面:
(1)評(píng)估指標(biāo)的確定:人工評(píng)估需要確定評(píng)估指標(biāo),例如故事情節(jié)、人物刻畫、文學(xué)價(jià)值等方面的質(zhì)量。評(píng)估指標(biāo)應(yīng)該根據(jù)評(píng)估的目的來確定,以確保評(píng)估的有效性和可靠性。
(2)評(píng)估樣本的選擇:評(píng)估樣本應(yīng)該從模型生成的小說中隨機(jī)抽取,以確保評(píng)估結(jié)果的代表性和可靠性。
(3)評(píng)估者的選擇:評(píng)估者應(yīng)該具有相關(guān)領(lǐng)域的知識(shí)和經(jīng)驗(yàn),例如專業(yè)的小說作者和讀者。評(píng)估者還應(yīng)該接受培訓(xùn),以確保他們理解評(píng)估指標(biāo)并能夠進(jìn)行準(zhǔn)確的評(píng)估。
(4)評(píng)估方法的確定:評(píng)估方法可以采用定量和定性相結(jié)合的方式。定量方法可以使用評(píng)分表或問卷來收集評(píng)估數(shù)據(jù),然后進(jìn)行統(tǒng)計(jì)分析。定性方法可以使用討論、深度訪談等方式來獲取評(píng)估者的意見和建議。
(5)評(píng)估結(jié)果的分析:評(píng)估結(jié)果可以通過統(tǒng)計(jì)分析和主觀分析相結(jié)合的方式來進(jìn)行分析。統(tǒng)計(jì)分析可以用來比較不同評(píng)估者之間的評(píng)估結(jié)果和評(píng)估樣本之間的差異。主觀分析可以用來分析評(píng)估者的意見和建議,并提出改進(jìn)模型的建議。
通過評(píng)估和分析,可以更全面地評(píng)估該模型在生成小說文本方面的性能,以提高微調(diào)的效率。通過不斷地評(píng)估和優(yōu)化,持續(xù)提高模型的生成質(zhì)量,使其在小說寫作領(lǐng)域發(fā)揮更大的作用。
提示工程(prompt engineering)是一種在自然語言處理任務(wù)中優(yōu)化模型輸入的策略,以提高模型在特定任務(wù)上的表現(xiàn)。在微調(diào)GPT3.5 模型生成高質(zhì)量小說文本的過程中,提示工程可以發(fā)揮關(guān)鍵作用[5]。以下闡述了提示工程在此應(yīng)用場(chǎng)景中的重要性。
提示工程的核心思想是通過設(shè)計(jì)精細(xì)的、任務(wù)相關(guān)的提示,引導(dǎo)模型生成更符合預(yù)期的輸出。在微調(diào)GPT3.5 模型生成高質(zhì)量小說文本的過程中,提示工程可以幫助模型更好地理解任務(wù)需求,如在指導(dǎo)情節(jié)設(shè)定、控制寫作風(fēng)格、限制故事篇幅等方面,可引導(dǎo)模型生成更豐富、更具吸引力的故事情節(jié)。從而實(shí)現(xiàn)更符合人類偏好的輸出。
以下是提示工程在此過程中的應(yīng)用示例:
基于任務(wù)需求提供有針對(duì)性的提示,需創(chuàng)建具有指導(dǎo)性和啟發(fā)性的大綱內(nèi)容,以引導(dǎo)模型生成更高質(zhì)量的小說文本,保證前后文邏輯通順,情節(jié)具有可推敲性。在生成每章節(jié)的大綱時(shí),評(píng)估提示的有效性對(duì)其內(nèi)容進(jìn)行迭代優(yōu)化,以實(shí)現(xiàn)更好的生成效果。其具體應(yīng)用流程如圖1所示。
圖1 基于提示工程生成大綱的流程
利用txt 文件生成prompt:將小說文本數(shù)據(jù)進(jìn)行切分,與上述應(yīng)用示例中提供的大綱相結(jié)合,最終生成可供微調(diào)[6]訓(xùn)練的輸入數(shù)據(jù)。其具體流程如圖2所示。
圖2 數(shù)據(jù)切分生產(chǎn)訓(xùn)練數(shù)據(jù)的流程
為增強(qiáng)生成長篇小說內(nèi)容方面的能力,需為兩種不同作用的模型提供大量新數(shù)據(jù)集的投喂,從而使模型更加明確任務(wù)需求,確定生成小說文本的具體要求,如主題、風(fēng)格、情節(jié)設(shè)定等,以便為模型提供更清晰的指導(dǎo)。其流程圖如圖3所示。
圖3 基于投喂數(shù)據(jù)確定小說文本要求的流程
通過應(yīng)用提示工程,微調(diào)后的GPT3.5 模型在生成高質(zhì)量小說文本方面具有以下優(yōu)勢(shì):
(1)更符合人類偏好:提示工程有助于模型生成更貼近人類審美和閱讀習(xí)慣的文本,提高生成作品的吸引力和可讀性。
(2)輔助創(chuàng)作:通過提供有關(guān)情節(jié)發(fā)展、角色設(shè)定和故事主題等方面的大綱創(chuàng)意啟示,提示工程可以幫助作者更好地構(gòu)思故事,提高創(chuàng)作效率。
(3)提高生成效果:提示工程可以引導(dǎo)模型聚焦于特定任務(wù)要求,從而減少無關(guān)或低質(zhì)量文本的生成,提高生成內(nèi)容的質(zhì)量和準(zhǔn)確性。
(4)個(gè)性化生成:通過針對(duì)不同作者和領(lǐng)域的需求定制提示,提示工程可以實(shí)現(xiàn)更個(gè)性化的生成服務(wù),滿足各種創(chuàng)作需求。
綜上所述,提示工程在微調(diào)GPT3.5 模型生成高質(zhì)量小說文本方面具有重要應(yīng)用價(jià)值。通過設(shè)計(jì)精細(xì)的、任務(wù)相關(guān)的提示,可以引導(dǎo)模型生成更符合預(yù)期的輸出,從而實(shí)現(xiàn)更高質(zhì)量的小說文本生成。
本文研究了基于微調(diào)GPT3.5 模型的優(yōu)化模型生成更具有特色的小說,著重介紹了如何使用微調(diào)控制方法以及提示工程來優(yōu)化模型在小說生成任務(wù)上的表現(xiàn)。闡述了數(shù)據(jù)集準(zhǔn)備、模型微調(diào)以及評(píng)估和分析的過程,展示了提示工程如何提高生成質(zhì)量以及同時(shí)降低訓(xùn)練成本。
然而,這一研究領(lǐng)域仍然面臨著眾多挑戰(zhàn),如數(shù)據(jù)偏見、知識(shí)泛化能力等。未來的研究可以探索更先進(jìn)的模型和方法,包括強(qiáng)化學(xué)習(xí)、元學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)修剪、知識(shí)轉(zhuǎn)移等方法,以進(jìn)一步提升模型性能,減少模型訓(xùn)練量。此外,開放模型(如ChatGPT)將為模型提供海量的人工提示資源,這將使得模型更加偏人類化。
最后,希望這項(xiàng)研究可以為自然語言處理領(lǐng)域的研究提供參考,為開發(fā)更好的小說生成模型提供思路并推動(dòng)人工智能應(yīng)用的發(fā)展與落地。在未來的研究中,期待有更為先進(jìn)的語言模型出現(xiàn),使得AI 小說文本生成可以接觸到小說之美。