周傳生, 周志龍, 王嘉鑠
(1. 沈陽師范大學(xué) 軟件學(xué)院, 沈陽 110034; 2. 倫敦大學(xué)學(xué)院 機械工程學(xué)院, 倫敦 201103;3. 倫敦大學(xué)學(xué)院 醫(yī)學(xué)院, 倫敦 201103)
近年來,隨著SMART教育[1]、MOOC教育[2]、STEAM教育[3]和學(xué)習(xí)分析技術(shù)[4-5]的應(yīng)用與逐步普及, 傳統(tǒng)教育的時空界限正在被打破, 混合式教學(xué)模式[6]正逐步流行, 基于數(shù)據(jù)分析技術(shù)的數(shù)據(jù)驅(qū)動的“因材施教”正逐步實現(xiàn)。 學(xué)習(xí)分析技術(shù)就是通過對學(xué)習(xí)者相關(guān)學(xué)習(xí)數(shù)據(jù)和環(huán)境數(shù)據(jù)的分類、回歸與聚類,推動教育工作者嘗試建立學(xué)習(xí)者的數(shù)字畫像, 并利用該類畫像了解和優(yōu)化學(xué)習(xí)者的自我學(xué)習(xí)和學(xué)習(xí)環(huán)境,推動學(xué)習(xí)者個性化教育的開展和實施。 目前,基于數(shù)字畫像的研究大多數(shù)集中在建模和教學(xué)實踐2個方面。 在學(xué)習(xí)者畫像模型構(gòu)建方面, 曼加拉姆·??伺迦R等從學(xué)習(xí)者的學(xué)習(xí)態(tài)度和學(xué)習(xí)動機的角度構(gòu)建用戶畫像[7]; 馬蒂提出了學(xué)習(xí)者感知模型, 來探究影響學(xué)習(xí)者在線學(xué)習(xí)效果的關(guān)鍵畫像標(biāo)簽特征[7]。 陳海健等[8]從學(xué)習(xí)者的基本屬性、知識點興趣、學(xué)習(xí)者類型和學(xué)習(xí)風(fēng)格偏好4個維度構(gòu)建了學(xué)習(xí)者畫像, 并進行學(xué)習(xí)者個性化教學(xué)探討。在學(xué)習(xí)者畫像應(yīng)用實踐方面, 顧小清等[9]分析了學(xué)習(xí)者畫像的構(gòu)建對于促進學(xué)習(xí)支持方案改進的重要作用; 肖君等[10]對移動 MOOC 環(huán)境下的學(xué)習(xí)者畫像進行了分析和應(yīng)用研究。 本文從學(xué)習(xí)者數(shù)字畫像的實現(xiàn)技術(shù)方面,以學(xué)生綜合素質(zhì)評價為歸依, 研究提出基于XML技術(shù)的開放式學(xué)習(xí)者數(shù)字畫像的構(gòu)建及其實現(xiàn), 為學(xué)習(xí)者數(shù)字畫像應(yīng)用軟件的設(shè)計提供柔性支持。
根據(jù)《教育部關(guān)于加強和改進普通高中學(xué)生綜合素質(zhì)評價的意見》可以建立學(xué)習(xí)者數(shù)字畫像第一個層次,包括思想品德、學(xué)業(yè)水平、身心健康、藝術(shù)修養(yǎng)、社會實踐等5個方面的數(shù)字畫像,再對每個畫像按照軟件項目管理的工作分解(work breakdown structure,WBS)模式,進行任務(wù)分解,形成第二個層次的學(xué)生數(shù)字畫像元素的預(yù)備集合,并結(jié)合德爾菲法[11](Delphi method)和層次分析法[12](analytic hierarchy process,AHP)等對第二個層次的學(xué)生數(shù)字畫像元素的預(yù)備集合進行數(shù)字化的有效性分析,最后形成第二個層次的學(xué)生數(shù)字畫像元素的集合;然后針對第二個層次的學(xué)生數(shù)字畫像元素進行上述步驟形成第三個層次的學(xué)生數(shù)字畫像元素集合。以此類推,形成多層次立體化學(xué)生數(shù)字畫像及子畫像的模型,如圖1所示。
圖1 學(xué)習(xí)者綜合素質(zhì)評價驅(qū)動的數(shù)字畫像層次結(jié)構(gòu)示意圖Fig.1 The hierarchical structure of LDP from evaluation of learners’ comprehensive quality
在信息技術(shù)環(huán)境下對學(xué)習(xí)者實施因材施教的需求因情境而各異。從服務(wù)提供者來看,包括教育管理部門和教育管理者、學(xué)科教師、家長、學(xué)習(xí)者自己,還包括提供教育服務(wù)的社會機構(gòu)與個人;從服務(wù)提供的場地來看,包括學(xué)校、教室、實驗室、家庭、社區(qū)和其他場所,還包括線上場所;從服務(wù)提供的時間來看,包括學(xué)校上課時間、輔導(dǎo)答疑時間、作業(yè)時間、實驗時間、實踐時間、網(wǎng)上學(xué)習(xí)時間等,每個不同的應(yīng)用場景需求所要求的都是學(xué)習(xí)者數(shù)字畫像的一個側(cè)面。為了給使用者提供便捷的數(shù)據(jù)畫像建模,本文設(shè)計了一個基于數(shù)據(jù)爬蟲的開放式學(xué)生數(shù)字畫像構(gòu)建流程,其主要環(huán)節(jié)包括數(shù)據(jù)獲取、數(shù)據(jù)處理、數(shù)據(jù)分析和數(shù)據(jù)展示,其邏輯如圖2所示。
圖2 開放式學(xué)習(xí)者數(shù)字畫像構(gòu)建與應(yīng)用的一般流程示意圖Fig.2 The diagram of general workflow of open LDP construction and application
在進行學(xué)習(xí)者數(shù)字畫像構(gòu)建元素構(gòu)建過程中,原始數(shù)據(jù)的獲取是第一個關(guān)鍵環(huán)節(jié)。然而其數(shù)據(jù)是可以來源于不同的信息系統(tǒng)的,如來自于人人通空間、作業(yè)系統(tǒng)、慕課微課、軌跡系統(tǒng)、閱讀系統(tǒng)、網(wǎng)上交流、錯題管理、課堂學(xué)習(xí)、教師評價系統(tǒng)、家校共育系統(tǒng)等,這些系統(tǒng)有的在教育領(lǐng)域中,有的在社交平臺中,也有的是在其他行業(yè)系統(tǒng)中。不同的數(shù)據(jù)源系統(tǒng),由于其實現(xiàn)的數(shù)據(jù)庫、開發(fā)語言和運行平臺的不同,采用API直接連接訪問獲取的方式難度很大。這里設(shè)計使用可配置的數(shù)據(jù)網(wǎng)絡(luò)爬蟲[13]的方式進行獲取??膳渲脭?shù)據(jù)網(wǎng)絡(luò)爬蟲的設(shè)計可以有2種形式:一種是自動運行的網(wǎng)頁爬蟲,可以根據(jù)用戶的設(shè)置在用戶的網(wǎng)絡(luò)空間中自動爬取網(wǎng)絡(luò)數(shù)據(jù)(含公開數(shù)據(jù)和系統(tǒng)授權(quán)爬取數(shù)據(jù));另外一種可以稱之為DB爬蟲,即直接對有關(guān)系統(tǒng)的數(shù)據(jù)(需要授權(quán)或提供數(shù)據(jù)接口)直接進行爬取,當(dāng)然也是可以自動運行的??膳渲玫臄?shù)據(jù)爬蟲設(shè)計還可以配置數(shù)據(jù)源配置機制、主題數(shù)據(jù)配置機制、數(shù)據(jù)格式配置機制等,從而提供整個系統(tǒng)的個性和柔性??膳渲玫臄?shù)據(jù)匯聚處理就是數(shù)據(jù)在爬取以后,根據(jù)應(yīng)用主題對數(shù)據(jù)進行匯聚、清洗和存儲,同時經(jīng)過聚類、去重、規(guī)范等。不同的數(shù)據(jù)要經(jīng)過不同的數(shù)據(jù)分析[14],如聚類分析、一致性分析等,這些分析算法有的需要新開發(fā),有的已經(jīng)開發(fā)使用了,它們使用的輸入數(shù)據(jù)類型和個數(shù)不同,輸入的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)接口不同,輸出的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)也不同,因而需要制定自適應(yīng)動態(tài)調(diào)用機制,既要保持這些處理模塊的使用,又要保持其規(guī)范性和靈活性,還要通過相應(yīng)的XML Schema[15]實現(xiàn)可配置的數(shù)據(jù)匯聚處理機制。
在整個學(xué)習(xí)者數(shù)字畫像的數(shù)據(jù)存儲實踐中,每個層次的數(shù)據(jù)畫像都是一個主題數(shù)據(jù)集合,而每個主題數(shù)據(jù)集合又可以嵌套包含更多的子主題數(shù)據(jù)集合。從數(shù)字畫像的構(gòu)成可以看到,主題數(shù)據(jù)集合都是結(jié)構(gòu)化數(shù)據(jù),而所有的非結(jié)構(gòu)化數(shù)據(jù)都會被處理成結(jié)構(gòu)化數(shù)據(jù)進行處理和存儲,這樣就可以采用數(shù)據(jù)庫或數(shù)據(jù)倉庫或利用數(shù)據(jù)中臺的方式進行主題式數(shù)據(jù)存儲和處理,其邏輯結(jié)構(gòu)如圖3所示(以語文學(xué)業(yè)為例)。
圖3 學(xué)習(xí)者語文學(xué)業(yè)數(shù)字畫像數(shù)據(jù)存儲示意圖Fig.3 The diagram of data storage of learners’ language LDP
學(xué)習(xí)者數(shù)字畫像是一個樹型結(jié)構(gòu)的多個主題數(shù)字畫像集合,包含一個根節(jié)點(學(xué)習(xí)者完整的數(shù)字畫像)、若干個中間節(jié)點(局部畫像并由其他更細粒度的局部畫像構(gòu)成)以及若干個葉子節(jié)點(不包含更細粒度畫像的局部畫像),其XML描述見表1。
表1 學(xué)習(xí)者數(shù)字畫像的XML描述Table 1 The XML description of LDP
在完成學(xué)習(xí)者數(shù)字畫像數(shù)據(jù)的獲取、清洗、分析、存儲之后,需要對學(xué)習(xí)者數(shù)字畫像進行可視化展示,這可能包括列表展示、圖表展示、雷達圖展示、地圖式展示,乃至視頻類型展示等。不同的展示模塊使用不同的展示技術(shù)(即解析引擎),輸入的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)格式差距較大,需要根據(jù)可視化展示模塊及其相關(guān)的輸入的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)格式,設(shè)計與數(shù)據(jù)無關(guān)的數(shù)據(jù)表示規(guī)范,設(shè)計與數(shù)據(jù)無關(guān)的數(shù)據(jù)解析生成引擎,自動生成可視化展示模塊相對應(yīng)的輸入數(shù)據(jù)和數(shù)據(jù)格式,其邏輯如圖4所示。
圖4 可配置數(shù)字畫像解析引擎管理機制示意圖Fig.4 The diagram of configurable of engine management of LDP
學(xué)習(xí)者數(shù)字畫像數(shù)據(jù):該類數(shù)據(jù)是根據(jù)學(xué)習(xí)者綜合素質(zhì)評價結(jié)合具體的應(yīng)用獲得的主題數(shù)據(jù),是從學(xué)習(xí)者各類數(shù)據(jù)源系統(tǒng)中按照應(yīng)用主題的要求經(jīng)過獲取、清洗和分析匯聚后的數(shù)據(jù)。
可配置展示格式列表:這是一個基于XML的可配置展示格式文件列表,可以存儲于數(shù)據(jù)庫或文件中。因同一種主題數(shù)據(jù)基于其數(shù)字畫像應(yīng)用場景的不同而需要不同的展示格式,可以采用不同的格式文件進行約束。
數(shù)字畫像管理引擎:該引擎根據(jù)學(xué)習(xí)者數(shù)字畫像的主題數(shù)據(jù)和展示格式要求,動態(tài)調(diào)用對應(yīng)的數(shù)據(jù)展示格式引擎對畫像數(shù)據(jù)進行解析并生成對應(yīng)的數(shù)字畫像。
可配置專項引擎列表:這是一個基于XML的可配置引擎管理列表,可以存儲于數(shù)據(jù)庫或文件中。不同的解析引擎可以采用不同技術(shù)、算法和開發(fā)語言實現(xiàn),這些引擎可以被數(shù)字畫像解析引擎動態(tài)調(diào)用。
在學(xué)習(xí)者數(shù)字畫像解析實現(xiàn)過程中,一種是數(shù)字畫像展示格式的可配置設(shè)計,另外一種是數(shù)字畫像解析引擎的可配置管理設(shè)計,都需要采用XML技術(shù)進行柔性設(shè)計和管理??膳渲媒馕鲆婀芾淼腦ML描述示例見表2(以JAVA為例,設(shè)計者可以進行自定義)。
表2 可配置解析引擎管理的XML描述示例Table 2 The XML description of configurable engine management
學(xué)習(xí)者數(shù)字畫像的管理引擎是用來管理其他數(shù)字畫像解析引擎的引擎,在軟件設(shè)計和實現(xiàn)的過程中,其模塊可以是固定命名的,如命名為“Portraits-Engine”,其對應(yīng)的JAVA類為“Portraits-Engine.class”。因為學(xué)習(xí)者數(shù)字畫像因不同的應(yīng)用場景其所需要的顯示格式等也不盡相同,因而也需要由不同的解析引擎去進行解析并與輸入的畫像數(shù)據(jù)進行綁定(如圖4所示)。為了保障這種現(xiàn)實擴展性的需要,對這些靈活多變的解析引擎設(shè)計了基于XML可配置的解析引擎管理列表(見表2)。為了實現(xiàn)學(xué)習(xí)者數(shù)字畫像的管理引擎對這些解析引擎的動態(tài)調(diào)用,這里示例了通過JAVA來動態(tài)加載解析引擎模塊并執(zhí)行其相應(yīng)的調(diào)用。以“雷達模式”畫像解析引擎及其JAVA調(diào)用為例,雷達引擎名字為“Radar”,JAVA類名為“Radar.class”,其中一個方法為“xmlData(String dataID)”。具體JAVA實現(xiàn)如圖5所示。
public class EngineManager { ……∥使用 ClassLoader來加載“雷達模式”畫像解析引擎Radar.classClassLoaderEngineloader;EngineLoader = new ClassLoader (″C:\Radar.class″);Class objClass =EngineLoader.loadClass(″Radar″);ObjectradarEngine = objClass.newInstance();∥使用reflect機制來獲取Rader引擎的″xmlData″方法Methodm1 = objClass.getMethod(″xmlData″, new Class[ ]{String.class});Object objData[] = { new String (″dataID″), null};m1.invoke(radarEngine,objData); ∥動態(tài)啟動Radar解析引擎及其方法…… }
伴隨著SMART教育、MOOC教育、教師的網(wǎng)絡(luò)研修等各種軟件平臺和信息設(shè)備的應(yīng)用與普及,數(shù)據(jù)驅(qū)動的智慧教育環(huán)境和教育教學(xué)新生態(tài)正在逐步構(gòu)建,教育正逐步向多元化、數(shù)字化、網(wǎng)絡(luò)化和智能化發(fā)展,基于數(shù)據(jù)分析技術(shù)的數(shù)據(jù)驅(qū)動“因材施教”正在逐步實現(xiàn)。學(xué)習(xí)者的數(shù)字畫像就是通過測量、收集、分析和報告有關(guān)學(xué)習(xí)者及其背景和學(xué)習(xí)行為的相關(guān)數(shù)據(jù),采用數(shù)據(jù)驅(qū)動的方式了解和優(yōu)化學(xué)習(xí)者的學(xué)習(xí)過程及學(xué)習(xí)環(huán)境,助力學(xué)習(xí)者個性化教育的開展和拓展。本文以《教育部關(guān)于加強和改進普通高中學(xué)生綜合素質(zhì)評價的意見》提出的學(xué)生綜合素質(zhì)為維度,結(jié)合教育教學(xué)過程的實際需求,針對學(xué)習(xí)者數(shù)字畫像的構(gòu)建過程,提出基于學(xué)生綜合素質(zhì)評價的開放式立體化的學(xué)習(xí)者數(shù)字畫像的邏輯結(jié)構(gòu),采用XML技術(shù)對其在具體的應(yīng)用與實現(xiàn)過程進行了設(shè)計,并從技術(shù)層面探討了其管理及應(yīng)用的柔性實現(xiàn)。