啜春紅
(南京機(jī)電職業(yè)技術(shù)學(xué)院,江蘇南京 211135)
知識(shí)圖譜是人工智能技術(shù)的一種新型應(yīng)用形式,能夠結(jié)構(gòu)化地展示實(shí)體與概念之間的關(guān)系,幫助人們對(duì)某一學(xué)科中各種知識(shí)所構(gòu)建起來(lái)的知識(shí)體系有一個(gè)全面的了解[1-2]。石英杰等人將知識(shí)圖譜應(yīng)用于搜索引擎設(shè)計(jì)中,為用戶提供更具深度的互聯(lián)網(wǎng)信息[3],趙一鳴等人建立了中文通用知識(shí)圖譜——CN-DBpedia,以中文維基百科、互動(dòng)百科、百度百科為數(shù)據(jù)來(lái)源,綜合運(yùn)用語(yǔ)義推理、語(yǔ)義融合等技術(shù)建立起一套中文知識(shí)圖譜[4]。將知識(shí)圖譜應(yīng)用于英語(yǔ)語(yǔ)法教學(xué)中,不僅有助于學(xué)習(xí)者精準(zhǔn)掌握語(yǔ)法知識(shí)結(jié)構(gòu),還有助于全面掌握語(yǔ)法知識(shí)關(guān)聯(lián),進(jìn)而推動(dòng)英語(yǔ)語(yǔ)法學(xué)習(xí)的智能化、全面化、精準(zhǔn)化,在提高學(xué)習(xí)效率的同時(shí)減輕學(xué)生的學(xué)習(xí)負(fù)擔(dān)[5-8]。
在本文所建立的英語(yǔ)語(yǔ)法知識(shí)圖譜中,英語(yǔ)語(yǔ)法的數(shù)據(jù)來(lái)源分別為百度百科和《現(xiàn)代英語(yǔ)語(yǔ)法》(商務(wù)印書館)、《薄冰英語(yǔ)語(yǔ)法第4 版》、《外研社英語(yǔ)語(yǔ)法大全》三個(gè)英語(yǔ)語(yǔ)法書籍,并將其內(nèi)容進(jìn)行數(shù)字化處理,一共獲得106 個(gè)語(yǔ)法結(jié)構(gòu)及35個(gè)語(yǔ)法知識(shí)點(diǎn)名稱(15個(gè)句類知識(shí)點(diǎn)名稱、20個(gè)詞類知識(shí)點(diǎn)名稱),具體數(shù)據(jù)及說(shuō)明如表1所示。
表1 語(yǔ)法書籍?dāng)?shù)據(jù)說(shuō)明
知識(shí)圖譜的實(shí)體設(shè)計(jì)具體包括詞類知識(shí)點(diǎn)名稱、詞類知識(shí)點(diǎn)概念、詞類知識(shí)點(diǎn)舉例詞匯、句類知識(shí)點(diǎn)結(jié)構(gòu)詞匯四項(xiàng),各項(xiàng)的具體含義如表2所示。
表2 圖譜實(shí)體類別及說(shuō)明
本文所設(shè)計(jì)的英語(yǔ)語(yǔ)法知識(shí)圖譜共包含18 種語(yǔ)法關(guān)系,關(guān)系類別及相關(guān)說(shuō)明如表3所示,其中前10 組關(guān)系類別如表3所示。
表3 知識(shí)圖譜實(shí)體關(guān)系類別設(shè)計(jì)及其說(shuō)明
Neo4j 是當(dāng)前得到廣泛應(yīng)用的一種圖形數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)具有圖形處理和圖形存儲(chǔ)兩項(xiàng)主要功能[9]。相比于單純的關(guān)系型數(shù)據(jù)庫(kù)來(lái)說(shuō),Neo4j 圖形數(shù)據(jù)庫(kù)所支持的Cypher 查詢語(yǔ)言和屬性圖模型可大幅提升查詢效率,支持大規(guī)則數(shù)據(jù)查詢[10]。該圖形數(shù)據(jù)庫(kù)還能夠通過(guò)結(jié)點(diǎn)和線段等簡(jiǎn)單的圖形樣式來(lái)展現(xiàn)不同知識(shí)實(shí)體之間的關(guān)系結(jié)構(gòu),知識(shí)數(shù)據(jù)的展現(xiàn)形式明確且靈活[11-12]。Neo4j還兼容Python接口,可與基于Python 語(yǔ)言所編輯的英語(yǔ)學(xué)習(xí)系統(tǒng)無(wú)縫結(jié)合,降低系統(tǒng)編程難度[13]。
首先將知識(shí)圖譜中的的4 個(gè)實(shí)體表及18 個(gè)關(guān)系表轉(zhuǎn)換為CSV文件,在此基礎(chǔ)上通過(guò)Neo4j圖數(shù)據(jù)庫(kù)中的LOAD命令批量導(dǎo)入CSV 文件[9],并將18 個(gè)關(guān)系直接命名為將來(lái)進(jìn)行式、過(guò)去進(jìn)行時(shí)、現(xiàn)在進(jìn)行式、將來(lái)完成時(shí)、現(xiàn)在完成時(shí)、過(guò)去完成時(shí)、一般將來(lái)時(shí)、一般過(guò)去式、一般現(xiàn)在時(shí)、狀語(yǔ)從句、定語(yǔ)從句、虛擬語(yǔ)氣、被動(dòng)語(yǔ)態(tài)、倒裝句、祈使句、舉例、概念、包含。
本文通過(guò)Py2neo連接Neo4j圖數(shù)據(jù)庫(kù),采用建立節(jié)點(diǎn)和建立關(guān)系的方式針對(duì)語(yǔ)法題目實(shí)施向量設(shè)計(jì),核心代碼如下:
# 建立節(jié)點(diǎn)
test_node_1=Node("is",name="VBG")
test_node_2=Node("is",name="is")
test_graph.create(test_node_1)
test_graph.create(test_node_2)
# 建立關(guān)系
node_1_call_node_2=Relationship(test_node_1,′現(xiàn)在進(jìn)行時(shí)′,test_node_2)
# node_1_call_node_2[′count′]=1
node_2_call_node_1=Relationship(test_node_2,′一般現(xiàn)在時(shí)′,test_node_1)
# node_2_call_node_1[′count′]=2
test_graph.create(node_1_call_node_2)
test_graph.create(node_2_call_node_1)
以如圖1所示的題目為例,該題目的答案是“is reading”,經(jīng)過(guò)詞性標(biāo)注后可得到如圖2所示的內(nèi)部匹配結(jié)果。
圖1 匹配題目示例
圖2 知識(shí)圖譜基本原理
在向Neo4j 圖數(shù)據(jù)庫(kù)導(dǎo)入CSV 文件后,Neo4j 會(huì)針對(duì)知識(shí)圖譜數(shù)據(jù)加以數(shù)據(jù)化展示。本文所設(shè)計(jì)的英語(yǔ)語(yǔ)法知識(shí)圖譜共包含知識(shí)點(diǎn)實(shí)體1103 個(gè),在圖譜中以結(jié)點(diǎn)的形式加以展現(xiàn),其中包含69 個(gè)句類知識(shí)點(diǎn)結(jié)構(gòu)詞匯、994 個(gè)詞類知識(shí)點(diǎn)舉例詞匯、20 個(gè)詞類知識(shí)點(diǎn)概念、20 個(gè)詞類知識(shí)點(diǎn)名稱。局部英語(yǔ)語(yǔ)法知識(shí)圖譜如圖3所示,4 個(gè)實(shí)體類別分別以4種大小的結(jié)點(diǎn)加以表示,各實(shí)體之間的關(guān)系標(biāo)注于各實(shí)體之間的連接線上。
圖3 局部英語(yǔ)語(yǔ)法知識(shí)圖譜
在需要查看圖譜細(xì)節(jié)信息的情況下,用戶可以直接輸入Cypher語(yǔ)句即可進(jìn)一步查閱實(shí)體的內(nèi)容以及與其他實(shí)體之間的關(guān)系。在英語(yǔ)語(yǔ)法圖譜中,由于句類、詞類兩種知識(shí)點(diǎn)分別以邊和點(diǎn)的形式加以存儲(chǔ),因此需要通過(guò)不同的語(yǔ)句實(shí)現(xiàn)查詢。以句類知識(shí)點(diǎn)“現(xiàn)在完成時(shí)”的查詢?yōu)槔?,該知識(shí)點(diǎn)在英語(yǔ)語(yǔ)法圖譜中的查詢結(jié)果如圖4所示。
根據(jù)圖4可知,在英語(yǔ)語(yǔ)法圖譜中的完成時(shí)部分共包含6個(gè)常見(jiàn)語(yǔ)法,用戶可以直觀查閱有關(guān)于“現(xiàn)在完成時(shí)”的各種詞匯。另外,若根據(jù)圖譜中箭頭的方向持續(xù)讀取,還能夠獲取較為完整的“現(xiàn)在完成時(shí)”句型,比如“has+not+VBN”、“has+been+done”等,其中動(dòng)詞的過(guò)去分詞通過(guò)VBN 加以表示。
在針對(duì)“現(xiàn)在完成時(shí)”進(jìn)行查詢的過(guò)程中,圖譜還展示了“將來(lái)完成時(shí)”和“被動(dòng)語(yǔ)態(tài)”等相關(guān)句式,可以幫助用戶發(fā)現(xiàn)現(xiàn)在完成時(shí)與被動(dòng)語(yǔ)態(tài)之間的關(guān)聯(lián),即“have+been”句型,該句型既可以用來(lái)表達(dá)現(xiàn)在完成時(shí),也可以用來(lái)表達(dá)被動(dòng)語(yǔ)態(tài)。
了解語(yǔ)法結(jié)構(gòu)和建立語(yǔ)法意識(shí)是英語(yǔ)語(yǔ)法學(xué)習(xí)的關(guān)鍵,英語(yǔ)語(yǔ)法知識(shí)圖譜可以用來(lái)對(duì)語(yǔ)法的知識(shí)點(diǎn)網(wǎng)絡(luò)加以直觀地展示,幫助用戶明確各知識(shí)點(diǎn)之間的區(qū)別和聯(lián)系。另外,圖形化的圖譜界面可集中展示重要信息,幫助用戶明確學(xué)習(xí)重點(diǎn),減輕用戶學(xué)習(xí)英語(yǔ)語(yǔ)法的壓力與負(fù)擔(dān)。在實(shí)際應(yīng)用中,開(kāi)發(fā)者還可以將本文所設(shè)計(jì)的英語(yǔ)語(yǔ)法圖譜與基于Python 語(yǔ)言所建立了英語(yǔ)在線學(xué)習(xí)系統(tǒng)結(jié)合起來(lái),以Web瀏覽器的形式實(shí)現(xiàn)用戶對(duì)英語(yǔ)語(yǔ)法圖譜的訪問(wèn),進(jìn)而在無(wú)需安裝PC 客戶端的情況下實(shí)現(xiàn)對(duì)英語(yǔ)語(yǔ)法知識(shí)圖譜的在線查閱。