劉永軍 許攀 王斌文 李興亮 關(guān)中南
摘 要: 近年來,人工智能和大數(shù)據(jù)處理技術(shù)在多個領(lǐng)域取得了良好效果,在油田勘探開發(fā)領(lǐng)域,各油田單位也進(jìn)行了大量的探索,期望能夠通過人工智能算法和大數(shù)據(jù)處理技術(shù)幫助科研人員解決工作中遇到的難題。通過分析自然語言處理的工作原理,結(jié)合油田勘探科研生產(chǎn)的實際需求,使用StanfordNLP機(jī)器學(xué)習(xí)工具訓(xùn)練了勘探大數(shù)據(jù)檢索語言模型,開發(fā)了勘探大數(shù)據(jù)檢索系統(tǒng)。對自然語言處理的相關(guān)概念進(jìn)行了描述,介紹了分詞樣本和詞性樣本的訓(xùn)練過程,講解了通過模型實現(xiàn)勘探大數(shù)據(jù)檢索的算法實現(xiàn)過程,對勘探大數(shù)據(jù)檢索系統(tǒng)的實際應(yīng)用效果進(jìn)行了展示。最后對人工智能在勘探開發(fā)領(lǐng)域的應(yīng)用進(jìn)行了討論和展望,為人工智能在該領(lǐng)域的進(jìn)一步應(yīng)用打下基礎(chǔ)。
關(guān)鍵詞: 機(jī)器學(xué)習(xí) 自然語言處理 勘探大數(shù)據(jù) 人工智能 ChatGPT StanfordNLP
中圖分類號: TP391.1文獻(xiàn)標(biāo)識碼: A文章編號: 1679-3567(2024)01-0004-05
地質(zhì)資料是地質(zhì)工作成果的重要載體,是重要的信息資源。將分類語言主題語言(情報語言)與自然語言一體化檢索應(yīng)用于地質(zhì)資料信息化檢索系統(tǒng),將有效的提高檢全率、檢準(zhǔn)率,使檢索操作也比較靈活、簡便,這對地質(zhì)資料信息化管理具有重要意義[1]。吐哈油田從2009年開始持續(xù)投入建設(shè)吐哈勘探開發(fā)技術(shù)數(shù)據(jù)庫管理與應(yīng)用平臺,完成了物探、鉆井、錄井、測井、試油、分析化驗等9類數(shù)據(jù)的數(shù)字化管理工作。為進(jìn)一步提高數(shù)字資料的應(yīng)用效率,吐哈油田期望通過為用戶提供自然語言檢索方式,使計算機(jī)能夠更好地理解用戶意圖,更快更精準(zhǔn)地向用戶推送所需數(shù)據(jù);同時通過自然語言檢索,計算機(jī)能夠挖掘到容易被忽略但對勘探研究非常重要的信息,協(xié)助研究人員在勘探研究過程中獲得新的突破。整個軟件架構(gòu)如圖1所示。
本文研究了自然語言處理算法的基本原理,并以此為理論基礎(chǔ),充分借鑒ChatGPT的算法思路,設(shè)計了一套勘探大數(shù)據(jù)檢索系統(tǒng)軟件架構(gòu),該構(gòu)架包含樣品收集、樣本標(biāo)注、模型訓(xùn)練、模型驗證和模型應(yīng)用五部分,數(shù)據(jù)處理人員通過不斷地對模型進(jìn)行訓(xùn)練、應(yīng)用和再訓(xùn)練來完善模型,提高問題識別率和數(shù)據(jù)檢索精度[2]。
在建設(shè)勘探大數(shù)據(jù)檢索系統(tǒng)初期,根據(jù)勘探數(shù)據(jù)庫自動生成了15 347條自然語言訓(xùn)練樣本,采用斯坦福大學(xué)研發(fā)的開源機(jī)器學(xué)習(xí)工具包StanfordNLP[3]進(jìn)行模型訓(xùn)練,生成了第一個自然語言分類模型;然后基于吐哈油田勘探生產(chǎn)數(shù)據(jù)庫,使用Eclipse編程工具調(diào)用StanfordNLP實現(xiàn)了自然語言分析,開發(fā)了第一版勘探大數(shù)據(jù)檢索系統(tǒng),實現(xiàn)了自然語言的井筒文檔和井筒數(shù)據(jù)問答功能,但問題識別率只有40%,回復(fù)正確率僅達(dá)到20%。隨著系統(tǒng)的不斷應(yīng)用,通過不斷收集問題樣本,累計再訓(xùn)練了用戶輸入的10 450條自然語言,系統(tǒng)檢索精度有了大幅提升,問題識別率達(dá)到70%,有效回復(fù)率達(dá)到50%。
本文第1節(jié)介紹了自然語言處理算法原理;第2節(jié)介紹了自然語言處理在勘探大數(shù)據(jù)庫檢索系統(tǒng)中的應(yīng)用;第3節(jié)展示了勘探大數(shù)據(jù)檢索系統(tǒng)的應(yīng)用效果;最后對人工智能在油田勘探開發(fā)領(lǐng)域的前景進(jìn)行了討論和展望。
自然語言處理簡稱NLP(Natural Language Process? ing)。NLP是計算機(jī)科學(xué)與人工智能領(lǐng)域中的一個重要研究方向,目的是通過預(yù)訓(xùn)練語言模型讓計算機(jī)去理解并處理人類的自然語言,并正確完成自然語言所表述的任務(wù)[4]。NLP涉及計算機(jī)與人類語言之間的交互,特別是如何對計算機(jī)進(jìn)行編程以處理和分析大量自然語言數(shù)據(jù)。NLP主要應(yīng)用于文本挖掘、信息檢索、句法語義分析、機(jī)器翻譯、問答系統(tǒng)、對話系統(tǒng)??偟膩砜?,自然語言的基本原理可以概括為詞法分析、句法分析和語義分析。
1.1 詞法分析
詞法分析(tokenization)是自然語言處理的基本操作之一。分詞的直譯是詞形化,顧名思義,就是把連續(xù)的文本分割成一個個獨立的詞元。目前分詞算法的準(zhǔn)確度可以達(dá)到95%。分詞算法根據(jù)其核心思想主要分為兩種:第一種是基于字典的分詞,先把句子按照字典切分成詞,再尋找詞的最佳組合方式;第二種是基于字的分詞,即由字構(gòu)詞,先把句子分成一個個字,再將字組合成詞,尋找最優(yōu)的切分策略,同時也可以轉(zhuǎn)化成序列標(biāo)注問題。在NLP中,最常用的神經(jīng)網(wǎng)絡(luò)為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN,Recurrent Neural Network),它在處理變長輸入和序列輸入問題中有著巨大的優(yōu)勢。目前對于序列標(biāo)注任務(wù),公認(rèn)效果最好的模型是BiLSTM+ CRF[5]。結(jié)構(gòu)如圖2所示。
1.2 句法分析
句法分析是通過詞語組合分析得到句法結(jié)構(gòu)的過程,而實現(xiàn)該過程的工具或程序被稱為句法分析器。目前較成熟的句法分析模型是基于概率的短語結(jié)構(gòu)分析方法(Probabilistic Context Free Grammar,PCFG)。PCFG是一種生成式的方法,該算法基于句法樹模型,它的短語結(jié)構(gòu)文法可以表示為一個五元組(X,V,S,R,P),X是一個有限詞匯的集合,其中的元素稱為詞匯或者終結(jié)符;V是一個有限標(biāo)注的集合,稱為非終結(jié)符集合;S稱為文法的開始符號,并且包含于V;R是有序偶對(α,β)的集合,就是產(chǎn)生的規(guī)則集;P代表每個產(chǎn)生規(guī)則的統(tǒng)計概率。
1.3 語義分析
語義分析是指對語言表達(dá)進(jìn)行深層次的理解和解釋,以抽取其中包含的語義信息。在自然語音模型中,語義分析技術(shù)可以分為不同層次和任務(wù),包括詞法分析、句法分析、語義角色標(biāo)注、命名實體識別等。近年來,基于神經(jīng)網(wǎng)絡(luò)的方法在自然語音模型中的語義分析中取得了顯著的進(jìn)展。例如:預(yù)訓(xùn)練的語言模型(Pre-trained Language Models)利用大規(guī)模無監(jiān)督語料庫進(jìn)行訓(xùn)練,學(xué)習(xí)到豐富的語義表示。這些模型可以被用于各種下游任務(wù),如命名實體識別、情感分析等,從而提高對語義的理解和表達(dá)能力。
另一個重要的發(fā)展是深度學(xué)習(xí)與知識圖譜的結(jié)合。知識圖譜是一個結(jié)構(gòu)化的知識庫,包含豐富的實體、關(guān)系和屬性信息。將深度學(xué)習(xí)模型與知識圖譜相結(jié)合,可以為自然語音模型提供更全面、準(zhǔn)確的語義信息。通過利用知識圖譜中的實體關(guān)系和屬性,自然語音模型可以在語義分析過程中獲得更多背景知識和上下文信息,從而提高對話的質(zhì)量和準(zhǔn)確度。
目前油田的信息系統(tǒng)均采用輸入或選擇關(guān)鍵字段信息,通過在數(shù)據(jù)庫中進(jìn)行模糊查詢的方式來檢索數(shù)據(jù),然后將數(shù)據(jù)以列表或文字的方式呈現(xiàn)給用戶,用戶再在列表中進(jìn)行人工篩選,得到最終需要的結(jié)果。
本方案旨在為用戶提供自然語言的輸入界面,通過NLP分析語言的語義,使計算機(jī)了解用戶的真實意圖,然后檢索數(shù)據(jù)庫,將數(shù)據(jù)組織為用戶想要的結(jié)果,推送到顯示界面。如用戶輸入“測試1井1 340米的孔隙度”,則系統(tǒng)會從數(shù)據(jù)庫查詢測試1井在1 340 m處的樣品孔隙度參數(shù),然后直接展示給用戶,省略了人工篩選環(huán)節(jié),這將大幅提高用戶檢索數(shù)據(jù)的效率。
2.1 勘探大數(shù)據(jù)檢索自然語言處理模型
為實現(xiàn)上文表述的應(yīng)用場景,需要通過計算機(jī)完成從“自然語言”到“數(shù)據(jù)庫語言”的轉(zhuǎn)換,自然語言可以是一段話,也可以是一句話或一個詞語。但本文中的自然語言有別于傳統(tǒng)意義的自然語言,它是一種結(jié)合勘探專業(yè)的“專業(yè)自然語言”,如上文提到的“測試1井1 340米的孔隙度”,如果按照傳統(tǒng)的自然語言,將會分解為“測試、1、井、1 340、米、的、孔隙度”,這將導(dǎo)致計算機(jī)無法完成該語言想要達(dá)到的目標(biāo),因此需要根據(jù)勘探專業(yè)特點對模型進(jìn)行完全的重新訓(xùn)練,使算法能夠?qū)ⅰ皽y試1井”識別為一個井筒號,從而引導(dǎo)計算機(jī)從數(shù)據(jù)庫中檢索到測試1井的相關(guān)數(shù)據(jù)。
2.1.1 勘探專業(yè)詞性分類
為使模型能夠識別勘探專業(yè)詞匯,同時保證計算機(jī)能夠識別詞法分析后形成的單詞,并根據(jù)單詞的含義生成用于查詢數(shù)據(jù)庫的SQL語句,按井號、井深、計量單位、報告名稱、數(shù)據(jù)庫字段、油田部門(如采油廠、送樣單位、鉆井公司等)等為類別對訓(xùn)練樣本進(jìn)行詞性分類,同時建立數(shù)據(jù)字典,通過數(shù)據(jù)字典實現(xiàn)單詞和數(shù)據(jù)庫字段的關(guān)聯(lián),如表1所示。
2.1.2 準(zhǔn)備和標(biāo)注樣本
為保證第一個自然語言檢索模型具有足夠的訓(xùn)練樣本,筆者編寫了樣本生成腳本,使用勘探數(shù)據(jù)庫中的井號等信息,自動生成了第一個標(biāo)記好的訓(xùn)練樣本共計15 347行,表2為部分生成的訓(xùn)練樣本格式。
2.1.3 訓(xùn)練和測試模型
采用StanfordNLP作為語言模型的訓(xùn)練工具,針對15 347行訓(xùn)練樣本進(jìn)行了訓(xùn)練,并生成了第一個語言詞性分析模型THKT.model.tagger、第一個語言分詞模型THKT.ser.gz和第一個字典集THKT_Dict.ser.gz。隨后使用StanfordNLP提供的測試工具對模型進(jìn)行了測試,測試結(jié)果表明訓(xùn)練的模型能夠滿足應(yīng)用。測試文本和測試結(jié)果如表3所示。
2.2 數(shù)據(jù)檢索的算法實現(xiàn)
用戶輸入的查詢語言經(jīng)過分詞和詞性標(biāo)記后,被處理成了計算機(jī)所期望的查詢數(shù)據(jù)集、查詢條件和查詢結(jié)果三大類,分別對應(yīng)數(shù)據(jù)庫中的數(shù)據(jù)表、查詢條件和查詢結(jié)果。數(shù)據(jù)檢索算法圍繞這三部分內(nèi)容,通過數(shù)據(jù)字典,將用戶輸入文字轉(zhuǎn)換為數(shù)據(jù)庫中的數(shù)據(jù)表、查詢條件,然后形成查詢語句。針對較為復(fù)雜的查詢結(jié)果,如數(shù)據(jù)統(tǒng)計、交叉查詢等查詢結(jié)果,系統(tǒng)采用定制開發(fā)的方式實現(xiàn)。圖3為數(shù)據(jù)檢索的算法實現(xiàn)流程圖。
隨著勘探大數(shù)據(jù)檢索系統(tǒng)(ChatTuha)的投入應(yīng)用,該系統(tǒng)獲得了廣大油田用戶的歡迎,在4個月內(nèi)共接收23 128條自然語言,正確回復(fù)了16 349條數(shù)據(jù),正確率達(dá)到70.6%,為用戶提供了實實在在的幫助。同時也在油田范圍內(nèi)掀起了一股有關(guān)人工智能在油田各領(lǐng)域如何落地的討論熱潮。
自然語言處理技術(shù)在數(shù)據(jù)庫檢索中的應(yīng)用打破了傳統(tǒng)的數(shù)據(jù)檢索方式,為用戶提供了一種所想及所得的查詢手段,大幅提高了數(shù)據(jù)庫的應(yīng)用效率。下一步,將持續(xù)對系統(tǒng)模型進(jìn)行訓(xùn)練,對相應(yīng)的相應(yīng)算法進(jìn)行擴(kuò)展,努力將ChatTuha打造成一位具有高智商的工作秘書。圖4為ChatTuha的使用界面。
4.1 問題總結(jié)
自然語言處理在勘探大數(shù)據(jù)檢索中的應(yīng)用推動了油田勘探信息化建設(shè)中對人工智能研究的討論,自然語言向機(jī)器語言的轉(zhuǎn)換可通過訓(xùn)練樣本、使用數(shù)據(jù)字典、基于機(jī)器學(xué)習(xí)的方法完成;由機(jī)器語言向數(shù)據(jù)庫語言的轉(zhuǎn)換可通過對詞性進(jìn)行標(biāo)記,根據(jù)數(shù)據(jù)和需求的不同將自然語言處理成若干個可分類的條件組合,使用基于關(guān)鍵詞匹配、基于相似度和基于分類器的方法實現(xiàn)?,F(xiàn)有的基于自然語言的勘探大數(shù)據(jù)檢索雖然取得了不少優(yōu)秀的成果,也誕生了許多嶄新的研究思路,但目前仍存在著一些不足和缺陷沒有得到解決。
(1)勘探大數(shù)據(jù)訓(xùn)練樣本等資源缺乏。目前勘探大數(shù)據(jù)檢索的訓(xùn)練樣本是根據(jù)現(xiàn)有數(shù)據(jù)庫中的信息自動生成的,缺少接近人類實際檢索語言的樣本,因此樣本的收集需要一個長期的過程。
(2)勘探大數(shù)據(jù)檢索模型通用性差。勘探大數(shù)據(jù)檢索模型是完全根據(jù)油田勘探專業(yè)的應(yīng)用要求進(jìn)行訓(xùn)練的,只能應(yīng)用于油田勘探開發(fā)領(lǐng)域,用戶只能使用專業(yè)性的語言進(jìn)行提問,否則模型可能會無法識別用戶語言。
(3)勘探大數(shù)據(jù)檢索模型的精度有待進(jìn)一步提高。近年來自然語言處理算法提升了對數(shù)據(jù)檢索語言的識別精度,但提升的幅度有限。研究者還在不斷嘗試對算法進(jìn)行完善,來進(jìn)一步提高模型的精度和運行速度。
4.2 未來展望
根據(jù)當(dāng)前的技術(shù)發(fā)展與研究現(xiàn)狀,未來自然語言在勘探大數(shù)據(jù)應(yīng)用方面的研究可以從如下方面開展。
(1)權(quán)威機(jī)構(gòu)研究制定勘探大數(shù)據(jù)模型的訓(xùn)練規(guī)范與標(biāo)準(zhǔn),標(biāo)注和發(fā)布語料庫資源供廣大學(xué)者開展分析研究。
(2)跨專業(yè)多樣性的訓(xùn)練。為提高分析模型的通用性,可集合鉆井、測井、錄井、試油、分析檢測等不同專業(yè)的語言數(shù)據(jù)集進(jìn)行聯(lián)合訓(xùn)練,從而提高模型的通用性和魯棒性。
(3)建立語料收集機(jī)制??梢試鴥?nèi)各大油田內(nèi)部信息平臺為依托,設(shè)立語料收集窗口,從而增加樣本規(guī)模,提高語言處理精度。
本文旨在回顧自然語言處理在勘探大數(shù)據(jù)檢索中的應(yīng)用,以幫助新的研究者建立對這一領(lǐng)域的全面了解。首先,對自然語言處理作了簡要介紹。其次,通過在實際開發(fā)勘探大數(shù)據(jù)檢索平臺后得出了自然語言處理在勘探大數(shù)據(jù)檢索中的應(yīng)用主要包括語句分詞、詞性識別和數(shù)據(jù)檢索的算法實現(xiàn)。再次,通過展示勘探大數(shù)據(jù)檢索系統(tǒng)的應(yīng)用效果,得出該方法在勘探大數(shù)據(jù)應(yīng)用中具有較高實用性的結(jié)論。最后,圍繞這3個研究方向進(jìn)行研究方法和研究進(jìn)展的闡述。相信隨著自然語言處理技術(shù)的不斷發(fā)展,勘探大數(shù)據(jù)檢索研究將有更加廣闊的前景。
參考文獻(xiàn)
[1]溫雪茹,翟國平,李銀羅.將情報語言與自然語言一體化檢索應(yīng)用于地質(zhì)資料檢索系統(tǒng)[C]//中國圖書館學(xué)會專業(yè)圖書館分會,敦煌研究院.中國圖書館學(xué)會專業(yè)圖書館分會2009年學(xué)術(shù)年會論文集.中國地質(zhì)科學(xué)院水文地質(zhì)環(huán)境地質(zhì)研究所,2009:3.
[2]劉睿珩,葉霞,岳增營,等.面向自然語言處理任務(wù)的預(yù)訓(xùn)練模型綜述[J].計算機(jī)應(yīng)用,2021,41(5):1236-1246.
[3]本刊訊.斯坦福大學(xué)發(fā)布自然語言處理工具包StanfordNLP,支持中文等53種語言[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2019,3(3):24.
[4]李小偉,舒輝,光焱,等.自然語言處理在簡歷分析中的應(yīng)用研究綜述[J].計算機(jī)科學(xué),2022,49(S1):66-73.
[5]李鉑鈞,項秀才讓,德吉卡卓,等.基于Bi-LSTM的藏文依存句法分析研究[J].計算機(jī)仿真,2023,40(7): 300-304.