Share via


資料採礦概念 (Analysis Services - 資料採礦)

資料採礦是從大型資料集探索可付諸行動之資訊的過程。資料採礦使用數學分析衍生存在於資料中的模式和趨勢。傳統資料瀏覽一般無法探索這些模式,因為這些關聯性太複雜或因為沒有太多資料。

這些模式和趨勢可收集在一起,並定義為「資料採礦模型」(Data Mining Model)。採礦模型可套用至特定商務案例,例如:

  • 預測銷售

  • 以特定客戶為目標的郵寄活動

  • 判斷哪些產品可能同時銷售

  • 尋找客戶將產品加入購物車的順序

建立採礦模型是較大型程序的一部份,它包括從詢問資料相關問題與建立模型回答這些問題,到部署該模型到工作環境中的一切細節。可以使用下列 6 個基本步驟來定義這個程序:

  1. 定義問題

  2. 準備資料

  3. 瀏覽資料

  4. 建立模型

  5. 瀏覽及驗證模型

  6. 部署及更新模型

下列圖表描述此程序中每一個步驟之間的關聯性,和 Microsoft SQL Server 中您可用於完成每一個步驟的技巧。

資料採礦處理中的關鍵步驟

雖然在圖表中說明的程序是循環的,但每一個步驟不一定會直接導致下一個步驟。建立資料採礦模型是一個動態與反覆的程序。在瀏覽資料之後,您可能會發現資料不夠用於建立適當的採礦模型,因此您必須尋找更多的資料。或者,您可以建立數個模型,然後發現這些模型並沒有正確回答您定義的問題,因此您必須重新定義問題。在部署模型之後,您必須更新模型,因為有更多的資料可用。程序中的每個步驟可能都必須重複許多次,才能建立良好的模型。

SQL Server 2008 提供一個用於建立和使用資料採礦模型的整合式環境,稱為 Business Intelligence Development Studio。此環境包含資料採礦演算法和工具,讓您輕鬆建立各種專案的完整方案。如需有關使用 BI Development Studio 的詳細資訊,請參閱<使用 Business Intelligence Development Studio 進行開發及實作>。

在您建立資料採礦方案之後,可以使用 SQL Server Management Studio 來維護與瀏覽方案。如需詳細資訊,請參閱<管理資料採礦結構和模型>。

如需如何將 SQL Server 工具套用到商務案例的範例,請參閱<資料採礦基本教學課程>。

定義問題

資料採礦程序中的第一個步驟 (在下列圖表中以反白顯示) 是要明確定義商務問題,並考慮提供問題解答的方式。

資料採礦第一個步驟:定義問題

此步驟包括分析商務需求、定義問題的範圍、定義評估模型的標準,以及定義資料採礦專案的特定目標。這些工作翻譯成下列問題:

  • 您尋找的目標是什麼?您要尋找哪些關聯性類型?

  • 您嘗試解決的問題會反映商務的原則或流程嗎?

  • 您要從資料採礦模型建立預測,或只尋找感興趣的模式和關聯性?

  • 您要嘗試預測的資料集屬性是什麼?

  • 如何與資料行產生關聯?如果有多個資料表,資料表之間如何產生關聯?

  • 資料如何分佈?資料有季節性嗎?資料正確表示商務的流程嗎?

若要回答這些問題,您必須進行一項資料可用性研究,來調查商務使用者對於可用資料的需求。如果資料不支援使用者的需求,您必須重新定義專案。

您也需要考慮如何將模型的結果加入測量商務進度所使用之關鍵效能指標 (KPI)。

準備資料

資料採礦程序中的第個二步驟 (在下列圖表中以反白顯示) 是要合併及清理在定義問題步驟中所識別的資料。

資料採礦第二個步驟:準備資料

資料可能散佈於公司各處並以不同格式儲存,也可能會不一致,例如有不正確或遺漏的項目。例如,資料可能會顯示某客戶在產品上市之前購買該產品,或該客戶定期購物的商店竟然距離她的家 2,000 英里。

資料清理不只是移除不正確的資料,同時也是尋找資料中隱藏的關聯、識別最正確之資料的來源,以及判斷最適合用於分析的資料行。例如,您應該使用送貨日期還是訂貨日期?最佳的銷售影響因素是數量、總價還是折扣價格?個別出現但實際上有強大關聯的不完整資料、錯誤資料以及輸入可能會以您預期之外的方式影響模型的結果。因此,在您開始建立採礦模型之前,應該識別這些問題,並決定修正這些問題的方式。

通常,您使用很大的資料集,而無法識破每一筆交易的破綻。因此,您必須使用某些自動化的表單 (例如,在 Integration Services 中),以瀏覽資料並找出不一致的地方。Microsoft Integration Services 包含完成此步驟所需的所有工具,包括轉換為資料清理與合併自動化。如需詳細資訊,請參閱<Business Intelligence Development Studio 中的 Integration Services>。

請注意,用於資料採礦的資料不需要儲存在線上分析處理 (OLAP) Cube,甚至也不需要儲存在關聯式資料庫中,即使您可以同時將兩者當做資料來源使用也一樣。您可以使用已定義為 Analysis Services 資料來源之資料的任何來源,進行資料採礦。這些可以包含文字檔、Excel 活頁簿,或來自其他外部提供者的資料。如需詳細資訊,請參閱<定義資料來源 (Analysis Services)>。

瀏覽資料

資料採礦程序中的第三個步驟 (在下列圖表中以反白顯示) 是要瀏覽已經準備好的資料。

資料採礦第三個步驟:探索資料

當您建立採礦模型時,您必須了解資料才能做出適當的決策。瀏覽技巧包括計算最小值和最大值、計算平均差和標準差,以及查看資料的散發。例如,您可以會透過檢閱最大值、最小值和平均值來判定資料無法代表您的客戶或商務流程,因此,您必須取得更對稱的資料,或檢閱您期望基礎的假設。標準差和其他散發值可以提供結果之穩定性和正確性的實用資訊。標準差大表示加入更多資料可能有助於改良模型。與標準散發強烈偏差的資料可能會扭曲,或者可能代表真實問題的正確圖片,但是會變成難以讓模型配合資料。

按照您自己對於商務問題的理解瀏覽資料,可以決定資料集是否包含有缺陷的資料,然後想出修正問題的策略,或對於企業典型的行為增加更深層的了解。

BI Development Studio 中的資料來源檢視設計師包含數個可讓您瀏覽資料的工具。如需詳細資訊,請參閱<設計資料來源檢視 (Analysis Services)>或<在資料來源檢視中瀏覽資料 (Analysis Services)>。

同時,當您建立模型時,Analysis Services 會自動建立包含在模型中之資料的統計摘要,讓您可以進行查詢以便用於報表或進一步的分析。如需詳細資訊,請參閱<查詢資料採礦模型 (Analysis Services - 資料採礦)>。

建立模型

資料採礦程序中的第四個步驟 (在下列圖表中以反白顯示) 是建立一或多個採礦模型。您將使用在瀏覽資料步驟中所獲得的知識,來協助定義和建立模型。

資料採礦第四個步驟:建立採礦模型

您可以建立採礦結構以定義您要使用的資料。採礦結構會定義資料的來源,但是在處理資料前,不會包含任何資料。當您處理採礦結構時,Analysis Services 會產生可用於分析的彙總與其他統計資訊。此資訊可根據結構,透過任何採礦模型使用。如需有關採礦結構如何與採礦模型產生關聯的詳細資訊,請參閱<邏輯架構 (Analysis Services – 資料採礦)>。

處理模型之前,資料採礦模型只是一個容器,可指定用於輸入的資料行、您要預測的屬性,以及告知演算法如何處理資料的參數。處理模型也稱為「定型」(Training)。定型指的是將特定數學演算法套用到結構中的資料以擷取模式的程序。您在定型程序中找到的模式取決於選取的定型資料、選擇的演算法,以及設定演算法的方式。SQL Server 2008 包含許多不同的演算法,每個演算法都適合不同類型的工作,而且每個演算法都會建立不同類型的模型。如需 SQL Server 2008 中提供之演算法的清單,請參閱<資料採礦演算法 (Analysis Services - 資料採礦)>。

您也可以使用參數調整每個演算法,而且您可以將篩選套用到定型資料,只使用資料的子集以建立不同的結果。將資料傳遞到模型之後,採礦模型物件就包含可以進行查詢或用於預測的摘要和模型。

您可以使用 BI Development Studio 中的資料採礦精靈,或使用資料採礦延伸模組 (DMX) 語言,定義新的模型。如需有關如何使用資料採礦精靈的詳細資訊,請參閱<資料採礦精靈 (Analysis Services - 資料採礦)>。如需有關如何使用 DMX 的詳細資訊,請參閱<資料採礦延伸模組 (DMX) 參考>。

請記住,每當資料變更時,您必須同時更新採礦結構與採礦模型。當您透過重新處理採礦結構來更新時,Analysis Services 會從來源擷取資料,包括任何新資料 (如果來源是動態更新的),並重新填入採礦結構。如果您擁有以結構為基礎的模型,您可以選擇更新以結構為基礎的模型,也就是說,這些模型會在新資料上重新定型,或者您可以將模型保留原樣。如需詳細資訊,請參閱<處理資料採礦物件>。

瀏覽及驗證模型

資料採礦程序中的第五個步驟 (在下列圖表中以反白顯示) 是瀏覽您所建立的採礦模型並測試其效能。

資料採礦第五個步驟:驗證採礦模型

在您將模型部署到實際執行環境之前,您會想要先測試模型的執行效能。同時,當您建立模型時,通常會建立包含不同組態的多個模型,然後測試所有模型以查看哪個模型會針對您的問題和資料產生最佳的效果。

Analysis Services 提供的工具可協助您將資料分割為訓練資料集與測試資料集,讓您可以針對相同的資料,正確評估所有模型的效能。您會使用訓練資料集來建立模型,並建立預測查詢,使用測試資料集來測試模型的精確度。在 SQL Server 2008 Analysis Services 中,這個資料分割可以在建立採礦結構時自動完成。如需詳細資訊,請參閱<驗證資料採礦模型 (Analysis Services - 資料採礦)>。

您可以在 BI Development Studio 中使用資料採礦設計師的檢視器,來瀏覽演算法所探索的趨勢和模式。如需詳細資訊,請參閱<檢視資料採礦模型>。您也可以使用設計師中的工具 (例如增益圖和分類矩陣),來測試模型建立預測的效能。若要確認模型是否專屬於您的資料,或者模型是否可用於針對一般母體進行推斷,您可以使用稱為「交叉驗證」(Cross-Validation) 的統計技巧,自動建立資料的子集,並對照每個子集測試模型。如需詳細資訊,請參閱<驗證資料採礦模型 (Analysis Services - 資料採礦)>。

如果您在建立模型步驟中所建立的模型沒有一個有好的執行效能,您可能必須要回到程序的上一個步驟,並重新定義問題或重新調查原始資料集內的資料。

部署及更新模型

資料採礦程序中的最後一個步驟 (在下列圖表中以反白顯示) 是將執行效能最好的模型部署到實際執行環境。

資料採礦第六個步驟:部署採礦模型

當採礦模型存在於實際執行環境之後,您可以執行許多工作,視您自己的需要而定。以下是您可以執行的一些工作:

  • 使用模型來建立預測,然後做出商務決策。SQL Server 會提供您可用於建立預測查詢的 DMX 語言,並會提供預測查詢產生器來協助您建立查詢。如需詳細資訊,請參閱<資料採礦延伸模組 (DMX) 參考>。

  • 建立內容查詢以便從模型擷取統計資料、規則或公式。如需詳細資訊,請參閱<查詢資料採礦模型 (Analysis Services - 資料採礦)>。

  • 直接將資料採礦功能內嵌於應用程式中。您可以包括分析管理物件 (AMO),其中包含一組物件,可讓應用程式用於建立、改變、處理以及刪除採礦結構和採礦模型。或者,您可以將 XML for Analysis (XMLA) 訊息直接傳送到 Analysis Services 的執行個體。 如需詳細資訊,請參閱<開發 (Analysis Services - 資料採礦)>。

  • 使用 Integration Services 來建立封裝,其中會使用採礦模型,有智慧地將內送資料分成多個資料表。例如,若資料庫因為潛在客戶而不斷更新,您可以同時使用採礦模型與 Integration Services,將內送資料分成可能購買產品的客戶和可能不購買產品的客戶。如需詳細資訊,請參閱<Integration Services 的一般用途>。

  • 建立可讓使用者直接查詢現有之採礦模型的報表。如需詳細資訊,請參閱<Business Intelligence Development Studio 中的 Reporting Services (SSRS)>。

  • 在檢閱和分析之後更新模型。所有更新都需要您重新處理模型。如需詳細資訊,請參閱<處理結構和模型 (Analysis Services - 資料採礦)>。

  • 動態更新模型,因為會有更多的資料進入組織,而不斷進行變更以增進方案的效能應該是部署策略的一部分。如需詳細資訊,請參閱<管理資料採礦結構和模型>。