999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

FP-Tree算法規則挖掘的研究與應用

2021-07-17 01:37:46王大勇孫時光
東北師大學報(自然科學版) 2021年2期
關鍵詞:關聯規則數據庫

王大勇,李 麗,張 蕾,孫時光

(1.遼寧大學創新創業學院,遼寧 沈陽 110036;2.東北師范大學物理學院,吉林 長春 130024)

0 引言

隨著大數據時代的到來,對數據和數據之間的關聯關系進行深度挖掘和處理就顯得尤為重要,數據之間的關聯關系是大數據中待挖掘的一類重要信息.關聯是指變量的數值中有2個或2個以上存在一定的規律,可以通過關聯分析挖掘出數據中的關聯關系.關聯分為簡單關聯、時序關聯和因果關聯.關聯規則挖掘過程一般先從數據集合中找出所有的高頻項目組,再由高頻項目組產生關聯規則.

1993年,Agrawal等首先提出了挖掘關聯規則問題,并對顧客交易數據庫中項集之間的關聯規則挖掘問題進行研究,此后基于關聯規則的挖掘問題的研究逐步推廣,并吸引了大量的科研人員投入到該項研究中.關聯規則挖掘是大數據研究的一個重要課題.目前,關聯規則挖掘技術主要集中在金融行業以及電子商務中.

Apriori算法是一種挖掘布爾關聯規則頻繁項集的算法,廣泛應用于多個領域中,包括商業金融、網絡安全、高校管理、移動通訊等.Apriori算法的實現包括3個階段:第1階段利用遞推方法找出所有的頻集,這些項集出現的頻繁性要大于等于預定義的最小支持度;第2階段由頻集產生強關聯規則,這些規則必須滿足最小支持度和最小可信度;第3階段產生只包含集合項的所有規則.由該思想生成的規則均大于用戶給定的最小可信度.

Apriori算法雖然是經典的規則挖掘算法,但在執行過程中可能產生大量的候選集,并可能出現重復掃描數據庫的問題.針對Apriori算法的這些缺點,文獻[1-3]提出了FP-Tree算法.FP-Tree算法的思想是構造一棵頻繁模式樹,把數據庫中的數據映射到樹上,這種頻繁模式樹簡稱為FP-Tree.通過兩次掃描事務數據庫把每個事務所包含的頻集壓縮到一棵FP-Tree中,此后只需通過FP-Tree進行查找,不需要再掃描事務數據庫,避免了重復掃描數據庫的問題.通過遞歸調用FP-Tree發現頻繁模式的算法,可直接產生頻繁模式,因此,該算法執行過程中也避免了大量候選集的產生.數據表明,FP-Tree算法在效率上比Apriori算法有顯著的提高[4-7].

大學生所處的年齡階段正值生長穩定期,各項生理功能處于成熟階段,具備較強的機體免疫力,相比其他年齡階段的人群患病率低.但由于近年來隨著科技水平的提高,外賣行業的興起等諸多因素,導致大學生使用手機電腦等電子產品的時間越來越長,不健康食品的攝入量過多,體育活動得不到重視等情況時有發生,使得一些慢性疾病在大學生群體中相比以往有所增多,例如肥胖、高血壓、免疫力低下等情況正在逐年遞增.國內許多高校醫療系統內存儲著大量的學生體檢數據,其中很多數據只是能進行簡單的存儲以及查詢等功能,而不能發掘出這些數據之間潛在的關聯關系并加以利用.因此本文采用FP-Tree算法對存儲的數據進行關聯規則挖掘,發現大學生群體中常見的各種慢性疾病,力求在早期敦促大學生養成良好的生活習慣、減少嚴重慢性疾病的發生.

1 FP-Tree算法

FP-Tree算法能夠高效地解決Apriori算法中存在的問題.因此對FP-Tree算法的相關定義和算法進行了描述.

1.1 相關定義

定義1 關聯規則:指有關聯的規則,對于兩個不相交的非空集合X和Y,如果有X→Y,就說X→Y是一條關聯規則.關聯規則的強度用支持度和置信度來描述.

定義2 支持度:關聯規則X→Y的支持度(support)用support(X→Y)=|X∩Y|/|N|表示,其中X和Y為事務數據庫中的集合,|X∩Y| 是X和Y同時出現的次數,|N|為事務數據庫中集合的個數.

定義3 置信度(confidence):關聯規則X→Y的置信度(confidence)用confidence(X→Y) =|X∩Y|/|X| 表示,其中X和Y為事務數據庫中的集合,|X∩Y| 是X和Y同時出現的次數,|X|是集合X出現的次數.

支持度是對關聯規則重要性的衡量,支持度越大,表示這種關聯規則越重要.置信度是對關聯規則準確度的衡量.有些關聯規則的支持度雖高,但置信度低,說明該關聯規則準確度不夠,不能采用;有些關聯規則的置信度雖然很高,但是支持度低,說明該關聯規則出現的機會很小,實用價值不大.在進行實際關聯規則挖掘分析時,必須選擇恰當的最小支持度閾值和最小置信度閾值.如果取值過低,則會發現大量無用的規則,不利于所需規則的發現和獲取.如果取值過高,則可能得不到規則,或者得到的規則過少,導致所需規則不滿足條件而沒有被篩選出來.一般需要根據實際情況設定合適的閾值.

支持度和置信度越高,說明規則越強,關聯規則挖掘就是挖掘出滿足一定強度的規則.下面舉例說明支持度與置信度的計算方法.

假設事務數據庫如下:

AEFG

AFG

ABEFG

EFG

其中每行代表一個事務,事務由若干個不相同項目構成,任意幾個項目的組合稱為一個模式.該例中共有4個事務.

模式{A,F,G}在4個事務中共出現3次,即支持數為3,經計算得到支持度support為75%,支持數大于最小支持數minsupport的模式稱為頻繁模式(Frequent Partten).

以此類推,{F,G}的支持數為4,支持度為100%.{A}的支持數為3,支持度為75%.

Confidence({F,G}?{A})等于75%.Confidence({A}?{F,G})等于100%.

1.2 FP-Tree算法描述

輸入:事務集合 List> transactions,

輸出:頻繁模式集合及相應的頻數Map,Integer>FrequentPattens,

初始化:PostModel=[],CPB=transactions,

void FPGrowth(List> CPB,List PostModel){

if CPB為空,

return

}.

CPB的全稱是Conditional Pattern Base(條件模式基),是算法在不同階段的事務集合.統計CPB中每一個項目的個數,把個數小于最小支持數minSuport的項目刪除掉,然后對于CPB中的每一條事務按項目個數降序排列.

由CPB構建FP-Tree,FP-Tree中包含了表頭項headers,每一個header都指向了一個鏈表HeaderLinkList,鏈表中的每個元素都是FP-Tree上的一個節點,且節點名稱與header.name相同.得到從FP-Tree的根節點到TreeNode的全路徑path,把path作為一個事務添加到newCPB中,要重復添加TreeNode.count次.用java描述的具體代碼如下:

for header in headers:

newPostModel=header.name+PostModel,

newCPB=[],

for TreeNode in HeaderLinkList:

FPGrowth(newCPB,newPostModel).

2 規則挖掘應用

把大學生體檢數據庫中的數據進行相關處理,得到對應的事務數據庫,再對事務數據庫中的數據運用FP-Tree算法[8-11],進而得到一些有價值的關聯規則,為醫生診斷提供輔助依據.

2.1 數據處理

體檢表中的數據很多都是有噪聲的,因此在使用之前應該進行預處理操作:

(1) 把體檢表中與實驗無關的個人信息如姓名、民族、出生日期、專業等信息全部過濾掉.

(2) 對字段進行處理,例如身高和體重這2個數據不能完全體現出是否肥胖,所以需要對其進行處理,這2個字段需轉換為身體質量參數BMI,m(體重)(kg)/h2(身高)(m),這樣才能對規則的發現起到直接的幫助.

(3) 為了順利把關系數據庫轉換為事務數據庫,需要把原始數據表中的一些連續的數值型字段進行離散化處理.

(4) 以學生為單位,把學生所患慢性病用相應的編碼代替,以達到每個字段只有一種信息的目的.

(5) 編寫程序讀取關系數據庫,得到適用于數據挖掘的事務數據庫[12-15],如表1所示.在表1中ID代表某名學生,ITEM代表該名學生所患的慢性疾病,A,B,E等各代表某種慢性疾病.病情與編碼對照如表2所示.

表1 慢性病事務

表2 病情編碼對照

2.2 實現過程

在慢性病事務數據庫中任意選取10個事務應用于FPGrowth函數,完整實現過程選取的10個事務:

ABCD

BEDF

BCD

ABCEDF

ACF

BCF

ACD

ABCGD

ABGD

EG

每行代表一個事務,事務由若干個不相同的項目構成.假設最小支持數minSuport=3,統計每一個項目出現的次數,把次數低于minSupport的項目刪除掉,剩下的項目按出現的次數降序排列,得到F1{D:7B:7C:6A:6F:4}.

對于每一條事務,按照F1中的順序重新排序,并且把不在F1中的內容刪除.這樣原來的事務集合成為:

DBCA

DBF

DBC

DBCAF

CAF

BCF

DCA

DBCA

DBA

上面的事務集合即為當前的CPB,當前的PostModel為空.開始構造FP-Tree,初始狀態下FP-Tree為空,建立FP-Tree時逐條讀入排序之后的數據集,按照排序后的順序插入到FP-Tree中,排序靠前的節點是祖先節點,靠后的是子孫節點.如果有共同的祖先,則對應的共同祖先節點計數加1.直到所有的數據都插入到FP-Tree后,FP-Tree建立完成.由CPB構建FP-Tree的步驟為:

步驟1.插入第1條事務(D,B,C,A),FP-Tree如圖1所示.

圖1 插入第1條事務的FP-Tree

步驟2.插入第2條事務(D,B,F),FP-Tree如圖2所示.

圖2 插入前兩條事務的FP-Tree

步驟3.以此類推,把9條事務全部插入之后,得到圖3所涉FP-Tree.

圖3 插入全部事務的FP-Tree

另外建立表頭項,表頭項中記錄的是頻繁項集及其出現的個數.其次樹中相同名稱的節點要用鏈表鏈接起來,如圖4所示,鏈表的第一個元素就是表頭項里的元素.不論是表頭項節點還是FP-Tree中的所有節點,它們都有2個屬性:name(頻繁項集的名稱)和count(頻繁項集的個數).

圖4 用鏈表鏈接的FP-Tree

遍歷表頭項中的每一項,以“A:6”為例.

新的postModel為“表頭項+原有postModel”,由于原有postModel的list為空,所以新的PostModel為[A].新的PostModel就是一條頻繁模式,它對應的支持數即為表頭項的count:6,所以此處可以輸出一條頻繁模式〈[A],6〉.分為4個步驟.

步驟1.從表頭項A開始,找到FP-Tree中所有的A節點,然后找到從樹的根節點到A節點的路徑.得到如下4條路徑:

路徑1:D:7,B:6,A:1;

路徑2:D:7,B:6,C:4,A:3;

路徑3:D:7,C:1,A:1;

路徑4:C:1,A:1.

步驟2.對于每一條路徑上的節點,其count都設置為A的count,結果如下:

D:1,B1:6,A:1;

D:3,B:3,C:3,A:3;

D:1,C:1,A:1;

C:1,A:1.

步驟3.因為每一項末尾都是A,可以把A去掉,得到新的CPB:

D:1,B1:6;

D:3,B:3,C:3;

D:1,C:1;

C:1.

步驟4.繼續遞歸調用PFGrowth(新的CPB,新的PostMOdel),當發現CPB為空時遞歸結束.

在FP-Tree是單枝的情況下,不需要再調用FPGrowth函數,直接輸出路徑上的各種組合+postModel即可.

3 實驗結果

把事務數據庫中的數據輸入之后,得到輸出結果如表3所示.

表3 測試樣本輸出結果

最小支持度閾值和最小置信度閾值一般由用戶或領域專家設定,前者表示了規則的普遍程度,后者表示了規則的最低可靠度.支持度用于衡量關聯規則的重要性或適用范圍.置信度用于衡量關聯規則的準確度,它反映了關聯規則前提成立時其結果也成立的概率.

最小支持度與置信度閾值的設定對最終結果影響較大.如果最小支持度偏大,大量的潛在規則可能會被刪除;相反,最小支持度偏小,則會推導出大量的規則,不便于決策者做出正確的判斷.為使所挖掘到的關聯規則具有一定的實用性.支持度閾值不宜設置過高,否則會遺漏重要的規則.本文針對大學生這一健康群體,同時患有多種慢性病的可能性較小,經過多次實驗,設定最小支持度閾值和最小置信度閾值分別為10%和 50%,所獲取的規則最符合醫學常識.把學生體檢表進行以上各種處理,對得到的事務數據庫中的數據通過FP-Tree算法進行挖掘.產生的規則數目較多,在獲取的規則中選取部分如表4所示.

表4 慢性病之間的關聯規則

4 結束語

本文對大學生體檢數據庫中的數據進行各種處理,得到便于進行數據挖掘的事務數據庫.再將該事務數據庫中的數據用FP-Tree算法進行處理,得到關聯規則,經驗證本文得到的規則是正確的且符合醫學事實.在獲取相關數據之后,可以及時告知學生患慢性疾病的風險,降低患病的概率,從整體上提高大學生這一群體的身體素質.

猜你喜歡
關聯規則數據庫
撐竿跳規則的制定
“苦”的關聯
當代陜西(2021年17期)2021-11-06 03:21:36
數獨的規則和演變
奇趣搭配
讓規則不規則
Coco薇(2017年11期)2018-01-03 20:59:57
數據庫
財經(2017年2期)2017-03-10 14:35:35
智趣
讀者(2017年5期)2017-02-15 18:04:18
TPP反腐敗規則對我國的啟示
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 国产久操视频| a网站在线观看| 亚洲大学生视频在线播放| AV网站中文| a级毛片免费看| 欧美亚洲国产日韩电影在线| 一级毛片视频免费| 亚洲天堂网视频| 新SSS无码手机在线观看| 激情爆乳一区二区| 欧美五月婷婷| 日韩欧美国产综合| 伊人久久大线影院首页| 亚洲色大成网站www国产| 国产视频一二三区| 亚洲午夜国产片在线观看| 内射人妻无套中出无码| 日本一区二区不卡视频| 四虎AV麻豆| 三上悠亚精品二区在线观看| 久综合日韩| 欧美性久久久久| 欧美精品色视频| 国产视频a| 丁香婷婷激情网| 精品色综合| 亚洲人成在线免费观看| 国产一二三区在线| 国产美女视频黄a视频全免费网站| 综合色婷婷| 国产精品区视频中文字幕| 不卡视频国产| 国内精品九九久久久精品| 欧美在线天堂| 美女被狂躁www在线观看| 亚洲欧美天堂网| 中文字幕欧美成人免费| a亚洲视频| 成·人免费午夜无码视频在线观看 | 怡春院欧美一区二区三区免费| 亚洲综合经典在线一区二区| 日本人又色又爽的视频| 日韩av高清无码一区二区三区| 中文字幕一区二区人妻电影| 手机在线免费毛片| 超碰91免费人妻| 在线不卡免费视频| 亚洲av色吊丝无码| 国产无码网站在线观看| 欧美日本不卡| 国内精品免费| 98精品全国免费观看视频| 人妻21p大胆| 91成人在线观看| 找国产毛片看| 亚洲综合极品香蕉久久网| 在线看AV天堂| 97国产在线观看| 亚洲国产精品日韩专区AV| 国产一区二区免费播放| 国产喷水视频| 91无码网站| 91久久国产综合精品| 成人在线不卡视频| 国产精品高清国产三级囯产AV| 亚洲欧美日韩色图| 丝袜亚洲综合| a在线亚洲男人的天堂试看| 亚洲天堂日韩在线| 国产尤物在线播放| 久久综合九色综合97网| 波多野结衣第一页| 国产综合精品一区二区| 成人国产免费| 1024你懂的国产精品| 亚洲欧美激情小说另类| 夜夜操狠狠操| 91视频区| 久久性视频| 国产欧美日韩专区发布| 欧美日韩精品一区二区在线线| 亚洲性网站|