用戶行為的智能檔案推薦系統設計

時間:2022-11-07 11:23:07

導語:用戶行為的智能檔案推薦系統設計一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

用戶行為的智能檔案推薦系統設計

摘要:本文通過對檔案管理系統的用戶歷史行為數據進行抽取、分析、預處理,設計了基于物品的協同過濾算法模型的檔案智能推薦系統,可以在用戶無法準確描述其需求時根據系統其他用戶的歷史行為數據智能推薦相關檔案,從而在一定程度上解決了無法精準描述需求時的檔案查詢問題。

關鍵詞:用戶行為;協同過濾;智能推薦

一、引言

隨著數字檔案室建設項目的推進,以電子文件為對象,基于OCR識別、語音識別、數據挖掘、機器學習等技術實現的電子檔案管理模式正在逐步取代傳統紙質檔案管理模式。在電子檔案管理模式下,檔案信息量爆炸式增加導致信息量過載和人們需求量的嚴重不平衡[1]529。用戶要從海量電子檔案中檢索自己需要的檔案信息變得越來越困難了。傳統的搜索引擎可以通過用戶輸入的關鍵字返回與輸入關鍵字相關的檔案信息,在一定程度上緩解了檔案信息過載問題,但是當用戶無法精準描述檔案需求的關鍵字時,傳統搜索引擎就無能為力了。與傳統的搜索引擎不同,智能推薦系統并不需要用戶提供精準的用檔需求,而是通過分析檔案用戶行為信息(檔案用戶行為信息是指用戶在檔案管理系統中進行檢索、瀏覽、下載、打印等操作所留下的數據痕跡[2]58),采用協同過濾算法,向用戶推薦能夠滿足他們需求的檔案信息。

二、基于協同過濾算法的推薦系統

文獻研究發現:學術界認定的第一個推薦系統是1992年xeroxPARC(施樂實驗室)推出的Tapestry系統(垃圾郵件過濾并電子新聞推薦系統)。該系統需要事先了解和熟悉系統用戶的興趣和愛好,只能適用于系統用戶數比較少的場景。1997年,明尼蘇達大學的研究小組開發了Movielens系統(電影智能推薦系統),拉開了推薦系統蓬勃發展的序幕。該系統根據用戶對電影的評分,預測用戶可能感興趣的電影類型、風格、演員、導演等,向用戶推薦合適的電影[3]201。Netflix(美國奈飛公司)為期三年的百萬美金大賽是推薦系統領域的標志性事件之一,它將推薦算法的研究推向高潮,吸引了全世界186個國家4萬多位專業人士開始投身于推薦系統領域的研究,并將這項技術從學術圈真正轉向商業領域。隨著Amazon(美國亞馬遜公司)開始在網站上根據用戶的瀏覽購買行為對用戶進行個性化推薦,并成功提升網站35%的銷售額,個性化推薦系統在圖書、音樂、視頻、新聞、電影、購物等領域的應用越來越廣泛[4]182。國內推薦算法研究起步較晚,但也取得了可喜的成果,在門戶網站、電子商務等領域開展了廣泛應用,比較著名的包括:今日頭條新聞、淘寶、京東、豆瓣影視推薦等。推薦算法發展至今,其技術路線大致可以劃分為三類:基于內容模型的推薦算法、基于協同過濾模型的推薦算法、基于混合模型的推薦算法。協同過濾模型算法是推薦系統中較為著名和常用的一種方法。它依據“人以類聚,物以群分”的聚類特點進行預測和推薦,可以將大部分看起來無交集的人或物品,通過大數據分析、數據挖掘等技術挖掘出相似的個別群體,實現根據和你有共同喜好的人給你推薦物品或者根據你喜歡的物品給你推薦相似的物品[5]1433。常用的協同過濾算法包括基于用戶的協同過濾算法和基于物品的協同過濾算法。

1.基于用戶的協同過濾算法

根據當前用戶對物品(信息)的偏好,計算出與之有相同口味或偏好的用戶群(可以使用反查表過濾掉一部分用戶),比如用戶A喜歡物品A、B,用戶B也喜歡物品A、B,則可以認為用戶A與用戶B口味或偏好相似。選擇用戶群中與當前用戶相似度最高的K個用戶作為鄰居,在鄰居喜歡的物品(信息)中根據與用戶的相似度計算出每一件物品(信息)的相似度,根據相似度推薦物品(信息)給當前用戶。

2.基于物品的協同過濾算法

根據當前用戶偏好的物品(信息),計算出與偏好物品(信息)相似的物品(信息)集,這里的相似度計算不是依據物品(信息)的內容屬性而是依據物品(信息)在用戶歷史行為記錄中同時出現的次數,比如物品(信息)A和物品(信息)B在同一用戶歷史行為記錄中多次同時出現,則認為物品(信息)A和物品(信息)B的相似度高。根據相似物品(信息)集推薦相似度最高的物品(信息)給當前用戶。

3.常用的相似度計算公式

協同過濾算法主要解決的問題是,當你面對海量物品或者信息不知道怎么選擇時,根據大家的行為數據來幫你做選擇。它的關鍵核心是計算用戶或者物品之間的相似度,常用的相似度計算公式包括杰卡德相似系數、夾角余弦、相關系數等方法。

三、智能推薦系統實現的關鍵步驟

1.設計思路

設計的主要目標是對用戶進行檔案的推薦,即通過一定方式將用戶與檔案之間建立聯系[6]682。當用戶瀏覽具體檔案文本時,在頁面下邊自動推薦基于物品相關的其他檔案也就是常見的“查詢了該檔案的人也喜歡”功能。常用的基于物品的協同過濾算法可以解決上述問題,該算法實現的主要步驟包括:(1)根據用戶使用檔案系統的歷史數據收集用戶偏好;(2)根據檔案用戶的歷史行為數據計算不同檔案之間的相似度。注意這里的檔案相似度是指兩份檔案在不同的查詢過程中同時被查詢的次數。采用上述的分析方法和思路,結合原始數據和分析目標,可以獲得如圖1所示的分析設計流程圖。

2.數據抽取

系統會在用戶使用檔案系統時,自動記錄訪問日志,記錄每個用戶在系統中的操作細節,從而建立用戶與檔案之間的聯系。其訪問的數據記錄見表1,其中記錄了用戶ID,輸入關鍵字,瀏覽檔案標題、瀏覽時長、下載標識、打印標識等多項屬性。在設計中,我們抽取所有的用戶訪問日志記錄作為原始數據集。原始數據集應盡最大量選擇數據,大量的數據能夠讓模型更好地學習到真實場景的數據分布,不容易產生有偏的分布估計,從而降低推薦結果的隨機性,提高推薦結果的準確性。

3.數據分析

通過對用戶使用檔案系統的行為習慣分析,我們發現用戶在找到與檢索關鍵字相關的檔案時,會進行長時間瀏覽、下載或者打印。在設計中我們引入了下載標識、打印標識這些字段作為檔案與檢索關鍵字相關的判斷標識。對于沒有下載標識和打印標識但又有一定瀏覽時長的檔案,它也有可能與檢索關鍵字相關,為此,我們引入了平均瀏覽時長概念,通過計算帶有下載標識或者打印標識記錄的平均瀏覽時長,以該時長作為基線,并判斷沒有下載標識和打印標識的檔案瀏覽時長是否大于基線時長,作為該檔案是否與檢索關鍵字相關的判斷標識。

4.數據預處理

由于用戶訪問日志記錄了用戶在檔案收集、管理、利用等過程中的所有操作行為,其中有許多無法直接利用的“臟數據”,因而無法直接對抽取的原始數據集進行分析。因此,需要對原始數據集進行清洗:(1)刪除不是用戶在查詢模塊產生的所有日志數據;(2)刪除沒有下載標識和打印標識且瀏覽時長小于平均瀏覽時長的所有操作日志;(3)刪除含有異常值或缺失值的日志數據,如不包含檢索關鍵字、檔案號、打印、下載、瀏覽標識等的日志數據。對處理后的數據,需要進行屬性規約,提取模型需要的數據特征,在設計中需要考慮將用戶在同一登錄時段的所有檔案查詢記錄合并為一次歷史查詢,因此提取“用戶ID”“用戶登錄系統的時間”“檔案文件的檔案號”作為系統輸入數據集使用的數據特征,數據格式如表2所示。

5.模型構建

根據輸入數據集構建用戶對檔案的評分矩陣,用戶對檔案的瀏覽時長、打印、下載等行為對應不同的評分,其中打印、下載的評分值應高于瀏覽時長,表示被打印或下載的檔案與檢索關鍵字密切相關。設計中構建評分矩陣時將同一用戶ID在不同登陸時段的操作分為不同的用戶記錄。評分矩陣如表3所示。設計采用杰卡德相似系數(Jaccardsimilaritycoeffi-cient)計算不同檔案之間的相似度用以構建檔案同現矩陣,其計算公式如圖2。其中,分母A1∪AM表示瀏覽過檔案1或者瀏覽過檔案M的用戶總數,分子A1∩AM表示同時瀏覽過檔案1和檔案M的用戶總數。完成各個檔案之間相似度的計算后,得到一個檔案之間的同現矩陣。同現矩陣如表4所示。通過用戶對檔案的評分矩陣和檔案同現矩陣可以計算出用戶對檔案的推薦列表,根據不同的評分優先推薦評分高的檔案給當前用戶。

6.模型評價

設計采用交叉驗證法對模型進行評估:(1)隨機打亂原始數據的順序,將用戶行為數據集按照均勻分布隨機分成10份,挑選1份作為測試集,將剩下的9份作為訓練集;(2)在訓練集上建立模型,并在測試集上對用戶行為進行預測,統計出相應的評測指標;(3)通過多次重復,得出比較穩定可靠的評測結果,最后將實驗測出的評測結果的平均值作為最終的評測指標。本設計以傳統單一的協同過濾算法為主導,智能推薦系統的泛化性能還有提升的空間,后續將引入基于深度學習的智能推薦算法,增強數據模型的表達能力,提升智能推薦系統的泛化性能,更好地滿足用戶的查檔需求。

作者:甘雨