姜大志,黃瑞香
(汕頭大學工學院計算機系,廣東 汕頭 515063)
高等教育的專業人才培養目標[1-2]是一個專業對其所要培養人才的總體要求與期待,它既是國家及學校人才培養總目標的具體體現,又是專業培養方案和課程設置的基本依據.因此,專業人才培養目標在高等教育教學過程中占有重要地位.培養目標作為人才培養的綱領和根本,它的構建與測評[3]自然成為高等教育中一個重中之重的環節.但是,人才培養目標實現過程涉及到眾多問題,下面列舉其中的一些問題:
專業人才培養過程中,是否落實培養目標,落實了哪些培養目標?
針對具體專業課程,教授了哪些知識,培養了哪些能力,對能力的要求等級是什么?
學生作為教育的受體,他們認為人才培養目標或者課程培養目標實現了嗎?
專業人才培養過程中,能力培養方面的能級發展有沒有體現出由低到高自然規律?
僅依上述問題,可以發現這些問題都是圍繞著目標達成而展開的思考,而培養目標達成的判斷則是當前專業評估與認證的重點.對人才培養目標達成的考量[4-5],目前主要采用的方法是“成績分析法”和“評分表分析法”[6].成績分析法依據培養目標,形成畢業要求,逐條分解指標點到各門核心課程,以保證學生畢業時所學的知識達到畢業要求,從而保證達到本專業的培養目標.而“評分表分析法”評價學生特定能力表現的簡單有效方法,但是它的適應性有限,通常對主觀性較強的任務進行評價.
我們認為“成績分析法”和“評分表分析法”在人才培養目標測評上具有一定的作用.但是他們都是對目標達成的結果進行測量[7],缺乏對目標達成的形成過程進行有效探測.作為教育管理者和實施者,需要在更高的層次匯聚培養目標、以立體的角度觀視培養目標的實現過程、以漸進入微的方式測量培養目標的達成,以此來有效實現教育的內省與持續改進.
基于此目的,本文提出一套科學、規范、操作性強的方法框架實現專業培養目標的可觀可測.一般而言,培養目標的構建與實施,均是通過文本信息來傳播的,而文本挖掘這個工具正好可以對含有特定功能的文本進行深入而科學的分析[8].從主觀本文中探究特定規律和特征,找出與培養目標指標相關的文本特征,通過文本分析可以為培養目標跟蹤提供一智能化方法.我們不認為本文提出的方法可以取代“成績分析法”或“評分表分析法”,而是對培養目標評價的一個重要補充,借助現代信息化技術,可更嚴謹、客觀地審視專業人才的培養.
我們以汕頭大學計算機系的課程為例來闡釋基于文本挖掘的課程培養目標的智能化觀測方法.其方法框架如圖1所示:

圖1 基于文本挖掘的課程培養目標的觀測方法框架
各個部分的工作具體描述如下.
1)準備階段
在本文挖掘的準備階段,主要的工作是建立各類字典.本研究中主要建立了三種字典,分別是專業知識體系字典、CDIO[9-10]能力字典和Bloom[11]能力等級字典.CDIO大綱覆蓋了一個現代工程師應該具有的能力、素質和態度,主要包括技術知識和推理(主要包括由具體專業確定的相關科學知識、核心工程基礎知識和高級工程基礎知識,即專業知識體系字典中所包含的關于本專業的各類知識點);個人能力、職業能力和態度;人際交往能力;在企業和社會環境下構思、設計、實現和運作系統.
Bloom認知領域分類法把教學目標分類六個等級,從低級到高級分別為:認知、理解、應用、分析、綜合、評判.我們建立了Bloom能力等級字典,用來實現對能力進行有效的分級.
2)運行階段
運行階段的工作主要包括兩個部分,分別為文本預處理和文本分析.文本預處理的目的主要是使詞語轉換成程序能夠分析識別的語言.本文的預處理的過程包括文本數據的清洗[12],過濾干擾性數據信息,得到對文本分析有意義的句子[13],然后對過濾之后的文本進行分詞處理[14],主要運用動態規劃的方法,找到最大概率的詞語切分組合,這一部分的目的是為了能夠更好的提取有用信息來表示當前文本,為后續的文本表示和文本挖掘提供基本的元信息.之后根據分詞的結果和分析的需要選擇不同的文本的表達方法.根據后續的實驗結果顯示,本文使用的是實用效果更好的one hot representation模式的(BOW模型(bag of words))得到詞向量.
將文本轉化成詞向量之后,輸入的值是離散的高維的向量矩陣,為了使文本分析計算的效率更高和結果更加準確,還需要對生成的詞向量進行特征選擇和特征提取.根據特征項權重的計算,結合信息增益的方法提取最能表示文本信息的向量.后續相似度的計算就是使用得到的文本向量來計算教學大綱、學生報告等教學資料與之前構建的字典之間的相似度,根據相似度提取出教學大綱的知識點和能力范圍分布,學生報告的能力等級等.
本文選擇了基于向量空間模型和基于層次結構的樹的結構來對文本進行相似度的計算[15].因為單獨使用基于向量空間的相似度計算,并沒有考慮到文本之間的語義相似度,所以引入了語義結構,即本體結構,根據本體結構來構造文本特征項的本體集合,綜合本體集合來計算相似度.最后再借助潛在語義分析算法把對文本主題不相關的特征項剔除,降低詞向量的維度,來加快程序的運行速率.
本文的相似度計算主要用到三個方法,分別為:TF-IDF,LSI和doc2vec[16-18].前兩種方法不用訓練詞向量,最后一種方法用到了深度學習[19-20]的思想去訓練詞向量,使得詞向量為低維實數向量[21],根據訓練的結果來計算向量之間的相似度.但是這種深度學習的方法需要大量的語料庫來訓練文本的詞向量模型,而少量的文本進行訓練的話,得到的詞向量并不能很好的表示原來的文本信息.根據實驗結果顯示,在當前文本數據量下,前兩種方法的結合要比doc2vec的結果要好得多.前兩種方法TF-IDF,LSI用的是簡單的one hot representation文本表示方法,通過TF-IDF計算文本的詞頻矩陣和逆文檔頻率來表示文本的特征,然后計算文本特征的權重得到實數向量矩陣.為了擴展語義的豐富性,加入了大量的詞匯本體集合[22-23],對龐大的詞向量,最后使用LSI、SVD(奇異值分解)方法進行降維和語義的轉換[24],使得結果更加準確.
3)輸出階段
輸出階段主要的組成部分有:教學大綱知識視圖、教學大綱能力視圖、學生報告能力視圖和專業能力發展視圖.教學大綱知識視圖是針對某一門課程的教學大綱,結合專業知識體系字典,從大綱中挖掘出該課程所預設的教學知識點.教學大綱能力視圖則是大綱培養目標中所包含的各類能力.學生報告能力視圖則是從學生的視角,來分析學生在其報告中對能力培養的反思.專業能力發展視圖是從能力形成性的角度出發,刻畫專業課程對能力要求的發展變化曲線.其主要結果將在下一節詳細介紹.
首先,本文根據汕頭大學工學院計算機系開設的《智能系統》課程的教學大綱,我們用上述提到的方法框架提取了課程的知識點.由于我們提出的方法是具有通用性、系統性的方法,因此提取出來的數據相對來說略顯雜亂,需要后續完善程序來進一步清洗數據.
通過去重,我們提取了《智能系統》包含的12個知識點,表1中的第二列“類別”,是我們為了方便表述起見手動添加的,目前我們的方法框架還沒有處理對知識點進行歸類的能力.通過手動歸類后發現,《智能系統》課程設計四個大的模塊,分別為搜索、知識表和知識推理、智能算法和數據科學.

表1 教學大綱知識視圖
根據各門課的教學大綱和CDIO大綱提取該門課程所涉及的能力,若大綱句子所描述的能力與CDIO中的某個能力的相似度大于某一個閾值時,則提取出該能力,并根據該能力的分組標記(在構建能力字典時已經標定)輸出其對應的具體能力.針對《智能系統》的教學大綱,加入本體詞集合后的提取結果如表2所示.

表2 教學大綱能力視圖
通過上表發現,本文的方法提取了《智能系統》課程教學大綱中的與CDIO能力對應的9條能力,換言之,該課程擬在9個方面對學生進行能力培養,所涉及的一級能力3條,二級能力7條,三級能力有9條.
可以根據Bloom分類法對教學大綱中所涉及能力表述進行能力分級.具體做法是,首先遍歷大綱中的所有句子,然后逐句地與bloom分類法的能力等級詞語計算相似度,提取出大綱描述的能力,并根據其所在的分組的標記輸出其能力等級.能力等級的提取結果更加精確,也能更好的區分出哪些能力強調的強度更大.表3是加入本體集合前后能力等級的比較.

表3 教學大綱能力等級視圖
上表中,看似在方法框架中未加本體集合和加入本體集合,兩種做法的結果相差不大,但是在我們進行廣泛計算與分析時發現,缺乏本體集合的方法,會使得課程大綱的能力等級偏高.因為Bloom分類法是一個基于語言表述的模糊分類法,教師在制定教學大綱時,很難嚴格地按照Bloom的用詞來規范能力表述,此外,有些非謂語詞也會干擾能力的等級劃分.加入本體集合,可以有效弱化由于用于的模糊性和歧義性造成的能力等級標定不準確.比喻說上表中的“撰寫論文陳述計算機誕生歷史背景、進程及計算機軟硬件和網絡技術發展歷程”,該句中,與Bloom分類法用詞相關的只有“發展”,因此未加本體集合的方法把該句定為非常高的五級:綜合,這顯然是不恰當的,但是該句的核心謂語詞為陳述,在Bloom分類法中,并沒有陳述二字,在Bloom的Level1認知中,有“Recite(詳述)”,如果把陳述劃定為詳述類,把該句定為Level1,又明顯拉低了能力等級.通過加入本體集合,我們對這句話綜合評定,定為Level2理解.
由于學生課程報告的文檔內容比較多,漢語語言的語義復雜性比較高,并且報告所使用的語言描述會比較多樣化,不規范等因素,就會使得在學生的課程報告對CDIO能力的提取嚴重缺乏準確性,因此本文引入本體的概念,擴大了能力的本體集合,加入了知網上的同義詞、近義詞等,減小了漢語語義的復雜性對句子、段落和文本相似度的影響.表4是對學生《智能系統》課程報告進行分析,評判其相關用詞與CDIO能力的相似度,通過設定相似度的閾值(0.28),提取出學生報告比較有可能包含的能力如表4所示.

表4 學生報告能力視圖
通過預設的閾值,我們在學生的報告中獲取了7條能力,與大綱中提取的能力相比少了2條,而且能力點有一些不同,比喻說“解決方法和建議”,在教師教學大綱中沒有,而在學生報告中有涉及.對于個人能力和態度,學生認為在“求知欲和終身學習”方面有培養,而教學大綱中是期望在“創造性思維”方面有培養,但是這并不表明學生課程報告中沒有涉及到“創造性思維”的能力,而是相似度太低(0.0892).究其原因,我們認為有以下幾種可能性:
1)教師可能有花精力培養某一能力,但是學生沒有認真書寫報告,應付交差,造成報告千篇一律,沒有針對性和差異性,造成在報告中難以發現該能力的蹤跡;
2)課程大綱雖然預設了該能力目標,但是卻沒有設計相關的教學環節對該能力培養,自然也就很難體現到學生的報告中;
3)該能力的體現與課程報告不相關.
但是無論如何,該結果視圖對能力的刻畫還是有不少的參考價值,雖然不能全面囊括能力,但是對于一些重要的能力,均能提取出來,尤其是在二級能力上準確性相對較高,對教師的教學總結與反思起到了很好的借鑒作用.
我們選擇計算機專業三門核心基礎課程來檢驗專業能力發展的變化,選擇的課程分別為“程序設計基礎”(第一學年第一學期專業基礎課程)、“計算機組織與體系”(第二學年第一學期專業必修課程)和“操作系統原理”(第三學年第一學期專業必修課程).對其進行能力提取并進行能力等級劃分,構建在不同能力的數量的變化曲線,如圖2所示.

圖2 專業能力的發展視圖
上圖中第一排的是各門課程未加入本體集合的能力等級分布,第二排是加入本體集合的能力等級分布.圖中第一列是第一學年課程的能力等級分布圖,第一學年的等級應該分布在三等級往下較多,加入本體集合后分布趨勢更明顯,把原來誤判為第五等級的糾正為第三等級及以下.同理,圖中第二列是第二學年課程的能力等級分布圖,第二學年能力等級側重在三級到五級,三級的稍多一些,有四五級的能力,但不是特別多,符合趨勢分布.圖中第五列是最后一學年課程的能力等級分布圖,能力等級應該更側重于第三等級及以上,而本文使用了本體集合后,分布效果更好.圖二和圖四比較也能看出能力等級分布有了改變,對能力的要求由低等級往高等級發展.因此橫向縱向比較均可以看出隨著學習年度的增加,能力等級分布的等級也逐漸升高,而這種變化趨勢在本文加入本體集合后更加明顯.
本文的基本思想是通過相似度的計算,提取出文本中與標準相似的知識點或者能力.對課程大綱知識點的提取主要是根據知識體系的標準進行提取,對大綱能力范圍的提取主要是根據CDIO能力大綱提取,對大綱能力等級的提取主要是根據Bloom等級分類法的標準進行提取.在處理過程中加入本體集合對相似度進行計算,相似度計算是為了降低本體集合的巨大性造成的復雜性,我們利用LSI技術進行降維,轉換成語義上的相似度,增加了結果的準確性.最后我們形成了四類視圖供教學管理者和實施者進行參考,分別是教學大綱知識視圖、教學大綱能力視圖、學生報告能力視圖和專業能力發展視圖.通過該智能化分析,初步實現課程培養目標的可觀與可測性,其結果不僅可以給教師提供有價值信息和反饋,亦可為教育評估、認證提供必要的參考性指標.
當然,本文提出的模型還有待進一步完善提升.在后續工作方面,我們一方面需要建立語料庫技術,通過語料庫技術,提升能力和能級的處理與分析能力,使得能力分析變得更準確.此外,我們的能力提取和能力等級分析還沒有真正關聯起來,后續可以對能力語句進行標注分類,形成能力類別庫,采用模型訓練的方法對這能力范圍和能力等級建立關聯,使得本文的方法不僅能夠提取教學大綱中的能力,還能夠分析出每一條能力所涉及的能力等級信息.