原創(chuàng)|行業(yè)資訊|編輯:陳俊吉|2016-08-04 09:44:48.000|閱讀 264 次
概述:在 上一篇文章中,您學(xué)習(xí)了如何在 Cognos中可視化簡單的數(shù)據(jù)挖掘結(jié)果。在本文中,您將學(xué)習(xí)一些高級技巧,例如使用 Cognos 從數(shù)據(jù)挖掘模型中下鉆和提取結(jié)構(gòu)化信息。使用本文的業(yè)務(wù)場景和實例,理解偏差檢測所需的挖掘任務(wù),即識別異常數(shù)據(jù)記錄。學(xué)習(xí)如何使用 IBM InfoSphere? Warehouse 數(shù)據(jù)挖掘發(fā)現(xiàn)這些記錄,并創(chuàng)建交互式報告。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在當(dāng)前的很多 IT 應(yīng)用中,及時發(fā)現(xiàn)可疑行為是一項很重要的任務(wù)。以信用卡事務(wù)為例。如果一個用戶表現(xiàn)出異常的購買行為(例如,平常都是在廉價商店買東西,現(xiàn)在突然購買昂貴的珠寶),那么最好檢查相應(yīng)的事務(wù),以跟蹤欺詐行為。除了檢測欺詐行為或惡意操縱外,偏差還可以用于其他一些場景。人力資源部門使用偏差檢測來發(fā)現(xiàn)異常的雇員或求職者。如果僅憑固定的規(guī)則識別潛在的情況,則這些人可能被忽視。
偏離全局數(shù)據(jù)分布的數(shù)據(jù)記錄稱為離群值(outlier)。離群值處理通常不是一項完全自動化的任務(wù)。相反,數(shù)據(jù)挖掘用于指出有待分析師或?qū)<疫M一步分析的數(shù)據(jù)記錄。然后,析師或?qū)<乙源藶橐罁?jù)決定是否采取行動。因此,一個先進的用戶界面和交互模型是成功處理離群值的前提條件。 很適合完成這項任務(wù)。實際上,可以使用一個類似于本 的 將 InfoSphere Warehouse 數(shù)據(jù)挖掘與 IBM Cognos 報告集成,第 1 部分:InfoSphere Warehouse 與 Cognos 集成架構(gòu)概述 中創(chuàng)建的報告來可視化離群值。但是,要想充分利用 Cognos 顯示離群值的潛力,需要采用一些更高級的技巧。首先,看看如何使用 “穿透鉆取(drill-through)” 來創(chuàng)建交互式 Cognos 報告,以及如何鏈接報告。這將有助于總結(jié)信息,同時允許快速訪問相關(guān)的異常數(shù)據(jù)記錄。其次,學(xué)習(xí)如何從數(shù)據(jù)挖掘模型中提取出附加信息,這些附加信息可幫助專家理解離群值的性質(zhì)。
本文中的實例是一個應(yīng)用程序,該應(yīng)用程序幫助一家銀行的雇員識別行為異常的客戶。這個應(yīng)用程序可用于避免欺詐,或檢測出需要特別關(guān)注的客戶。下一小節(jié)將對偏差檢測作一個概述,并展示如何使用 InfoSphere Warehouse 發(fā)現(xiàn)大型數(shù)據(jù)集中的離群值。隨后的小節(jié)則闡述從挖掘模型中穿透鉆取和提取信息的基礎(chǔ)知識,并展示如何使用這兩種技巧使偏差檢測結(jié)果更容易理解和利用。
偏差檢測是一項在大型數(shù)據(jù)集中發(fā)現(xiàn)異常數(shù)據(jù)記錄的任務(wù)。這些記錄稱為離群值。“異常” 的確切定義還有待討論,但它與應(yīng)用偏差檢測的領(lǐng)域有關(guān)。通常而言,偏差檢測的目標是發(fā)現(xiàn)不符合大多數(shù)數(shù)據(jù)記錄整體統(tǒng)計分布的數(shù)據(jù)記錄。根據(jù)應(yīng)用領(lǐng)域不同,偏差可能是:
相應(yīng)地,偏差檢測可用于不同的任務(wù)。如果您猜測數(shù)據(jù)集包含不正確的數(shù)據(jù),那么可以應(yīng)用偏差檢測進行數(shù)據(jù)清洗,從而發(fā)現(xiàn)數(shù)據(jù)庫中不正確的條目。在第二種情況下,數(shù)據(jù)是正確的,但是反映出某個過程表現(xiàn)出異常的行為。這可用于檢測欺詐,這是偏差檢測的第二個主要應(yīng)用。前面已指出,異常的行為不一定是欺詐。例如,也可能表明新興的模式,比如 “過度使用在線拍賣的老年客戶”。盡早檢測出新興模式有助于公司盡早提供新的產(chǎn)品或服務(wù),從而獲得競爭優(yōu)勢。在財務(wù)部門就可以發(fā)現(xiàn)類似的應(yīng)用。可以使用偏差檢測來發(fā)現(xiàn)有前景的投資,這種投資不符合通常的模式,因而到目前為止還沒有人意識到。在所有這些案例中,必須由分析師來檢查離群值,看看是數(shù)據(jù)是否正確,是否需要采取措施避免欺詐,或者利用還沒有人意識到的機遇。接下來將了解 InfoSphere Warehouse 如何檢測離群值,以及如何對數(shù)據(jù)應(yīng)用偏差檢測。本文剩下的內(nèi)容討論如何在 中交互式地可視化離群值。
近年來產(chǎn)生了很多不同的用于檢測偏差的方法。InfoSphere Warehouse 使用一種特別強大的方法來進行偏差檢測,這種方法基于數(shù)據(jù)集群。集群是一種數(shù)據(jù)挖掘技術(shù),這種技術(shù)根據(jù)數(shù)據(jù)記錄的屬性將相近的數(shù)據(jù)記錄指定到集群中。我們來看看 圖 1。圖中每個點表示一個客戶。在這個簡單的案例中,客戶只以年齡和平均余額來描述。InfoSphere Warehouse 使用一個統(tǒng)計集群算法將在這兩個維上相近的客戶分到集群中。可以看到,有些集群比其他集群更大,更集中(集群 1 相對于集群 3)。InfoSphere Warehouse 結(jié)合一些屬性為每個集群賦予一個 “偏差” 度。這個度越高,則該集群中的記錄越有可能是離群值。
離群值與非離群值之間并沒有明顯的區(qū)別。實際上,用戶必須指定一個閾值,以便界定離群值。偏差度高于這個閾值的所有集群被標記為離群值集群,它們的成員都是離群值。這個閾值可通過兩種方式來設(shè)置。首先,如果檢查離群值的專家有限,那么可以使用具有最高偏差度的集群的數(shù)據(jù)記錄。如果要尋找有投資前景的公司,那么可以先從具有最高偏差度的集群開始,然后在資源允許的情況下,逐漸轉(zhuǎn)向偏差度較低的集群。其次,閾值可以是固定的。一個例子就是警報場景,在此場景中,當(dāng)有新的數(shù)據(jù)記錄分配到具有高于給定閾值的偏差度的集群時,則需要采取行動。InfoSphere Warehouse 同時支持這兩種方式,您只需為每個數(shù)據(jù)記錄賦予一個集群 id 和相應(yīng)的偏差度。您可以過濾記錄,也可以對它們進行排序,從而獲得想要查看或必須檢查的離群值。接下來的小節(jié)將提供一個例子,以逐步演示如何用 InfoSphere Warehouse 發(fā)現(xiàn)離群值,以及如何為各個數(shù)據(jù)記錄賦予偏差度。
接下來的例子對關(guān)于銀行客戶的條目應(yīng)用偏差檢測。圖 2 中顯示了相應(yīng)表中的示例數(shù)據(jù)。表 BANK.BANKCUSTOMERS 是 InfoSphere Warehouse 的示例中附帶的。
為了檢測這個表中的離群值:
BANK.BANKCUSTOMERS
作為源數(shù)據(jù)庫表,并單擊 OK 確認。IDMMX.OUTLIERMODEL
。雙擊該操作符打開屬性,在向?qū)У牡诙摳哪P兔Q。CUSTOMERS_OL
。單擊 Finish。一個 “Table Target” 操作符將被連接到流中。如果想要多次運行這個流,那么可以在 “Table Target” 操作符的屬性中勾選復(fù)選框 “Delete Previous Content”。這個流裝載客戶表,將它傳遞到偏差檢測算法,并將結(jié)果寫到一個新表中(如 圖 3 所示)。在 圖 4 中可以看到具體的結(jié)果。
可以看到,這里有兩個附加列,即 DEV_DEGREE 和 CLUSTER_ID。前一個列表明記錄傾向于離群值的程度。cluster id 是記錄所屬的 “離群值” 集群的 id。可以通過分析 find deviation 操作符內(nèi)部創(chuàng)建的集群模型,提取關(guān)于這些集群的更多信息。(本文還將對此進行詳細討論)。
在本節(jié)中,學(xué)習(xí)如何創(chuàng)建允許交互式查看離群值的 報告。開始時可以使用一個類似于本系列第一篇文章中所用的報告。但是,這次不是一個病人列表(其中有一個關(guān)于哪些病人應(yīng)該進行體檢的指示器),而是一個客戶列表,其中有一個關(guān)于應(yīng)該檢查哪些客戶的指示器,看是否存在欺詐或潛在機會。這種方法適用于有較少數(shù)量客戶的列表,但不適用于有數(shù)千個條目的列表。而且,分析師可能還想看是什么使得一個特定的客戶成為一個 “離群值”。需要更多的信息才能完成這個任務(wù)。因此,讓我們從兩個方面來擴展這個簡單的方法:
接下來的小節(jié)首先展示如何用附加信息擴展離群值。然后,您將創(chuàng)建一個交互式報告,該報告將客戶按職業(yè)分組,并且允許使用 Cognos 的 “穿透鉆取” 特性交互式地選擇一個特定類別中的離群值。
表 CUSTOMER_OL 包含關(guān)于離群值的相關(guān)信息。如前所述,每個記錄被指定到一個集群。“Find Deviations” 操作符在后臺創(chuàng)建一個集群模型,其中存儲關(guān)于這些集群的詳細信息。該信息以 PMML(Predictive Model Markup Language)格式存儲在數(shù)據(jù)庫中。它包含關(guān)于以下方面的信息:
可以使用 InfoSphere Warehouse 附帶的存儲過程將該信息提取到結(jié)果集中,以便 Cognos 進一步處理。這樣的結(jié)果集可以看作是 “視圖”,它們不是顯式地在數(shù)據(jù)庫中創(chuàng)建的,而是由存儲過程動態(tài)地創(chuàng)建的。
如果要提取關(guān)于集群的文本信息,可使用以下命令:
SELECT ID, DESCRIPTION FROM TABLE(IDMMX.DM_GETCLUSTERS((SELECT MODEL FROM IDMMX.CLUSTERMODELS WHERE MODELNAME='IDMMX.OUTLIERMODEL'))) AS CT
這樣可以得到一個包含以下列的表:
可以使用這些結(jié)果集作為視圖或表。惟一要注意的是,DB2 中沒有包括這些存儲過程,它們是由 InfoSphere Warehouse 提供的。我們稍后對此進行討論。圖 5 總結(jié)了從 InfoSphere 提取信息到 Cognos 的兩種方法:使用簡單的數(shù)據(jù)庫視圖/表,或者使用存儲過程從挖掘模型中提取信息。這些存儲過程不僅可以用于集群模型,還可以用于其他挖掘模型。要獲得所有可用的模型提取函數(shù)的列表,請參閱 InfoSphere Warehouse 文檔(見 參考資料)。接下來,我們將展示如何使用 Cognos framework manager 合并這兩種信息。
對于這個報告,Cognos 項目中需要兩個查詢主題,然后通過連接它們獲得每個離群值的文本描述:
首先,需要創(chuàng)建一個 Cognos Framework Manager 項目,該項目連接到 InfoSphere Warehouse 的示例數(shù)據(jù)庫 DWESAMP,并且有前面創(chuàng)建的 BANK.CUSTOMERS_OL 表。本系列的 提供這個步驟的詳細說明。一個很好的做法是在 PresentationView 名稱空間中創(chuàng)建一個查詢主題,這個查詢主題包含必要的數(shù)據(jù)庫中的信息,以便擁有從 SQL 語句創(chuàng)建的查詢主題上的抽象層。這也使得您可以將列名改成更具描述性的文本,還可以添加更多的列。您需要一個離群值標記項,以表明一個記錄是否為離群值。可以根據(jù)偏差度查詢項 DEV_DEGREE 計算出這個標記項。
為了創(chuàng)建報告使用的離群值表查詢主題:
IF ([PresentationView].[OutlierTable].[Deviation factor] > 1000) then (1) else (0)
第二個查詢項是一個表,其中包含關(guān)于集群模型的集群的信息,這個集群模型是在 find deviation 運行期間創(chuàng)建的。可以在 InfoSphere Warehouse Data Mining 中使用用戶定義函數(shù) IDMMX.DM_GETCLUSTERS
提取集群模型的列表描述。該函數(shù)返回一個表,其中包含模型中的集群,以及關(guān)于這個集群中字段分布的簡短文本描述。在 IDMMX.CLUSTERMODELS 表中,集群模型被保存為 CLOBS,另外,該表中還包括一個 “MODELNAME” 列,用于選擇適當(dāng)?shù)哪P汀S脩舳x函數(shù)需要打包到 SELECT
語句中,以供 Gognos 使用。由于 InfoSphere Warehouse Mining 表函數(shù)不是標準的 DB2 函數(shù),所以在創(chuàng)建這個查詢主題之前,需要更改一些 Cognos 選項。
為了從 DB2 表函數(shù)創(chuàng)建集群描述查詢主題,您需要:
SELECT * FROM TABLE(IDMMX.DM_GETCLUSTERS((SELECT MODEL FROM IDMMX.CLUSTERMODELS WHERE MODELNAME='IDMMX.OUTLIERMODEL'))) AS CT
使用存儲過程作為查詢主題輸入有一個好處,那就是不需要在數(shù)據(jù)庫中創(chuàng)建不必要的表或視圖。更重要的是,存儲過程將在報告生成期間執(zhí)行。這使得它可以在報告生成期間動態(tài)地執(zhí)行挖掘計算。本系列后面的文章將更詳細地討論這個專題。
為了創(chuàng)建連接 OutlierTable 表和 OutlierClusters 查詢主題的報告,需要在離群值記錄中的集群 id 與集群表中的集群 id 之間建立一個關(guān)系。
為了在 OutlierTable 與 OutlierClusters 查詢主題之間建立一個關(guān)系,您需要:
您已經(jīng)創(chuàng)建了 報告所需的查詢主題,現(xiàn)在可以將一個包含項目的 PresentationView 的 “OutliersPackage” 部署到 Cognos Content Store。可以像本系列 創(chuàng)建和部署這個包。
“穿透鉆取” 的原始概念是指從聚合值導(dǎo)航到單獨的記錄。這在 OLAP 應(yīng)用中是一項常見的任務(wù)。在 Cognos 中,這個概念被延伸為將報告 “鏈接” 到一起。因此,穿透鉆取的定義類似于 HTML 中的超級鏈接。鏈接報告本身并不是很強大的特性。參數(shù)的使用使穿透鉆取成為真正強大工具。Cognos 中的每個報告可能包含一些參數(shù),這些參數(shù)可用于創(chuàng)建可參數(shù)化的查詢。如果還沒有設(shè)置這些參數(shù),將提示用戶設(shè)置它們。在穿透鉆取定義中,這些參數(shù)可被定義為超級鏈接的一部分(就像在 HTTP GET
請求中一樣)。這些參數(shù)的值可以通過鏈接的上下文獲得。接下來的小節(jié)使用兩個被鏈接的報告說明這一概念。
在本小節(jié)中,創(chuàng)建一個項目,其中包含兩個基于部署的 OutliersPackage 的報告頁面:
將鏈接這兩個報告,以便從主概述頁面穿透鉆取到偏差記錄。
由于概述頁面包含詳細頁面的鏈接,所以先創(chuàng)建它。離群值詳細界面包含被標記為離群值且屬于主報告頁面選定的職業(yè)的客戶記錄。為了創(chuàng)建這種交互,需要添加一個表示要報告的職業(yè)的參數(shù),并在一個記錄過濾器中使用它。另外還需要添加一個過濾條件,以便只返回 Outlier Flag 查詢項為 “1” 的記錄(偏差度超過閾值的所有記錄)。
要創(chuàng)建 “Outlier Details” 報告頁面,遵循以下步驟:
([PresentationView].[OutlierTable].[Outlier flag] = 1) AND ([PresentationView].[OutlierTable].[Profession] = ?Profession?)
OutlierDetails
。
概述頁面包含一個職業(yè)列表,顯示每種職業(yè)的客戶記錄數(shù)量和離群值數(shù)量。記錄數(shù)量將使用 Cognos 聚合函數(shù)計算。
為了創(chuàng)建 OutlierOverview 頁面,您需要:
OutlierOverview
。這個簡單的項目由兩個報告組成。通過使用 “穿透鉆取” 定義(其中包含一個由鏈接的上下文定義的參數(shù))避免需要為每種職業(yè)單獨定義一個鏈接。本系列的后續(xù)文章將展示如何使用穿透鉆取定義完成一些更復(fù)雜事情,比如動態(tài)調(diào)用數(shù)據(jù)挖掘。
在本文中,您學(xué)習(xí)了偏差檢測,以及如何使用 InfoSphere Warehouse 執(zhí)行偏差檢測。偏差檢測是高度交互性的任務(wù),通常需要手動檢查離群值,以查明是否存在欺詐傾向、數(shù)據(jù)錯誤或者潛在的機遇。Cognos 非常適合分析交互式離群值。除了本 的 將 InfoSphere Warehouse 數(shù)據(jù)挖掘與 IBM Cognos 報告集成,第 1 部分:InfoSphere Warehouse 與 Cognos 集成架構(gòu)概述 中使用的簡單技巧之外,您還學(xué)習(xí)了另外兩個技巧。首先,可以使用存儲過程從還沒有包含在記錄表中的挖掘模型提取附加信息。其次,可以使用 “穿透鉆取” 特性鏈接 Cognos 報告,以支持交互式報告。在本系列的后續(xù)文章中,將學(xué)習(xí)如何通過從 Cognos 中動態(tài)地調(diào)用數(shù)據(jù)挖掘,以完成更加復(fù)雜的任務(wù)。
詳情請咨詢!
客服熱線:023-66090381
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn