SQL Server 2005 Data Mining簡介(zt)

簡介  企業均在嘗試分析其數據時都面臨若干問題。通常,並不缺乏數據。事實上,很多企業感覺到他們被數據淹沒了;他們沒有辦法完全利用所有的數據,將其變成信息。爲了處理這方面的問題,開發了數據倉庫技術,以讓企業從異構的數據源獲取大量數據,並將其變成實用信息。
    恰當實現的數據倉庫是具有驚人強大功能的解決方案。公司可以對信息進行分析,並將其加以利用,以進行明智的決策。通過使用數據倉庫,可以爲您提供以下問題的答案:
•哪些產品最受 15-20 歲的女性歡迎?
•特定消費者的訂單前置時間和按時交付的百分比與所有消費者的平均值相比如何?
•病房花在每個病人身上的成本和時間是多少?
•在簽約階段停滯時間超過十天的項目所佔的百分比爲多少?
•如果某個特定的實驗室在某類特定的藥品上投入了較多的資金,臨牀試驗結果是否顯示病人健康狀況好於其他實驗室?
除了這些通常可通過使用分析應用程序得出答案的問題之外,數據倉庫還支持各種數據交付格式。分析應用程序設計爲供分析人員使用,分析人員會對數據進行細分,研究較低級別的細節。報告應用程序會創建書面報告或聯機報告,這些報告供功能要求略低的用戶使用,提供靜態內容,或提供有限的深入挖掘功能。對於業務決策者而言,計分卡是非常強大的功能,可以提供公司關鍵性能指標的概況,使決策者知道其身處何處。
    儘管數據倉庫強大而適用,但其自身有一個侷限:它實質上反映的是過去的情況。由於數據倉庫經常在夜間或按周加載和處理,因此其表示一個時間快照。實時或近似實時的數據倉庫可能實現,且會變得更常見,在最佳的情況下,其數據將仍然表示當前數據和歷史數據。業務決策者和分析人員需要研究此數據,爲了發現因果關係,數據倉庫需要進行一定量的分析。
    不是讓人提出假設,然後據此去找相關數據,而是讓數據倉庫確定關係、預測未來時間、發現劣質數據,並允許採用以前從來不可能的方式對數據進行分析,這是不是更爲有幫助呢?這可以通過使用數據挖掘而實現。通過使用數據挖掘,可以得出諸如以下這樣的問題的答案:
•客戶將購買什麼產品?哪些產品將一起銷售?
•公司如何預測哪些消費者可能會流失?
•市場狀況如何,將會如何發展?
•企業如何對其網站使用模式進行最佳的分析?
•組織如何確定營銷活動是否成功?
•企業如何防止劣質數據進入系統?
•什麼是分析非結構化數據(如無格式文本)的最好技術?
    Microsoft 在 Microsoft® SQL Server™ 2005 中引入了大量新的數據挖掘功能,允許企業給出這些問題和其他問題的答案。本文將詳細討論數據挖掘可以解決的各種問題,並介紹 SQL Server 2005 處理這些問題的方式。本文中包括對典型數據挖掘問題的概述,並對 SQL Server 2005 中可用於解決這些問題的工具和模型進行了介紹。

數據挖掘的承諾
    數據挖掘承諾將使企業決策者和分析人員更爲輕鬆。除了僅預測未來性能外,數據挖掘將幫助標識數據中可能會被忽略的關係,根據各種環境計算特定產品售出的機率或特定消費者可能到別處進行購買的機率,諸如此類。
    Microsoft 數據挖掘工具不僅僅提供傳統數據挖掘功能。以前的數據挖掘功能對數據進行分析,尋找各個元素間以前未知的關係,是典型的“運行後即完成”過程。換句話說,公司運行數據挖掘工具,然後就查看結果。Microsoft 數據挖掘工具不僅僅是完成特定作業的工具,它們還將執行其相關工作,並立即反過來將結果應用到過程中。這意味着數據挖掘模型可能根據特定的標準對消費者進行分組,而分析人員隨後就能立即根據這些新的客戶分組情況細分數據。
    將數據挖掘模型的結果立即提供到分析過程的這個能力表示組織現在可以立即確定如何最佳地對數據進行分析。目前,大部分組織都按照地域對消費者進行劃分,僅包括有限的類似於人口統計的信息,如收入或教育程度等。數據挖掘可能會認爲特定的消費者劃分方式比任何地理界定更爲有意義,例如,喜歡經典音樂和玩拖拉機遊戲的高收入人羣可能更喜歡特定的產品,而不會受其教育程度或地域的影響。一旦建立這個消費羣后,就可以在分析階段使用其對數據進行分析。使用不甚明顯的分組方式分析數據是數據挖掘的最大好處之一。
    可以使用數據挖掘模型的輸出對數據進行分析,這是一個非常強大的功能,但也可以在集成階段使用這些數據。換句話說,在組織將來自整個企業的數據進行合併的過程中,數據挖掘可以根據其他數據確定數據是否有意義。可以在商業智能項目集成期間發現不規則數據,而這意味着所得到的數據倉庫更爲清楚,對其進行分析將會更加準確和有意義。
    數據收集應用程序進一步擴展了數據挖掘,可以應用用於在數據源消除劣質數據的規則。這意味着在數據輸入時,將根據現有數據總體對其進行檢查,以確定其可靠性。可以拒絕可靠性低於一定級別的數據。因此,如果某個 Web 窗體接受用戶信息,而用戶輸入的出生日期爲 2/7/ 1197,則將在其源處拒絕該數據。不過,除了簡單的日期之外,輸入還可以查找出生日期、教育程度、職業和收入的組合,以確定其可靠程度,並決定接受數據還是將其拒絕。
    因此,數據挖掘遠不只是一個運行一次然後進行分析的簡單過程,它已成爲了商業智能 (BI) 應用程序、數據集成、數據分析和報告的整個開發生命週期中不可或缺的部分。


SQL Server 2005 Data Mining
簡介
    Microsoft SQL Server 2005 Data Mining 平臺引入了大量的功能,既能採用傳統方式處理數據挖掘,也能採取新的方式進行數據挖掘工作。就傳統方式而言,數據挖掘可以根據輸入來預測未來的結果,或者嘗試發現以前未識別但類似的組中的數據或簇數據間的關係。
    Microsoft 數據挖掘工具與傳統數據挖掘應用程序有很大的不同。首先,它們支持組織中數據的整個開發生命週期(Microsoft 將其稱爲集成、分析和報告)。此功能使得數據挖掘結果不再僅限於供少數專門的分析人員使用,而將其向整個組織開放了。其次,SQL Server 2005 Data Mining 是開發智能應用程序的平臺,而並非一個獨立應用程序。由於可以方便地從外部訪問數據挖掘模型,因而可以構建智能化的自定義應用程序。而且,該模型具有可擴展性,因此第三方可以添加自定義算法以支持特定的挖掘需求。最後,Microsoft 數據挖掘算法還可以實時運行,允許實時根據挖掘的數據集進行數據驗證。


創建智能應用程序
    創建智能應用程序實際上就是利用數據挖掘的各種優勢,將其應用到整個數據輸入、集成、分析和報告過程中。大部分數據挖掘工具都可以預測未來的結果,幫助確定不同數據元素之間的關係。這些工具中的大部分都針對數據運行,將生成隨後分別解釋的結果。很多數據挖掘工具都是獨立應用程序,專爲預測需求或識別關係而存在,其功能也就僅限於此。
    智能應用程序將獲取數據挖掘的輸出,將其作爲輸入應用到整個流程。使用數據挖掘模型的應用程序的一個例子就是用於接受個人信息的數據輸入表單。應用程序的用戶可以輸入大量數據,如出生日期、性別、教育程度、收入水平、職業,等等。屬性的某些組合並不合乎邏輯;例如,七歲的小孩的職業是醫生且其有高中文憑,這就表示有人在隨便填入數據或者表明此人不具有處理數據輸入表單的能力。大部分應用程序會通過實現複雜而層層嵌套的邏輯來處理此類問題,但實際上,要確定所有此類數據組合是否有效,幾乎是不可能的。
    爲了解決此問題,企業可以使用數據挖掘來查詢現有的數據,據此構建有效數據組合的規則。每個組合都給予一個可靠程度計分。組織然後就可以構建數據輸入程序,使用數據挖掘模型進行實時數據輸入驗證。該模型將根據現有數據總體給輸入計分,並返回輸入的可靠程度。應用程序然後可以根據預先確定的可靠程度閾值來決定是否接受輸入。
    此例說明了使用可以實時運行的數據挖掘引擎的好處:可以編寫能利用數據挖掘的強大功能的應用程序。數據挖掘並非最終結果,它成爲了整個過程的一部分,在集成、分析和報告的每個階段都起到一定的作用。
    數據挖掘可以用在數據集成過程的前端,以驗證輸入,也可以在分析階段使用數據挖掘。數據挖掘提供了分組或簇化值的功能,例如,可以根據關鍵字將類似的消費者或文檔歸入同一個組中。然後可以將這些簇送回到數據倉庫,從而可以使用這些分組執行分析。一旦知道了分組情況並將其送回到分析循環中,分析人員就可以使用它們來採用以前不可能的方式查看數據。
    智能應用程序的一個主要目標就是使得每個人都可以使用數據挖掘模型,而不再是分析人員的專利。過去,數據挖掘一直是具有統計學或操作研究背景的專家的領域。爲支持此類用戶而構建了很多數據挖掘工具,但這些工具並不能方便地與其他應用程序集成。因此,在數據挖掘產品本身之外使用數據挖掘信息的能力非常受限制。不過,通過使用跨整個過程且將其模型和結果對其他應用程序開放的工具,企業可以創建能在任何階段使用數據挖掘模型的智能應用程序。
    平臺採用集中的服務器存儲數據挖掘模型和結果,這是平臺有利於創建智能應用程序的另一方面。這些模型通常具有高度的專用性,且非常機密。將其存儲在服務器上,可以防止其分散到組織外部。所帶來的額外的好處就是,通過爲模型提供共享位置,公司可以爲每個模型保持單一版本,而不會在每個分析人員的桌面上存在多個變體。具有“事實的單一版本”是數據倉庫的目標之一,此概念也可以擴展到數據挖掘,因此創建的模型也具有單一版本,並針對特定業務進行了優化。


SQL Server 2005 數據挖掘功能的優勢
    SQL Server 2005 數據挖掘功能具有優於傳統數據挖掘應用程序的衆多優勢。正如前面所討論的,SQL Server 2005 數據挖掘功能與所有 SQL Server 產品實現了集成,包括 SQL Server、SQL Server Integration Services 和 Analysis Services。SQL Server 數據挖掘工具不是公司運行以生成輸出(稍後將獨立於分析過程的其他部分對其進行分析)的單個應用程序。數據挖掘功能嵌入到整個過程中,可以實時運行,且結果可以發送回集成、分析或報告過程。不過,如果這些功能難於使用,則沒有什麼實際意義。很幸運的是,Microsoft 特別關注工具的易用性。
易於使用
    通過 SQL Server 2005,Microsoft 努力將數據挖掘從博士們的實驗室中搬出來,讓負責設置和運行數據模型的開發人員和數據庫管理員 (DBA)、任何分析人員、決策者或可以使用模型輸出的其他用戶也可以使用數據挖掘,而不需要具有任何專門知識。
    例如,一家使用 SQL Server 2005 早期版本的公司希望創建一個交叉銷售應用程序。交叉銷售會根據人們的購買模式和當前購買的產品向其推薦產品。例如,某個消費者購買了特定女影星主演的三部電影,則該顧客可能對同類電影中該女影星主演的電影更感興趣。另一方面,對科幻小說和恐怖電影感興趣的消費者可能不會對愛情影片的交叉促銷感興趣。
    爲了實現交叉銷售程序,該公司求助於 DBA,而不是分析人員。DBA 使用 SQL Server 2005 新數據挖掘功能設置了一個預測模型,該模型將根據各種因素(包括歷史銷售數據和消費者的個人信息)進行建議。這個已就緒的模型每秒鐘可就此特定的消費者產生一百萬個預測。最終結果:實現新模型後,推薦產品的銷售翻了一番。
簡單而豐富的 API
    SQL Server 2005 中的數據挖掘功能具有一個非常強大卻甚爲簡單的 API,這使得創建智能應用程序非常簡單。利用該 API,無需瞭解每個模型的內部細節及其工作原理,就可從客戶端應用程序調用預測模型。這使得開發人員可以根據分析的數據調用引擎並選擇能提供最佳結果的模型。返回的數據已被標記化,即數字值在一系列屬性中返回。這使得開發人員可以使用簡單數據,而不用面對新的數據格式。
    訪問數據挖掘結果非常簡單,通過使用一種與 SQL 相似的語言即可(稱爲 Data Mining Extensions to SQL 或 DMX)。其語法設計爲非常適合已經瞭解 SQL 的人員使用。例如,DMX 查詢可以與以下所示類似。
  SELECT TOP 25 t.CustomerID  
  FROM CustomerChurnModel
  NATURAL PREDICTION JOIN
  OPENQUERY('CustomerDataSource', 'SELECT * FROM Customers')
  ORDER BY PredictProbability([Churned],True) DESC
可伸縮性
    SQL Server 2005 中最重要的數據挖掘功能就是其處理大型數據集的能力。在很多數據挖掘工具中,分析人員必須創建有效的隨機數據樣本,並對該隨機樣本運行數據挖掘應用程序。儘管生成隨機樣本聽起來非常容易,但統計學家可以提出大量的理由,說明爲什麼生成有效且真正具有隨機性的樣本是非常困難且充滿風險的。
    SQL Server 2005 允許模型對整個數據集運行,從而消除了採樣方面的挑戰。這意味着分析人員不必創建樣本集,算法將在所有數據上有效,從而能提供最爲準確的結果。
SQL Server 2005 數據挖掘算法
SQL Server 2005 中可以使用很多算法(見下表)。

模型

 

 

描述

 

 

決策樹

 

 

決策樹算法將基於培訓集中的值計算輸出的機率。例如,20-30 歲年齡組中每年收入超過 60,000 美元,且有自己的房子的人比沒有自己房子的 15-19 歲年齡組的人更可能需要別人提供整理草坪的服務。以年齡、收入和是否有房子等信息爲基礎,決策樹算法可以根據歷史數據計算某個人需要整理草坪的服務的機率。

 

 

關聯規則

 

 

關聯規則算法將幫助識別各種元素之間的關係。例如,在交叉銷售解決方案中就使用了該算法,因爲它會記錄各個項之間的關係,可以用於預測購買某個產品的人也會有興趣購買何種產品。關聯規則算法可以處理異常大的目錄,經過了包含超過五十萬種商品的目錄的測試。

 

 

Naïve Bayes

 

 

Naïve Bayes 算法用於清楚地顯示針對不同數據元素特定變量中的差異。例如,數據庫中每個消費者的 Household Income(家庭收入)變量都會不同,可以作爲預測未來購買活動的參數使用。此模型在顯示特定組間的差異方面尤爲出色,如那些流失的消費者和那些未流失的消費者。

 

 

順序簇化

 

 

順序簇化算法用於根據以前時間的順序分組或簇化數據。例如,Web 應用程序的用戶經常按照各種路徑瀏覽網站。此算法可以根據瀏覽站點的頁面順序對用戶進行分組,以幫助分析消費者並確定是否某個路徑比其他路徑具有更高的收益。此算法還可以用於進行預測,例如預測用戶可能訪問的下一個頁面。請注意,順序簇化算法的預測能力是許多其他數據挖掘供應商所無法提供的功能。

 

 

時間序列

 

 

時間序列算法用於分析和預測基於時間的數據。銷售額是最常見的使用時間序列算法進行分析和預測的數據。此算法將發現多個數據序列所反映出來的模式,以便企業確定不同的元素對所分析序列的影響。

 

 

神經網絡

 

 

神經網絡是人工智能的核心。它們旨在發現數據中其他算法沒有發現的關係。神經網絡算法一般比其他算法更慢,但它可以發現各種並不直觀的關係。

 

 

文本挖掘

 

 

文本挖掘算法出現在 SQL Server Integration Services 用於分析非結構化的文本數據。利用此算法各個公司可以對非結構化數據進行分析如消費者滿意度調查中的comments”(註釋節。

可擴展性
    SQL Server 2005 包括了大量可以立即使用的算法,而 SQL Server 2005 所使用的模型允許任何供應商向數據挖掘引擎添加新模型。這些模型將與 SQL Server 2005 提供的模型處於同等位置。第三方的算法還可以享有其他功能所帶來的優勢:可以使用 DMX 對其進行調用,且易於集成到集成、分析和報告過程的任何部分中。


SQL Server 2005 Data Mining 與端到端商業智能
數據集成
    集成階段包括從異構源捕獲數據、傳輸數據和將其加載到一個或多個源中。傳統數據挖掘工具在集成階段幾乎沒有任何作用,因爲正是在這個階段捕獲數據,將其準備用於進行挖掘。儘管這個聽起來像先有雞還是先有蛋的問題,Microsoft 對於此階段的處理方法相當直接:捕獲數據,合併數據,挖掘數據,然後將數據挖掘的結果應用到當前和所有將來的數據。而且,數據挖掘算法可以幫助各個公司發現已經存在於數據中的多餘數據,或者在傳統的提取、轉換和加載 (ETL) 過程中生成的多餘數據。
    在集成階段,如果可以接受插補值,則也可以接受模型所提供的缺失值。這些值可能來自前一段時間,也可以預測未來的活動。Microsoft 數據挖掘工具可以從集成階段動態生成數字,而不是僅在集成完成後才能提供,這一點頗具優勢。
數據挖掘工具與 SQL Server Integration Services 實現了集成。這意味着在數據移動和轉換階段,可以根據數據挖掘模型的預測輸出分析和修改數據。例如,可以動態地分析文檔或文本字段,並根據文檔內的關鍵字放入恰當的存儲桶中。
數據分析
    典型的數據挖掘工具將在構建了數據倉庫後生成結果,而這些結果獨立於在數據倉庫上完成的其他分析單獨進行分析。將生成預測或標識關係,但數據挖掘模型的結果通常獨立於數據倉庫中使用的數據。
    Microsoft 工具與整個過程實現了集成。正如可在 SQL Server Integration Services 中使用數據挖掘一樣,在 Analysis Services和 SQL Server 中也可以看到數據挖掘帶來的好處。不管公司選擇使用關係數據還是 OLAP 數據,數據挖掘在分析階段帶來的優勢都十分明顯。得益於通用數據模型 (UDM),才能以透明的方式對關係數據和 OLAP 數據進行分析,而數據挖掘則對此分析起到了促進作用。
    當分析特定數據元素時,如產品之間的關係如何以及如何根據購買模式和網站瀏覽模式對消費者進行分組,各種數據挖掘模型可以確定如何將這些客戶或產品劃分爲對分析有意義的組羣。當把這些組發送回分析過程時,數據挖掘引擎允許分析人員和用戶根據這些簇進行劃分和細化。
報告
    一旦建模完成,創建了正確的模型,數據挖掘的重點就從分析轉到了結果上,而且更重要的是通過將結果在正確的時間送到正確的人手中,以將這些結果應用到工作中。SQL Server 2005 中實現了數據挖掘和報告的集成,可以通過簡單靈活且可伸縮的方式向組織中的任何人提供預測結果。
    通過充分利用 SQL Server 2005 Reporting Services,預測模型的結果通過將報告嵌入 Microsoft SharePoint® Services,可以輕鬆地部署到打印報告、Microsoft Office 文檔或內部網中。例如,一個部門可以方便地看到產品銷售的智能預測,或將最可能購買某個產品的消費者列表分發到呼叫中心。他們甚至可以看到顯示消費者購買或不購買產品的十大原因,從而合理地分配銷售人力。Microsoft 通過以易於理解的方式向用戶報告、提供有意義的數據,可以輕鬆地使用數據挖掘的智能和強大功能。


使用數據挖掘可以解決的問題
    談到數據挖掘可以解決的業務問題時,很多人都會想到購物籃分析或發現數據間的關係,這些在以前都已經廣爲人知了。實際上,很多問題都可以通過數據挖掘得到解決,但要處理這些問題,重要的是要認識到數據挖掘可以適用於集成、分析和報告過程的任意階段。

問題 1:消費者將購買什麼產品?哪些產品會一起銷售?
    最廣爲人知的數據挖掘應用就是傳統的購物籃分析,在此過程中將研究各個產品間的關係。各個公司(特別是零售行業的公司)非常關心哪些產品會一起銷售。知道了這個問題,公司就可以進行促銷,開展交叉銷售。各個公司都在努力識別產品間可能不太明顯的關係,如啤酒與尿布銷售密切相關的經典例子,這個現象的原因在於,很多被太太派到商店購買尿布的男士也會順便在商店中購買啤酒。
    數據挖掘可以幫助公司檢查所有的產品,以確定其他產品與某個產品一起銷售的機率。例如,如果瓶裝銷售花生醬,哪些產品可能與其一起銷售?具體來說,就是每種產品組合銷售的機率是多少?購買花生醬的人購買麪包或薄脆餅乾的機率高嗎?果凍呢?這些可能非常明顯,但購物籃分析應該根據花生醬對所有項進行排序,從而使公司可以確定如何進行營銷和進行產品投放決策。
    通過使用 SQL Server Data Mining,各個公司可以分析關係數據倉庫或 OLAP 數據集中的數據,以發現最常見的產品組合。Microsoft Association Rules 算法將確定一起出現的項,並派生指示相互關係的規則。而且,除了進行簡單的分析之外,公司還可以應用使用 SQL Server Data Mining 創建的模型,以生成實時產品建議,從而在銷售點提供優惠,或在在線購物籃中增加相關產品的銷售。

問題 2:標識將流失的消費者
    企業花費了大量的時間、精力和金錢來吸引消費者。隨着獲得新顧客的成本增加,留住消費者成了各個公司的一個主要問題。在某些行業(如電信行業),客戶經常會流失,或經常不停地更換運營商,註冊以獲得優惠或特價,然後又會很快轉向另一個運營商以獲得其優惠。
    通過標識那些可能會流失的消費者,公司可以更好地決定是否接受這些消費者,或制定相關策略以減少流失,從而提高顧客保有情況。數據挖掘通過分析已流失的消費者和未流失的消費者,並標識可以幫助預測新用戶行爲的特徵,從而可以幫助標識可能要流失的消費者。
    SQL Server Data Mining 包含多種算法,可以根據歷史數據執行流失性分析。這些算法當中的每一種都提供了每個消費者是離開還是留下的概率或可能性。SQL Server Data Mining 提供了若干個簡單的工具,可以方便地確定對於特定的情況,哪種算法和設置能夠生成最爲準確的模型,從而保證組織將獲得最好的結果。一旦公司選擇了最佳模型,就可以使用 DMX 語言和 SQL Server Reporting Services、通過 Web 報告或 SharePoint 門戶來提供最可能流失的客戶的列表,從而將此模型投入實際工作中。

問題 3:市場狀況如何,將會如何發展?
    預測未來的銷售不僅僅是預測未來的收入;很多企業使用預測的銷售量確定人員僱傭、原材料訂購和供應並計劃營銷活動。那些非常強調未來銷售量預測或其他市場活動預測的公司長期以來都使用各種統計方法進行趨勢分析。利用某些模型,還可以對特定經濟因素進行預測。這些模型中的大多數無法創建考慮了其他任意數據序列影響的預測。例如,它們在預測庫存水平時不會考慮產品銷售情況。
    SQL Server Data Mining 中的 Time Series 算法將在考慮業務週期的自然週期性的同時跨多個數據序列研究期間的關係。公司不僅能預測單個商品的結果,還可以瞭解商品銷售與其他因素如何相關,或者銷售模式如何隨時間更改和發展。 

問題 4:分析網站
    網站目前已成爲很多企業不可或缺的一部分。網站扮演着主要營銷工具的角色,讓公司能夠全天候地面對全球的訪問者。監視正常運行時間、可伸縮性和響應能力都非常關鍵,但其他有一些測量值比較難以獲取,但卻能爲了解消費者的習慣提供很大的幫助。此類問題不是簡單的用戶通常瀏覽網站的路徑,而還要涉及到如何對這些用戶進行分組和分析。例如,從主頁開始,然後瀏覽產品和聯繫人頁面的網站訪問者與通過不同網站進入產品頁面,然後訪問服務頁面的訪問者就不一樣。
    數據挖掘使您不僅能夠根據其在網站瀏覽的路徑對網站訪問者進行分組,還能夠根據這些分組對數據進行分析。例如,可以按照用戶組分析銷售情況。可以在用戶組、訂購的產品和網站導航間建立關係。根據用戶的進入位置和其從中進入的網頁,可以對各種營銷活動的效果進行分析,並用於幫助預測未來工作的結果。
    SQL Server Data Mining 提供的 Microsoft Sequence Clustering 算法允許公司根據用戶使用公司網站的情況(而不只是他們訪問哪些頁面)對用戶進行劃分。然後可以將此劃分操作的結果導入到 Analysis Services 數據集中,以進行趨勢分析和歷史分析。然後可以使用 Microsoft Time Series 算法預測這些組的銷售情況或來自這些組的流量,從而提供寶貴的營銷和操作信息,以幫助確定如何組織公司的網站內容,以儘可能提高價值和效率。'www.knowsky.com

問題 5:確定營銷活動是否成功
    一些企業花費了大量的資金開展營銷活動,但很少投入資金進行深入的用戶調查和聚焦組研究,以確定營銷活動的效果。大部分企業直接通過將活動期間的銷售情況與之前一段時間的銷售情況進行對比分析,以猜測特定活動的效果,但這樣做忽略了大量的其他問題,如公司推出的新產品的影響。
    通過使用數據挖掘,各個公司可以在考慮了當前產品投放情況、無活動情況下的預計銷售情況、消費者信息統計方面發生的變化等等的同時,分析營銷活動的影響。企業還可以預測未來營銷活動的成功與否,並據此調整其資金投入。
    SQL Server Data Mining 提供了各種工具,可以幫助公司確定其營銷活動的目標和對其工作進行優化,以獲得最大的效益。通過使用 Microsoft Windows® Clustering 算法,企業可以確定其消費羣的差異與相似之處,並相應地調整其營銷戰略。通過使用 Microsoft Decision Trees 和其他算法,可以預測最可能響應某個活動的消費者,使得公司可以從其營銷投入獲得最大的回報。通過 SQL Server Integration Services,各個公司可以快速方便地將這些模型投入生產,生成郵件列表,這些列表專爲其最大的客戶羣而設計,包含了專門針對這些客戶而定製的營銷信息。

問題 6:劣質數據
    沒有哪個組織具有完全乾淨的數據。構建數據倉庫的數據集市可能是發現劣質數據的最有效辦法,不過,這並非開發數據倉庫技術的原意。數據倉庫發現各種問題,如空值或值缺失、無效日期、格式錯誤的日期、可接受範圍之外的數據以及不一致數據(如某個訂單的貨物在下訂單之前就已經發貨了)。
    談到處理數據質量時,提取、轉換和加載 (ETL) 過程最有發言權。正是在這個過程中(特別是轉換部分),應當對數據進行清理。不過,在此階段清理數據並不會防止劣質數據在將來進入其中。必須修改數據輸入應用程序,以限制數據輸入和防止源處出現錯誤。這是減少創建 ETL 過程所需的工作所帶來的額外好處。
    人們經常將數據挖掘看作最終的結果,但數據挖掘技術是幫助在數據輸入應用程序驗證數據輸入的一個很棒的方法。通過對現有數據進行挖掘,應用程序可以使用可靠程度來確定該數據是否健全。這意味着數據輸入應用程序不會受到試圖驗證輸入的複雜決策樹的重壓。例如,如果某人聲稱其年齡爲十四歲,具有博士學位,其工作爲收款員,則此數據的可靠程度很低,應該在輸入級將其拒絕。能夠使用最終結果的數據挖掘在前端驗證數據輸入是一個強大的功能,可以在第一時間將劣質數據排除在應用程序之外。
    SQL Server Data Mining 允許各個公司在劣質數據影響輸入系統之前將其識別出來,避免降低總體質量和分析能力。不管各個公司需要在輸入點使用 DMX 和 .NET 編程實時驗證數據,還是要在使用 SQL Server Integration Services 加載數據倉庫時將數據管線中多餘的數據篩選掉,SQL Server Data Mining 均可提供在劣質數據影響組織的收益前對數據進行清理的能力。

問題 7:文本分析
    很多應用程序允許輸入無格式文本,而不管是通過網頁還是標準 Windows 應用程序輸入。存儲此數據非常簡單,但對其執行分析要困難很多。雖然有全文索引引擎,但這些工具通常會爲了進行搜索而對文本進行索引;它們不會對數據進行分析,以發現趨勢或根據內容對文檔分類。
    分析無格式文本(或文本挖掘)將獲取文本字段或文檔中的詞,然後提取出關鍵詞。這允許文檔或註釋被簇化或分類。然後可以使用這些文檔的簇進行數據分析,就像分析可以使用的時間和產品信息一樣。例如,可以基於一類將產品安全作爲主要組成內容的文檔執行分析,或者,也可以根據消費者在無格式文本字段中列出的愛好對記錄進行分組。正是具有了這個在文檔和其他形式的無格式文本中查找共同主題的能力,才能夠根據這些文檔的簇進行數據分析。
    SQL Server Data Mining 給企業帶來了強大的功能,可以將其所獲得的大量非結構化數據轉換爲結構化信息,以供進行分析時使用。在 SQL Server Integration Services 中對文本數據進行了轉換後,組織可以將結果加載到 Analysis Services 數據集、挖掘模型甚至 SQL Server Reporting Services 報告中,以仔細研究消費者關心的具體問題。


結束語
    Microsoft 的數據挖掘方法具有革命性。Microsoft 沒有創建用於生成組或預測未來結果的獨立工具,而是創建了一個平臺,該平臺跨越了處理數據的整個過程(即集成、分析和報告)。
    這意味着數據挖掘模型的輸出可以立即應用回數據收集、轉換和分析過程中。可以檢測現有數據集中的不規則數據,而且可以根據現有數據實時地驗證新數據輸入。這樣就使開發人員不必在應用程序代碼中創建複雜的決策樹,以驗證多個數據值的複雜輸入。
    而且,模型輸出還可以立即應用到分析階段。如果數據挖掘模型根據購買模式或導航網站的模式將消費者分爲若干組,這些組將發送到分析循環中,以便使用這些組執行分析,就像這些組開始時就已內置到數據倉庫中一樣。分析人員和其他有相關知識的員工可以通過這些分組對數據進行細分,以發現某個特定的組帶來的收益是否更大。
    Microsoft 還構建了一個安全平臺,在其中,挖掘模型及其輸出均集中存儲在一箇中央位置。模型將不再存儲在難於控制的各個獨立計算機上。此外,具有一個集中的模型可以確保所有分析人員和用戶均使用相同的模型。


Craig Utley 是 KiZAN Technologies LLC 的開發副總裁,他的團隊主要進行商業智能解決方案和企業應用程序設計與開發。他從 Microsoft 最初推出商業智能產品開始就一直使用此類產品,致力於爲美國各家公司提供 BI 和數據倉庫解決方案。他自己寫書,也進行演講,而且是 Microsoft MVP。

本文是與 A23 Consulting 合作完成的。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章