李鴻勛 楊君



摘? 要:以支付寶為研究對象探討了情景化用戶偏好對信息推薦的影響,提出了基于情景化用戶偏好的信息推薦流程,改進了已有的推薦算法。將傳統的協同過濾算法中由項目評分預測項目評分的模式調整為以用戶收支模式預測用戶的功能使用情況的模式。在推薦結果輸出階段,通過輸出情景化將時間這一情景因素融入推薦結果的輸出中,在合適的時間段向用戶進行對應功能的推薦來提高用戶對推薦結果的接受程度。
關鍵詞:情景;情景感知;用戶偏好;信息推薦
中圖分類號:TP391;G203 ? ? ? ?文獻標識碼:A文章編號:2096-4706(2021)22-0001-04
Abstract: Taking Alipay as the research object, the influence of contextualized user preferences on information recommendation is discussed, and the information recommendation process based on contextualized user preferences is proposed, and the existing recommendation algorithm is improved. In the traditional collaborative filtering algorithm, the mode of predicting project score from project score is adjusted to the mode of predicting user function usage based on user revenue and expenditure mode. In the recommendation result output stage, the context factor of time is integrated into the output of the recommendation result through the output of context, and the corresponding function is recommended to the user in an appropriate time period to improve the users acceptance of the recommendation results.
Keywords: context; context-awareness; user preference; information recommendation
0? 引? 言
當下移動應用市場競爭異常激烈的大環境下,應用的運營商需要盡可能地利用已有的
技術來提高應用的可觀性、實用性、體驗度等,以求在競爭中獲得生存和發展的機會。對于支付寶來說,經過多年來的創新與實踐,支付寶開發出了大量的實用性功能為用戶提供理財、生活、教育等多方面的服務,然而這些服務大部分缺乏引導,并不為用戶所熟知及使用,不能很好地發揮其作用。通過推薦技術結合情景元素來挖掘支付寶實用性功能的潛力并在適當的情況下向用戶推薦可能需求的功能能夠提高用戶對支付寶的了解和使用依賴性,通過這種方式幫助支付寶延長支付寶的產品使用周期,在與同類型及類似產品的競爭中立于不敗之地并促進“支付寶生態圈”的整體健康發展。
1? 情景與情景化的實現
所謂情景,即表明用戶所處的現實環境和虛擬環境,如時間、地點、正在進行的活動、使用的平臺及平臺上正在進行的活動等。情景的定義會受到實體類型的影響,實體既可以是現實中的人或物體也可以較為抽象的地點、領域,根據實體的不同類型情景也被賦予不同的含義。隨著衛星監測技術、物聯網和傳感器技術以及網站、應用程序監測技術的應用,系統對用戶當前所處情景的感知與捕獲能力也在日漸提高,并隨著情景理論的完善和情景感知技術的發展誕生出了基于情景感知的自適應服務。情景感知服務能夠利用傳感設備和感知程序智能化地識別用戶當前情景,并建立自適應調節機制來提高感知系統的適應性。在情景感知的實際應用中,系統能夠根據用戶的偏好和實時的情景反饋情況適時調整服務策略。
2? 基于情景化用戶偏好的信息推薦流程
基于情景化用戶偏好的信息推薦流程如圖1所示,推薦系統根據信息推薦的需要、數據挖掘與分析方法及情景感知技術的特點,通過顯性獲取和隱性獲取兩種方式對信息推薦系統所需的用戶數據、情景數據、項目數據、評價數據等相關數據進行獲取和收集。其中顯性獲取就是通過用戶主動為項目打分以及主動輸入用戶個人信息等方式,而隱性獲取則是通過記錄用戶的行為操作以及通過傳感器、其他感知程序對使用者的智能手機以及身處的現實環境進行一定程度的感知從而獲得情景數據。收集到的數據可能存在著格式不統一以及部分數據缺失、錯誤等情況,所以信息推薦系統需要在獲取到數據之后對數據格式進行規范化并且對缺乏分析價值的數據進行清除,在得到較為理想化的數據后將這些數據存儲到情景化偏好的用戶模型庫中進行持久化管理。在信息推薦階段,推薦系統將用戶模型庫中的數據導入到經過情景化改進的算法中計算從而得到推薦結果,該結果在經過用戶的體驗和反饋后,將用戶的評價情況實時更新到用戶模型庫中以便以后信息推薦系統能夠向用戶進行更加準確的信息推薦活動。
圖1? 基于情景化用戶偏好的信息推薦流程示意圖
3? 基于情景化用戶偏好的推薦算法研究
3.1? 算法概述
本研究中所采用的基于用戶情景化偏好的推薦算法是在傳統的基于用戶的協同過濾推薦算法上改進得來的。本研究以支付寶為研究對象,通過對比以用戶的交易類型以及對應的交易額度為代表的用戶交易行為來對用戶進行一定的分類,并通過皮爾遜相關系數和交易類型占比來找到交易行為接近的近鄰用戶。在向用戶輸出推薦結果的過程中,本課題將時間元素融入推薦結果的推送過程中。由于近鄰用戶使用某項功能的高頻時間通常符合該類型人群的生活方式和使用習慣,如在職員工會在月初將部分工資投入到基金、定期等功能中進行理財,異地工作、學習的人員在節假日前會使用購票功能購買返鄉車票,因此可以在統計近鄰用戶使用功能的高頻時段后,在對應的時段向目標用戶推薦該項功能,把握準確的推薦時間段可以增強用戶對推薦結果的接受程度和嘗試意愿,提高推薦的效率。
3.2? 算法設計及說明
如圖2所示,基于用戶情景化偏好的支付寶功能推薦算法的執行步驟可以大體分為用戶相似度計算、尋找近鄰用戶、評價預、結果推薦、情景化功能推薦等五個主要階段。
各個階段的具體說明如下:
(1)用戶相似度計算。本研究先通過用戶的交易行為相似度對用戶類型進行初步區分,由于皮爾遜相似度計算公式忽視了兩個用戶之間交易類型協同情況的探討,因此本研究采用皮爾遜相似度公式和交易類型相似度相結合的調和F分數來獲得更加準確的用戶交易行為的調和相似度。由于皮爾遜相似度可能出現負數從而影響調和F分數的計算效果,故取皮爾遜相似度計算結果的絕對值。計算公式如式(1)所示:
其中,u,v為支付寶的用戶,s(u,v)為用戶u與v之間最終的相似度,P(u,v)為交易行為的皮爾遜相似度,T(u,v)為用戶u與v之間交易類型的相似性。P(u,v)與T(u,v)的計算公式如式(2)和式(3)所示:
皮爾遜相似度計算公式可以通過用戶之間的交易類型與交易金額對用戶進行相關度判斷。公式中,i表示某一種交易類型,Iu表示用戶u的交易類型集合,Iv表示用戶v的交易類型集合,nu,i表示用戶u平均每天在某一種交易類型上的交易金額,如nu,餐飲=60表示用戶u平均每天在餐飲方面用支付寶進行消費的金額是60元,表示用戶的日均交易金額。
交易類型相似度T即為兩用戶間相同交易類型數量NIu∩Iv與他們存在的所有交易類型總數NIu∪Iv之間的比值,通過交易類型的差異性反映出用戶類型的差異。
(2)尋找最近鄰用戶。根據K近鄰算法(KNN)的思想,在采用快速排序算法對前一步驟得到的相似度集進行降序排列后,取數據集的前K個相似用戶,即與目標用戶相似度最高的K個用戶,作為近鄰用戶。
(3)評價預測。傳統的協同過濾算法的評價預測部分通過目標用戶的評價均值與近鄰用戶評價的高于均值部分的和來得到,而在本研究中,用戶對某項功能的評價則可以通過該用戶對這一項功能的使用意愿(即使用頻率)來反映。在支付寶功能的使用中,由于受到功能性質差異的影響,有些功能幾乎每天都會被使用,然而有些功能則只會每個月被使用極少次,如活躍用戶每天都會使用螞蟻森林這一功能,但是對于普通用戶,一個月可能購買火車票或機票的次數寥寥無幾,如果計算所有功能使用次數的均值,得到的預測結果將會與實際情況產生較大偏差,不能準確反映出用戶對該功能的合理使用情況,因此本研究在協同過濾算法原有的評價預測公式上進行改進,僅采用近鄰用戶的使用次數作為計算的參照以避免取功能使用次數均值所帶來的誤差,評價預測的具體公式如式(4)所示:
其中,pu,i表示目標用戶u對功能i的預期每月使用次數,s(u,u′)表示近鄰用戶u′與目標用戶u之間的相似度,ru′,i表示近鄰用戶u′對功能i的每月使用次數。
在該階段中,算法將融入功能使用的高頻時間段這一情景元素,并對近鄰用戶使用功能的高頻時段進行同步處理,即在統計所有近鄰用戶使用某項功能的高頻時段后取其眾數作為目標用戶使用該項功能意愿最高的時間段。如在對近鄰用戶使用“充值中心”這一項功能的常用時間段進行統計之后發現大部分近鄰用戶傾向于在月初使用該功能,則將“月初”作為目標用戶的期望使用時間段置入到功能推薦集合中。
(4)結果推薦。在經過上述步驟得到用戶對于某項功能使用情況的預測值之后,將所得到的預測值與支付寶用戶中有使用該功能的用戶每個月的使用次數均值進行對比,若目標用戶對該功能使用次數的預測值不小于使用過該功能用戶的使用次數均值則將該結果納入待推薦項目中,其具體示意如式(5)所示:
(5)情景化功能推薦。本研究在推送推薦結果的過程中,對推薦結果的輸出進行情景化,將目標用戶期望使用某項功能的時間段作為情景化的維度對該項功能的推薦過程進行進一步加工,當信息推薦系統感知到當前目標用戶處于功能推送的理想情景下時,系統即對其進行相關功能推薦。
4? 實驗及結果分析
4.1? 實驗數據采集
在實驗數據的選擇方面,在支付寶有限的數據中,用戶的交易記錄由于其高度個性化并且具有極強區分度是進行用戶相似度對比的理想數據集,而各個用戶對支付寶各項功能的使用情況則是作為信息推薦系統中進行推薦結果預測所必需的數據,因此本研究主要獲取支付寶用戶的交易記錄以及相應用戶的功能使用情況。
在用戶的交易記錄獲取方面,本研究采用基于Python編寫的爬蟲程序調用Selenium模塊自動地登錄用戶的支付寶賬戶,并跳轉到交易記錄頁面中,選取研究所需的時間范圍內的用戶交易記錄進行逐條抓取。通過爬蟲程序以及調研所獲得的數據都將保存到Excel表格中以便于進行后續的數據篩選及處理。
4.2? 結果分析
本研究采用結合精確率(Precision)和召回率(Recall)的調和F分數(F-measure)作為推薦算法對某個用戶的推薦結果的準確度的評估指標對算法的效力進行評估。
在統計出現理想推薦效果的K值后得到如圖3所示。由圖可知,當K值在取12時,在多次試驗中算法出現理想效果的次數最多,因此K=12為最優K值。
將最優K值置入推薦算法對輸入數據集中隨機20%的用戶進行推薦,得到的推薦結果及效果評價如表1所示。
由表2中數據可知,在對測試集中用戶進行功能推薦的過程中,進行輸出情景化之后的推薦算法在精確率、召回率及調和F分數上的數值普遍大于未進行情景化的數據,由此可見將情景化元素融入推薦的過程中能夠提高推薦的效率和用戶接受程度。
5? 結? 論
本文在傳統協同過濾算法的基本思路的基礎上提出了一種基于情景化用戶偏好的支付寶功能推薦算法。本文改進后的算法采取從收支到功能使用的新模式,即將用戶的收支作為用戶歸類的依據,通過皮爾遜相似度系數計算用戶收入狀況的相似性以發現相性接近的近鄰用戶,再利用這些近鄰用戶的支付寶功能使用情況來通過加權平均數來預測目標用戶的功能使用情況并進行推薦。實驗證明了本文改進后的算法相比傳統算法,其精確率,召回率和F-measure的值都有提高,具有一定的優越性。
參考文獻:
[1] 李建軍,侯躍,楊玉.基于情景感知的用戶興趣推薦模型 [J].計算機科學,2019,46(S1):502-506+510.
[2] 吳曉強,張春友,侍紅巖.情景感知在農業物聯網中的應用研究 [J].物聯網技術,2019,9(1):34-36.
[3] 李大鵬,余宗健.基于移動情景信息融合的推薦算法研究 [J].信息系統工程,2017(6):104-105.
[4] 李龍生,艾均,蘇湛,等.結合用戶行為和物品標簽的協同過濾推薦算法 [J].計算機應用與軟件,2018,35(6):248-253.
[5] GUO T L,ZHOU J,LUO K D,et al. Differentially private graph-link analysis based social recommendation [J].Information Sciences,2018,463(2):214-226.
[6] CHEN J W,WANG C,SHI Q H,et al. Social recommendation based on users attention and preference [J].Neurocomputing,2019,341:1-9.
作者簡介:李鴻勛(1997—),男,漢族,廣東汕頭人,學士學位,研究方向:信息系統與數據分析應用;楊君(1979—),女,漢族,廣東廣州人,講師,博士,研究方向:智能信息系統。