周顯春 魏爽 張晶 喬艷琰



摘? 要: 知識點是知識體系當中最基本的單元,以它為基礎開展教學活動可以讓教師獲得職業成就感,讓學生克服自卑感。但是,學科知識點的提取仍然由人工完成,費時費力效率低,而且沒有考慮知識點之間的相關性。文章以教育技術的重要理論為依據,構建學科知識點模型和知識思維導圖;利用jieba分詞工具和Apriori方法分別完成知識點及知識點關系的提取;最后,實現知識點題庫系統,為學習路徑的推薦提供了資源。
關鍵詞: 知識點; 智能提取; 試題庫; 實現
中圖分類號:TP311? ? ? ? ? 文獻標志碼:A? ? 文章編號:1006-8228(2018)12-40-04
Abstract: The knowledge point is the most basic unit in the knowledge system. The knowledge point based teaching activities can enable teachers to get a sense of professional achievement and enable students to overcome their inferiority complex. But, at present, extraction of knowledge points by artificial method is time-consuming, laborious and low efficiency, and does not take into account the correlation between knowledge points. This paper, based on the important theory of education, constructs a model of subject knowledge point and a map of knowledge thinking, the Jieba segmentation tool and Apriori method are used to complete the extraction of knowledge points and the correlation between the knowledge points, respectively. On this basis, the knowledge point library system is implemented to provide the resources for the learning path recommendation.
Key words: knowledge point; intelligent extraction; test question bank; implementation
0 引言
知識點是知識體系當中最基本的單元,它也是在教學過程中傳遞教學信息的最小單元[1]。知識是一種特別重要的生成資源特別是在高校,研究如何高效地獲取、傳播、使用知識是十分重要的工作。教育學、心理學的大量教學實踐已經證明,將學科講授教學內容劃分知識點以及知識點直接隱藏關聯關系,可幫助學生理清學習重點、難點以及所學知識的前后依賴關系,可以避免學生在學習中感到迷茫,提高教和學的效率和讓教師的成就感大幅提升,克服學生的自卑[2]。
隨著互聯網+、大數據技術、人工智能技術高速發展情況下,利用這些技術為教育行業服務,如何幫助大部分學生在有限的時間內完成有用知識的獲取,或者說找到一條高效的學習知識的路徑是一個值得研究的課題[3-4]。學科知識點是學習路徑推薦的資源的組成單位。但是,學科知識點的提取仍然人工完成,費時費力,而且效率低[5],既沒有考慮知識點之間的相關性,也影響學習推薦路徑的優化。
針對以上問題,本研究以教育技術的重要理論為依據,構建學科知識點模型、知識思維導圖;在此基礎上,利用jieba分詞工具、Apriori方法分別完成知識點、知識點關系的提取;最后,實現知識點題庫系統,為學習路徑的推薦提供了資源。
1 知識點與知識點關系的提取
首先利用布魯姆認知目標模型理論、思維導圖、jieba工具完成知識點的提取,接著采用Apriori分析知識點的前后關系或相關性。
1.1 知識點的提取
為了便于理解,知識點的提取以大學計算機基礎課程為例。首先構建大學計算機基礎課程的知識體系,接著構建該課程的思維導圖,最后采用jieba工具完成知識點提取。
1.1.1 學科知識體系的構建
布魯姆教育認知目標可以分為:識記、領會、應用、分析、綜合、評價[6]。本研究考慮到教學目標的現實需要,將大學計算機基礎課程知識點的難度分為識記、領會、應用[7]。以此為基礎,結合大學計算機基礎課程,將知識點劃分為起源、發展、定義、基本概念、分類、功能、操作(基本操作)、設置、配置、管理。如圖1所示。
1.1.2 思維導圖的創建
以大學計算機基礎與實訓教程的第一章信息表示內容為例,建立思維導圖。如圖2所示。
1.1.3 利用jieba工具提取知識點
提取關鍵字的方法,目前可以分為基于字典和詞庫匹配、詞頻度統計、知識理解的分詞方法,是解決語義分析,文本分類等問題的前提條件。本文采用結巴分詞工具。
jieba分詞工具基于前綴字典分詞方法,先生產有向無環圖(DAG)。如果在DAG中,節點集V={0,…,n},其中n表示節點序號。?(u,v)∈E其中u,v∈V,u<v,E表示圖的邊,其值為聯合概率的最大值。
接著采用動態規劃求解最大路徑,di=max{dj+w(j,i)}
(j,i)∈E;對于未登錄詞識別,采用HMM模型,求最大的條件概率:max P{t1,…,tn|c1,…,cn},ti表示ci對應的狀態,接著采用Viterbi算法:Pt+1(i)=max[Pt(j)aji]bi(ct+1)求解狀態序列,改善分詞的結果。
為了更加貼近應用,數據來源為國家計算機等級考試的要求相符的題庫。利用學科知識點、思維導圖建立自定義字典。
利用jieba提取關鍵的代碼如下:
jieba.load_userdict(dicname) # dicname為自定義詞典的
路徑,導入自定義的字典
jieba.analyse.extract_tags(text, topK=5,
withWeight= True, allowPOS=()) # 提取關鍵字
[('計算機', 0.7804811569680808), ('Word 2010',
0.7121107125313131), ('進制', 0.70363211136040404),
('Windows ', 0.70023623445272729), ('網絡',
0.66168734917858588)] #排在前5位的輸出結果
1.2 知識點關系的提取
獲取的知識點之間存在上位、下位、關聯、同義等四種關系[8],在知識點集合或在學生測試之后采用Apriori算法[9]對知識點之間關系進行關聯分析。如果直接存在上述的四種關系,則在知識點之間建立關系,否則忽略。其知識點關系提取流程如圖3所示。
以大學計算機基礎課程為例建立知識點之間的關系。例如,掌握的進制的概念才可以學習進制直接的轉換,接著才可以學習字符編碼,而字符編碼,按照單、雙字節的難易先后順序,先要學習西文字符編碼,再學習漢字編碼,其知識點關系如圖4所示。
2 基于知識點的題庫系統模型構建及實現
根據上面建立的知識點、知識點之間的關系,建立知識點到考試題目的對應管,為后面的個性化知識點的推薦打下基礎。
2.1 數據庫表的設計
為了存儲已經獲得知識點、知識點之間關系的信息,需要建立5張數據庫表。其中,知識點總表,包括知識點序號、知識點名稱、前后關系(自動生成)、難易程度(自動生成);知識點信息表,包括知識點序號、課程名稱、章號、節號、知識點名稱、試題類型;學生信息表,學號、姓名、班級、手機號、Email;教師信息表,職工號、姓名、單位、手機號、Email;試題表,包括試題序號、章節號、知識點序號、試題內容、試題答案、試題分數。管理員信息表,包括序號,姓名,單位[8],角色,權限(自動生成)。
2.2 基于知識點的題庫系統功能設計及實現
除了以知識點為基礎組織學生學習、教師開展教學,還可以通過課前預習、課間練習、課后測試等環節對學生的掌握知識點的情況進行分析,根據分析結果調整學習和教學內容,或者結合學生信息(如學習風格、基本信息)進行個性化學習內容、自評內容的專題推薦。根據上述需求,將題庫管理系統安裝用戶的角色劃分為三個基本子模塊。各個模塊的具體內容如圖5所示。
本系統界面采用PyQt5工具,它是作為一套Python模塊實現的,非常適合開發GUI可視化界面。其中,前后關系生成的代碼如下[10]。
#生成前后關系,即知識點關系的代碼
def generateRules(dataSet, supportedData,
minConfidence=0.7):
# 函數參數分別表示頻繁項集列表、帶有支持度的頻繁項
集、最小可信度的指標值
RelationRuleList=[] #定義了關聯規則的列表
for item in range(1, len(dataSet)): #從1開始,單個元素的
項集不存在關聯
for freqenceSet in L[item]:
H=[frozenset([i]) for i in freqenceSet]
#遍歷L中的頻繁項集
if (j>=2): #如果頻繁項集元素數目大于等于2,那么一定要
對它合并
rulesFromConseq(freqSet, H, supportedData,
RelationRuleList, minConfident)? #生成候選關聯知識關系集
else: #如果元素個數為1
computerConfidence(freqenceSet, H, supportedData,
RelationRuleList, minConfident) #計算可信度值,評估規則
return bigRuleList
3 總結
本文以教育技術的重要理論為依據,構建學科知識點模型、知識思維導圖。在此基礎上,利用jieba分詞工具、Apriori方法分別完成知識點、知識點關系的提取,完成知識點題庫系統,為學習路徑的推薦提高資源。但是,仍然存在很多需要進一步研究的內容。例如,結巴分詞工具需要字典,尤其對于專業知識點提取,需要專家的參與,采用人工方法建立專業字典,導致知識點沒有完全智能化提取。與深度神經網絡結合研究,讓字典庫智能化是未來的研究方向之一。
參考文獻(References):
[1] Georgiev T. M-Learning-a new stage E-Learning[C]//International Conference on Computer Systems and Technologies, Compsystech'2004 of E-Learning,2004.
[2] 李剛.基于知識點及關聯的個性化教學系統研究[D].西北大學,2011.
[3] 劉萌,閻高偉,續欣瑩.基于知識點網絡的自動化專業學習路徑推薦[J].計算機仿真,2016.33(6):180-184
[4] 朱艷茹,范亞芹,趙洋.基于知識圖譜的自適應學習系統知識模型構建[J].吉林大學學報(信息科學版),2018.3.
[5] 張玉芳,楊芬,熊忠陽等.基于上下文的領域本體概念和關系的提取[J].計算機應用研究,2010.27(1):74-76
[6] 布魯姆.教育目標分類學[M].華東師范大學出版社,1986.
[7] 熊明科.基于知識點的初中化學診斷性練習推薦系統研究[D].中央民族大學,2017.
[8] 李剛.基于知識點及關聯的個性化教學系統研究[D].西北大學,2011.
[9] 閔宇鋒.網絡教學系統中的可視化學習監控機制[J].現代教育技術,2010.20(1):92-96
[10] [美]Peter Hrrington著,李瑞等譯.機器學習實戰[M].人民郵電出版社,2013.