基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘_第1頁
基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘_第2頁
基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘_第3頁
基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘_第4頁
基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第三章醫(yī)院信息數(shù)據(jù)倉(cāng)庫的構(gòu)建3.1系統(tǒng)設(shè)計(jì)的背景廣州醫(yī)科大學(xué)附屬第四醫(yī)院創(chuàng)建于2011年,是經(jīng)廣州市政府批準(zhǔn)設(shè)立、按 “三甲”標(biāo)準(zhǔn)建設(shè)的大型綜合醫(yī)院,前身是2010年廣州亞運(yùn)會(huì)運(yùn)動(dòng)員村門診部。 作為一所按“三甲”標(biāo)準(zhǔn)建設(shè)的大型綜合醫(yī)院,它走在全國(guó)醫(yī)院信息化建設(shè)的前 沿。目前醫(yī)院信息系統(tǒng)涵蓋了醫(yī)院信息系統(tǒng)(his)、檢驗(yàn)信息系統(tǒng)(lis)、影像信 息系統(tǒng)(pacs)等方面的20多個(gè)子系統(tǒng),涉及醫(yī)院業(yè)務(wù)管理、電子病歷、經(jīng)濟(jì)核 算管理等領(lǐng)域,包括門診、住院、病案、電子病歷、技術(shù)診斷、合理用藥監(jiān)測(cè)等 支持基礎(chǔ)臨床業(yè)務(wù)的子系統(tǒng);藥庫、衛(wèi)生材料、口用百貨、固定資產(chǎn)、醫(yī)療設(shè)備、 供應(yīng)中心等支持庫存生產(chǎn)管理的

2、子系統(tǒng);人事系統(tǒng)、財(cái)務(wù)系統(tǒng)、公醫(yī)系統(tǒng)、辦公 自動(dòng)化等支持醫(yī)院辦公功能的子系統(tǒng);網(wǎng)上掛號(hào)、病人隨訪、服務(wù)信息公開、自 助查詢等支持客戶服務(wù)的子系統(tǒng);成木核算、綜合查詢、衛(wèi)生統(tǒng)計(jì)等支持統(tǒng)計(jì)分 析決策的子系統(tǒng)。隨著接待的病患數(shù)不斷增加和醫(yī)院規(guī)模的壯大,各類數(shù)據(jù)也激增至每天十兒 萬條新紀(jì)錄的產(chǎn)生速度。面對(duì)業(yè)務(wù)數(shù)據(jù)庫中積累下來的大量的數(shù)據(jù)資源,在歷史 數(shù)據(jù)的使用方面醫(yī)院信息系統(tǒng)的缺陷慢慢浮現(xiàn)出來了,主要有以下幾個(gè)方面:1. 對(duì)歷史數(shù)據(jù)的分析手段貧乏醫(yī)院信息系統(tǒng)對(duì)歷史數(shù)據(jù)的分析系統(tǒng)沒有建立起來。所有的歷史數(shù)據(jù)都在數(shù) 據(jù)庫屮處于休眠狀態(tài),沒有發(fā)揮其真正具有的決策支持能力。2. 歷史數(shù)據(jù)逐漸難于管理和訪問由于

3、醫(yī)院信息系統(tǒng)的信息量的快速增長(zhǎng),業(yè)務(wù)系統(tǒng)多年運(yùn)行下來,積累了人 量的歷史數(shù)據(jù),對(duì)于大量的歷史數(shù)據(jù)逐漸難于管理和訪問。3. 決策需求與統(tǒng)計(jì)查詢的要求增多開發(fā)人員面臨臨床科室不斷增長(zhǎng)的決策需求與統(tǒng)計(jì)查詢的要求增多,需要不 停地開發(fā)新的應(yīng)用程序:作為管理決策人員來說,在應(yīng)用his時(shí)會(huì)不斷有新的 杳詢耍求,特別是一些需要查詢整年數(shù)據(jù)的時(shí)候,經(jīng)常會(huì)出現(xiàn)查詢的時(shí)間過長(zhǎng);同一時(shí)間臨床科室在使用正常業(yè)務(wù)流程,由于各種數(shù)據(jù)庫都存在的并發(fā)問題,會(huì) 明顯感覺到系統(tǒng)的運(yùn)行效率下降。4. 數(shù)據(jù)不完整系統(tǒng)數(shù)據(jù)庫中,由于進(jìn)行了多次的版本更新和數(shù)據(jù)庫升級(jí)。所以數(shù)據(jù)庫中還 存在一定程度的數(shù)據(jù)不完整性。一般來說,新版本的數(shù)據(jù)庫中

4、,一些新增加的字 段在以前的數(shù)據(jù)庫是不存在的,因此數(shù)據(jù)遷移以后,該字段為空值等情況。因此,為了管理歷史數(shù)據(jù)設(shè)計(jì)一個(gè)數(shù)據(jù)倉(cāng)庫,然后基于數(shù)據(jù)倉(cāng)庫進(jìn)行數(shù)據(jù)挖 掘以及olap數(shù)據(jù)分析是現(xiàn)階段醫(yī)院信息化建設(shè)的當(dāng)務(wù)之急。3.2系統(tǒng)總體應(yīng)用模式木系統(tǒng)應(yīng)用模式如圖3-1可見:關(guān)系數(shù)據(jù)庫數(shù)據(jù)文件其他數(shù)據(jù)源數(shù)據(jù)綜合數(shù)據(jù)當(dāng)前數(shù)據(jù)歷史數(shù)據(jù)數(shù)據(jù)倉(cāng)庫維度建模etl元數(shù)據(jù)系統(tǒng)管理數(shù)據(jù)導(dǎo)入平臺(tái)醫(yī)療數(shù)據(jù)挖掘olap醫(yī)療數(shù)據(jù)挖掘分析工具圖3-1系統(tǒng)應(yīng)用模式1.數(shù)據(jù)源正如前面提到的,醫(yī)院數(shù)據(jù)倉(cāng)庫屮的源數(shù)據(jù)或者稱之為歷史數(shù)據(jù)來&于關(guān)系 數(shù)據(jù)庫、數(shù)據(jù)文件或其他數(shù)據(jù)。與此同吋,為了能以較少的代價(jià)獲得這些數(shù)據(jù), 需要充分考慮源數(shù)據(jù)

5、的特征。例如,當(dāng)前在大量的現(xiàn)奮系統(tǒng)中均采用了關(guān)系數(shù)據(jù) 庫管理系統(tǒng)(rdbms)來管理數(shù)據(jù),因此根據(jù)基于關(guān)系的數(shù)據(jù)倉(cāng)庫存儲(chǔ)、管理方法將是目前非常經(jīng)濟(jì)的選擇。2. etl1etl (extracttransformload的縮寫,即數(shù)據(jù)抽取、轉(zhuǎn)換、裝載的過程) 能夠按照統(tǒng)一的規(guī)則集成并提高數(shù)據(jù)的價(jià)值,是負(fù)責(zé)完成數(shù)據(jù)從數(shù)據(jù)源向0標(biāo)數(shù) 據(jù)倉(cāng)庫轉(zhuǎn)化的過程,是實(shí)施數(shù)據(jù)倉(cāng)庫的重要步驟。如果說數(shù)據(jù)倉(cāng)庫的模型設(shè)計(jì)是 一座大廈的設(shè)計(jì)藍(lán)圖,數(shù)據(jù)是磚瓦的話,那么etl就是建設(shè)大廈的過程。醫(yī)院 數(shù)據(jù)倉(cāng)庫要把業(yè)務(wù)系統(tǒng)中產(chǎn)生的源數(shù)據(jù)、歷史數(shù)據(jù)抽取出所需的數(shù)據(jù),經(jīng)過數(shù)據(jù) 清洗,最終按照預(yù)先定義好的數(shù)據(jù)倉(cāng)庫模型,將數(shù)據(jù)加載到眹

6、院數(shù)據(jù)倉(cāng)庫中去。 為了能更好地實(shí)現(xiàn)etl,在實(shí)施etl過程中要注意以下兒點(diǎn):(1) 如果條件允許,可利用數(shù)據(jù)中轉(zhuǎn)區(qū)對(duì)運(yùn)營(yíng)數(shù)據(jù)進(jìn)行預(yù)處理,保證集成 與加載的高效性;(2) 如果etl的過程是主動(dòng)“拉取”,而不是從內(nèi)部“推送”,其可控性將 大為增強(qiáng);(3) etl之前應(yīng)制定流程化的配置管理和標(biāo)準(zhǔn)協(xié)議;(4) 關(guān)鍵數(shù)據(jù)標(biāo)準(zhǔn)至關(guān)重要。etl面臨的最人挑戰(zhàn)是當(dāng)接收數(shù)據(jù)吋其各源 數(shù)據(jù)的異構(gòu)性和低質(zhì)量。以電信為例,a系統(tǒng)按照統(tǒng)計(jì)代碼管理數(shù)據(jù),b系統(tǒng)按 照賬目數(shù)字管理,c系統(tǒng)按照語音id管理。當(dāng)etl需要對(duì)這三個(gè)系統(tǒng)進(jìn)行集成 以獲得對(duì)客戶的全面視角時(shí),這一過程需要復(fù)雜的匹配規(guī)則、名稱/地址正?;?與標(biāo)準(zhǔn)化。而

7、etl在處理過程中會(huì)定義一個(gè)關(guān)鍵數(shù)據(jù)標(biāo)準(zhǔn),并在此基礎(chǔ)上,制 定相應(yīng)的數(shù)據(jù)接口標(biāo)準(zhǔn)。3. 數(shù)據(jù)倉(cāng)庫和數(shù)據(jù)集市數(shù)據(jù)倉(cāng)庫按照醫(yī)院業(yè)務(wù)流程存儲(chǔ)歷史數(shù)據(jù)和事務(wù)型數(shù)據(jù),數(shù)據(jù)集市是指從操 作的數(shù)據(jù)和其他的為某種分析r標(biāo)的數(shù)據(jù)源屮收集數(shù)據(jù)的倉(cāng)庫,一般是部門級(jí)的 數(shù)據(jù)倉(cāng)庫。它們用于實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)、管理,重點(diǎn)還在于它迎合了專業(yè)用戶群體 的特殊需求,在分析、內(nèi)容、表現(xiàn)以及易用方面。數(shù)據(jù)源經(jīng)過etl進(jìn)入數(shù)據(jù)倉(cāng) 庫與數(shù)據(jù)集市。4. 終端用戶工具終端用戶工具可以獲取數(shù)據(jù)倉(cāng)庫中的數(shù)據(jù)信息,主要包括各客戶程序、桌面產(chǎn)品和定制的分析工具。通過杳詢倉(cāng)庫中的數(shù)據(jù),挖掘其中的信息,前端的工具 分析,并呈現(xiàn)給用戶報(bào)表等各種形式。5.

8、元數(shù)據(jù)元數(shù)據(jù)是數(shù)據(jù)倉(cāng)庫的重要組成部分,是數(shù)據(jù)倉(cāng)庫的粘合劑,它記錄了在數(shù)據(jù) 倉(cāng)庫構(gòu)建、管理、運(yùn)行和維護(hù)整個(gè)生命周期中的信息。龐人的企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫涉 及企業(yè)運(yùn)行的眾多業(yè)務(wù)處理系統(tǒng)和整個(gè)企業(yè)運(yùn)行的各個(gè)環(huán)節(jié),只有有效的元數(shù)據(jù) 管理才能保證數(shù)據(jù)倉(cāng)庫與企業(yè)業(yè)務(wù)的運(yùn)作同步,并且根據(jù)市場(chǎng)和業(yè)務(wù)需求的變化 隨時(shí)做出調(diào)整,一旦業(yè)務(wù)需求發(fā)生改變,用戶可以通過對(duì)元數(shù)據(jù)的維護(hù)使數(shù)據(jù)倉(cāng) 庫系統(tǒng)的運(yùn)行做出快速的對(duì)應(yīng)21。3.3數(shù)據(jù)倉(cāng)庫構(gòu)建工具:sl server 2012sql server 2012的集成環(huán)境analysis services為合并數(shù)據(jù)挖掘的解決方案提 供一個(gè)集成的平臺(tái)。sql server 2012提供

9、了以下功能來支持集成的數(shù)據(jù)挖掘解 決方案:1. 多個(gè)數(shù)據(jù)源:無需創(chuàng)建數(shù)據(jù)倉(cāng)庫或olap多維數(shù)據(jù)集就可以執(zhí)行數(shù)據(jù)挖 掘。用戶可以使用來自外部提供程序、電子表格甚至文本文件的表格格式數(shù)據(jù)。 此外,還口j*以輕松地挖掘在analysis services屮創(chuàng)建的olap多維數(shù)據(jù)集。2. 集成的數(shù)據(jù)清理、數(shù)據(jù)管理和etl: data quality services提供了用于探 査和清理數(shù)據(jù)的高級(jí)工具。integration services可用于生成etl進(jìn)程以用于清理 數(shù)據(jù),并且還用于生成、處理、定型和更新模型。3. 多個(gè)可自定義的算法:除了提供聚類分析、祌經(jīng)網(wǎng)絡(luò)和決策樹之類的算 法之外,該平臺(tái)還

10、支持開發(fā)用戶自己的自定義插件算法。4. 模型測(cè)試基礎(chǔ)結(jié)構(gòu):使用重要的統(tǒng)計(jì)工具(例如交義驗(yàn)證、分類矩陣、 提升閣和散點(diǎn)閣)測(cè)試用戶的模型和數(shù)據(jù)集。輕松創(chuàng)建和管理測(cè)試和定型集。5. 斉詢和鉆?。簞?chuàng)建預(yù)測(cè)查詢、檢索模型模式和統(tǒng)計(jì)信息以及鉆取到事例 數(shù)據(jù)。6. 客戶端工具:除了 sql server提供的開發(fā)和設(shè)計(jì)工具之外,用戶還可以使用excel數(shù)據(jù)挖掘外接程序來創(chuàng)建、查詢和瀏覽模型?;蛘?,創(chuàng)逑自定義的客 戶端,包括web服務(wù)。7. 腳本語言支持和托管api:所有數(shù)據(jù)挖掘?qū)ο蠖际峭耆删幊痰摹?赏?過用于analysis services的mdx、xmla或powershell擴(kuò)展插件來撰寫腳本。

11、使用數(shù)據(jù)挖掘擴(kuò)展插件(dmx)語言來進(jìn)行快速査詢和腳本撰寫。8. 安全性和部署:通過analysis services提供基于角色的安全性,也括用 于鉆取到模型和結(jié)構(gòu)數(shù)據(jù)的單獨(dú)的權(quán)限。較松地將模型部署到其他服務(wù)器,以便 用戶可以訪問模式或執(zhí)行預(yù)測(cè)。3. 4數(shù)據(jù)倉(cāng)庫的系統(tǒng)構(gòu)建數(shù)據(jù)倉(cāng)庫的系統(tǒng)設(shè)計(jì)的過程是一個(gè)不斷循環(huán)而又動(dòng)態(tài)的。跟普通的數(shù)據(jù)庫不 同,它們?cè)诓渴鸷蟮囊欢〞r(shí)間內(nèi)和對(duì)保持不變,數(shù)據(jù)倉(cāng)庫卻是為了應(yīng)對(duì)所服務(wù)的 業(yè)務(wù)環(huán)境的變化,始終處于不斷的變化之中。在原始數(shù)據(jù)到達(dá)數(shù)據(jù)倉(cāng)庫之后,它 通過不斷的了解客戶的需求,把準(zhǔn)確有用的數(shù)據(jù)信息提供給用戶;與此同時(shí),根 據(jù)用戶反饋的信息,對(duì)物理設(shè)計(jì)等內(nèi)容繼續(xù)調(diào)整

12、和完善,從而使系統(tǒng)的性能和效 率得到提高。醫(yī)療信息數(shù)據(jù)倉(cāng)庫模型的構(gòu)建通常由多個(gè)步驟組成。其棊本過程如 圖3-2所示。確定主題準(zhǔn)備數(shù)據(jù)b建立模型解釋評(píng)估模型l運(yùn)用鞏固模型lm 3-2數(shù)據(jù)倉(cāng)庫構(gòu)建基本過程本課題以現(xiàn)有his系統(tǒng)數(shù)據(jù)的積累為棊礎(chǔ)構(gòu)建醫(yī)院數(shù)據(jù)倉(cāng)庫模型。利用己 建設(shè)的數(shù)據(jù)庫的數(shù)據(jù)創(chuàng)建基于his的數(shù)據(jù)倉(cāng)庫模型,按照數(shù)據(jù)挖掘的應(yīng)用要求 重新考慮數(shù)據(jù)之間的聯(lián)系,組織數(shù)據(jù)倉(cāng)庫的主題,建立冇效的數(shù)據(jù)模型以找出數(shù) 據(jù)之間的共同的特征。經(jīng)過嚴(yán)謹(jǐn)?shù)臏?zhǔn)備、轉(zhuǎn)換、篩查、標(biāo)準(zhǔn)化等流程后將源數(shù)據(jù) 導(dǎo)入到數(shù)據(jù)倉(cāng)庫模型中。3.4.1確定主題組織數(shù)據(jù)倉(cāng)庫中數(shù)據(jù)是面向主題的,換句話說,定義主題的過程就是數(shù)據(jù)倉(cāng) 庫模型構(gòu)

13、建的過程。于此可得,醫(yī)院信息數(shù)據(jù)倉(cāng)庫中的數(shù)據(jù)是按照一定的主題域 來組織的,因此其構(gòu)建的第一步首先就是確定主題,并且還需要通過主題確定子 主題、數(shù)據(jù)來源和維度等。根據(jù)當(dāng)前實(shí)際工作需要,我們確定數(shù)據(jù)倉(cāng)庫的主題為 門診患者信息、藥品信息、住院患者信息。當(dāng)定義好主題之后,也就基本構(gòu)建好醫(yī)院信息數(shù)據(jù)倉(cāng)庫的多維模型。在主題 確定的情況下,就可以開始設(shè)計(jì)事實(shí)表,其主要作用是能反映主題。數(shù)據(jù)倉(cāng)庫的 事實(shí)表包括:門診病患信息表、住院病患信息表、藥品信息表。3.4.2維度與維層次設(shè)計(jì)1. 維度設(shè)計(jì)第一步先設(shè)計(jì)常規(guī)維,常規(guī)維有私有維和共享維兩類。私有維是只在一個(gè)多 維立方體中使用的維,共享維是被兩個(gè)或多個(gè)多維立方體

14、所共同擁有的維。共享 維在啟動(dòng)的那一瞬間,被自動(dòng)加載進(jìn)內(nèi)存,供各個(gè)多維立方體使用,從而使系統(tǒng) 的杳詢能快速的得到反饋;并且對(duì)干那些一致性很高的維,就越有可能被多個(gè)多 維立方體所共用。為了節(jié)省開發(fā)時(shí)間和處理時(shí)間,本系統(tǒng)將多維立方體屮具有相 同特征的維都作為共享維來進(jìn)行定義。根據(jù)分析,以下是屬于多個(gè)立方體所共冇的屬性:吋間維作為共享維被每一 個(gè)立方體所共有;醫(yī)生信息維被住院病患立方體和門診病患立方體所共冇;檢驗(yàn) 維被門診病患立方體和住院病患立方體所共有;處方醫(yī)囑維表被門診病患立方體 和住院病患立方體所共有。上述維都是所共有的屬性,所以都設(shè)計(jì)為共享維。藥 品庫存維等幾個(gè)維表分別被各自立方體所專有,所

15、以設(shè)計(jì)成私有維。2. 維層次設(shè)計(jì)基本上維和維之間都存在著層次關(guān)系,每個(gè)層次包含冇維成員,多個(gè)層次中 的維成員可以排列成多個(gè)層次,這些層次結(jié)構(gòu)便稱為概念分層。木數(shù)據(jù)倉(cāng)庫的數(shù)據(jù)分析既有在維的層次關(guān)系上進(jìn)行的,又有在維成員的類別 上進(jìn)行的。由于維的層次結(jié)構(gòu)越復(fù)雜,所需的存儲(chǔ)空間越多,查詢中的引用也復(fù) 雜,從而在聚集時(shí)會(huì)引起數(shù)據(jù)爆炸。為減少存儲(chǔ)空間的占用、降低系統(tǒng)分析的復(fù) 雜性,本系統(tǒng)將維的層次結(jié)構(gòu)盡量構(gòu)造的簡(jiǎn)單些。3.4.3粒度設(shè)計(jì)粒度問題是設(shè)計(jì)存數(shù)據(jù)倉(cāng)庫的一個(gè)最重要的方而。粒度是指數(shù)據(jù)倉(cāng)庫的數(shù)據(jù) 單位中保存數(shù)據(jù)的細(xì)化或綜合程度的級(jí)別。細(xì)化程度越高,粒度級(jí)就越??;相反, 細(xì)化程度越低,粒度級(jí)就越大。

16、數(shù)據(jù)的粒度是一個(gè)一直存在的設(shè)計(jì)問題。因?yàn)樗?深深地影響存放在數(shù)據(jù)倉(cāng)庫屮的數(shù)據(jù)量的大小,同時(shí)影響數(shù)據(jù)倉(cāng)庫所能回答的查 詢類型3。粒度底,能冋答的問題就多,但查詢速度慢,奮的時(shí)候甚至速度慢得 令人無法忍受;粒度高,能回答的問題就少,但查詢速度快。在數(shù)據(jù)倉(cāng)庫中的數(shù) 據(jù)量大小與查詢的詳細(xì)程度之間要做出權(quán)衡4。為了讓醫(yī)院數(shù)據(jù)倉(cāng)庫能夠回答足夠多的問題、查詢速度也較快,經(jīng)常采取多 粒度級(jí)別的方法,在數(shù)據(jù)倉(cāng)庫中即保留細(xì)節(jié)級(jí)(即粒度低)的數(shù)據(jù),又保留綜合 級(jí)(即粒度高)的數(shù)據(jù)。在進(jìn)行數(shù)據(jù)分析時(shí),我們大多數(shù)是對(duì)綜合級(jí)的數(shù)據(jù)進(jìn)行分析,這樣分析較為 迅速;當(dāng)綜合級(jí)的數(shù)據(jù)不能滿足我們的需求時(shí),就需要對(duì)細(xì)節(jié)級(jí)的數(shù)據(jù)進(jìn)行分

17、析。 例如,如果需要丫解市醫(yī)保3月份的出院結(jié)算費(fèi)用,就只需要分析綜合級(jí)的數(shù)據(jù); 如果要/解3月份某個(gè)出院病患的住院費(fèi)用明細(xì),就需要在細(xì)節(jié)級(jí)的數(shù)據(jù)上進(jìn)行 分析。3.4.4事實(shí)表和維表設(shè)計(jì)根據(jù)上述,數(shù)據(jù)倉(cāng)庫的事實(shí)表和維表設(shè)計(jì)如下:1. 門診病患信息事實(shí)表:門診病患(門診流水號(hào),病歷號(hào),姓名,性別id,年齡id,職業(yè),掛號(hào)吋 間,看診時(shí)間,門診類別id,醫(yī)生id,檢查id,診斷類別id,處方id,費(fèi)用)。維表:性別維(性別id,性別)。年齡維(年齡id,年齡)。醫(yī)生維(醫(yī)生id,姓名,性別,科室,職稱)??丛\時(shí)間維(看診時(shí)間,年,季度,月,日)。門診類別維(門診類別id,是否初診,是否急診,是否參加

18、醫(yī)保)。診斷維(診斷類別id,診斷時(shí)間,門診流水號(hào),病歷號(hào),姓名,診斷結(jié)果)。處方醫(yī)囑維(處方醫(yī)囑id,開立吋間,開立科室,姓名,年齡,開立醫(yī)生, 金額)。檢查維(檢查id,項(xiàng)目名稱,檢查醫(yī)生姓名,費(fèi)用,檢查時(shí)間)。2. 住院病患信息事實(shí)表:住院病患信息(住院流水號(hào),住院號(hào),姓名,年齡,性別id,電話,家庭 地址,入院日期,出院日期,醫(yī)生id,病區(qū),床號(hào),診斷id,手術(shù)id,住院天 數(shù))。維表:診斷信息維(診斷id,住院流水號(hào),病歷號(hào),姓名,診斷結(jié)果)。入院吋間維(入院日期,年,季度,月,日)。手術(shù)信息維(手術(shù)id,手術(shù)名稱,手術(shù)時(shí)間,住院流水號(hào),病歷號(hào),姓名)。醫(yī)生維(醫(yī)生id,姓名,性別,

19、職稱)。性別維(性別id,性別)。年齡維(年齡id,年齡)。3. 藥品主題信息事實(shí)表:藥品信息(病歷號(hào),門診流水號(hào)(或住院流水號(hào)),處方醫(yī)囑id,藥品id, 庫存id,入庫批次id)。維表:處方醫(yī)囑維(處方醫(yī)囑id,開立時(shí)間,開立科室,姓名,年齡,開立醫(yī)生, 金額)。藥品基本信息維(藥品id,藥品商品名稱,通用名,生產(chǎn)廠家,規(guī)格,類 別,購(gòu)入價(jià),零售價(jià))。庫存信息維(庫存id,藥品商品名稱,通用名,生產(chǎn)廠家,規(guī)格,類型, 數(shù)量,購(gòu)入價(jià),購(gòu)入總額,零售價(jià),零售總額,入庫時(shí)間)。入庫批次維(入庫批次id,藥品商品名稱,通用名,生產(chǎn)廠家,規(guī)格,類 型,數(shù)量,購(gòu)入價(jià),購(gòu)入總額,入庫時(shí)間)。外關(guān)鍵字被用

20、于連接到維度表的主關(guān)鍵字,每個(gè)事實(shí)表都會(huì)存在兩個(gè)或者多 個(gè)的外關(guān)鍵字。例如,住院病患事實(shí)表中的“手術(shù)id”關(guān)鍵字總能匹配手術(shù)信 息維度表的其中的“手術(shù)id”關(guān)鍵字。為了滿足事實(shí)表引用完整性的要求,需 要事實(shí)表中的所有關(guān)鍵字都能分別與對(duì)應(yīng)維度表中的關(guān)鍵字準(zhǔn)確匹配。維度表有許多屬性,他們?cè)敿?xì)描述了維度表行的事務(wù)信息。進(jìn)入事實(shí)表的入 口是維度表,豐富的維度屬性提供了多種多樣的分析切割能力。維度是客戶使用 數(shù)據(jù)倉(cāng)庫的接口。通過以上分析,數(shù)據(jù)集市決定由星型和雪花型模型相結(jié)合的模式來構(gòu)造。圖3-3為住院病患信息模型視圖。門診病患信息、藥品信息的視圖與之相類似。性別表住院流水號(hào)年齡表性別id住院號(hào)年齡id性

21、別姓名年齡入院時(shí)間表年齡醫(yī)生表入院日期性別id醫(yī)生id年電話姓名月家庭地址性別入院口期職稱季度出院口期醫(yī)生id手術(shù)信息表診斷信息表病區(qū)手術(shù)id診斷id床號(hào)手術(shù)名稱住院流水號(hào)診斷id手術(shù)時(shí)間病歷號(hào)手術(shù)id住院流水號(hào)姓名住院天數(shù)病歷號(hào)診斷結(jié)果姓名圖3-3住院病患信息模型視圖圖3-3是星型模型的一個(gè)例子,其中事實(shí)表是住院病患信息表,而維表是醫(yī) 生表、性別表、入院時(shí)間表、年齡表、手術(shù)信息表、診斷信息表,“手術(shù)id”是 事實(shí)表的外關(guān)鍵字,而手術(shù)信息表還可以有手術(shù)所屬分類的下一層表,基于關(guān)系 表的雪花模型就這樣形成了。雪花模型是對(duì)星型模型的擴(kuò)展。在這種模型中,它能通過連接到詳細(xì)分類表 對(duì)事實(shí)表進(jìn)行詳細(xì)描述

22、。雪花模型使用的是規(guī)范化數(shù)據(jù),也就是說數(shù)據(jù)在數(shù)據(jù)庫 內(nèi)部是組織好的,以便消除冗余,因此它能夠有效地減少數(shù)據(jù)量。3.4.5數(shù)據(jù)準(zhǔn)備數(shù)據(jù)準(zhǔn)備工作包括選擇數(shù)據(jù)、探索、修正、變換、數(shù)據(jù)項(xiàng)之間的計(jì)算組合、 數(shù)據(jù)的分組分類等。3.4.6建立模型本系統(tǒng)使用sql server 2012集成環(huán)境analysis services建立數(shù)據(jù)倉(cāng)庫模型。 sql server data tools提供多種工具,可以從不同的源將數(shù)據(jù)抽取、轉(zhuǎn)換和合并 到一個(gè)或多個(gè)目標(biāo)位置。sql server 2012可識(shí)別多種不同的數(shù)據(jù)存儲(chǔ)格式(如 access, excel等),搜集醫(yī)院信息其他子系統(tǒng)記錄的數(shù)據(jù),降低了數(shù)據(jù)收集的難

23、度。3.4.7評(píng)估、解釋模型比較和評(píng)估每個(gè)新生成的模型,直到比對(duì)出一個(gè)相對(duì)所有新生成的來說最佳 的模型,再用醫(yī)療業(yè)務(wù)語言解釋此模型,若是出現(xiàn)問題,就重復(fù)數(shù)據(jù)準(zhǔn)備和建模 過程,直到滿意的模型建立出來為止;若是沒有發(fā)現(xiàn)問題,那就可以開始對(duì)模型 進(jìn)行試驗(yàn)性的應(yīng)用。3.4.8運(yùn)用、鞏固模型需要對(duì)之前選出最佳的模型繼續(xù)跟蹤觀察在實(shí)際應(yīng)用中的表現(xiàn),一旦發(fā)現(xiàn)模 型有運(yùn)行不良的情況,就必須進(jìn)一步的深入研究,生成更佳的模型以適應(yīng)業(yè)務(wù)運(yùn) 作的規(guī)律。第四章基于醫(yī)院信息系統(tǒng)的數(shù)據(jù)挖掘4.1醫(yī)學(xué)數(shù)據(jù)挖掘的基本過程醫(yī)學(xué)數(shù)據(jù)的特點(diǎn)使得醫(yī)學(xué)數(shù)據(jù)挖掘與常規(guī)的數(shù)據(jù)挖掘之間存在較大的差異, 針對(duì)咲院信息系統(tǒng)數(shù)據(jù)庫的特點(diǎn),總結(jié)了通常

24、咲療數(shù)據(jù)挖掘的基本過程5:1. 理解應(yīng)用領(lǐng)域、識(shí)別數(shù)據(jù)挖掘的目標(biāo)。理解醫(yī)學(xué)領(lǐng)域問題的范圍和識(shí)別 醫(yī)療數(shù)據(jù)挖掘過程,為的就是耍明確數(shù)據(jù)挖掘的醫(yī)學(xué)對(duì)象和耍得到的結(jié)果。2. 產(chǎn)生目標(biāo)數(shù)據(jù)庫。為了達(dá)成最終的目標(biāo),需要生成一個(gè)完整記錄病患診 斷信息的數(shù)據(jù)庫,各個(gè)診斷系統(tǒng)根據(jù)不同的fi標(biāo)來組織各種數(shù)據(jù)庫,其屮應(yīng)包含 充足的各類病例或一定數(shù)量的正病例和反病例作為數(shù)據(jù)挖掘的訓(xùn)練例和測(cè)試?yán)?以便最終可以得到令人滿意的正確結(jié)果。3. 清理與預(yù)處理數(shù)據(jù)。其s的是補(bǔ)充數(shù)據(jù)中的空缺值,消除數(shù)據(jù)中的噪聲 數(shù)據(jù),糾正數(shù)據(jù)中的不一致數(shù)據(jù)。4. 約簡(jiǎn)與投影數(shù)據(jù)。目標(biāo)是找到一個(gè)依賴于目標(biāo)的有用特征值來代表數(shù)據(jù), 包括使用降低維

25、度或交換的方法來減少考慮的有效變量數(shù)或發(fā)現(xiàn)數(shù)據(jù)的不變代 表,即用最少的變量更好地代表數(shù)據(jù)。5. 匹配目標(biāo)和特殊的數(shù)據(jù)挖掘算法。其目的是確定哪種數(shù)據(jù)模型可能適合 搜索數(shù)據(jù)中的模式,使用哪種數(shù)據(jù)挖掘方法能與挖掘過程的目標(biāo)相匹配。模型選 擇普遍棊于想要挖掘數(shù)據(jù)的類型,選擇數(shù)據(jù)挖掘方法取決于需要何種形式的最終 結(jié)果,通常是發(fā)現(xiàn)或預(yù)測(cè)。6. 提取數(shù)據(jù)模式。從目標(biāo)數(shù)據(jù)中通過智能的方法提取數(shù)據(jù)模式。對(duì)醫(yī)療數(shù) 據(jù)庫進(jìn)行數(shù)據(jù)挖掘的主要s的是預(yù)測(cè)和分類疾病。預(yù)測(cè)和分類是二種數(shù)據(jù)分析形 式,可以用于預(yù)測(cè)未來的數(shù)據(jù)趨勢(shì)或提取描述重要數(shù)據(jù)類的模型。7. 解釋和評(píng)估挖掘到的模式。大多數(shù)的數(shù)據(jù)挖掘算法都會(huì)挖掘出大量模式。

26、根據(jù)自己的需要用戶應(yīng)該識(shí)別出真正有用的模式,并使用可視化或知識(shí)表示技術(shù) 提供這些模式。8. 應(yīng)用所發(fā)現(xiàn)的有用模式。利用發(fā)現(xiàn)的有效模式應(yīng)用于簡(jiǎn)化醫(yī)生的診斷過程、提高診斷效率、對(duì)缺乏經(jīng)驗(yàn)的新醫(yī)生進(jìn)行訓(xùn)練等。4.2醫(yī)院信息數(shù)據(jù)挖掘的關(guān)鍵技術(shù)針對(duì)不同的挖掘?qū)ο蠛腿蝿?wù),數(shù)據(jù)挖掘的技術(shù)會(huì)有不同的耍求。his數(shù)據(jù)挖 掘的獨(dú)特性,使得his數(shù)據(jù)挖掘與其他普通的數(shù)據(jù)挖掘存在很大的差異,同吋 也給數(shù)據(jù)挖掘提出丫更高的要求,其屮的關(guān)鍵技術(shù)有以下幾點(diǎn):(1) 挖掘知識(shí)的準(zhǔn)確性和可靠性。挖掘的主要r的是為管理和醫(yī)療活動(dòng)提 供科學(xué)的依據(jù)。因此必須確保挖掘算法所得到的知識(shí)具冇較高的準(zhǔn)確率和可靠 性。醫(yī)療數(shù)據(jù)挖掘能否得到實(shí)際

27、應(yīng)用的關(guān)鍵在于如何減少數(shù)據(jù)挖掘過程中的風(fēng) 險(xiǎn),提高挖掘結(jié)果的科學(xué)性和準(zhǔn)確性。(2) 需要更有效的數(shù)據(jù)預(yù)處理技術(shù)。醫(yī)學(xué)數(shù)據(jù)庫中含有大量的不同來源的 原始信息,其包括大量不完整的、模糊的、帶有噪聲和冗余的信息。在數(shù)據(jù)挖掘 之前,這些信息必須進(jìn)行清理和過濾,以保證數(shù)據(jù)的一致性和確定性,把它變成 適合挖掘的形式。(3) 信息融合技術(shù)。不同屬性的數(shù)據(jù),通過不同的技術(shù)和措施進(jìn)行處理, 使其在屬性上趨向于一致,再對(duì)處理的結(jié)果進(jìn)行綜合。挖掘數(shù)據(jù)的時(shí)序性和非時(shí) 序性、多源性、非數(shù)字型數(shù)據(jù)和數(shù)字型數(shù)據(jù)共存、非連續(xù)型數(shù)據(jù)和連續(xù)型共存的 特點(diǎn),增加了信息融合的難度。(4) 快速的、強(qiáng)人的挖掘算法。醫(yī)學(xué)數(shù)據(jù)庫涵蓋了廣大

28、的信息量。要在這 么一個(gè)龐大的數(shù)據(jù)庫中提取知識(shí),需要大量的時(shí)間,所以必須考慮數(shù)據(jù)挖掘的效 率問題。同時(shí),醫(yī)學(xué)數(shù)據(jù)庫的類型較多,并且又是動(dòng)態(tài)變化的,需要挖掘算法具 有一定的強(qiáng)大容錯(cuò)性。針對(duì)以上的分析,本文選擇關(guān)聯(lián)規(guī)則算法apriori算法。4.3數(shù)據(jù)挖掘關(guān)聯(lián)規(guī)則算法研宄關(guān)聯(lián)規(guī)則(association rules) 6挖掘是當(dāng)前數(shù)據(jù)挖掘研究的主要方法之一, 近年來在數(shù)據(jù)挖掘研宄領(lǐng)域?qū)﹃P(guān)聯(lián)規(guī)則挖掘的研宄幵展得比較深入。關(guān)聯(lián)規(guī)則挖 掘就是發(fā)現(xiàn)大量數(shù)據(jù)中項(xiàng)集之間有趣的關(guān)聯(lián)或相關(guān)聯(lián)系。4.3.1基本概念1. 項(xiàng)與項(xiàng)集m數(shù)據(jù)庫中不可分割的最小單位信息,稱為項(xiàng)目,用符號(hào)/表示。項(xiàng)的集合稱為項(xiàng)集。設(shè)集合/ =

29、,,是項(xiàng)集,/中項(xiàng)s的個(gè)數(shù)為則集合/稱為a-項(xiàng)集。例如,集合股市,期貨,基金,黃金是一個(gè)4-項(xiàng)集。2. 事務(wù)設(shè)/ =仏,/2,是由數(shù)據(jù)庫中所有項(xiàng)目構(gòu)成的集合,一次處理所含項(xiàng)目的集合用r表示,r = k,r2,。每一個(gè)&包含的項(xiàng)集都是/子集。例如,如果在書店里客人一次性購(gòu)買多種書籍,這些購(gòu)物信息在數(shù)據(jù)庫中有 一個(gè)唯一的id號(hào),用以表示這些書籍都是這個(gè)客人同一次結(jié)算購(gòu)買的。就可以 說該客人的本次購(gòu)物活動(dòng)對(duì)應(yīng)其中一條數(shù)據(jù)庫事務(wù)數(shù)據(jù)。3. 項(xiàng)集的頻數(shù)(支持度計(jì)數(shù))包括項(xiàng)集的事務(wù)數(shù)稱為項(xiàng)集的頻數(shù)(支持度計(jì)數(shù))。4. 關(guān)聯(lián)規(guī)則關(guān)聯(lián)規(guī)則是形如的蘊(yùn)含式,其中y分別是/的真子集,并且 xryy =(l&

30、gt;o x稱為規(guī)則的前提,y稱為規(guī)則的結(jié)果。關(guān)聯(lián)規(guī)則反映x中的項(xiàng)目出現(xiàn)時(shí),y屮的項(xiàng)r也跟著出現(xiàn)的規(guī)律5. 關(guān)聯(lián)規(guī)則的支持度(support)關(guān)聯(lián)規(guī)則的支持度是交易集中同吋包含的x和y的交易數(shù)與所有交易數(shù)之 比,記力x),即(xx)= supportx <jy = p(xy )支持度反映y x和r屮所含的項(xiàng)在事務(wù)集屮同時(shí)出現(xiàn)的頻率。6. 關(guān)聯(lián)規(guī)則的置信度(confidence)關(guān)聯(lián)規(guī)則的置信度是交易集中包含x和/的交易數(shù)與所奮交易數(shù)與包含x 的交易數(shù)之比,記為=> /),即置信度反映y包含x的事務(wù)屮,出現(xiàn)y的條件概率。7. 最小支持度與最小置信度通常用戶為了達(dá)到一定的要求,需要指定

31、規(guī)則必須滿足的支持度和置信度閾 限,當(dāng)supportx1 k)分別大丁等丁各自的陶限值時(shí),認(rèn)為x => k是有趣的,此兩個(gè)值稱為最小支持度閾值min_ sup和最小置信度閾值 min_ confo其中,min_ sup描述了關(guān)聯(lián)規(guī)則的最低重要程度,min_ conf規(guī)定了 關(guān)聯(lián)規(guī)則必須滿足的最低可靠性。8. 頻繁項(xiàng)集設(shè)/二么,w,,為項(xiàng)目的集合,且(/,對(duì)于給定的最小支持度min_sup,如果項(xiàng)集t/的支持度鄉(xiāng)則稱/力頻繁項(xiàng)集,否則,f;為非頻繁項(xiàng)集。9. 強(qiáng)關(guān)聯(lián)規(guī)則8support(x => /) > mzvv.wp 且 confidence(x => y) - mz

32、>?_c/,稱關(guān)聯(lián)規(guī)則x=>y為強(qiáng)關(guān)聯(lián)規(guī)則,否則稱為弱關(guān)聯(lián)規(guī)則。性質(zhì)18:設(shè)x和f是數(shù)據(jù)集d中的項(xiàng)目集(1) 若 xci7,w*j support(x) > support (/)(2) 若xey,如果x是非頻繁項(xiàng)目集,則r也是非頻繁項(xiàng)目集,即任意 弱項(xiàng)a集的超集都是弱項(xiàng)集。(3) 若;fer,如果r是非頻繁項(xiàng)目集,則x也是非頻繁項(xiàng)目集,即任意 大項(xiàng)集的子集都是大項(xiàng)集。4.3.2關(guān)聯(lián)規(guī)則的分類基于不同的標(biāo)準(zhǔn),關(guān)聯(lián)規(guī)則可以分為不同的類型:l9ji. 基于所處理變量的類別分類基于所處理變量的類別分類,關(guān)聯(lián)規(guī)則可以分為布爾型關(guān)聯(lián)規(guī)則和數(shù)值型關(guān) 聯(lián)規(guī)則。布爾關(guān)聯(lián)規(guī)則處理是離散的、種類

33、化的值,它考慮的是相關(guān)聯(lián)的項(xiàng)的存 在與否的關(guān)系。而數(shù)值型關(guān)聯(lián)規(guī)則可以和多維關(guān)聯(lián)或多層關(guān)聯(lián)規(guī)則結(jié)合起來,可 以對(duì)數(shù)值型字段進(jìn)行處理,將其進(jìn)行動(dòng)態(tài)的分割,或者直接對(duì)原始的數(shù)據(jù)進(jìn)行處 理,當(dāng)然數(shù)值型關(guān)聯(lián)規(guī)則中也可以包含種類變量。2. 基于規(guī)則中數(shù)據(jù)的抽象層次分類基于規(guī)則中數(shù)據(jù)的抽象層次分類,可分為單層關(guān)聯(lián)規(guī)則和多層關(guān)聯(lián)規(guī)則。單 層關(guān)聯(lián)規(guī)則所有的變量都沒有考慮現(xiàn)實(shí)的數(shù)據(jù)實(shí)際上具有多個(gè)不同的層次,不涉 及不同抽象層的項(xiàng)或?qū)傩?。多層關(guān)聯(lián)規(guī)則充分考慮現(xiàn)實(shí)中數(shù)據(jù)的多層性,規(guī)則涉 及數(shù)據(jù)不同抽象層的項(xiàng)或?qū)傩浴?. 基于規(guī)則中涉及到的數(shù)據(jù)的維數(shù)分類棊于規(guī)則屮涉及到的數(shù)據(jù)的維數(shù)分類,關(guān)聯(lián)規(guī)則可以分為單維關(guān)聯(lián)規(guī)則和多

34、 維關(guān)聯(lián)規(guī)則。單維關(guān)聯(lián)規(guī)則是指關(guān)聯(lián)規(guī)則屮的項(xiàng)或?qū)傩灾簧婕皵?shù)據(jù)的一個(gè)維,處 理單個(gè)屬性中的一些關(guān)系,通常通過事務(wù)數(shù)據(jù)庫進(jìn)行挖掘。多維關(guān)聯(lián)規(guī)則是指關(guān) 聯(lián)規(guī)則中的項(xiàng)或?qū)傩陨婕皟蓚€(gè)或兩個(gè)以上數(shù)據(jù)維,處理各個(gè)屬性之間的某些關(guān) 系,通常通過關(guān)系數(shù)據(jù)庫或數(shù)據(jù)倉(cāng)庫進(jìn)行挖掘。多維關(guān)聯(lián)規(guī)則根據(jù)其數(shù)據(jù)維是否 重復(fù)出現(xiàn),可以分為維間關(guān)聯(lián)規(guī)則和混合維關(guān)聯(lián)規(guī)則。維間關(guān)聯(lián)規(guī)則是指同一數(shù) 據(jù)維不重復(fù)出現(xiàn)的關(guān)聯(lián)規(guī)則。4.3.3挖掘關(guān)聯(lián)規(guī)則的步驟挖掘關(guān)聯(lián)規(guī)則的步驟如下所示:1. 把所有頻繁項(xiàng)集找出來:根據(jù)定義,這些項(xiàng)集出現(xiàn)的頻繁性至少和預(yù)定 義的最小支持度計(jì)數(shù)一樣。2. 由頻繁項(xiàng)集產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則:根據(jù)定義,這些規(guī)則必須滿足最小支

35、持度 和最小置信度。也可以使用附加的興趣度度量。挖掘關(guān)聯(lián)規(guī)則的總體性能由第一步?jīng)Q定,第二步則最容易。4.4 apriori 算法apriori算法是一種最有影響的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項(xiàng)集的算法。其核 心是基于兩階段頻集思想的遞推算法。該關(guān)聯(lián)規(guī)則在分類上屬于單維、單層、布 爾關(guān)聯(lián)規(guī)則。在這里,所有支持度大于最小支持度的項(xiàng)集稱為頻繁項(xiàng)集,簡(jiǎn)稱頻 集。4.4.1傳統(tǒng)apriori算法基本思想apriori算法的基本思想是:通過對(duì)數(shù)據(jù)庫的多次掃描來計(jì)算項(xiàng)集的支持度, 發(fā)現(xiàn)所奮的頻繁項(xiàng)集從而生成關(guān)聯(lián)規(guī)則。apriori算法對(duì)數(shù)據(jù)集進(jìn)行多次掃描。 第一次掃描得到頻繁1-項(xiàng)集的集合l/,第次掃描首先利用第(

36、k-l)狄 掃描的結(jié)果來產(chǎn)生候選f項(xiàng)集的集合然后再掃描的過程中確定g.中元素 的支持度,最后再每一次掃描結(jié)束時(shí)計(jì)算頻繁h項(xiàng)集的集合算法當(dāng)候選- 項(xiàng)集的集合心為空時(shí)結(jié)束。4.4.2傳統(tǒng)apriori算法產(chǎn)生頻繁項(xiàng)集的過程產(chǎn)生頻繁項(xiàng)集的過程主耍分為連接和剪枝兩步:1. 連接步:為找“,通過lu與自身作連接產(chǎn)生候選f項(xiàng)集的集合q。設(shè) /,和/:是/中的項(xiàng)集。記表示(的第j個(gè)項(xiàng)。apriori假定事務(wù)或項(xiàng)集中的 項(xiàng)按字典次序排序。對(duì)于rm項(xiàng)集(.,意味將項(xiàng)排序,使/,.心/,2<</,.a-1。 如果的元素和/2的前a-2)個(gè)對(duì)應(yīng)項(xiàng)相等,貝吣和/2可連接。即,如果f人i=/2i) (12

37、= 122) nn(i,k-2=i2k-2) n(ik-i<i2k-i) 時(shí),/,和/2可連接。條件僅僅是保證不重復(fù)。連接/,和/2產(chǎn)生的結(jié)果項(xiàng)集為(/,1,/,2,l2k-)02. 剪枝步:apriori算法的性質(zhì)可知,頻繁i項(xiàng)集的任何子集必須是頻繁項(xiàng) 集。由連接生成的集合ck需要進(jìn)行驗(yàn)證,去除不滿足支持度的非頻繁k-項(xiàng)集。4.4.3傳統(tǒng)apriori算法的主要步驟apriori算法的主要步驟11:1. 掃描全部數(shù)據(jù),產(chǎn)生候選1-項(xiàng)集的集合g;2. 根據(jù)最小支持度,由候選1-項(xiàng)集的集合g產(chǎn)生頻繁1-項(xiàng)集的集合l/;3. 對(duì)侖7,重復(fù)執(zhí)行步驟4、5、6;4. 由“執(zhí)行連接和剪枝操作,產(chǎn)生

38、候選-項(xiàng)集的集合5. 根據(jù)最小支持度,由候選項(xiàng)集的集合c,產(chǎn)生頻繁(k+1)- 項(xiàng)集的集合lk+i;6. 若則a4+/,跳往步驟4;否則,跳往步驟7;7. 根據(jù)最小置信度,由頻繁項(xiàng)集產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則,結(jié)束。4.4.4傳統(tǒng)apriori算法描述輸入:數(shù)據(jù)痺d,最小支持度閥值min_sup。輸出:d屮的頻繁集l。方法:1. li = find frequent l-itemsets(d); /挖掘頻繁 1-項(xiàng)集,比較容易2. for (k=2; lr.it o : k+) 3. ck=apriori_ gen (lk-i),min sup); /調(diào)用函數(shù) apriori_ gen (lr.i ) 通

39、過頻繁(k-1)-項(xiàng)集產(chǎn)生候選k-項(xiàng)集4. for each transaction t d /掃描事務(wù)數(shù)據(jù)庫d用于計(jì)數(shù)5. ct=subset (ck,t); /用subset找出該事務(wù)中是候選的所有子 集6. for each candidate c e ct7. c.count+;/統(tǒng)計(jì)候選頻繁k-項(xiàng)集的計(jì)數(shù)8. 9. lk=cck | c. count > min sup /滿足最小支持度的k-項(xiàng)集即為頻繁k-項(xiàng)集10.11. return l=uk lk; /合并頻繁 k-項(xiàng)集(k>0)4.4.5傳統(tǒng)apriori算法的缺點(diǎn)apriori算法的最人的優(yōu)點(diǎn)是算法思路比較簡(jiǎn)單

40、,以遞歸統(tǒng)計(jì)為基礎(chǔ),生成 頻繁項(xiàng)集,易于實(shí)現(xiàn)。然而,俾統(tǒng)apriori算法存在以下缺點(diǎn):1. 在每一步產(chǎn)生侯選項(xiàng)b集時(shí)循環(huán)產(chǎn)生的組合過多,沒有排除不應(yīng)該參與 組合的元素。2. 每次計(jì)算項(xiàng)集的支持度時(shí),都對(duì)數(shù)據(jù)庫d中的全部記錄進(jìn)行了一遍掃描 比較,如果是一個(gè)大型的數(shù)據(jù)庫的話,這種掃描比較會(huì)大大增加計(jì)算機(jī)系統(tǒng)的i/o 開銷,面這種代價(jià)是隨著數(shù)據(jù)庫的記錄的增加呈現(xiàn)出兒何級(jí)數(shù)的增加。4.5改進(jìn)的apriori算法4.5.1設(shè)計(jì)思路根據(jù)傳統(tǒng)apriori算法的缺點(diǎn),改進(jìn)的思路是減少掃描數(shù)據(jù)庫的次數(shù),降低 開銷。設(shè)計(jì)思路詳細(xì)如下12:1. 讀取數(shù)據(jù)庫的第一條記錄,為所有該記榮支持的1-項(xiàng)集構(gòu)造可能的組合

41、(即記錄支持的所有1-項(xiàng)集、2-項(xiàng)集、3-項(xiàng)集)標(biāo)記此吋它們的支持計(jì)數(shù)為1;2. 讀取數(shù)據(jù)庫的第二條記錄,同樣為所有該記錄支持的1-項(xiàng)集構(gòu)造可能的 組合,并對(duì)組合后得到的某個(gè)h項(xiàng)集進(jìn)行以下判斷:(1) 如果在之前的組合中未出現(xiàn),則標(biāo)記其獲得的支持計(jì)數(shù)為1;(2) 如果在之前的組合中已出現(xiàn),且已被標(biāo)記為頻繁項(xiàng)集,則跳過該項(xiàng)集 考察下一個(gè)項(xiàng)集;(3) 如果在之前的組合中己出現(xiàn),但不滿足最小支持度闕值,則其對(duì)應(yīng)的 支持計(jì)數(shù)加1。3. 同第2點(diǎn),處理數(shù)據(jù)庫的第三條記錄、第四條記錄直到完成數(shù)據(jù)庫 最后一條記求。4.5.2算法描述輸入:數(shù)據(jù)庫d,最小支持度閥值min_sup。 輸出:數(shù)據(jù)庫d中的所有頻繁項(xiàng)

42、集result。 方法:1. result: =;2. for (i=l; i|d|; i+)3. begin /構(gòu)造可能的項(xiàng)集組合au,aln4. for (j=l; jn; j+)5. begin /判斷每個(gè)組合ay6. case ajj if7. ay第一次出現(xiàn):為其生成一個(gè)計(jì)數(shù)器;8. ajj 日 result;9. continue;10. else: ay對(duì)應(yīng)的計(jì)數(shù)器加1;11. end;12. if aij對(duì)應(yīng)的計(jì)數(shù)器滿足min_ sup then13. result: =resultu ay;14. end;15. end4.5.3算法的執(zhí)行過程現(xiàn)在我們結(jié)合一個(gè)具體的例子來理解

43、apriori改進(jìn)算法,假定數(shù)據(jù)庫的事務(wù)列表如表4-1所示,數(shù)據(jù)庫中有4個(gè)事務(wù),最小支持計(jì)數(shù)為2。tid項(xiàng)目id列表t1011, 12, 13t2013, 14t3012, 15t4011, 13, 15表4-1數(shù)據(jù)庫的事務(wù)列表算法過程如圖4-1、圖4-2、圖4-3、記錄對(duì)應(yīng)項(xiàng)集候選項(xiàng)集1111掃12121313描11, 1211, 12>11, 1311, 1312, 1312,13t1011,12, 1311, 12, 13圖4-4所示:l1支持度/ i憎/頻繁項(xiàng)集1無c21 /候選項(xiàng)集支持度11計(jì)數(shù)1x1111 1211 1311 、,11, 121lb 13112, 13111, 12, 131r1c1圖4-1算法過程1l2記錄對(duì)應(yīng)候選項(xiàng)集項(xiàng)集111312掃141313, 1414描>11, 12 11, 13 12,13t2013, 14 11,12, 13r2c3頻繁項(xiàng)集支持度 /f13'c41 /候選項(xiàng)集支持度21計(jì)數(shù)1 、1111 1211 、

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論