• 沒有找到結果。

定義使用者特殊的行為模式作為特徵

4. 研究方法

4.2. 定義使用者特殊的行為模式作為特徵

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

30

圖 4-5 User6 的 facebook 每天的使用量

STD

31.8401 35.581 4.8674

表格 4-2 左: User6 全部時間的標準差 中: User6 前半時間的標準差 右: User6 後半時間的

標準差

圖 4-5 顯示,user6 每天的使用曲線在 2012/9 後,每天使用的次數與頻率跟 2012/9 之前的完全不同,從標準差如表格 4-2 上來看也是如此,因此可以推測 user6 的使用習慣有了很大的改變。

4.2. 定義使用者特殊的行為模式作為特徵

本節將以使用者使用手機應用程式的順序模式來當作特徵,作法是先將一個 使用者使用過的全部應用程式,按照次數由多到少排序如表格 4-3,

Name_App 執行的應用程式 COUNT( 'Name_App' ) com.htc.launcher 14980

com.android.browser 12038 com.google.android.gm 4564

com.android.settings 4184 com.facebook.katana 3444 com.android.phone 2851 jp.naver.line.android 2782

… …

表格 4-3 將使用者使用過的應用程式按照次數排列

然後給予這些應用程式由小到大的編號,如表格 4-4,

Name_App 編號

com.htc.launcher 0

com.android.browser 1

com.google.android.gm 2

com.android.settings 3

com.facebook.katana 4

com.android.phone 5

jp.naver.line.android 6

… …

表格 4-4 對所有使用者用過的應用程式作編號

將使用者每天的 user log 如表格 4-5 作成相對應的編碼,如表格 4-6,

MyTime Name_App 11-05-1219:30:27 com.htc.launcher 11-05-1219:30:47 com.android.camera 11-05-1219:31:15 com.htc.launcher 11-05-1219:31:32 com.android.settings

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

32

11-05-1219:31:34 com.android.settings 11-05-1219:32:55 com.htc.launcher 11-05-1219:32:59 tw.com.quickmark 11-05-1219:33:01 com.htc.launcher 11-05-1219:39:34 ymst.android.fxcamera 11-05-1219:40:11 com.whatsapp 11-05-1219:40:12 com.whatsapp

表格 4-5 User10 真實的 user log 串流

原始的 Log 資料流 編號過後的資料流

com.htc.launcher 0 com.android.camera 16

com.htc.launcher 0 com.android.settings 3 com.android.settings 3 com.htc.launcher 0 tw.com.quickmark 46

… ...

表格 4-6 將 User10 原始的 UserLog 資料流編碼

這樣可以讓比對的步驟更加簡單且快速,在此本研究所注重的是使用者的習 慣,因此應用程式的操作行為模式出現的次數才是本研究所認定的習慣,流程如 圖 4-6,

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

33

圖 4-6 對於使用者日常生活 log 編號的流程圖

在實作的方法上最直覺的想法是將所有的使用者使用過的 app 排序後再針 對每一個不同的使用者日常生活產生的 app 紀錄作編號,以連續出現的 n 個 (n-gram)應用程式為一組特徵,將所有出現的特徵次數加總,取前 N 個數量多的 資料納入計算。(N=10),在此討論三種情況:

連續 2 個 log 當作一筆特徵(如圖 4-7):

以連續 2 筆 log 當作特徵將呈現應用程式切換的習慣,會讓使用者間行為模 式的歧異度降低,並無法有效代表穩定的行為徵候。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

34

圖 4-7 連續兩個 log 當作特徵示意圖

連續 3 個 log 當作一筆特徵:

將呈現目前正在使用的應用程式與其前後一筆,使用者行為模式間的歧異度 較取連續兩筆 log 為特徵來的明顯,且特別特徵的統計數量足夠。

連續 4 個 log 當作一筆特徵:

歧異度較連續 3 筆 log 為特徵明顯,但由於序列越長,每個個別特徵出現的 次數越少,造成統計數量不足,本研究認為不適合當作特徵來使用。

不過以 3-gram 的方法去計算每一種行為模式出現的次數,會因為所有可能 出現的行為模式的排列組合過多造成記憶體不足的情況,進一步舉例說明,一個 使用者平均使用過的 app 數量大約為 100 到 200 之間,該使用者所有可能出現之 行為模式的組合有 200 的三次方種,全部使用者使用過的 app 數量大約為 1500 個,那所有可能出現的行為模式種類為 1500 的三次方種,如此龐大的數字會造 成記憶體的不足,因此在實作上本研究採取先對個人的行為模式次數進行累加,

再對應到所有使用者的應用程式編號。

facebook 相關的操作有 1600 筆左右,相較之下,瀏覽器相關的操作模式出現的 次數是其他應用程式的 3 倍之多,再其次才是使用 line 的操作模式,本研究會統

2,0,1 com.google.android.gm 465

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

38

編碼 次數

0,10,5 800

10,5,0 688

5,5,0 238

1,1,1 226

11,11,0 214

15,15,15 151

75,75,0 143

92,92,92 68

11,0,10 65

75,0,0 62

表格 4-9 user15 前十名的行為模式由多排序到少

因為是取行為模式(behavior pattern)出現的次數做排序,在此定義一個行為模 式為該使用者的 log 資料中的出現三個比鄰 log 為行為模式單位,即為一個 3-gram model,如圖 4-8 所示。

圖 4-8 以三筆 log 資料為行為模式的單位,統計出所有模式的個別出現的次數

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

39

因此有 log 資料才會產生各個行為模式的次數累積,資料量的數量是很重要 的關鍵。

在相似度的計算上,本研究將使用者的 log 資料分成兩個部分,Training Data 與 Test Data,分別對兩份資料取 3-gram 的特徵,取得個別的行為模式次數的前 十名,再將相同的行為模式從前十名中取出,剩餘的取個別名次的比值加總除以 二在加上相同的行為模式的個數乘二後除以 10 即為 Training Data 與 Test Data 的 相似度,計算方法如下,以 N=5(取前五名的行為模式)為例: (如表格 4-10、圖 4-9、

圖 4-10、圖 4-11)

Training Data Test Data

行為模式編號 次數 行為模式編號 次數

1,1,1 200 10,9,10 500 11,50,20 150 9,10,9 300 2,2,2 100 8,200,45 250 8,200,45 80 0,3,9 150 6,6,6 50 11,50,20 100

表格 4-10 (N=5 的計算例子)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

40

圖 4-9 將 Training Data 與 Test Data 中有相同的行為模式,另外提出來做加權處理

圖 4-10 計算 Training data 與 Test data 中不同的行為模式

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

41

圖 4-11 計算 Training data 與 Test data 中相同的行為模式

利用上述方法計算得 =7.93,因為 N=5(取前 5 名的行為模式),7.93/5=1.586,

此例的相似度為 1.586,一般來說超過 1 代表相似程度很高。

如此計算的方式是因為,在思考取得特徵的過程中,Training Data 與 Test Data 並沒有顯著的相似行為模式,Training Data 的資料取樣的時間比 Test Data 更早,

隨著新的 app 的出現,舊的 app 式微,在一消一長的情況下往往在取得 Test Data 的時間點,Training Data 常用的 app 可能已經不使用或少用了,在更多的情況下,

Test Data 中會出現同類型且代替掉原本 Training Data 曾經習慣使用的 app,因此 本研究決定從數個最常被使用的應用程式行為模式的角度來當作該使用者的特 徵,換句話說,即原本最常使用的 app 在經過若干時間後,換成另一個 app,但 是啟動該類型 app 的行為模式次數與原本的 app 卻不會有太大的改變,當然這中 間的轉換可能有交替的時間,而造成兩個消長的 app 同時存在,但這也屬於使用 者特徵的ㄧ環,考慮這些因素,取得 Training Data 與 Test Data 的時間與資料筆 數成為很重要的關鍵,進一步可以再加入每一筆 log 的時間跟位置資訊來更加強 使用者特徵的強度,在一段時間、地點內有頻繁且重複的行為模式,可以更精確 的代表使用者特徵,例如經常在某天相似的時間與地點打電話或傳簡訊,可以視

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

42

為很重要的使用者特徵,另外使用者本身對於應用程式的使用習慣也有不可忽略 的變數存在,在下一章節會討論各種實驗細節的參數調整,以達到可以藉由 log 資料辨識該使用者的目的。

如圖 4-12 所示, 總結說明本論文使用行為模式為特徵的相似度計算方法。

圖 4-12 特徵相似度的計算步驟

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

43

相關文件