葉俊民,趙麗嫻,羅達(dá)雄,王志鋒, 陳 曙
1(華中師范大學(xué) 計(jì)算機(jī)學(xué)院,武漢 430079) 2(華中師范大學(xué) 教育信息技術(shù)學(xué)院,武漢 430079)
以MOOC為代表的在線學(xué)習(xí)社區(qū)應(yīng)用的普及,為在線學(xué)習(xí)者提供了越來(lái)越多的學(xué)習(xí)資源和學(xué)習(xí)機(jī)會(huì),同時(shí)他們?cè)趯W(xué)習(xí)過(guò)程中也會(huì)產(chǎn)生各種各樣的問(wèn)題,這時(shí)如何有效地為這些學(xué)習(xí)者及時(shí)解決這些問(wèn)題,就是一個(gè)值得研究的課題.依據(jù)在線學(xué)習(xí)者的行為來(lái)推薦問(wèn)題回答者則是解決該問(wèn)題的一種有效途徑.為此,本文提出了基于學(xué)習(xí)者行為的論壇問(wèn)題回答者推薦算法.
國(guó)內(nèi)外相關(guān)研究現(xiàn)狀如下:Bhat 等人[1]揭示了Stack overflow學(xué)習(xí)社區(qū)中問(wèn)題得以解決的時(shí)長(zhǎng)現(xiàn)象,即大部分問(wèn)題在一小時(shí)內(nèi)得到解答,但有30%左右的問(wèn)題回答要在一天之后才能完成,還有許多問(wèn)題的回答時(shí)間超過(guò)一天;Greer 等人[2-4]研究了典型問(wèn)答社區(qū)中成功為少數(shù)學(xué)習(xí)者及時(shí)推薦問(wèn)題解答的回答者特征,這些人員通常在多個(gè)不同領(lǐng)域有著豐富的知識(shí)及興趣;Tian[5]使用主題模型方法來(lái)預(yù)測(cè)最合適的問(wèn)題回答者;Xia等人[6-8]從靜態(tài)特征挖掘角度,分析了開(kāi)發(fā)者和主題之間關(guān)聯(lián),以實(shí)現(xiàn)為特定主題推薦開(kāi)發(fā)者;Mao[9]通過(guò)GitHub上開(kāi)發(fā)者對(duì)特定技術(shù)術(shù)語(yǔ)的使用頻度,分析了問(wèn)答社區(qū)上標(biāo)簽和技術(shù)術(shù)語(yǔ)之間的關(guān)聯(lián)關(guān)系,為Stack Overflow實(shí)現(xiàn)了問(wèn)答專家推薦.Tian[10]分析了Stack Overflow上開(kāi)發(fā)者的歷史數(shù)據(jù),通過(guò)LDA主題模型分析,發(fā)現(xiàn)了開(kāi)發(fā)者潛在興趣,并基于這些興趣和協(xié)作投票機(jī)制來(lái)推薦問(wèn)題回答專家;Shola O M[11]等人基于個(gè)性化標(biāo)簽預(yù)測(cè)高質(zhì)量的問(wèn)題解決者;Elalfy D[12]等人使用問(wèn)題的內(nèi)容和內(nèi)容特征訓(xùn)練機(jī)器學(xué)習(xí)模型直接得到推薦的問(wèn)題答案.由上述研究現(xiàn)狀,本文認(rèn)為學(xué)習(xí)者在論壇提問(wèn)行為屬于求助行為,而發(fā)現(xiàn)問(wèn)題的解決速度會(huì)影響學(xué)習(xí)者對(duì)論壇的使用頻度,同時(shí)依據(jù)學(xué)習(xí)者的求助行為進(jìn)行論壇回答者推薦有待進(jìn)一步研究.
本研究研究意義表現(xiàn)在:
1)心理學(xué)研究者認(rèn)為[13],好的求助體驗(yàn)將給學(xué)習(xí)者帶來(lái)信心和鼓舞,而不良的求助體驗(yàn)將最終使得學(xué)習(xí)者放棄在線學(xué)習(xí),同時(shí)快速并恰當(dāng)?shù)臑閷W(xué)習(xí)者推薦具有合適在線學(xué)習(xí)求助行為的回答者,幫助其解決論壇問(wèn)題,可提高學(xué)習(xí)者的求助體驗(yàn);
2)可促進(jìn)對(duì)學(xué)習(xí)者在線學(xué)習(xí)行為認(rèn)知研究,以更好地設(shè)計(jì)出滿足學(xué)習(xí)者要求的各種個(gè)性化服務(wù);
3)本研究有助于在線學(xué)習(xí)環(huán)境設(shè)計(jì)者改進(jìn)設(shè)計(jì)并使得在線學(xué)習(xí)環(huán)境產(chǎn)生更大的社會(huì)價(jià)值.
本研究由兩步組成:第一步,識(shí)別學(xué)習(xí)者求助行為類別,以獲得學(xué)習(xí)者的求助行為類別;第二步,訓(xùn)練論壇回答者推薦模型,將具有合適學(xué)習(xí)者求助行為類別的并與論壇問(wèn)題匹配度高的論壇回答者推薦給需要幫助的學(xué)習(xí)者.
所謂基于學(xué)習(xí)者求助行為的論壇問(wèn)題回答者推薦,是根據(jù)給定的在線學(xué)習(xí)環(huán)境中的學(xué)習(xí)者在線學(xué)習(xí)行為數(shù)據(jù)(問(wèn)題輸入),獲得該學(xué)習(xí)者的求助行為類別,并根據(jù)其類別為其推薦合適的論壇問(wèn)題回答者(問(wèn)題輸出).
為了自動(dòng)識(shí)別學(xué)習(xí)者求助行為類別,本文采用了聚類和分類相結(jié)合的方法,以識(shí)別出學(xué)習(xí)者求助行為類別,并依據(jù)學(xué)習(xí)者的求助行為類別為其推薦合適的論壇回答者.為此,首先采用Bik-Means算法對(duì)在線學(xué)習(xí)環(huán)境中的在線學(xué)習(xí)求助行為數(shù)據(jù)進(jìn)行聚類分析,獲得學(xué)習(xí)者求助行為類別標(biāo)簽;然后,使用部分學(xué)習(xí)者求助行為數(shù)據(jù)及其類別標(biāo)簽訓(xùn)練樸素貝葉斯分類器,并利用剩余的學(xué)習(xí)者求助行為數(shù)據(jù)來(lái)驗(yàn)證該分類器的準(zhǔn)確率,通過(guò)使用該分類器達(dá)到自動(dòng)識(shí)別學(xué)習(xí)者求助行為類別的目的.
所謂在線學(xué)習(xí)環(huán)境下論壇回答者推薦,是根據(jù)給定的在線學(xué)習(xí)環(huán)境中的學(xué)習(xí)者在論壇中發(fā)布的問(wèn)題(問(wèn)題輸入),對(duì)該在線學(xué)習(xí)環(huán)境中的學(xué)習(xí)者輸出最善于回答該問(wèn)題的回答者(問(wèn)題輸出).
識(shí)別學(xué)習(xí)者求助行為類別的研究是基于Linda Corrin相關(guān)工作[14]開(kāi)展.本文抽取了學(xué)習(xí)者行為數(shù)據(jù)的部分屬性表達(dá)學(xué)習(xí)者的求助行為.通過(guò)對(duì)該學(xué)習(xí)者求助行為數(shù)據(jù)采用聚類算法處理,可得到該學(xué)習(xí)者求助行為類別標(biāo)簽,用此學(xué)習(xí)者求助行為數(shù)據(jù)和求助行為類別標(biāo)簽作為訓(xùn)練數(shù)據(jù)來(lái)訓(xùn)練樸素貝葉斯模型,從而可自動(dòng)識(shí)別出新學(xué)習(xí)者求助行為的類別.在此基礎(chǔ)上,本文可為學(xué)習(xí)者推薦合適的論壇問(wèn)題回答者,具體處理流程參見(jiàn)圖1.
圖1 論壇回答者推薦處理流程Fig.1 Forum respondents recommend process
圖1的相關(guān)思路如下[15]:
1)對(duì)收集到的論壇文本數(shù)據(jù)進(jìn)行Embedding處理,轉(zhuǎn)換為CNN模型能夠處理的數(shù)據(jù)集;
2)使用卷積神經(jīng)網(wǎng)絡(luò)算法(CNN)訓(xùn)練論壇回答者推薦模型,在這個(gè)過(guò)程中,數(shù)據(jù)集被分為互不相交的兩個(gè)集合,一個(gè)用作訓(xùn)練集,一個(gè)用作驗(yàn)證集,以驗(yàn)證本模型的推薦有效性;
3)得到論壇回答者推薦模型之后,可根據(jù)新學(xué)習(xí)者未被解答的論壇數(shù)據(jù),提取該數(shù)據(jù)的特征,基于該特征使用本模型為學(xué)習(xí)者推薦合適的回答者.
識(shí)別學(xué)習(xí)者求助行為類別算法的流程可以描述如下:
1)根據(jù)學(xué)習(xí)者的論壇行為數(shù)據(jù)獲取學(xué)習(xí)者的求助行為特征向量,并使用Bik-Means聚類算法處理求助行為特征向量;
2)根據(jù)學(xué)習(xí)者所屬的類別獲取其類別標(biāo)簽,與求助行為特征向量一同作為貝葉斯分類算法的訓(xùn)練集;
3)根據(jù)訓(xùn)練數(shù)據(jù)集,計(jì)算每個(gè)求助行為類別出現(xiàn)的概率P(rj);
4)對(duì)學(xué)習(xí)者求助行為特征向量的每個(gè)特征屬性計(jì)算所有劃分的條件概率;
5)根據(jù)待分類項(xiàng)X的特征屬性,對(duì)每個(gè)求助行為類別計(jì)算P(X|rj)P(rj);
6)以具有最大P(X|rj)P(rj)值的類別作為待分類項(xiàng)X所屬類別.1)-2)階段執(zhí)行聚類算法,3)-6)階段執(zhí)行分類算法.
自動(dòng)識(shí)別學(xué)習(xí)者求助行為類別的算法首先對(duì)學(xué)習(xí)者求助行為數(shù)據(jù)進(jìn)行聚類分析,獲得K個(gè)聚類中心,即得到K個(gè)類別.而后依據(jù)類別標(biāo)簽,訓(xùn)練樸素貝葉斯模型,對(duì)待分類學(xué)習(xí)者進(jìn)行分類處理.該算法的時(shí)間復(fù)雜度為O(NK+NV+KV),其中N是學(xué)習(xí)者求助行為數(shù)據(jù)集的規(guī)模,K是學(xué)習(xí)者求助行為類別數(shù),V是學(xué)習(xí)者求助行為數(shù)據(jù)的特征屬性數(shù).
在經(jīng)過(guò)識(shí)別學(xué)習(xí)者求助行為類別之后,根據(jù)我們得到的類別結(jié)論,對(duì)學(xué)習(xí)者進(jìn)行論壇回答者推薦,為其推薦具有合適求助行為類別的論壇回答者.
3.2.1 卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)
論壇回答者推薦的目的根據(jù)學(xué)習(xí)者的發(fā)帖內(nèi)容,為其推薦合適的回答者.我們使用了卷積神經(jīng)網(wǎng)絡(luò)模型達(dá)到推薦論壇回答者的目的.一般的卷積神經(jīng)網(wǎng)絡(luò)由以下五個(gè)結(jié)構(gòu)[17]組成.
1)輸入層.輸入層是作為全部卷積神經(jīng)網(wǎng)絡(luò)的輸入.在本文中輸入層是學(xué)習(xí)者論壇文本數(shù)據(jù)經(jīng)過(guò)Embedding處理之后所得的數(shù)據(jù).
2)卷積層.卷積層是用于做特征提取的.在一個(gè)卷積層,上一層輸出的特征值被一個(gè)可學(xué)習(xí)的卷積核進(jìn)行卷積,然后經(jīng)由一個(gè)激勵(lì)函數(shù),該卷積層的輸出特征就可以被獲得.卷積層試圖對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行更深入的剖析,從而獲得抽象水平更高的數(shù)據(jù)特征.
3)池化層.降低矩陣的規(guī)模依靠池化層實(shí)現(xiàn).對(duì)輸入的特征矩陣進(jìn)行壓縮,一方面使特征矩陣變小,簡(jiǎn)化網(wǎng)絡(luò)計(jì)算復(fù)雜度;一方面進(jìn)行特征壓縮,提取主要特征.
以便于OA學(xué)術(shù)資源的發(fā)現(xiàn)、獲取、利用為出發(fā)點(diǎn),依托目前部分院校圖書(shū)館數(shù)字資源加工室,對(duì)資源進(jìn)行科學(xué)高效、規(guī)范統(tǒng)一的組織管理是提高OA學(xué)術(shù)資源利用效率的有效措施??紤]到軍隊(duì)網(wǎng)絡(luò)安全的特殊性和軍隊(duì)院校圖書(shū)館OA學(xué)術(shù)資源管理實(shí)際,筆者從軍網(wǎng)和互聯(lián)網(wǎng)兩方面就軍隊(duì)院校圖書(shū)館OA學(xué)術(shù)資源的組織展開(kāi)論述。
4)全連接層.分類任務(wù)主要由全連接層完成.在經(jīng)過(guò)卷積層、池化層和激勵(lì)函數(shù)的作用之后,原始數(shù)據(jù)已經(jīng)被映射到隱層特征空間.全連接層就起到將隱層特征空間中的數(shù)據(jù)表示映射到樣本標(biāo)記空間的作用.全連接的核心操作就是矩陣向量乘積,本質(zhì)就是由一個(gè)特征空間線性變換到另一個(gè)特征空間.在CNN中,全連接(full-connected)通常出現(xiàn)在最后幾層.
5)Softmax層.Softmax函數(shù)主要處理多分類問(wèn)題.經(jīng)過(guò)Softmax層后,可得到樣本屬于不同類別的概率.模型的預(yù)測(cè)值ypred代表的是概率最大的類,具體如公式(1)及公式(2)所示.P(Y=i|x,W,b)表示在權(quán)重矩陣為W偏置向量為b的情況下,輸入向量x是第i類的概率.
ypred=argmaxiP(Y=i|x,W,b)
(1)
(2)
3.2.2 論壇回答者推薦模型
依據(jù)文獻(xiàn)[17],本文首先將論壇文本經(jīng)過(guò)Embedding處理,將提問(wèn)者的問(wèn)題q轉(zhuǎn)化成詞向量q={w1,w2,…,wn}.卷積神經(jīng)網(wǎng)絡(luò)的輸入層就是該向量組成的矩陣,例如論壇發(fā)帖最大長(zhǎng)度為n,每個(gè)文字對(duì)應(yīng)的詞向量長(zhǎng)度為m,則輸入矩陣的規(guī)模為n*m.池化層采用Max-Pooling的方法,之后重復(fù)上述卷積和池化的過(guò)程,搭建多層網(wǎng)絡(luò).經(jīng)過(guò)特征學(xué)習(xí),提取出論壇數(shù)據(jù)的特征,利用這些特征進(jìn)行論壇回答者推薦.在經(jīng)過(guò)卷積和池化處理之后,池化層輸出通過(guò)全連接的方式連接到一個(gè)Softmax分類層并且本文使用Adam optimizer優(yōu)化器來(lái)加速神經(jīng)網(wǎng)絡(luò).除此之外,為了防止訓(xùn)練過(guò)程中過(guò)擬合現(xiàn)象的發(fā)生看,本文使用了Dropout策略.依此設(shè)計(jì)的論壇回答者推薦方法所用的訓(xùn)練模型如圖2所示.
本模型使用 ReLU( Rectified Linear Units)函數(shù)作為神經(jīng)元的激勵(lì)函數(shù),使用該激勵(lì)函數(shù)可以加快訓(xùn)練速度,有效的減少計(jì)算開(kāi)銷(xiāo).在訓(xùn)練結(jié)束之后,采用了saver函數(shù)來(lái)保存最優(yōu)損失參數(shù),從而根據(jù)學(xué)習(xí)者的發(fā)帖內(nèi)容為其推薦合適的回答者,達(dá)到一次訓(xùn)練多次使用的目的.本文根據(jù)回答者歷來(lái)回答過(guò)的問(wèn)題數(shù)據(jù),對(duì)回答者進(jìn)行向量表示,即將其表示為形如
圖2 論壇回答者推薦CNN訓(xùn)練模型Fig.2 CNN training model for forum respondents recommend
算法1.論壇回答者推薦算法
輸入:學(xué)習(xí)者論壇文本數(shù)據(jù)X;待解決論壇發(fā)帖d;學(xué)習(xí)者類別數(shù)據(jù)C.
輸出:被推薦的回答者u.
1.V←buildvocab(X) /*構(gòu)建詞匯表,將文本數(shù)據(jù)X中的詞匯提取出來(lái)*/
2.C←readrecommendation () /*將以往回答者用向量表示*/
3.W←readvocab(V) /*讀取上述得到的詞匯表,將詞匯用向量表示*/
4.X,Y←professfile(C,W) /*將每一條文本數(shù)據(jù)都轉(zhuǎn)換成固定長(zhǎng)度的向量*/
5.Repeat/*運(yùn)行CNN算法*/
6. loss,acc←run(cnnmodel.loss,cnnmodel.acc)
7. run(adam optimizer)
8. until acc==1||大于指定迭代次數(shù)
9. saver(cnnmodel) /*保存最優(yōu)CNN模型*/
10. data←word_to_id(d) /*將待解決論壇發(fā)帖內(nèi)容d轉(zhuǎn)換為向量表示*/
11. u← run(self.cnnmodel,data) /*運(yùn)行最優(yōu)CNN模型,得到最優(yōu)推薦回答者*/
12. if u not in c[0]/*若最優(yōu)推薦回答者求助行為類別不適合,在具有合適求助行為的學(xué)習(xí)者中獲取匹配度最高的回答者*/
13. u0← run(self.cnnmodel based on c[0],data)
14. return u and u0/*返回被推薦的回答者*/
15. End
圖3 論壇回答者推薦算法
Fig.3 Forum replier recommendation algorithm
4.1.1 實(shí)驗(yàn)對(duì)象與設(shè)計(jì)
學(xué)習(xí)者求助行為的主要表現(xiàn)場(chǎng)景為:
1)學(xué)習(xí)者遇到問(wèn)題時(shí),可以在論壇中搜索相關(guān)問(wèn)題或者發(fā)布帖子,以此獲取問(wèn)題答案;
2)在學(xué)習(xí)者遇到感興趣的帖子時(shí),還可以在論壇中回帖,并通過(guò)討論來(lái)解決問(wèn)題;
3)學(xué)習(xí)者還可以通過(guò)多次參加測(cè)驗(yàn),由測(cè)驗(yàn)的反饋來(lái)獲得問(wèn)題的解答等.
為了驗(yàn)證識(shí)別學(xué)習(xí)者求助行為類別方法的有效性,本文選用了《馬克思主義基本原理》在線課程中的數(shù)據(jù)進(jìn)行實(shí)驗(yàn),在某次課程教學(xué)活動(dòng)中,學(xué)習(xí)者人數(shù)為342.我們從學(xué)習(xí)者在線學(xué)習(xí)行為數(shù)據(jù)中抽取了6個(gè)特征表征學(xué)習(xí)者的求助行為,包括學(xué)習(xí)者的發(fā)帖數(shù)量、學(xué)習(xí)者的回帖數(shù)量、學(xué)習(xí)者發(fā)帖被瀏覽次數(shù)、學(xué)習(xí)者發(fā)帖被回復(fù)次數(shù)、作業(yè)提交次數(shù)以及學(xué)習(xí)者成績(jī).
4.1.2 實(shí)驗(yàn)結(jié)果
1)聚類高維原始學(xué)習(xí)者求助行為數(shù)據(jù) 根據(jù)識(shí)別到的6維學(xué)習(xí)者求助行為數(shù)據(jù),對(duì)其進(jìn)行BiK-Means聚類處理,得到了四種類別標(biāo)簽.分析這四種類別里面的學(xué)習(xí)者求助行為數(shù)據(jù),本文將這四類類別定義為很少參與課程活動(dòng)、主動(dòng)參與課程活動(dòng)、被動(dòng)參與課程活動(dòng)、專注于課程測(cè)驗(yàn).
2)自動(dòng)識(shí)別學(xué)習(xí)者求助行為類別 經(jīng)過(guò)第一步處理,我們得到了學(xué)習(xí)者求助行為類別標(biāo)簽.我們將學(xué)習(xí)者求助行為數(shù)據(jù)及其類別標(biāo)簽分為互不相交的兩個(gè)集合:訓(xùn)練集和驗(yàn)證集.訓(xùn)練集中數(shù)據(jù)用于訓(xùn)練樸素貝葉斯分類模型,而后使用驗(yàn)證集中數(shù)據(jù)測(cè)試該分類模型的準(zhǔn)確率.測(cè)試結(jié)果用五元組
表1 部分測(cè)試結(jié)果Table 1 Part of the test results
經(jīng)過(guò)識(shí)別學(xué)習(xí)者求助行為類別,我們得到學(xué)習(xí)者的四種求助類別,研究發(fā)現(xiàn)這四種類別的主要區(qū)別在于論壇發(fā)帖量的不同,并且論壇發(fā)帖量和學(xué)習(xí)者績(jī)效有正相關(guān)性,即越主動(dòng)參與論壇活動(dòng)的學(xué)習(xí)者越容易獲得更好的學(xué)習(xí)績(jī)效.因此,為了提高學(xué)習(xí)者解決問(wèn)題的效率,使其對(duì)求助結(jié)果更為滿意,從而促進(jìn)其更加主動(dòng)的參與課程活動(dòng),需進(jìn)行論壇回答者推薦.
4.2.1 實(shí)驗(yàn)對(duì)象與設(shè)計(jì)
針對(duì)該在線課程中的論壇數(shù)據(jù),首先獲取學(xué)習(xí)者的發(fā)帖內(nèi)容;其次,獲取該貼中被贊次數(shù)最多的回答者信息.實(shí)際中我們共獲取了850 條實(shí)驗(yàn)數(shù)據(jù).本文的論文數(shù)據(jù)分為最佳回答者和回答者歷來(lái)回答過(guò)的問(wèn)題兩個(gè)部分.
由4.1節(jié)的研究可知,主動(dòng)參與課程活動(dòng)的學(xué)習(xí)者參與論壇發(fā)帖,回帖的可能性更大,并且普遍具有更高的學(xué)習(xí)績(jī)效.因此,為了保證學(xué)習(xí)者求助的有效性和求助結(jié)果的可靠性,若得到的被推薦回答者不屬于主動(dòng)參與課程活動(dòng)的學(xué)習(xí)者,可在主動(dòng)參與課程活動(dòng)的學(xué)習(xí)者中為其匹配到最適合回答該問(wèn)題的回答者,而后將以上得到的兩位被推薦的回答者推薦給該需要幫助的學(xué)習(xí)者.
4.2.2 實(shí)驗(yàn)操作
本部分所做研究主要是基于Tensorflow庫(kù)[19],該庫(kù)中包含了基本的深度學(xué)習(xí)算法,包括卷積神經(jīng)網(wǎng)絡(luò)CNN和循環(huán)神經(jīng)網(wǎng)絡(luò)RNN等.此外,還需要用到數(shù)組處理numpy庫(kù)、機(jī)器學(xué)習(xí)算法庫(kù)sklearn以及用于繪制圖像的Matplotlib庫(kù)等內(nèi)容.
首先將論壇文本數(shù)據(jù)進(jìn)行一次劃分,將其分為訓(xùn)練集、驗(yàn)證集和測(cè)試集,根據(jù)訓(xùn)練集可得到論壇回答者推薦模型:具體而言,本文中得到的詞向量維度為64,最大序列長(zhǎng)度為600,調(diào)用Tensorflow庫(kù)中的CNN算法,設(shè)置CNN模型中的dropout參數(shù)為0.5,學(xué)習(xí)率為0.001.在訓(xùn)練集的準(zhǔn)確率達(dá)到100%、驗(yàn)證集正確率長(zhǎng)期不提升或者迭代次數(shù)超過(guò)1000次的情況下結(jié)束訓(xùn)練,而后保存最佳推薦模型,繪制出誤差和準(zhǔn)確率的變化情況.在進(jìn)行模型有效性測(cè)試時(shí),直接讀取該最佳推薦模型數(shù)據(jù),避免重復(fù)計(jì)算.通過(guò)檢驗(yàn)測(cè)試集的準(zhǔn)確率、召回率、F1-score以及混淆矩陣來(lái)驗(yàn)證該推薦模型的有效性.最后,我們使用上述最佳論壇回答者推薦模型,為學(xué)習(xí)者推薦論壇問(wèn)題回答者.準(zhǔn)確率P、召回率R和F1-score三個(gè)指標(biāo)[20]相關(guān)的計(jì)算如公式(3)-公式(5)所示.
(3)
(4)
(5)
4.2.3 實(shí)驗(yàn)結(jié)果
1)訓(xùn)練并驗(yàn)證論壇回答者推薦模型表2表示論壇回答者推薦模型的訓(xùn)練及驗(yàn)證情況,由表2可以看出,本次訓(xùn)練經(jīng)過(guò)300次迭代終止,此時(shí)訓(xùn)練集的準(zhǔn)確率達(dá)到100%,訓(xùn)練集誤差為0.044,誤差很小.驗(yàn)證集準(zhǔn)確率達(dá)到了90%,驗(yàn)證集誤差為0.32.訓(xùn)練過(guò)程中訓(xùn)練集的準(zhǔn)確率以及誤差變化分別如圖4和圖5所示.
表2 訓(xùn)練并驗(yàn)證論壇回答者推薦模型準(zhǔn)確率情況Table 2 Training and verifying the accuracy of forum respondents′ recommendation models
圖4 訓(xùn)練集的準(zhǔn)確率變化Fig.4 Accuracy variation in Training set圖5 訓(xùn)練集的誤差變化Fig.5 Error variation in training set
2)測(cè)試論壇回答者推薦模型在測(cè)試論壇回答者推薦模型時(shí),抽取了250條數(shù)據(jù),其中合適的問(wèn)題回答者共有5人.在訓(xùn)練回答者推薦模型之后,采用了saver函數(shù)保存最優(yōu)損失參數(shù),在測(cè)試回答者推薦模型時(shí),可不必再次訓(xùn)練回答者推薦模型.測(cè)試回答者推薦模型的有效性如表3所示.根據(jù)表3,可知論壇回答者推薦模型的平均準(zhǔn)確率達(dá)到了90%,準(zhǔn)確率最低的D同學(xué)也達(dá)到了77%.召回率均在75%以上,F(xiàn)1-score均值達(dá)到了90%,其中F1-score最低的E同學(xué)也達(dá)到了81%.因此本回答者推薦模型具有較好的推薦效果,并由圖6所示的混淆矩陣(Confusion Matrix)也可以看出每位回答者的推薦準(zhǔn)確性普遍較高,這是因?yàn)榛煜仃囍械闹鲗?duì)角線上的數(shù)字越大,推薦的準(zhǔn)確性就越高.例如,矩陣中第一行數(shù)據(jù)代表A同學(xué),在其50條測(cè)試數(shù)據(jù)中,48條數(shù)據(jù)被正確分析.因此,本方法用于推薦論壇問(wèn)題回答者是有效的.
圖6 混淆矩陣Fig.6 Confusion Matrix
3)推薦論壇問(wèn)題回答者在得到準(zhǔn)確率較高的論壇回答者推薦模型之后,使用該模型針對(duì)學(xué)習(xí)者新發(fā)布的帖子,推薦合適的回答者.例如,本實(shí)驗(yàn)中使用了一個(gè)學(xué)習(xí)者新發(fā)布的論壇問(wèn)題:“絕對(duì)真理和相對(duì)真理的關(guān)系”.使用論壇回答者推薦模型之后,所得到的推薦回答者如圖7所示.
圖7 問(wèn)題的推薦回答者實(shí)例Fig.7 An example of recommending responder
分析E同學(xué)的求助行為類別,我們發(fā)現(xiàn)其屬于被動(dòng)參與課程活動(dòng)者,不屬于主動(dòng)參與者.因此推薦模型同時(shí)推薦了C同學(xué),該同學(xué)在具有較高匹配度的同時(shí),具有主動(dòng)參與課程活動(dòng)的特征.分析C、E這兩位回答者歷來(lái)回答的論壇發(fā)帖情況,我們得出該推薦確實(shí)有效的結(jié)論.同時(shí)這也證明了使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)算法推薦論壇回答者的有效性.
與文獻(xiàn)[19]開(kāi)展的研究相比,本文與該工作相同之處是:
1)在推薦研究問(wèn)題中使用了深度學(xué)習(xí);
2)采用了卷積神經(jīng)網(wǎng)絡(luò)CNN算法構(gòu)建推薦模型.
與該文工作不同之處是:
1)本文做了識(shí)別學(xué)習(xí)者求助行為類別的研究.本文在推薦論壇回答者的同時(shí),除了推薦與問(wèn)題具有最高匹配度的回答者,還會(huì)在主動(dòng)參與課程活動(dòng)的學(xué)習(xí)者中推薦一位具有最高問(wèn)題匹配度的回答者;
2)優(yōu)化算法不同.該文獻(xiàn)采用了SGD(Stochastic Gradient Descent,隨機(jī)梯度下降)[21]算法加速神經(jīng)網(wǎng)絡(luò),調(diào)節(jié)其學(xué)習(xí)速度.在本文中采用了Adam Optimizer優(yōu)化器,該優(yōu)化器在一般情況下能夠使神經(jīng)網(wǎng)絡(luò)更快速地完成學(xué)習(xí).
通過(guò)分析在線學(xué)習(xí)課程中的學(xué)習(xí)者在線學(xué)習(xí)行為數(shù)據(jù),發(fā)現(xiàn)了學(xué)習(xí)者求助行為的幾種不同的類別;研究了能夠?yàn)閷W(xué)習(xí)者推薦合適的論壇問(wèn)題回答者的方法,在推薦過(guò)程中,本文不僅考慮到了問(wèn)題匹配度問(wèn)題,還考慮到了被推薦回答者的求助行為類別情況,以使得學(xué)習(xí)者獲得幫助更加便捷,求助結(jié)果更為有效.進(jìn)一步的研究是根據(jù)學(xué)習(xí)者求助行為類別,結(jié)合學(xué)習(xí)者行為模型和領(lǐng)域知識(shí)模型等構(gòu)建更有針對(duì)性的推薦模型,從而能夠更有效的使用教學(xué)資源,最終共同達(dá)到提高學(xué)習(xí)者學(xué)習(xí)績(jī)效的目的.