孫涵 齊悅
摘要:在老年教育建設(shè)過程中,將信息技術(shù)與老年教育特點相結(jié)合,為提高老年教育過程中大量的數(shù)據(jù)、知識存儲和查詢效率,設(shè)計了一種基于知識圖譜的老年教育知識庫系統(tǒng)。系統(tǒng)以知識圖譜為核心,通過對老年教育不同角色的業(yè)務(wù)進行分析并設(shè)計本體,將多領(lǐng)域和多類型的數(shù)據(jù)通過本體映射,完成知識圖譜構(gòu)建,將繁雜無序的數(shù)據(jù)形成具有內(nèi)在多種關(guān)聯(lián)的知識庫,并為學(xué)員和教師提供在線的知識管理和知識服務(wù)功能。與傳統(tǒng)的數(shù)據(jù)管理方式相比,知識檢索和信息獲取效率得到有效提高。
關(guān)鍵詞:知識圖譜;老年教育;知識庫;應(yīng)用系統(tǒng)
中圖分類號:TP391文獻標志碼:A文章編號:1008-1739(2021)08-57-6
0引言
構(gòu)建全民終身學(xué)習(xí)教育系統(tǒng)是我國基本公共服務(wù)的重要組成部分,在全民終身學(xué)習(xí)的倡導(dǎo)下,老年教育的建設(shè)有著重要作用,老年教育是幫助老年人在晚年實現(xiàn)繼續(xù)學(xué)習(xí)、增長文化知識、豐富生活以及提高老年社會參與感的教育形式,是建設(shè)全民終身學(xué)習(xí)型社會的重要一環(huán)。國務(wù)院辦公廳印發(fā)的《關(guān)于推進養(yǎng)老服務(wù)發(fā)展的意見》也鼓勵各類教育機構(gòu)通過多種形式舉辦或參與老年教育,有效滿足老年人多樣化、多層次養(yǎng)老服務(wù)需求[1]。發(fā)展和建設(shè)現(xiàn)代化的老年教育在構(gòu)建全民終身學(xué)習(xí)教育體系和提高老年人生活品質(zhì)等方面有重要意義。
目前在老年教育網(wǎng)絡(luò)化和現(xiàn)代化的建設(shè)過程中已形成了大量的教育資源,老年教育在以課程教學(xué)、體驗式教學(xué)、活動式教學(xué)、多媒體教學(xué)等多方面積累了海量的教學(xué)資源內(nèi)容。老年教育由于其特殊性未來必然向著集約化、規(guī)模化發(fā)展,才能最大程度提高教育質(zhì)量。針對老年教育特征的知識管理數(shù)據(jù)服務(wù)系統(tǒng)還有所欠缺,建設(shè)高效的知識庫系統(tǒng)對老年教育管理有著重要的意義。
1系統(tǒng)需求分析
隨著近些年老年教育的不斷發(fā)展,我國在老年教育領(lǐng)域也取得了長足進步,在課程設(shè)計、人才培養(yǎng)、服務(wù)模式以及多種類的教育活動都有了大量的數(shù)據(jù)和經(jīng)驗的積累。人民日報指出,有810多萬老年人在6.2萬多所老年教育機構(gòu)學(xué)習(xí),上千萬老年人通過社區(qū)教育、遠程教育等各種形式參與老年教育[2]。目前,在老年教育現(xiàn)代化建設(shè)中已進行了大量的研究。如高慧敏[3]提出數(shù)字化服務(wù)下的社區(qū)老年教育,以云南昆明為例研究線上結(jié)交好友、擴大人際圈子、線下共娛共樂、有益身心的老年教育模式。續(xù)芳[4]通過微課納入老年教育體系的研究,開展移動學(xué)習(xí)終端的設(shè)計和傳播,切實推動“互聯(lián)網(wǎng)+”時代老年教育的供給側(cè)改革。陳艷莉[5]闡述了以網(wǎng)絡(luò)媒介為基礎(chǔ)的電大老年教育推進策略,通過打造自適應(yīng)的數(shù)字化學(xué)習(xí)平臺,應(yīng)最大限度地發(fā)揮互聯(lián)網(wǎng)優(yōu)勢,大力開發(fā)老年教育網(wǎng)站和手機App等數(shù)字平臺擴大老年教育覆蓋面。
因為老年教育與傳統(tǒng)的教育模式相比具有一定的特殊性,因其覆蓋范圍廣、課程類型多、教學(xué)類型多、學(xué)員分布不均衡等原因,造成老年教育過程中數(shù)據(jù)管理成本高、資源對接難度大的問題。目前主要依賴傳統(tǒng)的記錄方式以及人員經(jīng)驗維護相關(guān)的資源內(nèi)容,對老年教育的現(xiàn)代化建設(shè)發(fā)展造成了一定的困難。針對這一問題,本文設(shè)計了一種基于知識圖譜的老年教育知識庫系統(tǒng)。知識圖譜是指由多個概念以及概念之間關(guān)聯(lián)關(guān)系的有向圖的集合,通過概念和實體之間的聯(lián)系以及通過對數(shù)據(jù)的挖掘而生成的,是建立在個人對相關(guān)知識理解上建立的有體系、有關(guān)聯(lián)的數(shù)據(jù)[6]。面向老年學(xué)員、教師與管理人員等多個角色,實現(xiàn)智能搜索、智能推薦和智能關(guān)聯(lián)的功能,建立針對老年教育過程多樣的教學(xué)實踐,聚合學(xué)生信息、教師信息及課程信息等內(nèi)容,形成老年教育知識庫系統(tǒng),幫助老年教育參與人員在不同的業(yè)務(wù)場景下高效獲取和管理相關(guān)信息。
1.1功能模塊
基于知識圖譜的老年教育知識庫系統(tǒng),主要針對老年教育過程中學(xué)員信息、教師信息、課程信息、活動信息、教學(xué)信息等數(shù)據(jù),根據(jù)業(yè)務(wù)流程設(shè)計本體,并構(gòu)建老年教育知識圖譜,面向?qū)W員、教師、管理人員在不同的業(yè)務(wù)需求基礎(chǔ)上設(shè)計不同的功能應(yīng)用。系統(tǒng)建設(shè)主要功能有知識管理、知識庫服務(wù)和數(shù)據(jù)管理,如圖1所示。
①知識管理:對業(yè)務(wù)建模構(gòu)建本體,將上傳的數(shù)據(jù)與本體進行映射形成知識圖譜,并針對不同的實體進行數(shù)據(jù)融合,合并相同的數(shù)據(jù),同時支持知識的動態(tài)更新功能。
②知識庫服務(wù):基于知識圖譜提供相關(guān)的知識服務(wù)功能,包括知識檢索、關(guān)聯(lián)搜索、知識推薦和知識問答。知識檢索是通過用戶的檢索詞與知識實體進行匹配獲取對應(yīng)的源數(shù)據(jù);關(guān)聯(lián)搜索通過知識圖譜的關(guān)聯(lián)性質(zhì),將匹配的數(shù)據(jù)根據(jù)其關(guān)聯(lián)的數(shù)據(jù),獲取相關(guān)的關(guān)聯(lián)數(shù)據(jù);知識推薦通過用戶檢索和查詢的數(shù)據(jù)類型和領(lǐng)域,基于知識圖譜推薦相關(guān)的數(shù)據(jù)內(nèi)容。與關(guān)聯(lián)搜索的區(qū)別是知識推薦主要是主動推送數(shù)據(jù),而關(guān)聯(lián)搜索則是被動推送數(shù)據(jù);知識問答,根據(jù)用戶的意圖匹配到相關(guān)的本體,返回對應(yīng)的實體數(shù)據(jù),知識問答主要實現(xiàn)方式是通過規(guī)則匹配完成。
③數(shù)據(jù)管理:針對基礎(chǔ)數(shù)據(jù)進行管理,包括數(shù)據(jù)上傳、存儲、更新、刪除以及數(shù)據(jù)的類別和數(shù)據(jù)標簽進行相應(yīng)的增刪改查。數(shù)據(jù)類別主要是針對上傳的數(shù)據(jù)劃分對應(yīng)的數(shù)據(jù)領(lǐng)域,便于后續(xù)的數(shù)據(jù)映射操作。數(shù)據(jù)標簽則是根據(jù)上傳數(shù)據(jù)的內(nèi)容項進行標簽記錄,便于對數(shù)據(jù)的內(nèi)容進行分析和挖掘。
1.2系統(tǒng)用例
老年教育知識庫系統(tǒng)角色主要有管理員、教師和學(xué)員3個角色,系統(tǒng)用例圖如圖2所示。管理員主要功能有用戶管理對系統(tǒng)用戶的訪問權(quán)限進行設(shè)置,知識管理對圖譜的更新和構(gòu)建以及本體設(shè)計,數(shù)據(jù)管理主要是數(shù)據(jù)的增刪改查等操作,知識服務(wù)主要是針對應(yīng)用服務(wù)的后臺配置,例如針對推薦和關(guān)聯(lián)搜索的策略設(shè)置等操作。教師和學(xué)員主要關(guān)聯(lián)查詢、知識檢索、知識推薦和知識問答,根據(jù)角色的業(yè)務(wù)定義不同設(shè)置不同的數(shù)據(jù)訪問權(quán)限。
2系統(tǒng)設(shè)計
根據(jù)系統(tǒng)需求,老年教育知識庫系統(tǒng)在保證系統(tǒng)功能可用的基礎(chǔ)上還具備數(shù)據(jù)安全性、可靠性、容錯性和擴展性。知識庫系統(tǒng)基于B/S架構(gòu)設(shè)計,提高系統(tǒng)的適用性和易用性。為保證系統(tǒng)的高可用和高性能,在存儲方面采用MySQL數(shù)據(jù)、Neo4j圖數(shù)據(jù)庫、Redis內(nèi)存數(shù)據(jù)庫以及HDFS分布式文件系統(tǒng)的組合存儲方式,其中,MySQL主要存儲業(yè)務(wù)數(shù)據(jù)、用戶數(shù)據(jù)和本體-關(guān)系模型數(shù)據(jù);Neo4j主要用于存儲圖數(shù)據(jù)、Redis用于緩存命中的元數(shù)據(jù)實現(xiàn)高速的數(shù)據(jù)訪問功能;HDFS用于存儲用戶上傳的文件數(shù)據(jù)。
混合存儲模式主要是分離源數(shù)據(jù)、圖數(shù)據(jù)和元數(shù)據(jù)。元數(shù)據(jù)用于管理圖數(shù)據(jù)和源數(shù)據(jù)的數(shù)據(jù)映射,在業(yè)務(wù)應(yīng)用中首先通過圖數(shù)據(jù)命中數(shù)據(jù)項,然后通過元數(shù)據(jù)獲取對應(yīng)的源數(shù)據(jù),進而滿足圖數(shù)據(jù)的高性能查詢和更新操作,以及源數(shù)據(jù)的無損存儲。
2.1架構(gòu)設(shè)計
系統(tǒng)實現(xiàn)主要采用前后端分離的思想,前后端的交互通過REST風(fēng)格規(guī)范的接口完成。系統(tǒng)后端開發(fā)主要基于SpringBoot框架,通過注解的方式完成相關(guān)的配置,讓開發(fā)過程專注于業(yè)務(wù)本身,提高開發(fā)效率。將應(yīng)用配置通過注解的方式完成配置,簡化Spring應(yīng)用的開發(fā)、創(chuàng)建、運行、調(diào)試和上線部署。使用Gradle完成項目的自動化構(gòu)架和包的管理,同時集成Docker使用Springboot內(nèi)置的Tomcat完成項目的打包上線。系統(tǒng)后端采用MVC設(shè)計模式,將系統(tǒng)分為模型、視圖和控制器,同時領(lǐng)域模型、業(yè)務(wù)服務(wù)和數(shù)據(jù)處理分離到不同的模塊中,實現(xiàn)分層架構(gòu)的設(shè)計模式,降低系統(tǒng)的耦合度提高系統(tǒng)的可維護性和擴展性?;诜謱釉O(shè)計思想將系統(tǒng)劃分為接口、服務(wù)和存儲3個模塊,如圖3所示。
①Web接口:與前端進行數(shù)據(jù)交互,封裝了查詢、本體管理、圖譜管理、資源管理等模塊的接口。查詢接口(Query-api),主要是對接前端的數(shù)據(jù)查詢服務(wù);本體管理(EntityCollectClient),主要是實現(xiàn)業(yè)務(wù)模型的本體構(gòu)建,支持本體的相關(guān)操作功能的接口;圖譜管理(KGVis),主要是完成圖譜的創(chuàng)建、更新、映射以及知識圖譜的匹配和版本管理等功能;資源管理(Rescoure),主要是針對業(yè)務(wù)流程中的資源進行管理的接口,包括用戶、權(quán)限、數(shù)據(jù)等內(nèi)容;
②Service層:對系統(tǒng)的服務(wù)和數(shù)據(jù)處理等后端功能的封裝,包括知識圖譜服務(wù)、知識圖譜構(gòu)建、資源管理、URl管理、狀態(tài)管理、元數(shù)據(jù)管理等ResourceService/ResourceManager執(zhí)行資源管理的相關(guān)操作和服務(wù)的封裝功能。QueryService,執(zhí)行查詢的操作和服務(wù)的封裝功能。OntService,執(zhí)行本體的相關(guān)操作和服務(wù)的封裝功能。KGService/KGVisService,執(zhí)行知識圖譜的創(chuàng)建、更新、映射等操作和服務(wù)封裝。MetadataManager,執(zhí)行元數(shù)據(jù)管理,根據(jù)圖譜和源數(shù)據(jù)的映射完成元數(shù)據(jù)的相關(guān)操作和服務(wù)封裝。
③Store層:對數(shù)據(jù)存儲,包括圖數(shù)據(jù)、元數(shù)據(jù)、源數(shù)據(jù)以及索引等。MySQLDao,封裝所有的業(yè)務(wù)數(shù)據(jù)存儲功能,實現(xiàn)統(tǒng)一的數(shù)據(jù)庫連接、執(zhí)行、結(jié)果封裝等功能;ESDao,封裝查詢索引功能,實現(xiàn)索引創(chuàng)建、更新、刪除等操作,根據(jù)業(yè)務(wù)需求依賴圖數(shù)據(jù)和源數(shù)據(jù)實時的操作索引,并支撐數(shù)據(jù)查詢和搜索功能;Neo4jDao,封裝圖數(shù)據(jù)的存儲,主要針對知識圖譜和本體結(jié)構(gòu)的存儲并與元數(shù)據(jù)建立對應(yīng)關(guān)系。
2.2核心業(yè)務(wù)流程
基于知識圖譜的老年教育知識庫系統(tǒng)核心業(yè)務(wù)流程包括數(shù)據(jù)管理、知識管理和知識服務(wù)三部分,同時3個核心流程之間互相關(guān)聯(lián)和依賴。數(shù)據(jù)管理的流程主要是上傳數(shù)據(jù),實現(xiàn)基礎(chǔ)數(shù)據(jù)的線上維護,將新產(chǎn)生和需要更新的數(shù)據(jù)上傳到系統(tǒng),根據(jù)數(shù)據(jù)內(nèi)容錄入相關(guān)的數(shù)據(jù)標簽,登記數(shù)據(jù)類別然后對源數(shù)據(jù)進行存儲。知識管理,其核心流程是知識圖譜的構(gòu)建,首先根據(jù)業(yè)務(wù)需求構(gòu)建本體,依賴已經(jīng)標簽化的數(shù)據(jù)與本體映射完成圖譜的構(gòu)建,根據(jù)數(shù)據(jù)內(nèi)容和本體結(jié)構(gòu)完成知識融合功能,最后將圖數(shù)據(jù)存儲。知識融合是知識管理中重要的步驟,主要是對實體消歧和對齊操作,將相同但表述不一致來源不一致的數(shù)據(jù)進行合并操作;知識服務(wù),用戶在不同的業(yè)務(wù)場景中分別使用知識檢索、知識關(guān)聯(lián)和推薦、知識問答功能,將用戶輸入的信息與圖進行匹配,然后根據(jù)元數(shù)據(jù)的映射獲取關(guān)聯(lián)數(shù)據(jù)并對結(jié)果封裝返回。
2.3本體設(shè)計
根據(jù)老年教育過程中的教育資源進行分析建模,主要本體概念有教師、學(xué)員、課程、教學(xué)內(nèi)容、活動、領(lǐng)域類目、活動場所及資訊等,根據(jù)其業(yè)務(wù)中的相關(guān)性設(shè)計教授、學(xué)習(xí)、關(guān)聯(lián)、參加、興趣等幾個關(guān)系。實現(xiàn)老年教育資源的本體建模。該模型基本涵蓋了主要的老年教育服務(wù)中不同領(lǐng)域?qū)嶓w的內(nèi)在關(guān)聯(lián)特征,能夠支撐基礎(chǔ)教育資源內(nèi)容管理和查詢功能。
3關(guān)鍵技術(shù)與系統(tǒng)實現(xiàn)
3.1關(guān)鍵技術(shù)
知識融合針對已經(jīng)上傳的數(shù)據(jù)和映射的知識圖譜,根據(jù)知識融合的算法遍歷每一條數(shù)據(jù),為提高知識融合計算的效率采用多線程的并發(fā)計算,利用Redis實現(xiàn)二級緩存的方式實現(xiàn)高性能計算。將多個線程正在計算的數(shù)據(jù)加入二級緩存,將已經(jīng)過計算的數(shù)據(jù)加入一級緩存,將已計算未達到合并要求但是超過計算因子的數(shù)據(jù)合并成一個數(shù)據(jù)桶,進而減少數(shù)據(jù)計算量。
其中,閾值為根據(jù)相似度算法結(jié)果判斷是否將數(shù)據(jù)進行融合的值。計算因子為根據(jù)相似度算法結(jié)果判斷是否將數(shù)據(jù)與數(shù)據(jù)桶合并的值,其大小值為閾值×0.8。數(shù)據(jù)桶為相似度計算結(jié)果大于計算因子且小于閾值的數(shù)據(jù)集合。
獲取一條新數(shù)據(jù)首先向前遍歷所有數(shù)據(jù)桶的第一條數(shù)據(jù),如果是第一條數(shù)據(jù)則直接創(chuàng)建一個數(shù)據(jù)桶,當(dāng)計算結(jié)果大于閾值則直接融合,如果計算結(jié)果小于閾值而大于計算因子時,繼續(xù)遍歷數(shù)據(jù)桶內(nèi)數(shù)據(jù),如果計算結(jié)果全部大于計算因子小于閾值時則將新數(shù)據(jù)加入該數(shù)據(jù)桶。數(shù)據(jù)桶則使用Redis的list作為存儲結(jié)構(gòu),詳細的實現(xiàn)流程如圖4所示。
3.2系統(tǒng)實現(xiàn)
(1)數(shù)據(jù)錄入及知識構(gòu)建
Client流程加載原始數(shù)據(jù)后,為數(shù)據(jù)構(gòu)建標識和數(shù)據(jù)類別,然后將數(shù)據(jù)存儲。
Resolver獲取數(shù)據(jù)、解析數(shù)據(jù)獲取數(shù)據(jù)標識、判斷當(dāng)前數(shù)據(jù)類型。根據(jù)設(shè)置的映射規(guī)則,通過規(guī)則生成該類型數(shù)據(jù)的元數(shù)據(jù),每一類型數(shù)據(jù)只生成一條元數(shù)據(jù),元數(shù)據(jù)的作用是指導(dǎo)圖數(shù)據(jù)找到并獲取自身數(shù)據(jù)。
ETL根據(jù)不同的數(shù)據(jù)類型,生成標注的圖數(shù)據(jù)存儲對象和存儲語句。若Redis緩存不存在該數(shù)據(jù),則為其創(chuàng)建版本號進行管理;若存在,則在當(dāng)前版本的基礎(chǔ)上增加一個版本。
Execute并發(fā)、批量執(zhí)行圖存儲語句,同時將圖ID等信息同步到Redis緩存中。
(2)知識查詢
用戶輸入關(guān)鍵詞,首先對關(guān)鍵詞進行降噪處理,去除雜亂的特殊字符;然后進行分詞,從ES中獲得對應(yīng)實體索引。獲取檢索規(guī)則,從Redis中獲取實體數(shù)據(jù),并發(fā)執(zhí)行檢索過程完成圖數(shù)據(jù)檢索。對每一類的圖數(shù)據(jù),通過其元數(shù)據(jù)獲取原數(shù)據(jù)的存儲位置及存儲結(jié)果,通過關(guān)聯(lián)本體屬性獲取對應(yīng)數(shù)據(jù),完成檢索。在技術(shù)實現(xiàn)上,采用Pipeline設(shè)計模式,在Controller層組裝業(yè)務(wù)邏輯。通過4個Handler,完成關(guān)鍵實體及本體查詢、圖數(shù)據(jù)檢索、數(shù)據(jù)處理、獲取屬性數(shù)據(jù)并生成結(jié)構(gòu)化文檔。
3.3系統(tǒng)效果
知識構(gòu)建中的本體設(shè)計效果如圖7所示,通過可視化的方式更新和創(chuàng)建本體模型。
4結(jié)束語
基于知識圖譜的老年教育知識庫系統(tǒng)實現(xiàn)了對大規(guī)模、多領(lǐng)域的數(shù)據(jù)進行有效分析、管理和應(yīng)用。通過知識圖譜技術(shù)對業(yè)務(wù)分析、針對不同類型的數(shù)據(jù)挖掘形成教育資源本體,涵蓋了學(xué)員、教師、課程、活動、領(lǐng)域、教學(xué)內(nèi)容及活動場所等方面,聚合大規(guī)模數(shù)據(jù)形成知識圖譜,并根據(jù)不同的用戶角色提供不同權(quán)限的知識服務(wù),實現(xiàn)知識檢索、知識更新、關(guān)聯(lián)查詢等功能,有效提高了老年教育過程中知識獲取效率,提高老年教育體驗。在知識圖譜的基礎(chǔ)上后續(xù)可持續(xù)地構(gòu)建智能化的知識庫服務(wù),在數(shù)據(jù)處理方面未來可集成自然語言處理算法實現(xiàn)對非結(jié)構(gòu)化數(shù)據(jù)的信息自動化抽取,在知識服務(wù)方面逐步完成基于知識圖譜的用戶畫像、知識可視化分析等功能,不斷提升數(shù)據(jù)挖掘和分析能力。
參考文獻
[1]國務(wù)院辦公廳.《關(guān)于推進養(yǎng)老服務(wù)發(fā)展的意見》國辦發(fā)〔2019〕5號[R/OL][2019-4-16] http://www.gov.cn/zhengce/ content/2019-04/16/content_5383270.htm.
[2]姜泓冰.我國老年教育機構(gòu)達6.2萬所[N].人民日報, 2018-04-12.
[3]高慧敏.數(shù)字化服務(wù)支持下社區(qū)老年教育初探———以云南省昆明市“916”數(shù)字養(yǎng)老社區(qū)為例[J].成人教育,2016,36(9): 65-68.
[4]續(xù)芳.微課納入老年遠程教育體系推動“互聯(lián)網(wǎng)+”時代老年教育供給側(cè)改革的研究[J].天津職業(yè)院校聯(lián)合學(xué)報,2019,21(4):93-96.
[5]陳艷莉.“互聯(lián)網(wǎng)+”背景下電大開展老年教育的推進策略———以常德電大為例[J].內(nèi)蒙古電大學(xué)刊,2018(5):95-97.
[6]王琛琛,張睿,吳天剛.大學(xué)物理知識圖譜的構(gòu)建及其在個性化教學(xué)中的應(yīng)用[J].物理與工程,2020,30(5):76-81.