一種基于神經(jīng)網(wǎng)絡(luò)聚類的用戶異常行為檢測方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及信息安全可信性技術(shù)領(lǐng)域,具體的說是設(shè)及一種基于神經(jīng)網(wǎng)絡(luò)聚類的 用戶異常行為檢測方法。
【背景技術(shù)】
[0002] 當(dāng)今處于大數(shù)據(jù)時(shí)代,用戶的各種信息均存儲(chǔ)在計(jì)算機(jī)中,給人們的工作和生活 帶來便利的同時(shí)也使信息安全面臨嚴(yán)峻的考驗(yàn),隨著計(jì)算機(jī)的普及,各種黑客及入侵行為 層出不窮,隨著網(wǎng)絡(luò)攻擊技術(shù)的日趨成熟,變化多端,傳統(tǒng)的被動(dòng)的防御手段顯著不能很好 的解決用戶信息的安全問題,針對(duì)各種被動(dòng)的防御措施,人們更加傾向于主動(dòng)的檢測技術(shù), 而采用圖聚類的檢測用戶異常行為的方法倍受青睞。
[0003] 采用圖聚類的方法實(shí)現(xiàn)用戶異常行為的識(shí)別和檢測已經(jīng)由來已久,該方法的目標(biāo) 就是基于對(duì)象間的相似性來劃分?;诰垲惙治龅姆椒ǖ娘@著特點(diǎn)就是無監(jiān)督性。"物W 類聚,人W群分"是對(duì)圖聚類最好的描述。聚類分析是人們認(rèn)識(shí)和探索事物內(nèi)在聯(lián)系的一種 手段,是按照事先確定好的概念對(duì)數(shù)據(jù)集進(jìn)行分類,使得分類后同一類中的數(shù)據(jù)相似性盡 可能的大,不同類間的相似性盡可能的小。運(yùn)種圖聚類可W極大的降低可視復(fù)雜性,增強(qiáng)圖 的可視性,有利于可視化分析和觀測。
[0004] 現(xiàn)實(shí)世界需要存儲(chǔ)和處理的數(shù)據(jù)海量劇增,如果存儲(chǔ)運(yùn)些數(shù)據(jù)則需要耗費(fèi)大量的 存儲(chǔ)空間,進(jìn)行圖聚類時(shí)大大降低聚類速度,再則高維分類型數(shù)據(jù)中,數(shù)據(jù)空間中的一些噪 音屬性(不相關(guān)特征)掩蓋了要尋找的聚類目標(biāo)簇及其對(duì)應(yīng)的特征子空間,使得傳統(tǒng)的聚類 算法在高維分類數(shù)據(jù)空間中無法得到有效聚類。
[0005] 傳統(tǒng)的聚類分析是一種硬化分,它將每個(gè)待辨識(shí)的對(duì)象嚴(yán)格的劃分到某個(gè)類中, 具有非此即彼的特性。因此運(yùn)種分類的類別界限是分明的,容易造成過擬合現(xiàn)象。而實(shí)際 上大多數(shù)對(duì)象并沒有嚴(yán)格的屬性,它們?cè)谛詰B(tài)和類屬方面存在著中介性,適合進(jìn)行軟化分。
[0006] 通過檢測用戶的異常行為來保證可信性是其主要研究方向。異常檢測(Anomaly Detection)最早是由JamesAnderson提出的,它的主要思想是根據(jù)用戶行為的一些統(tǒng)計(jì) 信息來建模,并且通過模型來發(fā)現(xiàn)"入侵者"。異常檢測的前提是假定異常行為和正常行為 存在較大的差別,在用正常數(shù)據(jù)進(jìn)行建立檢測模型后,然后用模型對(duì)待檢測數(shù)據(jù)進(jìn)行處理, 如果發(fā)現(xiàn)匹配結(jié)果超過了設(shè)定的闊值范圍,則認(rèn)為是異常行為。由此可W看出,異常檢測對(duì) 數(shù)據(jù)的檢測并不要求嚴(yán)格的匹配,不用實(shí)時(shí)維護(hù)規(guī)則,有著發(fā)現(xiàn)未知攻擊的能力。但是運(yùn)種 技術(shù)也存在缺點(diǎn),它的誤報(bào)率相對(duì)比較高。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明為了解決上述技術(shù)問題,提供一種基于神經(jīng)網(wǎng)絡(luò)聚類的用戶異常行為檢測 方法。
[0008] 本發(fā)明所采用的技術(shù)方案是:一種基于神經(jīng)網(wǎng)絡(luò)聚類的用戶異常行為檢測方法, 包括W下步驟: 步驟1、假定每個(gè)用戶為一個(gè)對(duì)象,將對(duì)象的行為數(shù)據(jù)作為該對(duì)象 的屬性,用n*m維的矩陣實(shí)矩陣A表示為對(duì)象-屬性結(jié)構(gòu),A矩陣表示為
,其中,表示為第i個(gè)對(duì)象的第j個(gè)屬性; 步驟2、將步驟1中的矩陣A利用公式A=USyT進(jìn)行SVD分解,其中,U=(U1,U2,…,1〇,V= (Vi, V2,…,Vn),
(i=l,2,…,r),雜為的非零特征值全體,按降序排列,即為A的奇異值; 步驟3、將分解后的SVD矩陣根據(jù)下列公式(1)- (3)來計(jì)算有效秩的階數(shù)對(duì)用戶行為 信息進(jìn)行降噪
組成的序列為矩 陣H00經(jīng)奇異值分解后的奇異譜,S為矩陣H00的奇異值個(gè)數(shù),k為奇異賭的階數(shù),表 示奇異賭在階數(shù)i處的增量; 步驟4、將降維后的矩陣按照奇異值降序所對(duì)應(yīng)的列向量重新組合成量的維數(shù); 步驟5、將神經(jīng)網(wǎng)絡(luò)輸入層接收到的用戶信息利用公式(5)、(6)分清進(jìn)行權(quán)重的計(jì)算 和權(quán)重的標(biāo)準(zhǔn)化;
),其中,r為每個(gè)用戶的屬性維數(shù),為各用 戶行為在總的用戶行為中出現(xiàn)的概率:
n為用戶數(shù) 量; 步驟6、輸出較為精確的標(biāo)準(zhǔn)化權(quán)重矩陣即*,》-==《*4?一《 一 層與第二層間的權(quán)值為1,第二層與第=層間的權(quán)重在[0-1]內(nèi); 步驟7、利用公式
計(jì)算各用 戶的當(dāng)前行為信息與正常行為模型數(shù)據(jù)庫中的行為信息的相似度,其中,i和j表示兩相比 較用戶,Sim取值在[0, 1]內(nèi),取值越大,說明兩用戶相似度越高; 步驟8、利用公式
計(jì)算聚類的闊值; 步驟9、比較步驟7和步驟8中得出的相似度和闊值,若相似度大于闊值則為異常行為, 系統(tǒng)做出相應(yīng)的提示及防范措施,若相似度小于等于闊值則為正常行為; 步驟10、將正常行為增加一列標(biāo)準(zhǔn)化權(quán)重元素更新至正常行為模式數(shù)據(jù)庫中等待下次 檢測用戶行為。
[0009] 本發(fā)明的有益效果:本發(fā)明將圖聚類、SVD分解、信息賭、神經(jīng)網(wǎng)絡(luò)引入到異常檢 測中,使得該模型具備了各方法的優(yōu)點(diǎn),SVD分解可W有效提高信噪比。SVD分解在描述矩 陣時(shí)是穩(wěn)定的,具有轉(zhuǎn)置不變性,旋轉(zhuǎn)不變性,唯一不變性,鏡像變換不變性等重要性質(zhì),因 此SVD分解可W作為矩陣的一個(gè)有效的代數(shù)特征描述。在進(jìn)行SVD分解時(shí),運(yùn)用Map-Re化ce 模型及其分布式特性,進(jìn)行并行式分解,提高分解速度。將SVD分解引入到該模型中,避免 了因海量信息而使系統(tǒng)難W獲得有用的信息,同時(shí)有效提高信噪比,有利于對(duì)異常行為進(jìn) 行精確診斷。將神經(jīng)網(wǎng)絡(luò)引入到檢測中,避免了硬化分的同時(shí)充分利用其自學(xué)習(xí)功能、聯(lián)想 記憶功能、分布式并行信息處理功能準(zhǔn)確檢測異常行為,同時(shí)在神經(jīng)網(wǎng)絡(luò)模型的隱含層中 引入信息賭有效解決了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)一般不能處理具有語義形式的輸入,不能確定哪些知 識(shí)是冗余的,那些知識(shí)是有用的不足。將神經(jīng)網(wǎng)絡(luò)引入聚類過程中W增加檢測的模糊性,針 對(duì)傳統(tǒng)的聚類只能進(jìn)行硬化分的缺點(diǎn),提出了一種含有輸入層、隱含層、輸出層=層的RBF 神經(jīng)網(wǎng)絡(luò),但是采用的是等權(quán)重的形式求取相似度,但在實(shí)際應(yīng)用中,對(duì)象的內(nèi)在性質(zhì)不 同,表現(xiàn)出來的重要性也就不同,在計(jì)算相似度的時(shí)候可能會(huì)淹沒一些重要特征值的個(gè)性 信息,進(jìn)而可能導(dǎo)致對(duì)整體相似度的誤判。本發(fā)明在隱含層中使用信息賭確定權(quán)重的客觀 相似度分析法,加入了屬性權(quán)重因子,避免了依靠人為指定權(quán)重的主觀因素影響。
【附圖說明】
[0010] 圖1為本發(fā)明結(jié)構(gòu)框圖; 圖2為本發(fā)明Map-Re化ce模型圖; 圖3為本發(fā)明流程框圖。
【具體實(shí)施方式】
[0011] 如圖所示,一種基于神經(jīng)網(wǎng)絡(luò)聚類的用戶異常行為檢測方法,其特征在于:包括W 下步驟: 步驟1、假定每個(gè)用戶為一個(gè)對(duì)象,將對(duì)象的行為數(shù)據(jù)作為該對(duì)象的屬性,用n*m維的 矩陣實(shí)矩陣A表示為對(duì)象-屬性結(jié)構(gòu),A矩陣表示為
,其中,嗦示 為第i個(gè)對(duì)象的第j個(gè)屬性; 步驟2、將步驟1中的矩陣A利用公式A=USyT進(jìn)行SVD分解,其中,U=(U1,U2,…,1〇,V=(Vi, V2,…,Vn),
(i=l,2,…,r),雜為的非零特征值全體,按降序排列,即為A的奇異值; 步驟3、將分解后的SVD矩陣根據(jù)下列公式(1)- (3)來計(jì)算有效秩的階數(shù)對(duì)用戶行為 信息進(jìn)行降噪
組成的序列為矩 陣H00經(jīng)奇異值分解后的奇異譜,S為矩陣H00的奇異值個(gè)數(shù),k為奇異賭的階數(shù),表 示奇異賭在階數(shù)i處的增量; 步驟4、將降維后的矩陣按照奇異值降序所對(duì)應(yīng)的列向量重新組合成量的維數(shù); 步驟5、將神經(jīng)網(wǎng)絡(luò)輸入層接收到的用戶信息利用公式(5)、(6)分清進(jìn)行權(quán)重的計(jì)算 和權(quán)重的標(biāo)準(zhǔn)化;
癢中,f力每個(gè)用戶的屬性維數(shù),胃為各用 戶行為在總的用戶行為中出現(xiàn)的概率
n為用戶數(shù) 量; 步驟6、輸出較為精確的標(biāo)準(zhǔn)化權(quán)重矩陣即:
第 一層與第二層間的權(quán)值為1,第二層與第=層間的權(quán)重在[0-1]內(nèi); 步驟7、利用公式
計(jì)算各用 戶的當(dāng)前行為信息與正常行為模型數(shù)據(jù)庫中的行為信息的相似度,其中,i和j表示兩相比 較用戶,Sim取值在[0, 1]內(nèi),取值越大,說明兩用戶相似度越高; 步驟8、利用公式:
計(jì)算聚類的闊值; 步驟9、比較步驟7和步驟8中得出的相似度和闊值,若相似度大于闊值則為異常行為, 系統(tǒng)做出相應(yīng)的提示及防范措施,若相似度小于等于闊值則為正常行為; 步驟10、將正常行為增加一列標(biāo)準(zhǔn)化權(quán)重元素更新至正常行為模式數(shù)據(jù)庫中等待下次 檢測用戶行為。
[0012] 本發(fā)明主要由S個(gè)模塊組成巧日?qǐng)D1所示),SVD分解模塊、神經(jīng)網(wǎng)絡(luò)模塊、圖聚類 模塊,=個(gè)模塊分工協(xié)作,共同支撐用戶異常行為檢測方案。
[0013] 下面詳細(xì)說明各個(gè)模塊的操作過程: (一)SVD分解模塊 在當(dāng)今網(wǎng)絡(luò)遍布的情況下,計(jì)算機(jī)用戶數(shù)不勝數(shù),用戶的行為信息數(shù)量更是難W衡量。 而聚類是要對(duì)所有用戶的所有屬性加權(quán)后進(jìn)行聚類,所W只取原始圖中的部分節(jié)點(diǎn)是不可 行的,如果直接將所有用戶的所有屬性都直接進(jìn)行聚類會(huì)極大的降低聚類效果,時(shí)間復(fù)雜 度和計(jì)算復(fù)雜度都很高,存儲(chǔ)開銷也很大。因此將SVD引入聚類中進(jìn)行降維有很好的應(yīng)用 前景,提高了聚類速度而不降低聚類精度,減少了存儲(chǔ)開銷,可視性較好。另外大多數(shù)現(xiàn)實(shí) 世界的數(shù)據(jù)庫均包含異常數(shù)據(jù)、不明數(shù)據(jù)、數(shù)據(jù)丟失和噪聲數(shù)據(jù),有些聚類算法對(duì)運(yùn)樣的數(shù) 據(jù)非常敏感并會(huì)導(dǎo)致獲得質(zhì)量較差的數(shù)據(jù)。本文采用SVD分解算法在降維的同時(shí)還可W獲 得較高的信噪比,還可W通過自學(xué)習(xí)將矩陣中丟失的元素補(bǔ)充完整,魯棒性較好。
[0014] 將每個(gè)用戶作為一個(gè)對(duì)象,將對(duì)象的行為數(shù)據(jù)集作為該對(duì)象的屬性來看,每個(gè)子 數(shù)據(jù)集看作該對(duì)象的一個(gè)屬性,該矩陣表示為對(duì)象-屬性結(jié)構(gòu)??蒞用n*m維的矩陣表示:
其中表示第i個(gè)對(duì)象的第j個(gè)屬性,此矩陣的構(gòu)造是為了方便對(duì)各個(gè)數(shù)據(jù)進(jìn)行分類 而設(shè)計(jì)的