一種確定用戶身份的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及海量計算機數(shù)據(jù)處理技術(shù),尤其涉及一種基于日志數(shù)據(jù)確定用戶身份的方法。
【背景技術(shù)】
[0002]現(xiàn)有的用戶身份識別方主要有兩種:一種是由業(yè)務(wù)員手動式確定用戶的身份,業(yè)務(wù)員從相互合作的業(yè)務(wù)伙伴手中直接拿到身份數(shù)據(jù),構(gòu)成身份數(shù)據(jù)庫;另一種是由用戶自主選擇確定身份,設(shè)置若干身份選項,然后,在用戶使用產(chǎn)品前引導(dǎo)用戶自主選擇一個身份。
[0003]這兩種方法都存在明顯的缺點和不足。業(yè)務(wù)員手動式確定身份方法效率十分低下,當用戶量增加到很大量級后單單依靠手工完成身份確認,也不再可能;而且由于往往存在一個賬戶多個人同時使用的情況,依靠業(yè)務(wù)員只能夠確定其中的一個,無法自動發(fā)現(xiàn)其他子賬戶,造成身份確認不全面;另外,手動式確認方法對于身份數(shù)據(jù)的更新十分困難,每次用戶身份發(fā)生變化都需要業(yè)務(wù)員及時修改,時效性很差。用戶自主選擇身份的方法同樣也存在諸多缺點,該方法的用戶的參與度較低,很多用戶不愿意確認自己的身份;其二是數(shù)據(jù)可信度差,用戶往往出于自我保護的心態(tài)而虛報身份。
[0004]因此現(xiàn)有技術(shù)還存在缺陷,亟待改進。
【發(fā)明內(nèi)容】
[0005]為克服現(xiàn)有技術(shù)的不足,本發(fā)明提供一種確定用戶身份的方法。
[0006]根據(jù)本發(fā)明的一方面,提供一種確定用戶身份的方法,所述方法包括:獲取與用戶操作相關(guān)的日志數(shù)據(jù);根據(jù)獲取的日志數(shù)據(jù),確定每個用戶的操作特征;根據(jù)操作特征對用戶劃分群組,其中,將操作特征相同或者相似的用戶劃分至同一組群;獲取每個組群中的一個用戶的身份;將所述一個用戶的身份確定為所述一個用戶所在的組群的用戶所屬的身份。
[0007]優(yōu)選地,所述與用戶操作相關(guān)的日志數(shù)據(jù)至少包括以下信息:用戶的標識、用戶的操作類型、用戶的操作標識以及用戶的操作時間。
[0008]優(yōu)選地,所述確定每個用戶的操作特征的步驟包括:從獲取的日志數(shù)據(jù)中,提取每個用戶的操作信息;基于提取的操作信息,構(gòu)建每個用戶的操作的有向圖;從構(gòu)建的有向圖中,提取每個用戶的操作的有向圖的特征;將提取的每個用戶的操作的有向圖的特征確定為每個用戶的操作特征。
[0009]優(yōu)選地,所述構(gòu)建每個用戶的操作的有向圖的步驟包括:針對同一用戶確定與提取的操作信息對應(yīng)的節(jié)點;將操作上存在預(yù)定的先后執(zhí)行關(guān)系的兩個節(jié)點之間的連線確定為有向邊,并且該有向邊的操作時間較早的節(jié)點指向該有向邊的操作時間較晚的節(jié)點;基于確定的節(jié)點以及有向邊,構(gòu)建該用戶的操作的有向圖。
[0010]優(yōu)選地,當任意兩個節(jié)點之間的操作時間間隔不大于第一閾值時,確定所述兩個節(jié)點之間的操作存在預(yù)定的先后執(zhí)行關(guān)系。
[0011]優(yōu)選地,所述有向圖的特征至少包括以下信息之一:有向圖的出度、有向圖的入度、有向圖的邊數(shù)以及有向圖的節(jié)點個數(shù)。
[0012]優(yōu)選地,所述將操作特征相同或者相似的用戶劃分至同一組群的步驟包括:采用聚類分析的方法,將操作特征相同或者相似的用戶劃分至同一組群。
[0013]優(yōu)選地,所述聚類分析的方法為KMeans算法。
[0014]優(yōu)選地,所述方法還包括:通過預(yù)定的報表形式,顯示劃分的各個組群的用戶所屬的身份及劃分的各個組群所占的用戶比例。
[0015]本發(fā)明不僅克服了手動確定身份的效率低下、辨別度低、更新困難等缺點,而且還彌補了用戶自主選擇身份方法的參與度低、可信度差的缺點。
【附圖說明】
[0016]圖1是示出根據(jù)本發(fā)明的示例性實施例的確定用戶身份的方法的流程圖;
[0017]圖2是示出根據(jù)本發(fā)明的示例性實施例的某用戶的操作的有向圖的模型示意圖;
[0018]圖3是示出根據(jù)本發(fā)明的示例性實施例的劃分的各個組群的聚類示意圖。
【具體實施方式】
[0019]以下,參照附圖來詳細說明本發(fā)明的實施例。
[0020]圖1示出了本發(fā)明一種確定用戶身份的方法的優(yōu)選實施例的流程圖。
[0021]參照圖1,在步驟110中,獲取與用戶操作相關(guān)的日志數(shù)據(jù)。
[0022]通常,在各種設(shè)備中運行的日志除了記錄有各種類型的錯誤(error)、警告(warning)、通知(info)、調(diào)試(debug)、網(wǎng)絡(luò)地址(IP)、統(tǒng)一資源定位符(URL)、客戶端類型、線程號、文件名、行號、函數(shù)名等信息之外,還可能記錄有與用戶操作有關(guān)的各種信息,例如,用戶的標識(ID)、用戶的操作類型、用戶的操作標識(ID)以及用戶的操作時間。
[0023]為了對各種用戶的行為進行數(shù)據(jù)分析,可通過獲取與用戶操作相關(guān)的日志數(shù)據(jù),來獲取用戶的操作信息。
[0024]具體實施時,可通過特定的API (Applicat1n Programming Interface,應(yīng)用程序編程接口)接口獲取與用戶操作相關(guān)的日志數(shù)據(jù),也可以直接從指定位置的日志文件或者數(shù)據(jù)庫中,獲取與用戶操作相關(guān)的日志數(shù)據(jù)。
[0025]在步驟120中,根據(jù)獲取的日志數(shù)據(jù),確定每個用戶的操作特征。
[0026]為了更好地刻畫和反映出每個用戶的行為特征,可采用有向圖結(jié)構(gòu)來描述每個用戶的操作行為,在一個示例性實施中,可從獲取的日志數(shù)據(jù)中,提取每個用戶的操作信息(即,用戶的標識(ID)、用戶的操作類型、用戶的操作標識(ID)以及用戶的操作時間等);基于提取的操作信息,構(gòu)建每個用戶的操作的有向圖;然后,從構(gòu)建的有向圖中,提取每個用戶的操作的有向圖的特征;將提取的每個用戶的操作的有向圖的特征確定為每個用戶的操作特征。
[0027]考慮到同一用戶的前后兩個操作存在一定的緊密關(guān)系,因此,在一個構(gòu)建有向圖的可選實施例中,可針對同一用戶確定與提取的操作信息對應(yīng)的節(jié)點;將操作上存在預(yù)定的先后執(zhí)行關(guān)系的兩個節(jié)點之間的連線確定為有向邊,并且該有向邊的操作時間較早的節(jié)點指向該有向邊的操作時間較晚的節(jié)點;基于確定的節(jié)點以及有向邊,構(gòu)建該用戶的操作的有向圖。
[0028]此外,在上述實施例中,還包括:在將操作上存在預(yù)定先后執(zhí)行關(guān)系的兩個節(jié)點之間的連線確定為有向邊之前,針對確定的節(jié)點確定任意兩個節(jié)點之間的操作是否存在預(yù)定的先后執(zhí)行關(guān)系。具體實施時,可通過設(shè)定前后兩個操作之間的時間閾值,來確定這兩個操作之間是否存在先后執(zhí)行關(guān)系。例如,當任意兩個節(jié)點之間的操作時間間隔不大于第一閾值時,確定所述兩個節(jié)點之間的操作存在預(yù)定的先后執(zhí)行關(guān)系。
[0029]應(yīng)該理解,本發(fā)明不限于采用有向圖結(jié)構(gòu)來描述每個用戶的操作行為,其它有助于描述用戶操作行為的數(shù)據(jù)結(jié)構(gòu),也均可應(yīng)用于本發(fā)明。
[0030]另外,還需要說明的是,在本發(fā)明中提取的有向圖的特征可以是有向圖的出度、有向圖的入度、有向圖的邊數(shù)以及有向圖的節(jié)點個數(shù),也可以是這些信息的組合。其中,有向圖的出度為從該有向圖中的所有節(jié)點出發(fā)的有向邊(out-edge)的數(shù)目;有向圖的入度為進入該有向圖中的所有節(jié)點的有向邊(in-edge)的數(shù)目。
[0031]以下結(jié)合附圖對本發(fā)明的上述實施過程作進一步的說明。
[0032]圖3是示出了根據(jù)本發(fā)明的示例性實施例的某用戶的操作的有向圖的模型示意圖。圖中所示的1、2、3、4、5分別表示該用戶的各個操作信息對應(yīng)的節(jié)點(Vertex)編號,其中,節(jié)點O指向節(jié)點3的連線表示節(jié)點O的用戶操作先于節(jié)點3的用戶操作執(zhí)