張 珍 孫令潔 尹 聰
(1.華中科技大學自動化學院圖像信息處理與智能控制教育部重點實驗室 武漢 430074)
(2.深圳華中科技大學研究院 深圳 518000)
人類行為紛繁復雜,人類行為動力學通過統計人類行為數據,挖掘其中的統計學規律,建立相應的動力學模型[1],取得了大量定性或定量的研究成果[2]。2005年,Barabasi等[3]在《Nature》上指出人類行為間隔時間呈現非均勻性和陣發性。隨后,Brockman等[4]在《Nature》發表研究鈔票空間流通特性的論文,指出人類活動是非隨機的,具有一定的規律性。Song C等[5]于2010年在《Nature》上指出人類移動行為可預測性高達93%。文獻[6]采取了三段式訓練預測器的方法,文獻[7]通過信息論方法證明了通信行為可預測。文獻[8]通過SVM預測算法,調整算法的平滑參數,最終算法平均準確率高達73.4%。文獻[9]提出了基于社交行為的移動位置預測算法。此外,動態貝葉斯結構[10]、CERP模型[11]、動態貝葉斯模型[12]以及決策樹算法[13]在位置預測上也取得了良好的效果。文獻[14]運用基于內容的推薦算法,采取長期興趣與短期興趣混合,引入遺忘機制,通過啟發式算法對預測準確率監督。
針對計算機操作行為的預測問題,通過分析1000個用戶的網上行為數據,引入興趣轉移算法如基于帶權遺忘機制的啟發式算法,使預測算法效果明顯改善。
在本文的研究中,數據來源于深圳某一數據挑戰賽[15]。其中包括了1000個隨機抽取的樣本用戶28天的電腦操作日志以及完整的人口學信息。
為了量化用戶興趣轉移和行為的遺忘對預測模型的影響,需要確定遺忘函數。遺忘函數就是在距今不同的時間長度t下,用戶剩余記憶量的占比f(t)。通過分析,我們采用非線性遺忘函數[16],其公式為

其中tmax和tmin為序列中的開始及結束時間,m為遺忘系數,m越大,遺忘越快。
為了進行用戶習慣的匹配,需要在用戶本身的序列中求取相似序列。相似度取決于窗口序列和目標序列位置匹配度和相應匹配操作時間上的匹配度。算法步驟如下。
1)求遺忘系數
假設取目標序列A窗口長度為5,分別求出目標序列里開始時間、結束時間tmax和tmin以及5個進程的持續時間t1到t5,根據遺忘函數,可以求出每個進程的權值Weight1到Weight5,即遺忘系數向量Weight。
2)位置匹配度P
位置匹配度P為目標窗口和滑動窗口內相同進程遺忘系數的總和。采取模糊算法,只需要滑動窗內進程相同,不需要相同進程對應的順序位置一致。即

其中N是目標窗口和滑動窗口內相同進程集合。
3)操作時間匹配度T
假設取目標序列A窗口長度為5,取該目標窗口前后各2個記錄構成長度為9的序列L。目標窗口中操作a的時間重要性為操作a在L中經歷的時長除以窗口內5個進程的總時長,得到目標序列的時間占比向量TA。同理,搜索序列的時間占比向量T′A為相同進程的時間占比。注意向量位置與目標序列一致。操作時間上的匹配度T為目標序列時間占比向量TA和搜索窗序列時間占比向量T′A的夾角余弦,并用遺忘系數修正。具體公式為

4)綜合匹配度S
在求位置匹配度時,采用非線性遺忘函數先求出目標窗口每個操作的權系數,取遺忘系數為0.5。加入遺忘機制后的位置匹配度P是相同進程權重和。求時間匹配度時,目標窗口內每個進程的時間重要性已得,乘以相應權系數即可。構成向量[位置匹配度P時間匹配度T],可用線性組合求得最終預測值。將預測值排序求得最相似序列S。

5)用戶行為預測
對用戶自身同一天序列進行遍歷,分別求得所有搜索窗綜合匹配度S。取綜合匹配度最高的前5名,分別取這5個搜索窗后3步操作,統計出現頻率最高的進程作為預測結果。
本文采用帶遺忘機制的預測算法構建個體的預測模型。從原始數據中篩選出第一周數據每天超過400條的用戶74人。從權值、周末和人口學屬性三個方面對非線性遺忘函數進行性能分析。
1)首先調整非線性函數的權值,窗口長度為5時得每個用戶平均準確率如圖1所示。

圖1 非線性遺忘函數權值為0的平均預測準確率
只考慮操作時間匹配度時,非線性遺忘函數權值為0時預測算法平均準確75%,約有80%的用戶正確率超過60%,30%用戶預測效果超過70%,個別用戶的預測準確率可超過90%。等同的考慮進程位置的匹配度和操作時間匹配度時,權值為0.5時預測算法平均72%正確。對比只考慮操作時間匹配度時準確率略有下降,但是不明顯。只考慮進程位置的匹配度時,權值為1時預測算法平均準確70%。
分析上述結果可知,基于遺忘機制的預測算法預測效果比較高,平均預測準確率高達75%,且個別用戶預測準確率非常高,說明用戶行為確實存在興趣和遺忘機制。預測算法效果準確率在只考慮操作時間匹配度時準確率時是最高的。
2)其次分析用戶周末行為,只考慮時間序列匹配度,平均預測準確率為78.5%,略高于工作日,說明用戶周末行為確實比工作日行為更有規律。
3)最后分析不同人口學屬性的平均預測準確率,通過曼惠特尼檢驗[17]分析對算法性能的影響,得到對于這個用戶群體,女性用戶預測準確率高于男性,職業和收入因素對用戶的預測準確率也有影響,其他因素如學歷、地域等對算法性能影響不大。
本文引入遺忘機制,采用非線性遺忘函數,建立了基于遺忘機制的預測模型對計算機操作行為進行預測。該算法平均預測準確率高達79%,約有80%的用戶準確率超過60%,小部分用戶的預測準確率超過90%。對于計算機操作行為的預測研究不僅有利于我們更好地認識人類自身,而且對信息安全甚至國防安全等有更大的價值。