盛 穎, 韓廷祥
(1 天津大學環境科學與工程學院, 天津 300350; 2 天津大學智能與計算學部, 天津 300350)
全球正處在由新一輪信息技術浪潮所帶來的新工業革命的開端,以移動網絡、物聯網、云計算、大數據分析、量子通訊技術等為代表的高新智慧科技的廣泛應用正不斷促進著經濟社會的蓬勃發展。 為推進教育現代化與教育強國建設,促進新時期教育改革和信息化的發展,國家教育部制定了《教育信息化2.0 行動計劃》,表示教育信息化是建設教育強國的基礎保障,有助于學生學習情境的構建,促進學生吸收和掌握知識[1]。 在《“十四五”國家信息化規劃》中進一步將終身數字教育,以及“互聯網+教育”列為重要的安排部署[2]。 由此可見,高新智能技術在教育教學領域的深度融合將有效推動教育信息化的進程,也是當前的研究熱點。
知識圖譜是通過可視化的圖譜形象展示某領域內不同事物間的關系,是基于信息技術的快速發展而誕生的新興事物。 當前,知識圖譜在教育領域中的應用越來越多。 例如,陳潔等學者[3]以CSSCI 期刊中有關機構數據庫的文獻為數據基礎,運用DDA等軟件建立了知識圖譜,分析并總結了國內機構知識庫的研究熱點。 王蘭成[4]分析總結了多學科視域下網絡輿情知識圖譜構建的重要性,提出了相互補充和相互驗證的有機整體成果。 張勇等學者[5]以計算機學科為例,基于學科知識圖譜的構建提出了高校教學模式的優化方法,試圖挖掘學科內在知識結構的關聯性。 郎亞坤等學者[6]構建了基于Neo4j 的C++課程的知識圖譜,圖譜包含了C++課程領域的所有知識點及知識點間的關系,可以進行知識點和學習路徑的相關推理。 王琛琛等學者[7]建立了大學物理知識圖譜,并將其與智慧型課堂應答系統相結合,對原有課堂互動系統進行優化升級。可見,知識圖譜在教育領域的應用非常廣泛,無論是全球范圍的數據庫、還是單一的課程,在相關技術的支撐下,為大規模、高質量又個性化的人才成長需要與教學需求提供了現實可能性,使得教育教學的質量逐步升級。
《通風工程》(也稱《暖通空調B》)是建筑環境與能源應用工程(建環)專業學生知識結構中重要的專業必修課。 該課程的學習是培養學生分析和解決通風工程實際問題的關鍵,更是培養學生高階思維能力的有效鍛煉。 基于多年教學經驗發現,該課程教學內容豐富、知識點龐雜、重點分散,學生難以有效把握課程的主要脈絡,厘清學習路徑,課程學習難度較大。 為了提升學生的學習質量,使其更方便地獲得課程中知識點的分布情況、難易程度、學習順序和掌握要求,本文以學生在該課程的學習為背景,設計構建了基于Protégé 本體編輯器和Neo4j 圖數據庫的《通風工程》課程的知識圖譜,輔助課堂教學,提升學生學習質量。 由于現有高校課程的知識圖譜主要是針對通識教育課程,涉及到的專業教育課程也以計算機專業居多。 本文以工科建環專業的《通風工程》為案例,介紹該課程知識圖譜的構建方法,這將為相關工程技術類專業課程知識圖譜的構建與應用提供參考。
在知識圖譜的構建過程中,首先確定《通風工程》課程知識圖譜的構建目的。 針對《通風工程》課程,除了使學生掌握各個知識點的分布以及相關的學習要求,還需要讓學生明確學習內容與畢業目標之間的關系。 因為工程教育專業認證的要求,不僅使學生掌握過硬的專業知識,而且應將其用于解決專業實際工程問題,在學習過程中促進與工業界、企業界的聯系。 因此,知識圖譜的構建不僅僅是知識體系的梳理,也需要增加學生學習與畢業目標之間的關系。
接下來,進行知識圖譜的構建。 明確知識圖譜的數據來源,以此為基礎設計知識圖譜的知識模型。基于本體編輯器Protégé,構建領域知識實體及知識表達形式,進行知識概念的提取、類層次結構的設置及屬性關系的制定。 最后,采用Neo4j 圖數據庫技術將其進行存儲并予以可視化顯示。 圖1 展示了《通風工程》課程知識圖譜的構建流程。

圖1 《通風工程》課程知識圖譜的構建流程Fig. 1 Process of establishing knowledge graph of “Ventilation Engineering” course
本次課程圖譜的建設是利用Protégé 的本體構建思路,反映《通風工程》課程的知識體系。 Protégé軟件是利用Java 語言開發的本體編輯軟件,可直接對本體概念、層次結構、類的屬性與關系屬性進行創建。
1.2.1 數據資源
雖然每個學生的先驗知識和學習能力不同,對課程知識點學習的時間和精力也不同,但是對課程的學習都應遵循課程大綱和對應的教材。 因此,對于《通風工程》而言,必須充分了解課程大綱,明確大綱中教學目標、畢業要求、課程內容之間的關系,以教材為課程內容的依據,建立知識體系。 因此,本文以《通風工程》教學大綱和建環專業規劃教材—中國建筑工業出版社的《通風工程(第四版修訂本)》為數據資源,從整體把握《通風工程》課程的知識構架。
1.2.2 類、屬性和關系的確定
在定義課程的類之前,需要明確課程概念的層次結構。 類在課程本體中就是概念,知識點是學習的最基本單位。 本研究將課程概念的層次分為4 類(參見圖2),具體層次結構如下:

圖2 《通風工程》課程知識圖譜的層次關系Fig. 2 Class hierarchy in the knowledge graph of “Ventilation Engineering” course
(1)第一級別的類。 將教學目標、畢業要求和課程內容作為第一級別的類。
(2)第二、三級別的類。 典型課程的知識結構一般分為章、節和知識點三種類別。 所以,本研究將章和節分別作為第二和第三級別的類。
(3)第四級別的類。 即每個章節內容的知識點。
每個類都有對應的實體。 在類確定以后,需要明確類之間的關系。 本研究中類的關系為支撐、達到、包含、相關和順序。 這里給出闡釋分述如下。
(1)支撐關系:學生的培養是畢業要求為導向。《通風工程》課程的畢業要求均有教學目標作為其支撐。 因此,支撐關系主要存在于第一級別的類—畢業要求和教學目標之間。
(2)達到關系:任何課程內容的學習都是為了實現一個教學目標,所以達到關系主要存在于第一級別的類—課程內容和教學目標之間。
(3)包含關系:按照課程的知識體系,課程內容會包含章,章包含節,節包含具體的知識點。 某一個知識點也可能包含另一個知識點。 因此,包含關系體現在不同級別類之間的關系。
(4)相關關系:如果某幾個知識點之間存在相互聯系、相互影響和相互作用,則各知識點之間就是相關關系。
(5)順序關系:學習某幾個知識點具有明顯的先后關系,也就是學習某一個知識點后才能學習另一個,存在前驅后繼的關系,稱之為順序關系。
本文對類的屬性的描述主要集中在知識點這個類,因為每個知識點的學習要求都是不同的,主要從所屬章節、掌握程度和難易程度三個方面進行描述,如圖3 所示。 關于掌握程度的6 個等級使用的是布魯姆認知等級評定,逐級遞增。

圖3 數據屬性結構圖Fig. 3 Data property
1.2.3 實體、關系和屬性的確定
每個類對應著各種各樣的實體,具有相應的屬性。 實體關系可從類的關系繼承。 根據數據資源,本文共抽取了337 個實體。 根據類的層次結構,實體間主要為“包含”關系,例如,每一章包含若干節,每一節包含若干個知識點。 另一個主要關系為“順序”,屬于同一類之下的實體,如章和章、節與節、知識點和知識點之間,具有順序的關系,也即學習某一章節或知識點前需要先修習其他的章節或知識點。此外,知識點與知識點之間可能是相互關聯的,這里就存在“相關”的關系。 對于實體的屬性,按照類的相關屬性進行描述。
Neo4j 是一個NoSQL 的圖數據庫管理系統,優點是能夠直觀地顯示數據內容。 Neo4j 圖數據庫能夠提供眾多的語言接口,可以針對Java 語言進行數據和關系的提取。 本文將Protégé 的本體在Neo4j里進行展示,包括實體和關系,并將實體通過關系進行連接,進行知識圖譜的展示和檢索。 通過Neo4j中的Cypher 語句進行查詢,可以檢索相關的實體和實體間的關聯關系,以及相應的屬性。 基于Neo4j圖數據庫的局部顯示效果如圖4 所示。 由圖4 可知,知識圖譜以網狀圖的結構顯示,涵蓋了課程所有實體,以及實體間的關系和屬性。

圖4 基于Neo4j 圖數據庫的局部顯示效果Fig. 4 Local display of knowledge graph based on Neo4j graph database
為了方便教師和學生對知識圖譜的使用,提升用戶與知識圖譜之間的互動性,本研究設計開發了《通風工程》課程知識圖譜的教學平臺。 該平臺的主要分為2 個模塊,一是登錄模塊,二是主功能模塊。 在登錄模塊中,教師和學生以不同的身份進行登錄。 學生是普通用戶身份,能夠查看和查詢知識圖譜的信息;教師是管理員身份,不但能夠監管普通用戶的功能,還可以對知識圖譜進行信息維護。 在主功能模塊中,具有知識圖譜全貌展示、知識圖譜查詢、知識圖譜管理和用戶管理四項功能。 教學平臺的功能設計如圖5 所示。

圖5 教學平臺功能設計Fig. 5 Functional design of teaching platform
教學平臺的建設主要由3 部分組成:Web 前端界面、后端接口以及數據庫管理。 對此擬展開研究論述如下。
(1)Web 前端界面實現。 教學平臺的交互界面以Web 前端界面的形式呈現,使用瀏覽器即可訪問。 Web 前端界面使用目前流行的JavaScript 框架—Vue.js 作為應用框架,具有動態路由管理、角色權限分配等功能,并搭配了Element Plus 組件庫,功能豐富、界面美觀。 知識圖譜的可視化采用可視化圖表庫Echarts 中的關系圖實現,在展示知識圖譜信息的同時,還具有一定的交互性。
(2)后端接口實現。 教學平臺采用前后端分離的架構,Web 前端界面的部分數據需要通過訪問后端接口獲得進行展示。 后端接口使用現代、高性能的FastAPI 框架,實現了基于哈希密碼與JWT 令牌的加密登錄,基于SQLAlchemy 對用戶數據的增刪改查,基于Neo4j-driver 對知識圖譜數據的查詢與修改等功能。
(3)數據庫管理實現。 教學平臺使用的數據庫包括2 種:存儲用戶數據的SQLite 關系數據庫與存儲知識圖譜數據的Neo4j 圖數據庫,并使用python將數據庫操作與后端接口連接起來,為Web 前端界面提供操作數據。
為了方便教學平臺的部署與應用,平臺使用Docker 將以上3 部分分割出來,構建成3 個獨立的容器,并通過設置端口進行容器之間數據的傳遞。 另外,使用docker-compose 構建工具定義和運行多個容器,使部署更加快速和方便,并占用更少的資源。
(1)知識圖譜全貌。 登錄教學平臺后,首先展示的是知識圖譜的全貌。 根據知識圖譜的構建層次,界面上展示了畢業要求、教學目標、課程內容、章、節、知識點六個類的實體。 根據使用需要,可單獨展示或同時展示一類或幾類的實體。 當鼠標置于任一節點上,均可顯示這一實體的名稱和屬性;置于任一條連接線時都可顯示對應的關系。 知識圖譜的全貌如圖6 所示。 學生可以在學習課程的同時,縱觀課程的知識體系,掌握課程的脈絡,厘清學習路徑,進而從整體上提升學習質量。

圖6 知識圖譜全貌界面Fig. 6 Overview interface of knowledge graph
(2)知識圖譜查詢。 由于課程知識點較多,在知識圖譜全貌圖上進行知識點的人工查找,比較費時費力。 教學平臺可以實現知識節點的檢索。 利用Neo4j 的Cypher 語言查詢存儲的內容,再自定義處理器函數返回符合的數據給前端。 例如,知識圖譜查詢界面如圖7 所示。 圖7 中,在“類別”中選中“節”,填入節名稱“過濾式除塵器”,點擊查詢,便可在界面上顯示出該節點。 點擊“顯示關系”,可以顯示與該節點有關系的所有節點。 在這個例子中,這一節包含的所有知識點,以及各知識點所對應處的章都能夠顯示。 通過查詢功能,學生便可了解某一知識點的詳細情況,從而明確相關的學習要求。

圖7 知識圖譜查詢界面Fig. 7 Query interface of knowledge graph
(3)知識圖譜管理。 社會的發展促使知識的更新,任何一門課程的知識體系都不是一成不變的。教學平臺預留了課程知識圖譜的管理功能,包括添加知識和更新知識兩項功能,由管理員負責管理,如圖8 所示。 管理員可以將新增的知識點或更新的知識點以規范化的數據結構存儲在知識圖譜中。 例如,在添加知識界面中,管理員可以在對應的實體類別下,添加新增的實體,并為其賦予屬性;通過添加關系,建立該項關系與其他源實體之間的聯系。 由于友好的界面互動功能,管理員無需具備專業的編程知識,也可完成知識圖譜的管理工作。

圖8 知識圖譜中添加知識和更新知識界面Fig. 8 Knowledge adding and update interface
(4)教學平臺使用效果。 在《通風工程》開課期間,知識圖譜教學平臺向學生開放。 學生登錄后,在接觸課程的初期即可縱觀知識體系,了解學習的主體路徑。 當學習到具體的課程內容時,可以在知識圖譜上檢索到相應的知識點,明確該知識點的學習要求,更精準地把握知識掌握的程度。 課程結束以后,通過知識圖譜進行有效的復習,將所學知識融會貫通。從教師的應用角度,教學平臺能夠輔助課堂教學,向學生展示課程脈絡,提升教師的教學質量,同時,能夠站在領域前沿,將前沿知識更新至知識圖譜中,不斷修訂課程的知識體系。 從學生的使用效果角度,知識圖譜的信息化形式能夠助其更快、更準地吸收知識,更加有效地進行學習。
基于教育信息化的背景,本研究首次建立了工科專業—建筑環境與能源應用工程中《通風工程》課程知識圖譜的教學平臺,詳細地介紹了相關的建設方法,主要包括基于Protégé 本體編輯器的知識圖譜的構建、基于Neo4j 圖數據圖的知識圖譜的可視化,以及知識圖譜教學平臺的設計與應用。 該課程知識圖譜教學平臺的應用能夠提升學生把握課程整體結構和知識脈絡的能力,幫助學生規劃學習路徑,為精準化教學提供了技術保障。 同時,該課程知識圖譜教學平臺的設計思想、模式以及程序構架具有共通性,可推廣到其他專業課程教學平臺的建設中。