SQL Server 2008數(shù)據(jù)庫中正確的對驗證數(shù)據(jù)挖掘模型
此文章主要向大家講述的是如何正確在SQL Server 2008數(shù)據(jù)庫中正確的對驗證數(shù)據(jù)挖掘模型, 微軟公司的SQL Server 2008數(shù)據(jù)庫主要是將整個數(shù)據(jù)挖掘流程定義為挖掘結(jié)構(gòu)、挖掘模型、挖掘模型查看器。
挖掘準(zhǔn)確性圖表和挖掘模型預(yù)測五個步驟,本文將討論如何在SQL Server 2008中驗證已經(jīng)建好的數(shù)據(jù)挖掘模型。
為什么要對數(shù)據(jù)挖
微軟SQL Server 2008將整個數(shù)據(jù)挖掘流程定義為挖掘結(jié)構(gòu)、挖掘模型、挖掘模型查看器、挖掘準(zhǔn)確性圖表和挖掘模型預(yù)測五個步驟,本文將討論如何在SQL Server 2008中驗證已經(jīng)建好的數(shù)據(jù)挖掘模型。
1. 為什么要對數(shù)據(jù)挖掘模型進(jìn)行驗證
當(dāng)我們建立好一個數(shù)據(jù)挖掘模型時,并不能保證所建模型能夠直接的解決商業(yè)問題,我們要使用多種方法來評估和檢驗數(shù)據(jù)挖掘模型的質(zhì)量和特征。我們可以將將數(shù)據(jù)分為定型集和測試集來評估數(shù)據(jù)挖掘模型。通過將數(shù)據(jù)集分區(qū)為定型集和測試集時,定型集是取大多數(shù)數(shù)據(jù),小部分?jǐn)?shù)據(jù)用于測試。
通過對全部數(shù)據(jù)的整體數(shù)據(jù)抽樣,我們要保證定型集和測試集的相似。通過使用相似的數(shù)據(jù)來進(jìn)行定型和測試,可以更好得驗證數(shù)據(jù)挖掘模型。
驗證數(shù)據(jù)挖掘模型主要是從準(zhǔn)確性、可靠性和有用性這三個方面入手。準(zhǔn)確性是數(shù)據(jù)挖掘模型與所提供數(shù)據(jù)中的屬性的結(jié)果相關(guān)聯(lián)程度的度量值。可靠性是評估數(shù)據(jù)挖掘模型處理不同數(shù)據(jù)集的方法。有用性包括了模型是否提供了有用信息的各種指標(biāo),比如說有些數(shù)據(jù)挖掘模型在數(shù)據(jù)上是成功的,但是實際上沒有意義。
在SQL Server 2008中的挖掘模型驗證方法可以用繪制模型準(zhǔn)確性圖表,挖掘模型的交叉驗證等方法來進(jìn)行模型驗證。
2. 挖掘模型的準(zhǔn)確性圖表
SQL Server 2008中的挖掘模型的準(zhǔn)確性圖表主要有提升圖、利潤圖、散點圖、分類矩陣和交叉驗證報表。
提升圖比較每個模型的預(yù)測的準(zhǔn)確性,可配置為顯示通用預(yù)測的準(zhǔn)確性或特定值預(yù)測的準(zhǔn)確性。提升圖是用來顯示挖掘模型所引起的提升變化的圖形表現(xiàn)形式。數(shù)據(jù)挖掘模型的結(jié)果都是介于隨機(jī)推測模型和精確無誤的預(yù)測模型之間的,與隨機(jī)模型相比,任何提高都可以視為提升。提升圖可以有效地估計例如客戶回復(fù)郵件這類模型的準(zhǔn)確性效果。如圖1所示。
利潤圖是與提升圖包含相同信息的相關(guān)圖表類型,但利潤圖還顯示與使用每個模型相關(guān)聯(lián)的利潤預(yù)計增長。利潤圖中包含一條灰線豎線,用于標(biāo)記目標(biāo)總體的百分比。挖掘圖例會隨著灰色豎線的移動更新并顯示百分比值。利潤圖可以指示若要獲得***利潤,應(yīng)確定預(yù)測為多少幾率的屬性,諸如此類的問題。如圖2所示。
如果模型包含可預(yù)測連續(xù)性的屬性,系統(tǒng)會自動顯示散點圖。所謂散點圖,就是通過圖形對照顯示模型中的實際值和預(yù)測值。X軸表示實際值,Y軸表示預(yù)測值,圖中間的一條直線表示在***預(yù)測的情況下,預(yù)測值和實際值完全匹配。散點圖通過將連續(xù)性的輸入屬性視為獨(dú)立變量,預(yù)測屬性視為依賴變量,圖形顯示了結(jié)果與輸出的緊密程度。如圖3所示。
在分類矩陣中,每個矩陣的行表示模型的預(yù)測值,而列則表示實際值。分類矩陣是通過將所有事例分揀到各類別中創(chuàng)建的。這些類別可以是“假正”、“真正”、“假負(fù)”和“真負(fù)”。通過對每個類別中的所有事例進(jìn)行計數(shù),并在矩陣中顯示總計。
通過對分類矩陣的查看,可以快速查看模型作出正確預(yù)測的頻率。分類矩陣主要用于評估模型所進(jìn)行的預(yù)測是否有效,可以通過已知其預(yù)測值的數(shù)據(jù)集進(jìn)行測試,我們一般使用在創(chuàng)建模型結(jié)構(gòu)時設(shè)定的測試集做測試,通過對測試集得比對,可以快速確定模型預(yù)測預(yù)期值的次數(shù)。
3.交叉驗證
在創(chuàng)建了數(shù)據(jù)挖掘模型后,交叉驗證用來確定模型的有效性。通過交叉驗證,我們可以驗證挖掘模型的可靠性,評估該模型以及統(tǒng)計并標(biāo)識***的模型。
我們通過交叉驗證可以了解挖掘模型對于整個數(shù)據(jù)集的可靠程度,交叉驗證可以將挖掘結(jié)構(gòu)分區(qū)為交叉部分,并針對數(shù)據(jù)的每個交叉部分循環(huán)定型和測試模型。我們可以把數(shù)據(jù)劃分到其中的每個分區(qū),每個分區(qū)將依次用作測試數(shù)據(jù),而其余的數(shù)據(jù)用于為新模型定型。
然后系統(tǒng)會為每個模型生成一組標(biāo)準(zhǔn)準(zhǔn)確性指標(biāo)。通過比較為每個交叉部分生成的模型的指標(biāo),可以清楚地了解挖掘模型對于整個數(shù)據(jù)集的可靠程度。
以上的相關(guān)內(nèi)容就是對在SQL Server 2008中驗證數(shù)據(jù)挖掘模型的介紹,望你能有所收獲。
【編輯推薦】
- 批量修改SQL Server 2005表構(gòu)架很簡單!
- 對SQL Server 2005 BI的描述
- SQL Server 日期操作全接觸,嘻嘻
- SQL Server 易混淆的一些數(shù)據(jù)類型有哪些?
- SQL Server數(shù)據(jù)庫正確獲取漢字字串的拼音聲母