本發(fā)明涉及異常行為識別技術領域,尤其涉及一種識別基于DBSCAN模型的非正常批量購票行為的方法。
背景技術:
現場演出票由于價錢高資源少,會引來大量的黃牛前來刷票(網絡購票異常行為),然后高價倒賣,黃牛的出現,損害用戶的利益,極大的降低了網上購票的用戶體驗和平臺的用戶粘性。黃牛為了搶票,經常會通過機器批量注冊很多賬戶,還會通過多個賬戶進行高頻,大量的訪問,以最快的速度下單占有資源。所以黃牛一般會通過程序進行刷票。目前識別黃牛大都是通過統(tǒng)計用戶的訪問來源,訪問頻次,訪問周期,從中找出異于大多數用戶的訪問異常,從而判定為黃牛。建立黃牛黑名單。黃牛的定義并不一定是一個真正的用戶,也可以是一個資源,黃牛使用該資源進行刷票,將此資源也納入到黃牛黑名單中,因而,會有IP黑名單,Cookie黑名單,賬號黑名單等。
當前的識別黃牛的方式主要通過監(jiān)控訪問日志,通過解析,計算日志中的IP,Cookie,設備,賬號的訪問頻次,訪問時間間隔,來識別異常訪問,這在一定程度上能夠防止黃牛。但是應用上述技術的時候,發(fā)明人發(fā)現,單一維度的識別,不能夠唯一判別用戶設備,容易誤殺正常用戶,比如IP,黃牛和正常用戶在同一個樓或是小區(qū),用同一個出口IP,如果使用IP識別,容易誤殺正常用戶。第二,頻次識別只能是在一定程度上識別黃牛,當黃牛拉大訪問間隔,降低訪問頻次,就不好判定。而且黃牛會模擬不同的客戶端,多渠道的進行刷票。黃牛為了快速搶票,會走捷徑,不會像正常用戶操作,因而其行為軌跡也缺失關鍵步驟,所以當前基于流量訪問異常的識別方法,已不滿足識別黃牛的需要。
技術實現要素:
為了解決上述技術問題,本發(fā)明提供了一種識別基于DBSCAN模型的非正常批量購票行為的方法,可以將網絡批量購票異常行為特征從正常購票行為特征中識別出來,進行隔離,并降低誤識別概率,使資源的分配更具合理性和公平性。
本發(fā)明提供了一種識別基于DBSCAN模型的非正常批量購票行為的方法,包括:
監(jiān)測預定時間段內的注冊數量高于參考時間段的注冊數量的識別閾值后,獲取基于密度聚類算法掃描所述預識別時間段內的所有注冊行為后標記的至少一個高度集中的注冊賬戶簇;
將所述標記的至少一個高度集中的注冊賬戶簇的網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識;
提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性;
識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離。
進一步的,所述將網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識,包括:
通過哈希函數將網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識。
進一步的,所述識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離,包括:
識別所述網絡購票行為屬性中的頻次閥值和黑名單,所述頻次閥值包括但不限于:不同IP訪問頻次、每個IP的訪問不同url的頻次、IP+cookie+agent訪問頻次或IP+cookie+agent訪問不同url的頻次中的一種或多種;
通過所述頻次閥值和黑名單識別出異常行為的用戶IP,將所述識別出的用戶IP存入黑名單進行隔離。
進一步的,所述提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性,包括:
提取所述用戶標識中的歷史行為記錄中的歷史頻次閥值和歷史黑名單;
提取所述用戶標識中的歷史交易行為記錄中存在潛在的購買行為異常閥值和超出購買行為異常閥值的異常注冊用戶的黑名單;
實時采集用戶標識的當前訪問行為記錄中的當前用戶訪問頻次和路徑。
進一步的,所述提取所述用戶標識中的歷史行為記錄中的歷史頻次閥值,包括以下步驟:
將歷史行為記錄中的日志文件內容載入到大數據數倉Hive中,在Hive中建立日志文件格式化數據表,將日志文件內容格式化到數據表中;
在數據表中,計算訪問頻次,并將計算結果存入大數據數倉中;所述訪問頻次包括但不限于不同IP訪問頻次、每個IP的訪問不同url的頻次、IP+cookie+agent訪問頻次或IP+cookie+agent訪問不同url的頻次中的一種或多種;
使用直方圖,觀察頻次分布,自定義確定歷史頻次閥值并存儲所述歷史頻次閥值。
進一步的,所述提取所述用戶標識中的歷史行為記錄中的歷史黑名單,包括以下步驟:
將ngnix代理服務器集群中不同的服務器上的前一天的用戶訪問日志文件集中到分布式存儲系統(tǒng)HDFS上;
將日志文件內容載入到大數據數倉Hive中,在Hive中建立日志文件格式化數據表,將日志文件內容格式化到數據表中;
在Hive中,計算不同IP訪問頻次,每個IP的訪問不同url的頻次,IP+cookie+agent訪問頻次,IP+cookie+agent訪問不同url的頻次;將計算結果存入大數據數倉中;使用直方圖,觀察頻次分布,自定義確定歷史頻次閥值;
基于確定的歷史頻次閥值和頻次計算結果,識別出異常的客戶,存入到黑名單表中。
進一步的,所述提取所述用戶標識中的歷史交易行為記錄中存在潛在的購買行為異常閥值,包括以下步驟:
導入歷史交易行為記錄到數據倉庫中;
計算每個用戶IP的單場次購票數,購買項目數,平均購票數;
使用直方圖,觀察單場次購票數,購買項目數,平均購票數分布,根據自定義規(guī)則分析確定存在潛在的購買行為異常閥值,并存儲所述存在潛在的購買行為異常閥值。
進一步的,所述提取所述用戶標識中的歷史交易行為記錄中超出購買行為異常閥值的異常注冊用戶的黑名單,包括以下步驟:
導入前一天所有交易記錄和至少一年的交易記錄到數據倉庫中;
計算每個用戶IP一年之內的單場次購票數,購買項目數,平均購票數;使用直方圖,觀察單場次購票數,購買項目數,平均購票數分布,根據自定義規(guī)則分析確定存在潛在的購買行為異常閥值;
基于確定的潛在的購買行為異常閥值和頻次計算結果,識別出超出購買行為異常閥值的異常注冊用戶,存入到黑名單表中。
進一步的,所述實時采集用戶標識的當前訪問行為記錄中的當前用戶訪問頻次和異常訪問路徑,包括:
實時讀取nginx的訪問日志文件并發(fā)送到日志處理系統(tǒng);
日志處理系統(tǒng)實時接收日志采集系統(tǒng)發(fā)送的日志,以一秒鐘為一個計算窗口,計算IP訪問頻次,每個IP的訪問url的頻次,IP+cookie+agent訪問頻次,IP+cookie+agent訪問url的頻次和異常訪問路徑,并將計算結果存儲到緩存中。
進一步的,所述識別閾值的計算方式包括:
其中,α為數據突增的比例,P1為預識別時間段內的注冊數量,n為預識別時間段之前連續(xù)的一個基準單位,n+m為預識別時間段之前連續(xù)的多個基準單位,Pi為參考時間段的注冊數量,Pmax為預識別時間段之前連續(xù)的多個基準單位中的注冊數量最大值,Pmin為預識別時間段之前連續(xù)的多個基準單位中的注冊數量最小值。
本發(fā)明通過監(jiān)測預定時間段內的注冊數量高于參考時間段的注冊數量的識別閾值后,獲取基于密度聚類算法掃描所述預識別時間段內的所有注冊行為后標記的至少一個高度集中的注冊賬戶簇;將所述標記的至少一個高度集中的注冊賬戶簇的網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識;提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性;識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離。確定識別黃牛的各種閥值,為判別黃牛提供數據判斷依據。實時記錄用戶的行為特征(頻次和軌跡),能夠為實時黃牛攔截提供實時依據;能夠建立黑名單,能夠基于黑名單,提前攔截黃牛,使資源的分配更具合理性和公平性。
附圖說明
圖1為本發(fā)明提供的一種識別基于DBSCAN模型的非正常批量購票行為的方法的實施例一的流程圖。
具體實施方式
為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。
需要說明的是,本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
實施例一
本發(fā)明實施例一提供了一種識別基于DBSCAN模型的非正常批量購票行為的方法,如圖1所示,包括:步驟S110至S140。
在步驟S110中,監(jiān)測預定時間段內的注冊數量高于參考時間段的注冊數量的識別閾值后,獲取基于密度聚類算法掃描所述預識別時間段內的所有注冊行為后標記的至少一個高度集中的注冊賬戶簇。
在步驟S120中,將所述標記的至少一個高度集中的注冊賬戶簇的網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識。
在步驟S130中,提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性。
在步驟S140中,識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離。
進一步的,所述將網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈希化為一個全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識,包括:
通過哈希函數將網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識。
進一步的,所述識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離,包括:
識別所述網絡購票行為屬性中的頻次閥值和黑名單,所述頻次閥值包括但不限于:不同IP訪問頻次、每個IP的訪問不同url的頻次、IP+cookie+agent訪問頻次或IP+cookie+agent訪問不同url的頻次中的一種或多種;
通過所述頻次閥值和黑名單識別出異常行為的用戶IP,將所述識別出的用戶IP存入黑名單進行隔離。
進一步的,所述提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性,包括:
提取所述用戶標識中的歷史行為記錄中的歷史頻次閥值和歷史黑名單;
提取所述用戶標識中的歷史交易行為記錄中存在潛在的購買行為異常閥值和超出購買行為異常閥值的異常注冊用戶的黑名單;
實時采集用戶標識的當前訪問行為記錄中的當前用戶訪問頻次和路徑。
進一步的,所述提取所述用戶標識中的歷史行為記錄中的歷史頻次閥值,包括以下步驟:
將歷史行為記錄中的日志文件內容載入到大數據數倉Hive中,在Hive中建立日志文件格式化數據表,將日志文件內容格式化到數據表中;
在數據表中,計算訪問頻次,并將計算結果存入大數據數倉中;所述訪問頻次包括但不限于不同IP訪問頻次、每個IP的訪問不同url的頻次、IP+cookie+agent訪問頻次或IP+cookie+agent訪問不同url的頻次中的一種或多種;
使用直方圖,觀察頻次分布,自定義確定歷史頻次閥值并存儲所述歷史頻次閥值。
進一步的,所述提取所述用戶標識中的歷史行為記錄中的歷史黑名單,包括以下步驟:
將ngnix代理服務器集群中不同的服務器上的前一天的用戶訪問日志文件集中到分布式存儲系統(tǒng)HDFS上;
將日志文件內容載入到大數據數倉Hive中,在Hive中建立日志文件格式化數據表,將日志文件內容格式化到數據表中;
在Hive中,計算不同IP訪問頻次,每個IP的訪問不同url的頻次,IP+cookie+agent訪問頻次,IP+cookie+agent訪問不同url的頻次;將計算結果存入大數據數倉中;使用直方圖,觀察頻次分布,自定義確定歷史頻次閥值;
基于確定的歷史頻次閥值和頻次計算結果,識別出異常的客戶,存入到黑名單表中。
進一步的,所述提取所述用戶標識中的歷史交易行為記錄中存在潛在的購買行為異常閥值,包括以下步驟:
導入歷史交易行為記錄到數據倉庫中;
計算每個用戶IP的單場次購票數,購買項目數,平均購票數;
使用直方圖,觀察單場次購票數,購買項目數,平均購票數分布,根據自定義規(guī)則分析確定存在潛在的購買行為異常閥值,并存儲所述存在潛在的購買行為異常閥值。
進一步的,所述提取所述用戶標識中的歷史交易行為記錄中超出購買行為異常閥值的異常注冊用戶的黑名單,包括以下步驟:
導入前一天所有交易記錄和至少一年的交易記錄到數據倉庫中;
計算每個用戶IP一年之內的單場次購票數,購買項目數,平均購票數;使用直方圖,觀察單場次購票數,購買項目數,平均購票數分布,根據自定義規(guī)則分析確定存在潛在的購買行為異常閥值;
基于確定的潛在的購買行為異常閥值和頻次計算結果,識別出超出購買行為異常閥值的異常注冊用戶,存入到黑名單表中。
進一步的,所述實時采集用戶標識的當前訪問行為記錄中的當前用戶訪問頻次和異常訪問路徑,包括:
實時讀取nginx的訪問日志文件并發(fā)送到日志處理系統(tǒng);
日志處理系統(tǒng)實時接收日志采集系統(tǒng)發(fā)送的日志,以一秒鐘為一個計算窗口,計算IP訪問頻次,每個IP的訪問url的頻次,IP+cookie+agent訪問頻次,IP+cookie+agent訪問url的頻次和異常訪問路徑,并將計算結果存儲到緩存中。
進一步的,所述識別閾值的計算方式包括:
其中,α為數據突增的比例,P1為預識別時間段內的注冊數量,n為預識別時間段之前連續(xù)的一個基準單位,n+m為預識別時間段之前連續(xù)的多個基準單位,Pi為參考時間段的注冊數量,Pmax為預識別時間段之前連續(xù)的多個基準單位中的注冊數量最大值,Pmin為預識別時間段之前連續(xù)的多個基準單位中的注冊數量最小值。
本發(fā)明實施例通過監(jiān)測預定時間段內的注冊數量高于參考時間段的注冊數量的識別閾值后,獲取基于密度聚類算法掃描所述預識別時間段內的所有注冊行為后標記的至少一個高度集中的注冊賬戶簇;將所述標記的至少一個高度集中的注冊賬戶簇的網絡購票行為記錄中的用戶IP、Cookie和訪問代理環(huán)境Agent哈?;癁橐粋€全局唯一的編碼字符串IP+Cookie+Agent,形成唯一用戶標識;提取所述用戶標識的歷史網絡購票行為記錄和實時網絡購票行為記錄中的網絡購票行為屬性;識別所述網絡購票行為屬性中的異常行為屬性的用戶IP,將所述異常行為屬性的用戶IP存入黑名單進行隔離。確定識別黃牛的各種閥值,為判別黃牛提供數據判斷依據。實時記錄用戶的行為特征(頻次和軌跡),能夠為實時黃牛攔截提供實時依據;能夠建立黑名單,能夠基于黑名單,提前攔截黃牛,使資源的分配更具合理性和公平性。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置,可通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。
需要指出,根據實施的需要,可將本申請中描述的各個步驟/部件拆分為更多步驟/部件,也可將兩個或多個步驟/部件或者步驟/部件的部分操作組合成新的步驟/部件,以實現本發(fā)明的目的。
上述根據本發(fā)明的方法可在硬件、固件中實現,或者被實現為可存儲在記錄介質(諸如CD ROM、RAM、軟盤、硬盤或磁光盤)中的軟件或計算機代碼,或者被實現通過網絡下載的原始存儲在遠程記錄介質或非暫時機器可讀介質中并將被存儲在本地記錄介質中的計算機代碼,從而在此描述的方法可被存儲在使用通用計算機、專用處理器或者可編程或專用硬件(諸如ASIC或FPGA)的記錄介質上的這樣的軟件處理??梢岳斫?,計算機、處理器、微處理器控制器或可編程硬件包括可存儲或接收軟件或計算機代碼的存儲組件(例如,RAM、ROM、閃存等),當所述軟件或計算機代碼被計算機、處理器或硬件訪問且執(zhí)行時,實現在此描述的處理方法。此外,當通用計算機訪問用于實現在此示出的處理的代碼時,代碼的執(zhí)行將通用計算機轉換為用于執(zhí)行在此示出的處理的專用計算機。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應以所述權利要求的保護范圍為準。