国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于指數(shù)權(quán)重算法的鐵路互聯(lián)網(wǎng)售票異常用戶智能識別的研究與實現(xiàn)

2018-11-09 02:03:06朱建生單杏花
鐵路計算機應(yīng)用 2018年10期
關(guān)鍵詞:購票日志邏輯

李 雯,朱建生,單杏花

(1.中國鐵道科學(xué)研究院集團有限公司 研究生部,北京 100081;2.中國鐵道科學(xué)研究院集團有限公司 電子計算技術(shù)研究所,北京 100081)

鐵路客運自2011年推出12306互聯(lián)網(wǎng)售票系統(tǒng)以來[1],不斷地進(jìn)行技術(shù)攻關(guān),至2018年春運,該系統(tǒng)的承載能力與以往相比已經(jīng)有了質(zhì)的飛躍,單日售票能力從1 000萬張?zhí)岣叩搅? 500萬張,高峰時段1 s可以售出近700張票,已經(jīng)可以滿足春運購票期間大量用戶購票時系統(tǒng)的正常穩(wěn)定運行。但是第三方軟件以“預(yù)付可提高排名”,“專享100 M提速光纖”等標(biāo)題為“噱頭”,吸引了大量的用戶借助其進(jìn)行購票。數(shù)據(jù)顯示,2017年12月開始,各種搶票軟件活躍用戶環(huán)比增長近3成,搶票功能加速包費用從10元到50元不等,在利益的驅(qū)使下,第三方軟件公司嚴(yán)重?fù)p害了用戶的利益和公平公正的購票環(huán)境。目前,互聯(lián)網(wǎng)交易相關(guān)的法律法規(guī)還不健全[2],相關(guān)異常用戶的行為對社會危害性極大,嚴(yán)重破壞了交易平臺公平公正的環(huán)境。

通過技術(shù)手段對異常購票行為進(jìn)行限制是確保公平公正售票,保障百姓購票利益的主要方式。目前,風(fēng)險控制系統(tǒng)可以從用戶登錄IP更換頻率、設(shè)備指紋更換頻率、余票查詢頻率以及內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)地址更換頻率等角度實時識別異常請求[3]。然而,對海量的用戶行為歷史數(shù)據(jù)還沒有進(jìn)行更深一層的分析,還不能有效地挖掘出歷史數(shù)據(jù)的潛在價值,因此,急需構(gòu)建一個基于海量歷史數(shù)據(jù)對異常用戶進(jìn)行識別的模型。本文結(jié)合大數(shù)據(jù)技術(shù)及機器學(xué)習(xí)技術(shù),研究識別異常用戶的分析方法,設(shè)計了一套異常用戶智能識別模型,通過對歷史用戶數(shù)據(jù)進(jìn)行機器學(xué)習(xí)訓(xùn)練,實現(xiàn)對囤票、倒票等異常用戶行為的高效識別。

1 異常用戶識別基本方法

為了識別異常用戶,需要對用戶的異常性進(jìn)行指數(shù)化,異常用戶指數(shù)區(qū)間為[0~1],如果該指數(shù)越接近1,則說明該用戶是異常用戶的概率越大。

鐵路12306互聯(lián)網(wǎng)售票系統(tǒng)在提供服務(wù)過程中,用戶與系統(tǒng)交互產(chǎn)生了海量有關(guān)用戶訪問的行為日志數(shù)據(jù),這些日志數(shù)據(jù)詳細(xì)描述了用戶對鐵路12306互聯(lián)網(wǎng)售票系統(tǒng)的使用情況,通過對海量的購票日志數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,挖掘并提取出用戶異常購票行為特征,建立規(guī)則庫,根據(jù)規(guī)則識別出異常購票用戶。

通過離線分析異常購票用戶的識別模型,在用戶使用鐵路12306互聯(lián)網(wǎng)售票系統(tǒng)購票的過程中,實時收集該用戶的行為日志數(shù)據(jù)以及基本數(shù)據(jù)(包括個人信息、常用聯(lián)系人信息等),并與離線分析出的識別模型進(jìn)行匹配,從而達(dá)到實時管控和打擊刷票等異常行為的目的,維護互聯(lián)網(wǎng)售票交易的公平性。

2 數(shù)據(jù)采集及預(yù)處理

基于海量用戶信息,傳統(tǒng)的數(shù)據(jù)存儲和處理方法無法滿足算法的高效準(zhǔn)確運行。本文主要通過KETTLE和Flume作為數(shù)據(jù)采集的主要工具[4-5],其中,KETTLE主要采集關(guān)系型數(shù)據(jù)庫的數(shù)據(jù),F(xiàn)lume主要采集用戶操作日志即非結(jié)構(gòu)化數(shù)據(jù)。關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)直接存儲到Hive中等待數(shù)據(jù)預(yù)處理, Flume采集的用戶行為日志數(shù)據(jù),進(jìn)入Kafka消息隊列,被SparkStreaming準(zhǔn)實時消費解析成結(jié)構(gòu)化數(shù)據(jù)并存儲到 Hive中[6-7]。

對于采集到Hive中的用戶行為數(shù)據(jù)以及購票信息,主要使用Hive Sql及其自定義函數(shù)(UDF),將數(shù)據(jù)處理操作轉(zhuǎn)換成分布式MapReduce任務(wù)運行,使海量數(shù)據(jù)能夠高效準(zhǔn)確地進(jìn)行處理。這種方法能夠滿足Spark機器學(xué)習(xí)數(shù)據(jù)模式的條件,從而對數(shù)據(jù)源指數(shù)權(quán)重算法模型進(jìn)行高效訓(xùn)練。

3 指數(shù)權(quán)重算法

指數(shù)的大小源于數(shù)據(jù)集的特征,而處理這些特征需要一組權(quán)重。因此,在異常用戶特征屬性標(biāo)簽的實現(xiàn)處理問題上,采用一種自定義的指數(shù)權(quán)重算法,即通過指數(shù)權(quán)重算法動態(tài)計算指數(shù)的權(quán)重,實現(xiàn)修正人工確定指數(shù)的誤判。

3.1 原理概述

根據(jù)研究目標(biāo)的實際情況,異常用戶指數(shù)的計算分為兩部分:(1)用戶特征權(quán)重值計算;(2)用戶指數(shù)預(yù)測。因此,采用Spark MLlib中的K-means聚類算法和邏輯回歸判別算法,構(gòu)成一個組合指數(shù)算法模型,對異常用戶指數(shù)進(jìn)行預(yù)測[8-9],指數(shù)權(quán)重算法的具體結(jié)構(gòu)如圖1所示。

圖1 指數(shù)權(quán)重算法結(jié)構(gòu)

指數(shù)權(quán)重算法為兩層結(jié)構(gòu):第1層主要用于修正特征值權(quán)重;第2層主要是用于計算指數(shù)P值,P值的取值范圍為[0~1]。

3.2 主要流程

(1)利用K-means聚類算法將數(shù)據(jù)分成K類。其中,由于該場景中無法確定具體的k值,因此,通過肘部法則估計聚類數(shù)量。肘部法則模擬不同k值的成本函數(shù)值,k值增大,平均畸變程度減小,從而每個類包含的樣本數(shù)減少,樣本離其重心更近。但是,隨著k值繼續(xù)增大,平均畸變程度的改善效果將不斷減低,當(dāng)畸變程度的改善效果下降幅度最大時,相應(yīng)的k值稱為肘部。

(2)利用K-means聚類算法[10]的結(jié)果篩選最大值簇和最小值簇。

(3)篩選得到的最大值簇數(shù)據(jù)類標(biāo)記為1,最小值簇數(shù)據(jù)類標(biāo)記為0,將二者數(shù)據(jù)作為邏輯回歸的訓(xùn)練集數(shù)據(jù)。

(4)利用篩選得到的數(shù)據(jù)訓(xùn)練邏輯回歸模型。

(5)利用確定的邏輯回歸模型得到修正的特征權(quán)重。

(6)將修正后的權(quán)重帶入原始數(shù)據(jù),計算出最終的指數(shù)。

(7)對結(jié)果進(jìn)行數(shù)據(jù)歸一化(指數(shù)歸一化,指數(shù)范圍為 [0~1])。

3.3 計算方式

該算法的最終目標(biāo)是計算樣本特征的某一指數(shù)(沒有歸一化的指數(shù))。指數(shù)的大小來源于樣本特征實現(xiàn)的特征值。通常有:

其中, w1, w2,…, wn表示權(quán)重系數(shù),x1, x2,…, xn表示特征值。已知w1, w2,…, wn初始值,為了得到準(zhǔn)確度高的G值,需要修正權(quán)重值。具體修正權(quán)重值算法步驟如下。

3.3.1 計算聚類中心

在數(shù)據(jù)采集階段,利用K-means聚類方法對數(shù)據(jù)集進(jìn)行聚類,得到聚類的簇中心向量:β1, β1,…,βn,根據(jù)公式(2)對簇中心進(jìn)行指數(shù)化:

其中,A表示初始權(quán)重, Bi為第i個簇中心的結(jié)果指數(shù),最后篩選出簇中心結(jié)果指數(shù)最大和最小的兩個簇。

假設(shè)總共分為4類,其中,簇中心向量分別為:β1,β2,β3,β4,那么,簇中心的結(jié)果指數(shù)取值有 :B1, B2, B3, B4,若 : B1>B3>B4>B2,則將結(jié)果為 B1的簇標(biāo)記為G1類用戶,結(jié)果為B2的簇標(biāo)記為G2類用戶,這兩類用戶作為邏輯回歸模型的數(shù)據(jù)集。

3.3.2 建立判別模型

建立一種基于邏輯回歸模型的判別模型,對于指數(shù)值的大小可以用G→{0, 1}的映射進(jìn)行表示,邏輯回歸模型的結(jié)果也只能為1或0,因此,可以假設(shè)1為異常行為指數(shù)值大的用戶(即G1類用戶),0為異常行為指數(shù)值小的用戶(即G2類用戶)。

邏輯回歸模型建立在Sigmoid函數(shù)基礎(chǔ)之上,邏輯回歸模型計算公式為:

其中, xi是提取的用戶特征,θi為xi的對應(yīng)參數(shù)(及回歸模型特征xi的回歸系數(shù))。當(dāng)Pθ(x)=0時,被檢測的用戶指數(shù)值小,當(dāng)Pθ(x)=1時,被檢測的異常用戶指數(shù)值大。

為計算最佳回歸參數(shù)θ,采用極大似然法:(1)輸入人工設(shè)置初始參數(shù)值(初始權(quán)重):θ'0, θ'1, θ'2, …,θ'i,…,θ'n。(2)計算輸出,得到訓(xùn)練后的參數(shù)值(修正后的權(quán)重):θ0, θ1, θ2, …, θi,…,θn。(3)利用上述的 G1類以及G2類用戶數(shù)據(jù)集作為邏輯回歸模型的訓(xùn)練集數(shù)據(jù)進(jìn)行訓(xùn)練,從而得到修正后的權(quán)重。

3.3.3 結(jié)果歸一化

將得到的修正后的權(quán)重值代入原始數(shù)據(jù),計算所有數(shù)據(jù)樣本的異常用戶指數(shù)。

以上是用戶特征處理自定義的指數(shù)算法模型原理推導(dǎo)。主要是對用戶的行為屬性以及用戶屬性進(jìn)行分析和選取,選擇合適的屬性作為輸入?yún)?shù),用以訓(xùn)練基于邏輯回歸算法的分類模型,得到相應(yīng)系數(shù)(特征權(quán)重),從而完成對指數(shù)算法模型的構(gòu)建。

4 實驗結(jié)果及分析

4.1 樣本數(shù)據(jù)集特征提取

分析數(shù)據(jù)主要來源于2017年所有的購票數(shù)據(jù)和用戶購票日志,主要包括用戶的購票信息,常用聯(lián)系人操作信息,用戶購票行為日志信息等。通過KETTLE和SparkStreaming將數(shù)據(jù)進(jìn)行處理并存儲到Hive數(shù)據(jù)倉庫中,產(chǎn)生分析數(shù)據(jù)的寬表,表中每個記錄對應(yīng)一個特征的數(shù)據(jù)項,總共包含25種特征向量,其主要特征向量包括:CDN地址變換頻率,退票比例,頁面平均查詢頻率,改簽比例,同一時間段購票次數(shù),常用聯(lián)系人更換頻率等。特征向量是以結(jié)構(gòu)化和數(shù)字化處理的用戶基本購票信息,常用聯(lián)系人操作信息,購票行為日志信息等3類價值特征,并對特征向量進(jìn)行歸一化處理,排除各價值變量因數(shù)據(jù)級差別造成的影響。

4.2 用戶特征權(quán)重值計算

運用Spark MLlib中的K-means方法進(jìn)行聚類分析。

4.2.1 聚類變量獨立性檢驗

聚類算法需要輸入變量彼此之間相互獨立,故要對聚類變量進(jìn)行相關(guān)性分析,運用Spark MLlib工具檢驗,結(jié)果表明,挑選的25種特征變量中,存在3對變量之間相對波動幅度的相關(guān)系數(shù)大于0.3,故刪除這3個特征向量,剩余的22種特征變量通過獨立性檢驗。

4.2.2 聚類分析及聚類群體分析

通過肘部法估計出聚類個數(shù)是4。

K-means聚類算法將用戶群體分為4個群體,其中,各個用戶群體的聚類中心點如表1所示。

表1 K-means聚類結(jié)果表

4.3 用戶異常指數(shù)預(yù)測

根據(jù)K-means聚類的結(jié)果,將第1類和第2類作為異常用戶指數(shù)預(yù)測模型的樣本數(shù)據(jù)進(jìn)行訓(xùn)練,其中,第1類指數(shù)設(shè)置為1,第2指數(shù)設(shè)置為0,將該樣本數(shù)據(jù)源加入到訓(xùn)練模型中進(jìn)行訓(xùn)練,通過Spark MLlib的邏輯回歸模型分析,由式3可得各個影響因子邏輯回歸的回歸系數(shù)值 ,如表2所示。

表2 K-means聚類參數(shù)值結(jié)果表

由此獲得的邏輯回歸模型表達(dá)式為:

根據(jù)異常用戶指數(shù)預(yù)測的模型,對K-means算法的樣本數(shù)據(jù)進(jìn)行訓(xùn)練,計算出每個用戶的異常用戶指數(shù),依據(jù)現(xiàn)有風(fēng)控系統(tǒng)對用戶的攔截頻率,發(fā)現(xiàn)現(xiàn)有風(fēng)控系統(tǒng)攔截頻率高的用戶在通過該指數(shù)模型計算出的異常用戶指數(shù)幾乎都在[0.7,1]之間,實驗結(jié)果如表3所示。

表3 異常指數(shù)計算與分類結(jié)果對比表

分析表明,異常用戶預(yù)測準(zhǔn)確度達(dá)到了80%,該模型具有較好的檢驗效果。

5 結(jié)束語

目前,鐵路互聯(lián)網(wǎng)售票系統(tǒng)異常用戶惡意搶票、囤票現(xiàn)象泛濫,本文研究并設(shè)計了一種指數(shù)算法模型,能夠通過海量的用戶購票信息以及交易行為日志等數(shù)據(jù),對異常購票用戶進(jìn)行識別,并使用2017年互聯(lián)網(wǎng)客票系統(tǒng)相關(guān)數(shù)據(jù)對算法模型進(jìn)行驗證,80%異常用戶預(yù)測準(zhǔn)確度證明該算法模型能夠比較有效地識別出異常購票用戶,可以與當(dāng)前實時風(fēng)險控制系統(tǒng)相結(jié)合,更加高效地識別異常用戶。

猜你喜歡
購票日志邏輯
不同的購票方法
刑事印證證明準(zhǔn)確達(dá)成的邏輯反思
法律方法(2022年2期)2022-10-20 06:44:24
邏輯
一名老黨員的工作日志
華人時刊(2021年13期)2021-11-27 09:19:02
創(chuàng)新的邏輯
扶貧日志
心聲歌刊(2020年4期)2020-09-07 06:37:14
直擊痛點的“候補購票”可多來一些
鐵路候補購票服務(wù)擴大到全部列車
女人買買買的神邏輯
37°女人(2017年11期)2017-11-14 20:27:40
游學(xué)日志
西平县| 余江县| 浦东新区| 日土县| 九台市| 浮梁县| 武宁县| 门头沟区| 汽车| 连州市| 芮城县| 嵊泗县| 耿马| 福安市| 清水县| 句容市| 临江市| 宝应县| 巴东县| 建水县| 淮安市| 玉屏| 项城市| 凤凰县| 舟山市| 长岭县| 延长县| 咸阳市| 遵义县| 广德县| 达孜县| 兴化市| 正安县| 牡丹江市| 普洱| 台州市| 大田县| 三门峡市| 广南县| 高邑县| 道孚县|