• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于圖嵌入向量的課程推薦算法研究*

      2023-12-13 11:22:34朱若馨張海潮
      甘肅科技 2023年11期
      關(guān)鍵詞:向量協(xié)同節(jié)點(diǎn)

      朱若馨,張海潮

      (陜西國防工業(yè)職業(yè)技術(shù)學(xué)院,陜西 西安 710300)

      0 引言

      隨著互聯(lián)網(wǎng)技術(shù)的不斷革新,在線教育通過使用大數(shù)據(jù)、多媒體、人工智能等信息技術(shù)也在快速發(fā)展。在線教育的發(fā)展不僅給傳統(tǒng)教育帶來了新活力,同時(shí)也將傳統(tǒng)教育帶上了新的起點(diǎn),開啟了教育創(chuàng)新與改革的新征程。中國在線教育用戶的迅速增長(zhǎng),眾多在線課程平臺(tái)與開放大學(xué)的建立,使得在線教育逐漸成為一種主流學(xué)習(xí)方式。然而,隨著越來越多的課程放在課程平臺(tái)上,使得用戶需要耗費(fèi)大量的精力來尋找感興趣的課程,造成信息過載現(xiàn)象[1],大大降低了用戶的使用體驗(yàn)。為了緩解信息過載問題帶來的影響,研究人員提出推薦系統(tǒng)概念,用于幫助用戶從大量課程中發(fā)現(xiàn)感興趣的內(nèi)容。

      推薦系統(tǒng)以用戶行為和資源內(nèi)容作為切入點(diǎn),把握用戶興趣。常用的推薦算法有基于協(xié)同過濾的推薦[2-4]、基于內(nèi)容推薦[5-6]和基于模型推薦[7-8]。協(xié)同過濾算法利用興趣相似用戶在同類資源上有相似的偏好這個(gè)特點(diǎn),從而對(duì)目標(biāo)用戶進(jìn)行同類資源的推薦。然而,通過協(xié)同過濾推薦算法的原理可以發(fā)現(xiàn),其只依賴用戶的共同行為,而忽略了用戶行為的時(shí)序信息。在用戶的課程學(xué)習(xí)過程中,往往依賴前置課程的學(xué)習(xí),因此,傳統(tǒng)的協(xié)同過濾推薦算法在課程推薦系統(tǒng)中存在局限性?;谏鲜霰尘埃梢詫⒂脩魧W(xué)習(xí)的一系列課程看作圖結(jié)構(gòu)數(shù)據(jù),課程是圖上的節(jié)點(diǎn),用戶的學(xué)習(xí)序列是節(jié)點(diǎn)上的邊,反映用戶學(xué)習(xí)的時(shí)序信息。文章利用課程學(xué)習(xí)序列構(gòu)建有向圖,學(xué)習(xí)節(jié)點(diǎn)的嵌入式向量表達(dá),并利用向量檢索方法進(jìn)行課程推薦。

      文章提出一種基于圖節(jié)點(diǎn)嵌入向量相似性的推薦算法GEV,利用用戶點(diǎn)擊序列構(gòu)建課程圖,圖的節(jié)點(diǎn)為相應(yīng)課程,邊的權(quán)重為用戶同時(shí)學(xué)習(xí)的次數(shù),依照權(quán)重進(jìn)行隨機(jī)游走獲取訓(xùn)練序列,然后使用Word2vec[9]算法中的Skip-gram模型和負(fù)采樣算法學(xué)習(xí)節(jié)點(diǎn)的嵌入式向量,并以此推薦相關(guān)課程給用戶。MOOC數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果表明文章給出的模型在評(píng)價(jià)指標(biāo)召回率上優(yōu)于其他算法。

      1 相關(guān)工作

      1.1 協(xié)同過濾推薦算法

      協(xié)同過濾算法(Collaborative Filtering,CF)是一種經(jīng)典的推薦算法,利用用戶群體的興趣來找到目標(biāo)用戶的興趣點(diǎn),實(shí)現(xiàn)個(gè)性化推薦。1998年,Breese等[10]率先提出了協(xié)同過濾算法的分類理念。一般來說,協(xié)同過濾推薦算法可以分為3類,分別是基于用戶的協(xié)同過濾算法(User-based Collaborative Filtering,UCF),基于項(xiàng)目的協(xié)同過濾算法(Item-based Collaborative Filtering,ICF),以及基于模型的協(xié)同過濾算法(Model-based Collaborative Filtering,MCF)?;谟脩舻膮f(xié)同過濾主要考慮用戶與用戶間的相似度,而基于項(xiàng)目的協(xié)同過濾主要考慮物品與物品的相似度。文章以基于項(xiàng)目的協(xié)同過濾算法為例說明其基本原理,如圖1所示。

      圖1 基于項(xiàng)目的協(xié)同過濾算法示意圖

      基于項(xiàng)目的協(xié)同過濾算法利用同一個(gè)用戶喜歡的物品具有相似性,從而建立物品之間的相似關(guān)系,然后利用這個(gè)關(guān)系,依據(jù)新用戶的行為進(jìn)行預(yù)推薦。在圖1中,用戶A同時(shí)喜歡物品A和C,用戶B則同時(shí)喜歡物品A、B和C,則從物品的角度看來,物品A和C具有相似性。因此,當(dāng)用戶C喜歡物品A時(shí),基于項(xiàng)目的協(xié)同過濾算法會(huì)依據(jù)用戶C的行為選擇物品C進(jìn)行推薦。

      協(xié)同過濾算法基于用戶的行為數(shù)據(jù)挖掘用戶的興趣點(diǎn)進(jìn)行個(gè)性化推薦,具有良好的自適應(yīng)性,同時(shí),推薦規(guī)則也可以根據(jù)業(yè)務(wù)場(chǎng)景來自適應(yīng)調(diào)整。協(xié)同過濾算法對(duì)長(zhǎng)尾分布的興趣點(diǎn)推薦也有良好的效果。然而,協(xié)同過濾算法也存在固有的缺陷,主要表現(xiàn)在冷啟動(dòng)階段依賴于用戶的行為數(shù)據(jù),在缺乏相關(guān)數(shù)據(jù)的場(chǎng)景下難以使用。

      1.2 網(wǎng)絡(luò)表示學(xué)習(xí)相關(guān)理論

      網(wǎng)絡(luò)表示學(xué)習(xí)將拓?fù)浣Y(jié)構(gòu)的圖數(shù)據(jù)轉(zhuǎn)化為低維稠密向量表示,使相似的節(jié)點(diǎn)具有相似的向量表達(dá),得到的向量可以作為下游神經(jīng)網(wǎng)絡(luò)模型的輸入進(jìn)行后續(xù)的機(jī)器學(xué)習(xí)任務(wù)。網(wǎng)絡(luò)表示學(xué)習(xí)模型對(duì)于圖G=(V,E),學(xué)習(xí)一種映射(f:Vi→Zi,∈RD),其中,Zi表示一個(gè)D維的向量,是圖節(jié)點(diǎn)Vi的向量化表示,維度D遠(yuǎn)小于圖中節(jié)點(diǎn)的數(shù)目|V|,即D<<|V|。

      在自然語言處理領(lǐng)域,Mikolovt等[11]提出的Word 2vec模型,是一種高效訓(xùn)練詞向量的模型。該模型通過訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,利用上下文信息得到每個(gè)單詞的向量化表示,使得意義相近的單詞具有相似的向量。用戶在課程學(xué)習(xí)過程中,會(huì)形成一個(gè)序列,相鄰的課程意味著具有關(guān)聯(lián)性,因此,可以將課程像單詞一樣利用Word2vec模型學(xué)習(xí)向量表示。

      Word2vec模型的基本思想是句子中相近的詞是有聯(lián)系的,因此可以用詞來預(yù)測(cè)詞。Word2vec常用的訓(xùn)練方法有2種:連續(xù)詞袋模型(Continuous Bagof-Words,CBOW)和跳元模型(Skip-gram)。CBOW方法是根據(jù)周圍詞來預(yù)測(cè)中心詞,相反,Skip-gram方法是用中心詞分別推斷出周圍詞。通常,當(dāng)數(shù)據(jù)量較少或者語料庫中有大量低頻詞的時(shí)候,Skip-gram比CBOW能取得更好的效果。

      2 基于圖嵌入向量的推薦算法

      2.1 建立用戶行為圖

      依據(jù)用戶的歷史學(xué)習(xí)過程建立課程圖,如圖2所示。

      圖2 建立基于用戶行為的課程圖結(jié)構(gòu)

      在之前介紹的協(xié)同過濾算法中,只考慮了用戶群體的共同興趣,而忽略了反映用戶學(xué)習(xí)興趣的學(xué)習(xí)時(shí)序信息。由于用戶在使用學(xué)習(xí)平臺(tái)過程中會(huì)有大量的行為,時(shí)間跨度長(zhǎng),一方面計(jì)算量較大,另一方面用戶的興趣也會(huì)發(fā)生變化。因此,文章只選取一定時(shí)間窗口內(nèi)的用戶行為用于構(gòu)建課程圖。

      在圖2(a)中,文章將固定時(shí)間范圍內(nèi)用戶的課程學(xué)習(xí)記錄選取出來,然后如圖2(b)所示,研究將用戶連續(xù)學(xué)習(xí)的2個(gè)課程按照時(shí)間順序建立有向圖,其中,節(jié)點(diǎn)之間邊的權(quán)重ω為所有用戶先后學(xué)習(xí)對(duì)應(yīng)2節(jié)點(diǎn)課程的次數(shù)。這樣就建立了用戶課程圖。

      2.2 圖嵌入式向量學(xué)習(xí)

      如圖2(b)所示,帶權(quán)有向圖G,記作G=(V,E)其中V是圖G中定點(diǎn)的集合,E是圖G中邊的集合,可以使用DeepWalk[12]算法來學(xué)習(xí)圖G中節(jié)點(diǎn)的嵌入式向量表示。通過使用矩陣M來表示圖G的鄰接矩陣,其中,Mij表示圖中節(jié)點(diǎn)i到節(jié)點(diǎn)j的邊權(quán)重。首先,可以使用DeepWalk算法從圖G中生成節(jié)點(diǎn)的隨機(jī)游走序列,如圖3(a)所示。DeepWalk算法最主要的2個(gè)步驟是利用RandomWalk隨機(jī)游走生成圖節(jié)點(diǎn)序列,然后利用Skip-gram算法生成節(jié)點(diǎn)的向量表示。RandomWalk隨機(jī)游走生成節(jié)點(diǎn)序列時(shí),等概率地選擇下一個(gè)節(jié)點(diǎn),忽略了節(jié)點(diǎn)間的相關(guān)關(guān)系。例如,在學(xué)習(xí)課程時(shí),用戶在學(xué)習(xí)完前置課程后,有極大的概率會(huì)選擇后續(xù)的相關(guān)課程,反映了課程的流行信息,而RandomWalk生成的節(jié)點(diǎn)序列則無法反映這種關(guān)系。因此,通過選擇WeightedWalk方式來選擇生成圖節(jié)點(diǎn)序列,按照一定的概率αij選擇下一個(gè)節(jié)點(diǎn)。αij是通過統(tǒng)計(jì)用戶學(xué)習(xí)當(dāng)前課程i之后選擇繼續(xù)學(xué)習(xí)課程j的概率得到。

      圖3 課程圖結(jié)構(gòu)節(jié)點(diǎn)的嵌入式向量訓(xùn)練過程

      然后可以使用Skip-gram算法來學(xué)習(xí)序列中節(jié)點(diǎn)的向量化表示,從而使序列中相鄰兩節(jié)點(diǎn)共現(xiàn)的概率最大。訓(xùn)練過程本質(zhì)上是一個(gè)優(yōu)化過程,目標(biāo)函數(shù)可以寫為:

      式中:w是在序列采樣過程中窗口的長(zhǎng)度,i 當(dāng)前節(jié)點(diǎn)的編號(hào),?(·)表示神經(jīng)網(wǎng)絡(luò),Pr(·)表示似然函數(shù),通過最小化損失函數(shù),得到訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)。根據(jù)獨(dú)立性假設(shè),預(yù)測(cè)節(jié)點(diǎn)的概率可寫為:

      式中:w是在序列采樣過程中窗口的長(zhǎng)度,?(·)表示神經(jīng)網(wǎng)絡(luò),Pr(·)表示似然函數(shù)。這樣,就可以利用學(xué)習(xí)到的節(jié)點(diǎn)向量,使用向量檢索方法來實(shí)現(xiàn)課程的推薦。

      3 實(shí)驗(yàn)結(jié)果與分析

      3.1 實(shí)驗(yàn)環(huán)境與數(shù)據(jù)集

      實(shí)驗(yàn)環(huán)境是Windows10操作系統(tǒng),16 GB內(nèi)存,Intel Core i7-10750H處理器,英偉達(dá)GeForce RTX 2070顯卡,TensorFlow版本2.5.0,cuDNN版本8.1,CUDA版本11.2。

      采用中國大學(xué)MOOC[13](iCoursera)平臺(tái)數(shù)據(jù)集,包含82 535名學(xué)員在1 302門課程的相關(guān)選課記錄及課程屬性。數(shù)據(jù)集包含458 454條選課記錄,其中每條記錄包含用戶ID、課程ID、課程名稱、課程層次、選課時(shí)間等相關(guān)的屬性。

      3.2 數(shù)據(jù)預(yù)處理

      為了方便處理,將數(shù)據(jù)集內(nèi)容進(jìn)行精簡(jiǎn),只保留用戶ID,課程ID和選課時(shí)間這3個(gè)屬性字段;以課程id作為圖數(shù)據(jù)的節(jié)點(diǎn),依據(jù)選課時(shí)間段進(jìn)行數(shù)據(jù)劃分,選擇一定時(shí)間窗口內(nèi)用戶學(xué)習(xí)的關(guān)聯(lián)課程,在課程圖結(jié)構(gòu)數(shù)據(jù)上連接邊,將用戶的課程學(xué)習(xí)序列轉(zhuǎn)化為圖結(jié)構(gòu)數(shù)據(jù)。

      3.3 評(píng)價(jià)指標(biāo)

      在推薦系統(tǒng)中,筆者關(guān)心推送的課程用戶是否感興趣,用查準(zhǔn)率(Percision,P)來描述,還要關(guān)心用戶感興趣的所有課程是否都有推薦[14],用查全率(Recall,R)描述,此外,用F1-分?jǐn)?shù)(F1-score,F(xiàn)1)來綜合評(píng)價(jià)。

      3.4 實(shí)驗(yàn)結(jié)果

      對(duì)于每次推薦系統(tǒng)給用戶推薦的課程數(shù)N,文章取N=3。對(duì)比實(shí)驗(yàn)中,文章提出的GEV算法與矩陣分解(Matrix Factorization,MF),DeepWalk算法、協(xié)同過濾算法(Collaborative Filtering,CF)進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果見表1。

      表1 N=3時(shí)查全率、查準(zhǔn)率與F1-分?jǐn)?shù)

      在同樣的實(shí)驗(yàn)條件下,文章所提的GEV算法在查全率、查準(zhǔn)率與F1-分?jǐn)?shù)3個(gè)指標(biāo)上均優(yōu)于MF、Deep-Walk和CF算法。在N=3時(shí),與MF算法相比,準(zhǔn)確率提高15.5%,召回率提高17.8%,F(xiàn)1-分?jǐn)?shù)提高16.9%;與DeepWalk算法相比,準(zhǔn)確率提高8.5%,召回率提高12.1%,F(xiàn)1-分?jǐn)?shù)提高10.5%,與CF算法相比,準(zhǔn)確率提高10.5%,召回率提高13.3%,F(xiàn)1-分?jǐn)?shù)提高12.1%。

      取N=10時(shí),實(shí)驗(yàn)結(jié)果見表2。從表中數(shù)據(jù)可以看出,在N=10條件下,GEV算法仍然取得了最好的推薦效果。隨著N的增大,推薦課程集合包含的數(shù)目越多,對(duì)于不同的算法來說,命中用戶感興趣課程的概率就越高,因此,在N=10條件下,各算法相應(yīng)的查全率、查準(zhǔn)率與F1-分?jǐn)?shù)都優(yōu)于在N=3時(shí)的結(jié)果。

      表2 N=10時(shí)查全率、查準(zhǔn)率與F1-分?jǐn)?shù)

      此外,文章還對(duì)算法運(yùn)行時(shí)間進(jìn)行了對(duì)比,在相同的實(shí)驗(yàn)平臺(tái)條件下,比較MF、DeepWalk、CF和GEV算法,推薦給同一位用戶10門推薦課程所需要的時(shí)間,耗時(shí)結(jié)果見表3。

      表3 推薦系統(tǒng)響應(yīng)時(shí)間

      從表中可以看到,作者所提出的GEV算法在對(duì)比算法中,具有最少的響應(yīng)時(shí)間,說明算法在實(shí)時(shí)性上具有較強(qiáng)的競(jìng)爭(zhēng)力,通過多臺(tái)服務(wù)器進(jìn)行并行計(jì)算優(yōu)化,可以進(jìn)一步減少響應(yīng)時(shí)間。

      4 結(jié)論

      文章提出一種基于圖節(jié)點(diǎn)嵌入向量相似性的推薦算法GEV,利用用戶點(diǎn)擊序列構(gòu)建課程圖,圖的節(jié)點(diǎn)為相應(yīng)課程,邊的權(quán)重為用戶同時(shí)學(xué)習(xí)的次數(shù),依照權(quán)重進(jìn)行隨機(jī)游走獲取訓(xùn)練序列。最后,在MOOC數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,文章所提GEV方法,與矩陣分解,DeepWalk和協(xié)同過濾方法相比,具有更高的準(zhǔn)確性。

      猜你喜歡
      向量協(xié)同節(jié)點(diǎn)
      CM節(jié)點(diǎn)控制在船舶上的應(yīng)用
      向量的分解
      Analysis of the characteristics of electronic equipment usage distance for common users
      聚焦“向量與三角”創(chuàng)新題
      蜀道難:車與路的協(xié)同進(jìn)化
      基于AutoCAD的門窗節(jié)點(diǎn)圖快速構(gòu)建
      “四化”協(xié)同才有出路
      汽車觀察(2019年2期)2019-03-15 06:00:50
      三醫(yī)聯(lián)動(dòng) 協(xié)同創(chuàng)新
      向量垂直在解析幾何中的應(yīng)用
      向量五種“變身” 玩轉(zhuǎn)圓錐曲線
      肃南| 孝昌县| 射洪县| 城固县| 灵丘县| 苍南县| 东阳市| 龙山县| 合阳县| 吴堡县| 石柱| 姚安县| 赫章县| 慈利县| 神木县| 彝良县| 玉林市| 禹城市| 澄城县| 遂昌县| 五原县| 临潭县| 苍溪县| 遂平县| 德惠市| 耿马| 陵水| 西平县| 邹平县| 大城县| 琼海市| 五台县| 三台县| 龙井市| 友谊县| 搜索| 东丽区| 仁寿县| 鄢陵县| 南郑县| 溧水县|