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

?

一種識(shí)別用戶實(shí)際訪問(wèn)網(wǎng)址的算法設(shè)計(jì)

2020-10-27 09:47王剛翟欣虎秦益飛
中國(guó)信息化 2020年9期
關(guān)鍵詞:字段網(wǎng)址聚類

王剛 翟欣虎 秦益飛

一.引言

隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,使用終端接入運(yùn)營(yíng)商服務(wù)器并訪問(wèn)互聯(lián)網(wǎng)網(wǎng)站的用戶數(shù)量快速增長(zhǎng)。通常情況下運(yùn)營(yíng)商都需要對(duì)所接入用戶的上網(wǎng)行為進(jìn)行審計(jì),而該審計(jì)需要準(zhǔn)確的識(shí)別出用戶實(shí)際的訪問(wèn)網(wǎng)址。通常情況下記錄用戶訪問(wèn)的網(wǎng)址最準(zhǔn)確的設(shè)備是用戶使用的終端設(shè)備的瀏覽器,但運(yùn)營(yíng)商無(wú)法通過(guò)簡(jiǎn)單方法拿到用戶使用的終端設(shè)備上的數(shù)據(jù),所以最實(shí)際可行的方法是通過(guò)用戶接入運(yùn)營(yíng)商服務(wù)器后,通過(guò)服務(wù)器所產(chǎn)生的用戶訪問(wèn)日志來(lái)進(jìn)行分析。

但實(shí)際中,對(duì)于用戶使用終端設(shè)備上的瀏覽器訪問(wèn)某個(gè)互聯(lián)網(wǎng)網(wǎng)站的某個(gè)頁(yè)面時(shí),瀏覽器向網(wǎng)站發(fā)出的請(qǐng)求的數(shù)量遠(yuǎn)大于用戶在瀏覽器中輸入的或者點(diǎn)擊某個(gè)鏈接產(chǎn)生的那一條請(qǐng)求。通常情況下用戶訪問(wèn)一個(gè)網(wǎng)站頁(yè)面,瀏覽器會(huì)發(fā)出幾十乃至上百條數(shù)量不等的請(qǐng)求給網(wǎng)站服務(wù)器,比如用戶實(shí)際只打開(kāi)某個(gè)新聞頁(yè)面,而瀏覽器實(shí)際會(huì)額外請(qǐng)求若干張網(wǎng)頁(yè)上的圖片,若干段廣告文本,甚至音樂(lè),動(dòng)畫等。對(duì)于用戶接入的運(yùn)營(yíng)商的服務(wù)器(網(wǎng)關(guān)代理等),服務(wù)器會(huì)把每一條請(qǐng)求都記錄成一條日志,服務(wù)器只是處理記錄這些請(qǐng)求,其本身是無(wú)法區(qū)分出用戶實(shí)際訪問(wèn)的那個(gè)鏈接請(qǐng)求的。表1列出當(dāng)某個(gè)用戶訪問(wèn)百度首頁(yè)時(shí)實(shí)際產(chǎn)生的部分訪問(wèn)請(qǐng)求。

基于上述情況,運(yùn)營(yíng)商在每時(shí)每刻產(chǎn)生的海量訪問(wèn)記錄面前,對(duì)用戶上網(wǎng)行為的審計(jì)將會(huì)產(chǎn)生較大偏差,用戶實(shí)際訪問(wèn)的網(wǎng)址被掩埋在大多數(shù)沒(méi)有價(jià)值的數(shù)據(jù)中。所以相對(duì)準(zhǔn)確的識(shí)別出用戶實(shí)際訪問(wèn)的網(wǎng)址將對(duì)運(yùn)營(yíng)商的用戶行為審計(jì)產(chǎn)生關(guān)鍵的作用。

從海量訪問(wèn)日志中識(shí)別出用戶實(shí)際訪問(wèn)最常見(jiàn)的是過(guò)濾合并方法,該方法將訪問(wèn)日志中的URL字段中包含jpeg、mp3、js、css等關(guān)鍵字的日志過(guò)濾掉,將剩下的日志中相鄰的且URL字段相同的多條日志合并為一條,最終將這些日志的URL識(shí)別為用戶實(shí)際訪問(wèn)的網(wǎng)址。但是,因?yàn)榉怯脩魧?shí)際訪問(wèn)的網(wǎng)址也就是瀏覽器根據(jù)網(wǎng)頁(yè)情況自動(dòng)發(fā)送的請(qǐng)求,這些請(qǐng)求中除了一些可以被簡(jiǎn)單通過(guò)關(guān)鍵字過(guò)濾掉的以外,還有很大一部分是和用戶實(shí)際訪問(wèn)的網(wǎng)址從結(jié)構(gòu)來(lái)看沒(méi)有區(qū)別,無(wú)法區(qū)分。這種情況下通過(guò)簡(jiǎn)單過(guò)濾合并的結(jié)果會(huì)多出大量的誤報(bào)日志,嚴(yán)重影響后續(xù)審計(jì)的準(zhǔn)確性。

二.識(shí)別用戶實(shí)際訪問(wèn)網(wǎng)址的算法設(shè)計(jì)

(一)識(shí)別算法總體流程設(shè)計(jì)

當(dāng)一個(gè)用戶使用瀏覽器訪問(wèn)某個(gè)互聯(lián)網(wǎng)網(wǎng)站時(shí),該用戶每一次訪問(wèn)操作(例如在瀏覽器地址欄輸入網(wǎng)站地址,或者點(diǎn)擊了某個(gè)網(wǎng)站上的某個(gè)鏈接)都會(huì)被為其服務(wù)的網(wǎng)絡(luò)服務(wù)運(yùn)營(yíng)商(例如中國(guó)電信)的網(wǎng)關(guān)服務(wù)器處理并記錄下來(lái),通常情況下每一次訪問(wèn)操作都會(huì)包含數(shù)量不等的若干條請(qǐng)求,每一個(gè)請(qǐng)求都會(huì)被至少包含如下字段的日志所記錄下來(lái),一個(gè)典型的請(qǐng)求日志至少包含如下字段,如表2所示。

通常情況下,網(wǎng)關(guān)服務(wù)器每時(shí)每刻都會(huì)收到從不同用戶設(shè)備發(fā)往不同互聯(lián)網(wǎng)網(wǎng)站的海量請(qǐng)求,網(wǎng)關(guān)服務(wù)器將這些請(qǐng)求生成的日志發(fā)往本發(fā)明所述的裝置,本識(shí)別算法收到這些日志后,按如下流程處理:

步驟1,算法首先需要定期收集由運(yùn)營(yíng)商服務(wù)器所產(chǎn)生的上述用戶訪問(wèn)日志,每次收集的周期不宜太長(zhǎng),例如可以將收集周期定位1分鐘。收集的方式?jīng)]有特定的要求,例如可以通過(guò)將日志作為消息逐條發(fā)送給本算法,也可以通過(guò)將一段時(shí)間的若干條日志以文件的方式傳送到本算法。

步驟2,將收到的日志按用戶標(biāo)識(shí)字段進(jìn)行分組,即每一組內(nèi)的日志都包含相同的用戶標(biāo)識(shí)。

步驟3,將每一組的日志按訪問(wèn)時(shí)間字段的先后順序重新排序。

步驟4,將已經(jīng)排好序的每一組日志按相鄰兩條日志的訪問(wèn)時(shí)間的時(shí)間間隔的長(zhǎng)短進(jìn)行合并,當(dāng)一小段時(shí)間間隔內(nèi)存在大于等于設(shè)定閾值的日志條數(shù)時(shí),則將這些日志歸并為該用戶一次訪問(wèn)所產(chǎn)生的請(qǐng)求日志,所采用的歸并方法可以有多種,例如可以采用無(wú)監(jiān)督聚類方法中的基于層次聚類的ROCK,基于密度聚類的Dbscan,基于神經(jīng)網(wǎng)絡(luò)聚類的SOM,基于統(tǒng)計(jì)學(xué)聚類的COBWeb等,經(jīng)過(guò)分析發(fā)現(xiàn)基于密度聚類的DBScan最適合上述場(chǎng)景。

步驟5,對(duì)于已經(jīng)分好的一次訪問(wèn)產(chǎn)生的若干條日志按URL和Referer字段構(gòu)建多叉樹(shù),其中將URL字段的內(nèi)容作為子節(jié)點(diǎn),Referer字段的內(nèi)容作為父節(jié)點(diǎn),如此遍歷這些日志,將構(gòu)建出1顆或者多顆多叉樹(shù)。

步驟6,統(tǒng)計(jì)上述1顆或者多顆多叉樹(shù)的葉子節(jié)點(diǎn)的數(shù)量,選出其中葉子節(jié)點(diǎn)最多的樹(shù)的根節(jié)點(diǎn)作為該用戶當(dāng)時(shí)實(shí)際訪問(wèn)的網(wǎng)站地址。

如此反復(fù)上述步驟,即可識(shí)別出用戶實(shí)際訪問(wèn)的網(wǎng)址。

(二)訪問(wèn)行為時(shí)間劃分算法設(shè)計(jì)

DBScan是一種基于密度的無(wú)監(jiān)督聚類算法,可以接受一維或多維待聚類樣本數(shù)據(jù)作為輸入源,其基本思想是先計(jì)算所有樣本兩兩之間的歐式距離,然后規(guī)定在掃描半徑 (eps)內(nèi)存至少存在最小包含點(diǎn)數(shù)(minPts)個(gè)歐式距離小于eps的樣本,則這些樣本將被聚為同一類,反之則作為噪聲樣本。即,包含在圓內(nèi)的樣本聚為同一類,而圓外的樣本則當(dāng)成噪聲。

本識(shí)別算法在獲取到同一用戶產(chǎn)生的一小段時(shí)間內(nèi)連續(xù)的訪問(wèn)記錄,將記錄的時(shí)間作為DBScan一維樣本輸入源,通過(guò)算法將樣本分為若干類,每一類中的記錄則作為該用戶一次訪問(wèn)所產(chǎn)生的所有請(qǐng)求。根據(jù)后續(xù)URL識(shí)別需要,將時(shí)間上兩兩相鄰的類之間可能存在的噪聲樣本歸屬到時(shí)間靠后的一類中。

(三)實(shí)際訪問(wèn)網(wǎng)址識(shí)別算法設(shè)計(jì)

根據(jù)HTTP協(xié)議規(guī)范,當(dāng)某用戶訪問(wèn)的頁(yè)面發(fā)生跳轉(zhuǎn),或同一個(gè)頁(yè)面中的請(qǐng)求自動(dòng)請(qǐng)求其他資源,HTTP請(qǐng)求頭中的Referer字段將記錄下發(fā)生跳轉(zhuǎn)前頁(yè)面或上一級(jí)請(qǐng)求的URL。據(jù)此,一次訪問(wèn)行為的所有請(qǐng)求可構(gòu)建成一顆或多顆多叉樹(shù)。

從構(gòu)建的一顆或多顆多叉樹(shù)中,選出葉子節(jié)點(diǎn)最多的樹(shù),該樹(shù)的根節(jié)點(diǎn)對(duì)應(yīng)的URL可以識(shí)別為用戶實(shí)際訪問(wèn)的網(wǎng)址。

三.識(shí)別用戶實(shí)際訪問(wèn)網(wǎng)址的算法驗(yàn)證

(一)驗(yàn)證數(shù)據(jù)建立

搭建一個(gè)包含60臺(tái)PC的小型局域網(wǎng),這60臺(tái)PC設(shè)備由60名普通用戶操作進(jìn)行辦公及互聯(lián)網(wǎng)訪問(wèn)活動(dòng),所有PC均接入局域網(wǎng)出口網(wǎng)關(guān),由網(wǎng)關(guān)服務(wù)器負(fù)責(zé)處理并記錄所有用戶的互聯(lián)網(wǎng)訪問(wèn)請(qǐng)求。

讓60名用戶在一天內(nèi)進(jìn)行任意互聯(lián)網(wǎng)訪問(wèn)活動(dòng),從網(wǎng)關(guān)服務(wù)器收集一天內(nèi)所有的原始訪問(wèn)請(qǐng)求記錄約50萬(wàn)條作為待檢測(cè)樣本。同時(shí)收集該60名用戶使用的PC瀏覽器記錄下的當(dāng)天互聯(lián)網(wǎng)實(shí)際訪問(wèn)記錄共約1萬(wàn)條作為標(biāo)簽,同時(shí)記錄標(biāo)簽和用戶的對(duì)應(yīng)關(guān)系,如表3。

(二)驗(yàn)證方法及結(jié)果分析

從3個(gè)指標(biāo)評(píng)估算法的性能:

準(zhǔn)確率:正確識(shí)別出的網(wǎng)址數(shù) / 實(shí)際訪問(wèn)的網(wǎng)址總數(shù)

漏報(bào)率:( 實(shí)際訪問(wèn)的網(wǎng)址總數(shù) - 正確識(shí)別出的網(wǎng)址數(shù) ) / 實(shí)際訪問(wèn)的網(wǎng)址總數(shù)

誤報(bào)率:( 識(shí)別出的網(wǎng)址總數(shù) - 正確識(shí)別出的網(wǎng)址數(shù)) / 實(shí)際訪問(wèn)的網(wǎng)址總數(shù)

將使用本文所述算法得出的識(shí)別結(jié)果作為實(shí)驗(yàn)組數(shù)據(jù),將使用傳統(tǒng)過(guò)濾合并法(見(jiàn)引言部分所述)得出的識(shí)別結(jié)果作為對(duì)照組數(shù)據(jù),其中針對(duì)實(shí)驗(yàn)組分別計(jì)算上述3個(gè)評(píng)估指標(biāo),而針對(duì)對(duì)照組只計(jì)算誤報(bào)率這1個(gè)評(píng)估指標(biāo)(因?yàn)檫^(guò)濾合并法只會(huì)去掉明顯不可能是實(shí)際訪問(wèn)的網(wǎng)址記錄,導(dǎo)致該方法的準(zhǔn)備率幾乎是100%,同理漏報(bào)率幾乎是0%,所以對(duì)過(guò)濾合并法計(jì)算準(zhǔn)確率和漏報(bào)率不具備統(tǒng)計(jì)學(xué)意義)。驗(yàn)證結(jié)果如表4.

結(jié)果表明,傳統(tǒng)過(guò)濾合并法只是簡(jiǎn)單的將所有原始記錄中明顯可排除的記錄去除,除此以外并無(wú)法區(qū)分實(shí)際訪問(wèn)的記錄和非實(shí)際訪問(wèn)的記錄,所以其識(shí)別的結(jié)果會(huì)產(chǎn)生非常高的誤報(bào)率,甚至可以達(dá)到實(shí)際訪問(wèn)網(wǎng)址數(shù)量的數(shù)倍乃至數(shù)十倍,故在這種情況下即使是100%的準(zhǔn)確率也并不具備實(shí)用價(jià)值。而本文所述算法得出結(jié)果的準(zhǔn)確率和誤報(bào)率兩者相對(duì)平衡,相比傳統(tǒng)方法更具備實(shí)用價(jià)值。

四.結(jié)束語(yǔ)

上述針對(duì)用戶實(shí)際訪問(wèn)網(wǎng)址的識(shí)別算法,采用了傳統(tǒng)數(shù)理統(tǒng)計(jì)以及無(wú)監(jiān)督機(jī)器學(xué)習(xí)相結(jié)合的思路,從時(shí)間和內(nèi)容兩個(gè)維度預(yù)測(cè)識(shí)別實(shí)際訪問(wèn)的網(wǎng)址,相比于傳統(tǒng)簡(jiǎn)單過(guò)濾合并的方法大幅降低了誤報(bào)率,更加具備實(shí)用價(jià)值。

作者單位:江蘇易安聯(lián)網(wǎng)絡(luò)技術(shù)有限公司

猜你喜歡
字段網(wǎng)址聚類
帶鉤或不帶鉤選擇方框批量自動(dòng)換
基于模糊聚類和支持向量回歸的成績(jī)預(yù)測(cè)
火眼金睛快速顯示鏈接的網(wǎng)址
基于流形學(xué)習(xí)的自適應(yīng)反饋聚類中心確定方法
基于密度的自適應(yīng)搜索增量聚類法
探討CNMARC格式中200字段題名的規(guī)范著錄
無(wú)正題名文獻(xiàn)著錄方法評(píng)述
無(wú)聊又危險(xiǎn):用惡意網(wǎng)址探QQ隱身好友
哼唱著找歌網(wǎng)絡(luò)搜索新體驗(yàn)等
宜良县| 通州市| 汶上县| 恩平市| 建宁县| 五家渠市| 都安| 嘉善县| 边坝县| 太仓市| 上蔡县| 拜城县| 彰武县| 孝昌县| 吉安县| 钦州市| 高阳县| 大同县| 万全县| 浦东新区| 佳木斯市| 山阴县| 隆德县| 拜城县| 大足县| 晋江市| 云林县| 乐安县| 张家川| 邹平县| 达孜县| 昔阳县| 十堰市| 涿州市| 景德镇市| 明星| 闽清县| 兰溪市| 雅安市| 洛隆县| 韶关市|