金毛玉 張潔 劉凱



摘 ?要:通過實施協作過濾技術,對智能推送技術在在線學習平臺中的應用進行了研究,可以成功解決在線學習平臺上的智能推送問題,并使用智能推送技術為用戶提供更好的在線學習方式。通過該研究,不僅可以調查用戶的需求,還可以指導用戶在線學習,為不同的用戶開發個性化的在線學習推薦服務。該研究主要工作是根據現有的在線學習管理系統和學院的實際情況,設計并實現適合該學院的在線學習推薦子系統,并為學院的學生提供個性化的在線學習推薦服務。
關鍵詞:MySQL數據庫;在線學習平臺;智能推送
中圖分類號:TP311.52 ? ? 文獻標識碼:A 文章編號:2096-4706(2020)23-0141-03
Application of Intelligent Push Technology in Online Learning Platform
JIN Maoyu,ZHANG Jie,LIU Kai
(Tianjin Normal University,Tianjin ?300387,China)
Abstract:The application of intelligent push technology in online learning platforms has been studied by implementing collaborative filtering technology,which can successfully solve the problem of intelligent push on online learning platforms and use intelligent push technology to provide users with better ways of learning online. This research not only allows investigating usersneeds,but also can instructs users in learning online to develop personalized online learning recommendation services for different users. The main work of the research is to design and implement an online learning recommendation subsystem that is suitable for the college based on the existing online learning management system and the actual situation of the college,and to provide personalized online learning recommendation services for the colleges students.
Keywords:MySQL database;online learning platform;intelligent push
0 ?引 ?言
在知識更新迅速的信息社會,信息和知識老化速度的加快都是前所未有的,構建終身學習體系,是國家在信息社會立于不敗之地的前提,也是當前社會環境下個人發展的關鍵。學習型社會的形成,為信息技術的飛速發展、多媒體技術的進步創造了良好環境。在線學習是個性化推薦系統的一個應用方向,可以幫助用戶在大規模的視頻資源中快速找到滿足自己需求的視頻。在這種網絡信息良莠不齊的情況下,個性化推薦系統相比于搜索引擎,就能滿足用戶的要求,該系統不需要用戶被動查找所需的視頻,而是向用戶主動推送用戶可能感興趣和有需求的視頻。推薦系統通過對用戶的歷史訪問記錄進行分析,挖掘出用戶潛在的需求,并向其推薦與之相關的視頻,使得用戶尋找自己所需視頻的過程變得便捷。
1 ?協同過濾算法
1.1 ?相似度計算
在協同過濾建模中,我們首先要確定如何計算相似度。通常情況下,人們使用泊松相關系數和余弦相似度計量法作為相似度的計算方法。因為泊松系數考慮了評分風格差異對相似度的影響,所以使用泊松系數計算所得的相似度更符合實際情況。
在輸入法系統中,不存在用戶對詞匯進行打分的步驟,所以我們將詞頻權重作為用戶對一個詞語打分的具體實現。詞頻權重指的是在一定范圍內該詞匯使用頻數占所有詞匯使用頻數的百分比。詞頻權重的取值范圍為[0,1]。
如表1所示n×m的矩陣中,Word為輸入法系統中的詞匯,User為輸入法用戶。矩陣中的項代表用戶m的個人詞庫中詞匯n的詞頻權重。若項的值為0,代表對應用戶詞庫中沒有相應詞匯。
那么根據泊松系數,兩個用戶之間的相似度計算公式[5]為:
(1)
其中,Sim(u,v)為用戶u和用戶v的相似度。Iu和Iv分別為用戶u和用戶v個人詞庫中所有詞匯集合。rui和rvi分別為用戶u和用戶v的個人詞庫中詞匯i的詞頻權重。和為用戶u和用戶v都使用過的詞匯集合Iu∩Iv中各個詞匯的詞頻權重的平均值。根據該公式,用戶相似度的取值區間為[-1,1],且Sim(u,v)的值越大表示用戶u和用戶v之間的相似度越高。
1.2 ?用戶聚類
為了使計算機能夠自動感知出具有相同輸入偏好的用戶,并確定其域的范圍,我們需要對用戶進行自底向上的層次聚類處理。
首先,將所有用戶分成若干個組,每個用戶就是一個組。
然后,對所有用戶組作循環處理。依次計算當前用戶組與其他用戶組之間的相似度,找到本輪循環中相似度最大且超過預定閾值的兩個用戶組,將其合并。重復執行本次操作,直到用戶組兩兩之間的相似度都低于預定閾值,循環結束,聚類操作完成。
偽代碼為:
threshold = x;
user = {u1,u2...um};
while(true){
maxSim = maxGroupSim(ui,uj);
if( maxSim >= threshold ){
temp = merge(ui ,uj);
user = (user ∪ temp) - (ui ∪ uj);
}else{
return user;
}
}
其中maxGroupSim的作用是求取與當前用戶組偏好最相似的用戶組的相似度。由于用戶組中可能存在多個相似用戶,所以用戶組之間的相似度計算公式[5]為:
(2)
其中i和j為兩個用戶組,|i|和|j|分別為這兩個用戶組里用戶的個數,u和v分別表示兩個用戶組的任意一個用戶。GroupSim通過對兩個用戶組內的所有用戶相似度取平均值來計算用戶組之間相似度。
2 ?在線學習推薦系統需求分析
在線學習系統經過多年的自動化建設,已積累了大量的視頻瀏覽信息,為實現視頻個性化推薦奠定了一定的物質基礎。
經過多年的發展,聯合過濾技術已經建立了較為完整的技術體系,實現了令人滿意的進步,尤其是在數據生產、數據挖掘、數據分析和互聯網處理技術方面。這為在線學習推薦系統奠定了技術基礎。通過使用數據挖掘技術從數據庫中收集歷史數據,可以確定各種視頻資源的相關性。我們通過數據挖掘技術分析讀者的喜好,并根據他們的觀看行為個性化地推薦視頻。同時,您可以采用有針對性的網站管理策略,以便為視頻學習網站提供更好的客戶資源。
3 ?詳細設計與實現
3.1 ?數據庫和Java Web的連接
JDBC(Java數據庫連接性)是用于實現SQL語音的Java API。它可以提供對由多個用Java編寫的類和接口組成的相關數據庫的統一訪問,JDBC為工具/數據庫開發人員提供了標準的API?;诖?,可以創建高級工具和界面。數據庫開發人員可以使用純Java API來構建數據庫應用程序。圖1顯示了JDBC驅動程序連接圖。
將與JDBC數據庫相對應的JAR文件復制到Web應用程序的WEB-INF\lib目錄中。MySQL驅動程序包含文件MySql-connector-java.jar。該文件應位于Web瀏覽器的WEB-INF\lib目錄中。
連接為Connection con=DriverManager.getConnection("jdbc: odbc:bbs")。通過getConnection生成提示包括URL,登錄名,密碼。配置文件如圖2所示(其中,jdbc.username和jdbc.password的值應與數據庫設置匹配)。
3.2 ?在線學習管理
管理員起到教學管理員的作用,使系統更接近實際的在線學習系統。管理員登錄系統后,輸入關鍵字可以查詢在線學習信息,并進行管理。此時,默認情況下,該頁面上顯示所需的的在線學習視頻資源。如圖3所示。
單擊添加視頻按鈕,將視頻添加到視頻列表的頂部??梢赞D到此頁面并添加視頻信息。此功能的詳細代碼在Video UpdateServlet.java中實現。
視頻信息錄入時需錄入包括書名、作者、出版社、ISBN、價格、關鍵字、圖片和備注在內的所有信息。所有在線學習資源都顯示在視頻列表,如果管理員要編輯(編輯或刪除)視頻,則選擇該視頻點擊編輯按鈕進入編輯界面。
3.4 ?協同過濾算法的視頻推薦
3.4.1 ? 用戶數據收集
推薦系統屬于協同過濾的電商系統之一,推薦系統是基于海量的數據挖掘之上的一套電子商務系統。因此在推薦系統構建之前,需要對戶偏好特征數據進行分析。
若想要構建一套較為理想的推薦系統,使其能夠根據不同的數據給出不同的推薦結果。首先需要尋找一種數據結構使系統能夠記錄用戶的觀看行為并是程序方便操作,在此使用了Python中的dict(字典)結構,存放的用戶觀看記錄的數據形式為:User:{item1:N,item2:N,item3:N···}。
從記錄有用戶數據的user_by文件中逐條讀入用戶觀看記錄,對每一條用戶觀看記錄,將同一個用戶的記錄疊加到字典的以該人名為key值下的子級字典中。如此便形成了一個用戶觀看視頻記錄的數據集。其偏好數據為用戶對某種視頻的觀看次數記錄。用戶對某視頻觀看次數越多,代表著用戶越依賴(需要)該種視頻。在相似度計算中,同樣對該視頻有依賴程度的用戶在相似性上便高于其他用戶,由此該相似用戶過去觀看的視頻可能也更加適合于該用戶。
3.4.2 ?相似性計算
將收集到的用戶偏好數據輸入到系統中后,系統將數據轉化為機器能識別的代表用戶偏好的數據,即轉變為程序中使用的字典結構。系統用余弦相似度計量法與泊松相關系數法來處理這些偏好數據記錄,計算出相似度,再將每個人兩兩比對來判斷其相似程度,根據相似程度來決定是否推薦給當前用戶。在前面章節中,我們介紹了推薦系統的相似性計算的幾種主要方法,在這里我們使用了余弦相似度計量法與泊松相關系數。
3.4.3 ?尋找匹配結果
通過上述的相似性算法的計算后,我們得到了兩個用戶之間的相似程度。接下來主要是提取出評分較高(相似程度較高)的幾個用戶,找出與用戶最為匹配的推薦結果。針對視頻推薦系統,可以通過泊松系數計算出與目標用戶有相似偏好的使用者。這些視頻觀看者的視頻學習偏好與目標用戶較為相似,則兩者可能具有較為相似的學習方向,就可以通過這些相似的對視頻的偏好來給目標用戶推薦視頻。在給某用戶推薦視頻時候,首先推薦系統會計算出一張相似度表,該表中含有與目標用戶較為相似的用戶,從這張表中我們可以挑選出最匹配的一些用戶,給目標用戶推薦和他興趣相似的這些用戶喜歡的視頻資源。
3.4.4 ?做出推薦
在通過相似性計算得出與目標用戶較為相似的幾個鄰居用戶后,我們可以參考這些相似程度較高的鄰居的偏好視頻數據。對目標用戶進行視頻推薦。推薦目標用戶尚未學習的視頻。
將描述喜好的這幾個字詞與每個視頻中的關鍵字進行比較,并使用余弦相似度計量法與泊松相關系數來計算每個視頻和用戶個人資料之間的相似度。系統推薦與當前用戶非常相似度高的視頻。
4 ?結 ?論
使用相關推薦算法對高校在線學習平臺數據庫中所保存的讀者行為信息數據進行歸納和整理,分析讀者在利用在線學習平臺資源過程中所隱含的、有價值的信息和數據,從而達到學習資源的最大化。
參考文獻:
[1] LI W J,XU Y Y,DONG Q,et al. TaDb:A time-aware diffusion-based recommender algorithm [J].International Journal of Modern Physics C,2015,26(9):1-12.
[2] CANDILLIER L,MEYER F,FESSANT F. Designing Specific Weighted Similarity Measures to Improve Collaborative Filtering Systems [C]//ICDM 2008:Advances in Data Mining.Medical Applications,E-Commerce,Marketing,and Theoretical Aspects.Leipzig:Springer,2008:242-255.
[3] AHN H J. A new similarity measure for collaborative filtering to alleviate the new user cold-starting problem [J].Information Sciences,2008,178(1):37-51.
[4] WEI S Y,YE N,ZHANG Q Q. Time-Aware Collaborative Filtering for Recommender Systems [C]//CCPR 2012:Pattern Recognition.Beijing:Springer,2008:242-255.
[5] 周偉,汪少華,楊云.基于數據挖掘和讀者行為分析的圖書館薦書系統的研究與設計 [J].圖書情報研究,2014,7(4):38-44.
[6] 楊丹丹.利用大數據分析法提高圖書館讀者決策采購(PDA)效能探析 [J].圖書館工作與研究,2015(1):60-62.
[7] 張志廣,張瀟.基于高校圖書館文獻采訪分布式數據庫挖掘的合作協同模式 [J].農業圖書情報學刊,2015,27(6):65-68.
作者簡介:金毛玉(1998—),女,漢族,浙江江山人,本科在讀,研究方向:計算機科學與技術。