數據挖掘 課件全套 王博岳 第1-9章 數據挖掘緒論-數據挖掘應用案例_第1頁
數據挖掘 課件全套 王博岳 第1-9章 數據挖掘緒論-數據挖掘應用案例_第2頁
數據挖掘 課件全套 王博岳 第1-9章 數據挖掘緒論-數據挖掘應用案例_第3頁
數據挖掘 課件全套 王博岳 第1-9章 數據挖掘緒論-數據挖掘應用案例_第4頁
數據挖掘 課件全套 王博岳 第1-9章 數據挖掘緒論-數據挖掘應用案例_第5頁
已閱讀5頁,還剩573頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章

數據挖掘緒論Contents數據挖掘概述1.1數據獲取1.2數據挖掘的流程1.3本章小結1.4數據存儲-生活中的數據數據源多樣數據存儲-生活中的數據數據的收集和存儲以巨大的速度進行(GB/小時)微信每天發送消息450億條,超過4億次音視頻呼叫。微博內容存量己超過千億Facebook每天發送20多億條消息。Twitter每天產生5800萬條微博YouTube用戶數達到13.25億,每分鐘上傳視頻的總時長達到300小時,每天的視頻播放量達49.5億次,每月的視頻播放總時長達32.5億小時2020年,抖音僅由大學生發布的視頻播放量累計超過300萬億次,分享量27億次2021年我國醫學影像掃描量增長至29.33億次,2022年掃描量進一步增長至31.15億次左右80x增加的數據數據存儲-生活中的數據數據類型數據計算IDC機房冷卻裝置有數據難利用數據分析師發現一條有用信息需要數周的時間因此,大量信息從來沒有被分析過,出現“數據豐富,知識匱乏”現象Totalnewdisk(TB)since1995Numberofanalysts數據鴻溝挖掘?倉儲?1.1.1數據挖掘的定義1.1.1數據挖掘的定義數據挖掘(DataMining)是通過特定算法對大量數據進行處理和分析以發現數據中的模式、趨勢或關聯性的過程數據挖掘技術利用機器學習和統計學方法,從海量、不完整、受噪聲干擾的數據中提取出先前未知的、潛在有用的隱含信息,并將其轉化為可理解的知識數據挖掘也被稱作知識發現1.1.1數據挖掘的定義數據挖掘的過程可以大致分為四個階段:問題分析:了解業務背景和數據來源,分析數據的特點和分布,明確任務目標和需求。數據預處理:數據挖掘中非常重要的一步,涉及數據清洗、數據集成、數據轉換與規范化、數據規約和特征提取等步驟。數據挖掘:整個過程中最核心的部分,研究者需要根據業務需求和數據特點,建模合適的算法模型,并進行模型訓練和參數調優。結果評估:旨在評估數據挖掘結果的準確性和可靠性。在這個階段,需要使用一些評估指標對挖掘結果進行評估。還需要對挖掘結果進行解釋和可視化以幫助業務人員更好地理解挖掘結果。1.1.1數據挖掘的定義數據挖掘技術面臨著新的挑戰和機遇一方面,隨著數據規模急劇增長、數據類型越發豐富,使得傳統計算資源和數據挖掘算法已經難以滿足大數據處理和分析的需求。另一方面,數據挖掘與機器學習、深度學習等技術的結合將為知識發現帶來更大的發展空間。未來,數據挖掘將在各個領域發揮更加重要的作用,為人類社會的發展和進步帶來更多的機遇。1.1.2數據挖掘的應用領域商業領域:在市場營銷中,數據挖掘可以幫助企業識別目標客戶群體,制定個性化的營銷策略。1.1.2數據挖掘的應用領域醫療領域:在疾病診斷中,數據挖掘可以幫助醫生分析患者的醫療記錄和癥狀,提高診斷的準確性和效率。1.1.2數據挖掘的應用領域金融領域:在風險管理中,數據挖掘可以幫助銀行和風投機構評估貸款申請人的信用風險和投資收益。1.1.2數據挖掘的應用領域政府領域:在城市規劃中,數據挖掘可以分析人口、交通、環境等數據,為城市規劃提供科學依據。1.1.3數據挖掘的基本任務數據挖掘的基本任務主要可以分為以下幾類:分類與預測:根據已知的數據特征,將數據項劃分到預先定義的類別中。聚類分析:將數據集中的數據項按照其相似性進行分組的過程。聚類的目標是在沒有預先定義類別的情況下,發現數據中的內在結構和關系。關聯規則挖掘:主要用于發現數據項之間的有趣關系。序列模式挖掘:發現數據項之間的時間序列關系的過程。異常檢測:數據挖掘中用于發現與大多數數據項顯著不同的數據項的過程。這些異常數據項可能表示錯誤、欺詐或其他特殊情況。1.1.4數據挖掘學習資源學術資源:CCF-A類通常包括國際上公認的頂級會議和頂級期刊CCF-A推薦會議:ACMConferenceonManagementofData(SIGMOD)ACMSIGKDDConferenceonKnowledgeDiscoveryandDataMining(KDD)IEEEInternationalConferenceonDataMining(ICDM)InternationalConferenceonDataEngineering(ICDE)InternationalConferenceonMachineLearning(ICML)InternationalConferenceonVeryLargeDataBases(VLDB)InternationalJointConferenceonArtificialIntelligence(IJCAI)AssociationfortheAdvancementofArtificialIntelligence(AAAI)1.1.4數據挖掘學習資源CCF-A推薦期刊:JournalofMachineLearningResearch(JMLR)IEEETransactionsonKnowledgeandDataEngineering(TKDE)ACMTransactionsonDatabaseSystems(TODS)ACMTransactionsonInformationSystems(TOIS)TheVLDBJournal1.1.4數據挖掘學習資源XindongWuZhihuaZhouJiaweiHanJianPeiQiangYangChih-JenLinHangLiChangshuiZhang1.1.4數據挖掘學習資源數據挖掘比賽資源阿里天池:/Kaggle:/滴滴:/1.1.4數據挖掘學習資源數據集下載資源UCI數據集:/CMU數據集:/datasets//afs//project/theo-20/www/data/時序數據集:/~reinsel/bjr-data/金融數據集:http://lisp.vse.cz/pkdd99/Challenge/chall.htm癌癥基因數據集:/cgi-bin/cancer/datasets.cgi綜合數據集:/~roweis/data.html數據集列表:/datasets/index.html美國政府開放數據:中國地方政府開放數據:北京/上海1.1.4數據挖掘學習資源在線學習平臺Coursera:提供眾多數據挖掘和數據科學相關的在線課程,由世界頂尖大學和機構講授。/edX:提供包括數據挖掘在內的數據科學課程,同樣來自世界著名大學。/Udemy:提供廣泛的實踐導向的數據挖掘課程,適合自學者。/1.1.5數據挖掘的常用工具Python語言易用性、靈活性、擁有大量的第三方庫和工具包廣泛用于數據分析和數據挖掘。R語言擁有大量的統計和數據挖掘包在生物信息學、金融分析等領域廣泛應用Weka開源的數據挖掘工具豐富的數據挖掘算法和可視化界面Weka易于使用,適用于初學者和專業用戶1.1.5數據挖掘的常用工具RapidMiner支持數據挖掘的整個流程適用于各種規模和復雜度的數據挖掘項目Orange支持數據預處理、聚類分析、分類等多種數據挖掘任務提供數據可視化、交互式數據探索等功能適用于數據分析和機器學習的初學者和專業用戶IBMSPSS綜合性的統計分析和數據挖掘軟件直觀的圖形用戶界面適用于研究人員、數據分析師、市場研究人員、政策制定者等專業人士1.1.6數據挖掘的主要算法數據挖掘十大經典算法決策樹分類器C4.5(分類算法):C4.5算法可以處理數值屬性和缺失值,并且能夠從數據中生成規則。此外,C4.5還支持不完整的數據集,并且能夠處理連續屬性。k-均值算法(聚類算法):k-均值(k-Means)算法是一種聚類算法,用于將數據劃分為k個簇。k-Means簡單高效,但需要預先指定k值,并且對初始簇中心的選擇敏感。支持向量機(分類算法):支持向量機(SupportVectorMachine,SVM)是一種強大的分類算法,它通過找到數據點之間的最大邊界來區分不同的類別。SVM在小樣本情況下表現良好,并且可以應用于回歸問題。1.1.6數據挖掘的主要算法Apriori算法(頻繁模式分析算法):Apriori算法是一種頻繁項集挖掘算法,主要用于關聯規則學習。它基于先驗原則,即如果一個項集頻繁出現,那么它的所有子集也必然頻繁出現。最大期望估計算法(聚類算法):期望最大化(Expectation-Maximization)算法是一種用于估計概率模型參數的迭代算法。它特別適用于存在缺失數據的情況。PageRank算法(排序算法):PageRank是由Google創始人開發的算法,用于網頁排名。它基于網頁之間的鏈接關系,認為一個網頁的重要性由指向它的網頁的數量和質量決定。PageRank算法通過迭代計算每個網頁的排名值,直到收斂。AdaBoost算法(集成弱分類器):AdaBoost是一種集成學習方法,通過結合多個弱分類器來構建一個強分類器。1.1.6數據挖掘的主要算法k-近鄰分類算法(分類算法):k-近鄰(k-NearestNeighbors)分類算法是一種基于實例的學習算法,它通過查找測試數據點的k個最近鄰居來進行分類或回歸。kNN簡單直觀,但計算成本較高,因為需要對每個測試數據點進行距離計算。樸素貝葉斯算法(分類算法):樸素貝葉斯(NaiveBayes)是一種基于貝葉斯定理的分類算法,它假設所有特征都是相互獨立的。分類與回歸樹算法(聚類算法):分類與回歸樹(ClassificationandRegressionTrees,CART)算法是一種基于決策樹的分類算法,既可以用于分類也可以用于回歸。CART可以處理數值和類別屬性,并且可以生成易于理解的模型。Contents數據挖掘概述1.1數據獲取1.2數據挖掘的流程1.3本章小結1.41.2數據獲取端到端機器學習的大部分時間都花費在數據準備工作之上,包括獲取、清洗、分析、可視化和特征工程等。數據獲取不僅是簡單地收集數據,而是一個綜合考量數據源選擇、數據采集方法、數據質量保證以及合規性等多方面因素的復雜過程。Sections1.2.1數據類型和來源1.2.2數據采集技術1.2.3數據標注技術1.2.4數據存儲與管理1.2.5數據質量與評估1.2.1數據類型與來源數據類型可以根據數據的結構化程度分為結構化數據非結構化數據半結構化數據idnamegender1張三female2王二male3李四female結構化數據半結構化數據非結構化數據1.2.1數據類型與來源數據來源往往是多種多樣的,包括但不限于以下幾類:內部數據源:企業或組織內部生成的數據。公共數據集:由政府、非營利組織或研究機構發布的數據集。互聯網數據:從網站、社交媒體平臺和其他在線資源獲取的數據。傳感器數據:通過各種傳感器和監測設備收集的數據。商業數據:咨詢或數據服務公司發布的數據。眾包數據:通過大量用戶的參與和貢獻收集的數據。網絡爬蟲:使用自動化工具從互聯網上抓取和提取數據。Sections1.2.1數據類型和來源1.2.2數據采集技術1.2.3數據標注技術1.2.4數據存儲與管理1.2.5數據質量與評估數據采集旨在找到可用于訓練模型的數據集數據發現:用戶能夠找到、理解并訪問相關數據集的過程。數據增強:通過在原始數據集上應用一系列變換,增加數據的多樣性。數據生成:使用人工構建或自動化構建方法構建額外的數據集。1.2.2數據采集技術數據發現通常包括以下幾個步驟:需求分析:與利益相關者進行深入溝通,以明確數據需求和業務目標。數據檢索:從更廣泛的數據資源中尋找特定的數據集或信息。精確地定位到數據源。數據預覽:查看數據樣本以評估數據的質量和相關性。數據訪問:下載數據、使用API調用或通過數據集成工具將數據導入到分析平臺。數據發現需求分析需求分析的核心是與利益相關者進行深入溝通,以明確他們的數據需求和業務目標,理解用戶對數據的期望和使用場景。這一階段的目的是確保數據發現工作與數據挖掘目標保持一致,并為后續步驟提供清晰的指導。數據發現數據發現數據檢索互聯網分布大量結構化數據,基于Web的檢索方法自動提取有用的數據集例如,WebTables提取所有維基百科信息,GoogleDatasetSearch服務能夠搜索Web上數以千計的數據存儲庫。GoogleImageSearchDragandDrop數據檢索和數據共享之間存在密切關系數據共享平臺:GitHub、Datahub、Kaggle、GoogleFusion這些平臺為用戶提供了一個集中、整理和共享數據的平臺,用戶可以直接獲取并開始分析和應用數據。數據發現數據發現數據預覽數據樣本查看評估數據的質量和相關性樣本記錄檢查檢查數據的結構和字段目的確保數據集滿足分析需求評估數據的完整性、準確性和一致性識別缺失值、異常值和重復記錄數據發現數據訪問數據訪問關鍵考慮因素數據安全性與合規性處理數據的版權和隱私問題存儲格式與轉換需求確保數據可以被分析工具有效處理數據采集旨在找到可用于訓練模型的數據集,主要包括三種技術數據發現:用戶能夠找到、理解并訪問相關數據集的過程。數據增強:通過在原始數據集上應用一系列變換,增加數據的多樣性。數據生成:使用人工構建或自動化構建方法構建額外的數據集。1.2.2數據采集技術常見數據增強方法:幾何變換翻轉、旋轉、縮放、裁剪等操作顏色變換調整圖像亮度、對比度、飽和度等屬性噪聲注入添加高斯噪聲、椒鹽噪聲等Mixup和CutMix通過線性插值混合樣本或部分樣本生成新數據點推導潛在語義利用外部工具給數據增加細粒度標簽或Caption數據集成整合多個來源或變種的數據,擴展和豐富數據集數據增強數據增強圖1.幾何變換圖4.顏色變換圖3.Mix圖2.噪聲注入數據采集旨在找到可用于訓練模型的數據集數據發現:用戶能夠找到、理解并訪問相關數據集的過程。數據增強:通過在原始數據集上應用一系列變換,增加數據的多樣性。數據生成:使用人工構建或自動化構建方法構建額外的數據集。1.2.2數據采集技術數據生成數據生成方法人工構建眾包:通過收集和預處理數據生成新數據集數據收集:在眾包平臺發布任務,招募志愿者完成數據收集數據預處理:管理、解析、連接數據集等操作自動化構建數據合成:利用算法生成新的合成數據數據生成自動化合成數據和標簽:低成本和靈活性

生成對抗網絡(GenerativeAdversarialNetworks,

GANs)面向特定應用程序的自動化生成技術GANs旨在訓練兩個相互競爭的神經網絡:生成網絡和判別網絡生成網絡學習從潛在空間映射到數據分布,判別網絡從生成網絡產生的候選者中區分真實分布MEDGAN基于真實患者記錄信息生成具有高維離散變量特征的合成患者記錄數據生成面向特定應用的生成技術合成圖像的自動生成合成文本數據的自動生成使用人類定義的策略對原始數據進行變換自動合成的新數據Sections1.2.1數據類型和來源1.2.2數據采集技術1.2.3數據標注技術1.2.4數據存儲與管理1.2.5數據質量與評估1.2.3數據標注技術數據標注的目的在于標記單個示例,主要包括:利用現有標簽:利用任何已經存在的標簽基于眾包技術:使用眾包技術標記單個示例弱監督學習方法:在較低成本的前提下生成弱標簽利用現有標簽少量標注數據和大量未標注數據分類算法:模型為每個樣本返回一個或多個潛在的類別標簽。回歸算法:模型為每個樣本返回對應某個類別的概率值。基于圖標簽傳播的算法:從有限標記示例數據集開始,在圖結構中基于示例的相似性推斷剩余示例的標簽。預測結果分類模型Label1Label2Label3回歸模型…0.90.8DogCat樣本數據基于眾包技術眾包標注方法定義標注說明提供詳細的標注任務說明任務分發通過網絡平臺將任務分發給標注工人數據標注員數據標注發布者客戶端人工質檢員客戶端機器質檢員客戶端基于眾包技術主動學習定義選擇最有益于模型訓練的數據樣本的策略工作流程選擇數據樣本分發給眾包工人進行標注弱監督學習方法背景需要大量數據標注,但人工成本高昂定義通過多種弱監督信號滿足數據標注任務需求Snorkel結合多種弱監督信號,生成更準確的標簽Sections1.2.1數據類型和來源1.2.2數據采集技術1.2.3數據標注技術1.2.4數據存儲與管理1.2.5數據質量與評估1.2.4數據存儲與管理數據備份創建數據副本。數據安全保護數據免受未授權訪問、數據泄露、篡改和破壞的一系列措施。數據調用從存儲介質或數據倉庫中檢索特定數據或信息。數據備份備份類型本地備份遠程備份云存儲備份策略的重要性確保數據在災難性事件中的保護與恢復防范數據丟失和損壞的風險數據安全加密技術保護數據在存儲和傳輸中的安全性訪問控制限制對敏感數據的訪問權限網絡安全措施防止黑客攻擊和病毒感染數據調用性能優化和查詢優化:高效的數據存儲和索引策略快速響應用戶的查詢請求實時數據處理ApacheKafka、ApacheFlink等數據安全和隱私保護確保數據在調用過程中的安全性和隱私保護集成和自動化與其他系統集成,實現數據的獲取和整合提高數據調用系統的效率和自動化程度Sections1.2.1數據類型和來源1.2.2數據采集技術1.2.3數據標注技術1.2.4數據存儲與管理1.2.5數據質量與評估1.2.5數據質量評估從數據質量維度進行數據質量評估主要涉及準確性(Accuracy)數據是否正確反映了現實世界的事實。完整性(Completeness)數據集是否包含了所有必需的數據項。一致性(Consistency)數據在不同時間、空間和系統中的一致性。及時性(Timeliness)數據從產生到可用的時間。可比性(Comparability)數據在不同情況下的可比性。適用性(Relevance)數據是否滿足用戶的需求。可獲得性(Accessibility)用戶獲取數據的難易程度。經濟性(Cost-Effectiveness)數據的生產成本與效益之比。Contents數據挖掘概述1.1數據獲取1.2數據挖掘的流程1.3本章小結1.41.3數據挖掘的流程數據挖掘是一個復雜且系統的過程,包括:業務理解與問題定義數據獲取與預處理數據挖掘結果分析與應用(可視化)1.3.1業務理解與問題定義在數據挖掘的過程中,業務理解與問題定義是第一步。研究者需要與業務人員密切合作,深入了解業務需求,明確數據挖掘所解決的問題。包括:業務環境業務流程業務數據1.3.2數據獲取與預處理數據的質量和完整性直接影響到后續分析的準確性和效果。主要需要注意:數據來源數據清洗和預處理數據探索性分析1.3.3數據挖掘數據挖掘是整個流程中的核心環節根據數據類型和問題類型來選擇合適的模型分類模型回歸模型考慮數據特征確定編碼方式確定數據處理方式1.3.3數據挖掘使用獨立的測試數據集對模型進行評估確保評估結果的客觀性和準確性注意避免過擬合和欠擬合問題:過擬合:模型在訓練數據上表現過好,但在測試數據上表現不佳欠擬合:模型在訓練數據和測試數據上的表現都不佳1.3.4結果分析與應用(可視化)結果分析根據業務需求和問題背景,對模型的輸出結果進行解釋和闡述揭示數據背后的規律和趨勢結果可視化從不同維度分析結果變化或趨勢快速定位數據挖掘結果體現的核心問題結果應用將模型應用于實際業務場景將模型的輸出結果與實際業務需求相結合Contents數據挖掘概述1.1數據獲取1.2數據挖掘的流程1.3本章小結1.4本章小結本章首先定義了數據挖掘的基本概念。強調了數據挖掘在現代決策過程中的重要性,尤其是在處理和分析大數據方面。接著,探討了數據挖掘的基本任務。每個任務都有其獨特的目標和應用場景,它們共同構成了數據挖掘的核心。通過這些任務,數據挖掘能夠幫助我們從數據中發現知識,支持更加明智的決策。討論了數據挖掘的廣泛應用領域。這些應用展示了數據挖掘如何跨越不同行業,為各種問題提供解決方案。最后,詳細介紹了數據挖掘的標準流程。每個步驟都是數據挖掘成功實施的關鍵,需要仔細考慮和執行。ThankYou!數據挖掘中的預處理Contents數據挖掘過程概述01數據準備02數據預處理03數據挖掘的對象(1)關系型數據庫、事務型數據庫、面向對象的數據庫;(2)數據倉庫/多維數據庫;(3)空間數據(如地圖信息)(4)工程數據(如建筑、集成電路的信息)(5)文本和多媒體數據(如文本、圖象、音頻、視頻數據)(6)時間相關的數據(如歷史數據或股票交換數據)(7)萬維網(如半結構化的HTML,結構化的XML以及其他網絡信息)數據挖掘的步驟(1)數據清理(消除噪音或不一致數據,補缺);(2)數據集成(多種數據源可以組合在一起);(3)數據選擇(從數據庫中提取相關的數據);(4)數據變換(變換成適合挖掘的形式);(5)數據挖掘(使用智能方法提取數據模式);(6)模式評估(識別提供知識的真正有趣模式);(7)知識表示(可視化和知識表示技術)。Contents數據挖掘過程概述01數據準備02數據預處理03數據準備現實世界的數據是不完整的(有些感興趣的屬性缺少屬性值,或僅包含聚集數據),含噪音的(包含錯誤,或存在偏離期望的異常值),不一致的(例如,用于商品分類的部門編碼存在差異)。需要數據清理、數據集成、數據選擇、數據變換等技術對數據進行處理。

數據準備——維歸約/特征提取決策樹歸約(1)決策樹歸約構造一個類似于流程圖的結構:其每個非葉子結點表示一個屬性上的測試,每個分枝對應于測試的一個輸出;每個葉子結點表示一個決策類。(2)在每個結點,算法選擇“當前對分類最有幫助”的屬性,出現在樹中的屬性形成歸約后的屬性子集。數據準備——維歸約/特征提取粗糙集歸約(1)粗糙集理論在數學意義上描述了知識的不確定性,它的特點是把用于分類的知識嵌入集合內,使分類與知識聯系在一起。(2)知識的粒度、不可分辨關系、上近似、下近似、邊界等概念見下圖。數據準備——維歸約/特征提取粗糙集歸約(3)令Q代表屬性的集合。q∈Q是一個屬性,如果IND(Q?q)=IND(Q),則q在S中不是獨立的;否則稱q在S中是獨立的。(4)若集合滿足IND(R)=IND(Q)且R中的每一個屬性都是獨立的,則R被稱為Q的一個“約簡”,記作R=RED(Q)。(5)約簡可以通過刪除冗余的(不獨立的)屬性而獲得,約簡包含的屬性即為“對分類有幫助”的屬性。數據準備——數據變換歸一化與模糊化有限區間的歸一化:無限區間的歸一化:模糊隸屬度:數據準備——數據變換核函數(1)核函數的基本思想是將在低維特征向量線性不可分的數據映射到線性可分的高維特征空間中去。(2)映射可以是顯式的,也可以是隱式的。顯式映射即找到一個映射關系f,使高維空間的特征向量f(x)可以被直接計算出來。(3)隱式映射,即引入一個核函數進行整體處理,就避免了對的直接求f(x)的計算困難。核函數即某高維特征空間中向量的內積,是核矩陣中的一個元素。(4)并不是所有的實值函數f(x)都可以作為空間映射的核函數,只有f(x)是某一特征空間的內積時,即符合Mercer條件,它才能成為核函數。數據準備——數據變換核函數多項式函數:

高斯(RBF)函數:

多層感知機函數:低維空間向量映射到高維空間向量舉例:

數據準備——數據壓縮離散化離散化的用途:(1)適應某些僅接受離散值的算法;(2)減小數據的尺度。離散化的方法包括幾下幾種。(1)等距分割;(2)聚類分割;(3)直方圖分割;(4)基于熵的分割;(5)基于自然屬性的分割。數據準備——數據壓縮回歸回歸和對數線性模型可以用來近似給定的數據。在線性回歸中,用一條直線來模擬數據的生成規則。多元回歸是線性回歸的擴展,涉及多個預測變量。在多項式回歸中,通過對變量進行變換,可以將非線性模型轉換成線性的,然后用最小平方和法求解。數據準備——數據壓縮回歸利用線性回歸可以為連續取值的函數建模。廣義線性模型則可以用于對離散取值變量進行回歸建模。在廣義線性模型中,因變量Y的變化速率是Y均值的一個函數;這一點與線性回歸不同。常見的廣義線性模型有:對數回歸和泊松回歸。對數回歸模型是利用一些事件發生的概率作為自變量所建立的線性回歸模型。泊松回歸模型主要是描述數據出現次數的模型,因為它們常常表現為泊松分布。數據準備——數據壓縮主成分分析(PCA)PCA算法搜索c個最能代表數據的k-維正交向量;這里c

k。這樣,原來的數據投影到一個較小的空間,導致數據壓縮。步驟如下:(1)對輸入數據歸一化,使得每個屬性都落入相同的區間。(2)PCA計算c個規范正交向量,作為歸一化輸入數據的基。這些是單位向量,每一個都垂直于另一個:稱為主成分。輸入數據是主要成分的線性組合。(3)對主成分按“意義”或強度降序排列,選擇部分主成分充當數據的一組新坐標軸。

數據準備——數據壓縮離散小波變換(DWT)離散小波變換是一種線性信號處理技術。該技術方法可以將一個數據向量轉換為另一個數據向量(為小波相關系數);且兩個向量具有相同長度。可以舍棄轉換后的數據向量中的一些小波相關系數。保留所有大于用戶指定閾值的小波系數,而將其它小波系數置為0,以幫助提高數據處理的運算效率。這一技術方法可以在保留數據主要特征情況下除去數據中的噪聲,因此該方法可以有效地進行數據清洗。給定一組小波相關系數,利用離散小波變換的逆運算還可以近似恢復原來的數據。Contents數據挖掘過程概述01數據準備02數據預處理03數據預處理什么是數據預處理?數據挖掘的前提:真實世界中的數據來源復雜、體積巨大,往往難以避免地存在缺失、噪聲、不一致等問題。為了提高數據挖掘的質量,產生了數據預處理技術。數據和特征決定了機器學習的上限,而所選模型和算法只是去逼近這個上限。數據預處理為什么做數據預處理?通過特征提取,我們能得到未經處理的特征,這時的特征可能有以下問題:不屬于同一量綱:即特征的規格不一樣,不能夠放在一起比較。信息冗余:對于某些定量特征,其包含的有效信息為區間劃分,例如學習成績,假若只關心“及格”或不“及格”,那么需要將定量的考分,轉換成“1”和“0”表示及格和未及格定性特征不能直接使用:某些機器學習算法和模型只能接受定量特征的輸入,那么需要將定性特征轉換為定量特征。存在缺失值:缺失值需要補充。信息利用率低:不同的機器學習算法和模型對數據中信息的利用是不同的。當數據的維數過高時還會存在所謂的“維數災難(Curseofdimensionality)”問題,過高的維度不僅增加了計算量,反而可能會降低算法的效果。數據預處理常見數據預處理方法數據清洗處理數據的某些紀錄值缺失,平滑數據中的噪聲、發現異常值,改正不一致等。數據融合將不同來源的、異質的數據融合到一起。良好的數據融合可以減少數據中的冗余和不一致性,進而提升后續步驟的精度和速度。數據轉換通過平滑聚集,數據概化,規范化等方式將數據轉換成適用于數據挖掘的形式。數據降維將高維度數據化為低維度數據,仍保持原數據的大部分信息,使數據挖掘結果與降維前結果相同或幾乎相同。數據預處理——數據清洗缺失值處理缺失值在實際數據中是不可避免的問題,對于不同的數據場景應該采取不同的策略,首先應該判斷缺失值的分布情況:如果缺失值極少且這個維度信息不重要,一般刪除它們對于整體數據情況影響不大;如果缺失值較多或這個維度的信息還很重要的時候,直接刪除會對后面的算法跑的結果造成不好的影響。數據預處理——數據清洗缺失值處理我們常用的方法有以下幾種:直接刪除——適合缺失值數量較小,并且是隨機出現的,刪除它們對整體數據影響不大的情況;使用一個全局常量填充——譬如將缺失值用“Unknown”等填充,但是效果不一定好,因為算法可能會把它識別為一個新的類別,一般很少用;使用均值或中位數代替:

優點:不會減少樣本信息,處理簡單。缺點:當缺失數據不是隨機數據時會產生偏差,對于正常分布的數據

可以使用均值代替,如果數據是傾斜的,使用中位數可能更好。數據預處理——數據清洗缺失值處理插補法

1)隨機插補法——從總體中隨機抽取某個樣本代替缺失樣本

2)多重插補法——通過變量之間的關系對缺失數據進行預測,例如利用蒙特卡洛方法

生成多個完整的數據集,在對這些數據集進行分析,最后對分析結果進行匯總處理

3)熱平臺插補——指在非缺失數據集中找到一個與缺失值所在樣本相似的樣本(匹配

樣本)利用其中的觀測值對缺失值進行插補。

4)拉格朗日差值法和牛頓插值法建模法——可以用回歸、使用貝葉斯形式化方法的基于推理的工具或決策樹歸納確定。例如,利用數據集中其他數據的屬性,可以構造一棵判定樹,來預測缺失值的值。

以上方法各有優缺點,具體情況要根據實際數據分分布情況、傾斜程度、缺失值所占比例等等來選擇方法。一般而言,建模法是比較常用的方法,它根據已有的值來預測缺失值,準確率更高。數據預處理——數據清洗異常值處理異常值我們通常也稱為“離群點”(outlier),即在樣本空間中,與其他樣本點的一般行為或特征不一致的點。一般可能有如下產生原因:計算的誤差或者操作的錯誤所致,比如:某人的年齡

-999

歲,這就是明顯由誤操作所導致的離群點;數據本身的可變性或彈性所致,比如:一個公司中

CEO

的工資肯定是明顯高于其他普通員工的工資,于是

CEO

變成為了由于數據本身可變性所導致的離群點。注意:離群點不一定是無用數據,它也許正是用戶感興趣的,比如在欺詐檢測領域,那些與正常數據行為不一致的離群點,往往預示著欺詐行為,因此成為執法者所關注的。數據預處理——數據清洗異常值處理常見異常值檢測方法:基于統計分布的離群點檢測

這類檢測方法假設樣本空間中所有數據符合某個分布或者數據模型,然后根據模型采用不和諧校驗(discordancytest)識別離群點。例如:1)3?原則如果數據服從正態分布,在3?原則下,異常值為一組測定值中與平均值的偏差超過3倍標準差的值。如果數據服從正態分布,距離平均值3?之外的值出現的概率為P(|x-u|>3?)<=0.003,屬于極個別的小概率事件。如果數據不服從正態分布,也可以用遠離平均值的多少倍標準差來描述。2)箱型圖分析

箱型圖提供了識別異常值的一個標準:如果一個值小于QL-1.5IQR或大于QU-1.5IQR的值,則被稱為異常值。QL為下四分位數,表示全部觀察值中有四分之一的數據取值比它小;QU為上四分位數,表示全部觀察值中有四分之一的數據取值比它大;IQR為四分位數間距,是上四分位數QU與下四分位數QL的差值,包含了全部觀察值的一半。箱型圖判斷異常值的方法以四分位數和四分位距為基礎,四分位數具有魯棒性:25%的數據可以變得任意遠并且不會干擾四分位數,所以異常值不能對這個標準施加影響。因此箱型圖識別異常值比較客觀,在識別異常值時有一定的優越性。數據預處理——數據清洗異常值處理常見異常值檢測方法:基于距離的離群點檢測通常可以在對象之間定義鄰近性度量,異常對象是那些遠離其他對象的對象。如果樣本空間D中至少有N個樣本點與對象O的距離大于dmin,那么稱對象O是以{至少N個樣本點}和dmin為參數的基于距離的離群點。優點:簡單;缺點:基于鄰近度量的方法需要O(m^2)時間,大數據集不適用;該方法對參數的選擇也是敏感的,不同的距離度量其結果也不一樣;不能處理具有不同密度區域的數據集,因為它使用全局閾值,不能考慮這

種密度的變化。數據預處理——數據清洗異常值處理常見異常值檢測方法:基于密度的局部離群點檢測當一個點的局部密度顯著低于它的大部分近鄰時才將其分類為離群點。適合非均勻分布的數據。不同于基于距離的方法,基于密度的離群點檢測不將離群點看做一種二元性質,即不簡單用YesorNo來斷定一個點是否是離群點,而是用一個權值來評估它的離群度。它是局部的,意思是該程度依賴于對象相對于其領域的孤立情況。這種方法可以同時檢測出全局離群點和局部離群點。優點:給出了對象是離群點的定量度量,并且即使數據具有不同的區域也能夠很好的處理;缺點:基于距離的方法一樣,具有O(m^2)的時間時間復雜度,對于低維數據使用特定的數據結構可

達到O(mlogm);參數選擇困難。仍然需要選擇這些離群度的上下界。數據預處理——數據清洗異常值處理處理方法:刪除異常值——明顯看出是異常且數量較少可以直接刪除不處理——如果算法對異常值不敏感則可以不處理,但如果算法對異常值敏感,則最好不要用,如基于距離計算的一些算法,包括kmeans,knn之類的。平均值替代——損失信息小,簡單高效。視為缺失值——可以按照處理缺失值的方法來處理數據預處理——數據清洗數據去重數據重復在實際生活中很常見,在一些數據挖掘模型中,這些冗余的數據加大了數據分析的難度和處理速度,因此需要對數據去重。常見方法:遍歷數據搜索,復雜度高,僅適用于數據規模較小的情形。哈希表示,生成數據指紋,簡單高效,適用于大規模數據,代表算法:1)Bitmap:位圖法2)SimHash:相似哈希3)布隆過濾器數據預處理——數據清洗數據去噪噪聲,是被測量變量的隨機誤差或方差。我們在上文中提到過異常點(離群點),那么離群點和噪音是不是一回事呢?觀測量(Measurement)=真實數據(TrueData)+噪聲(Noise)離群點(Outlier)屬于觀測量,既有可能是真實數據產生的,也有可能是噪聲帶來的,但是總的來說是和大部分觀測量之間有明顯不同的觀測值。噪聲包括錯誤值或偏離期望的孤立點值,但也不能說噪聲點包含離群點,雖然大部分數據挖掘方法都將離群點視為噪聲或異常而丟棄。然而,在一些應用(例如:欺詐檢測),會針對離群點做離群點分析或異常挖掘。而且有些點在局部是屬于離群點,但從全局看是正常的。數據預處理——數據清洗數據去噪常見數據去噪方法分箱法分箱方法通過考察數據的“近鄰”(即周圍的值)來光滑有序數據值。這些有序的值被分布到一些“桶”或箱中。由于分箱方法考察近鄰的值,因此它進行局部光滑。1)用箱均值光滑:箱中每一個值被箱中的平均值替換。2)用箱中位數平滑:箱中的每一個值被箱中的中位數替換。3)用箱邊界平滑:箱中的最大和最小值同樣被視為邊界。箱中的每一個值被最近的邊界值替換。一般而言,寬度越大,光滑效果越明顯。箱也可以是等寬的,其中每個箱值的區間范圍是個常量。分箱也可以作為一種離散化技術使用。回歸法可以用一個函數擬合數據來光滑數據。線性回歸涉及找出擬合兩個屬性(或變量)的“最佳”直線,使得一個屬性能夠預測另一個。多線性回歸是線性回歸的擴展,它涉及多于兩個屬性,并且數據擬合到一個多維面。使用回歸,找出適合數據的數學方程式,能夠幫助消除噪聲。數據預處理——數據融合數據融合就是將不同來源的、異質的數據融合到一起。良好的數據融合可以減少數據中的冗余(redundacies)和不一致性(inconsistence),進而提升后續步驟的精度和速度。數據融合包括如下幾個步驟:實體識別問題(EntityIdentificationProblem)實體識別中最主要的問題匹配不同的數據源中指向現實世界相同實體的紀錄。比如分析有不同銷售員紀錄的17年和18年兩年的銷售數據,由于不同的銷售員有不同的紀錄習慣,顧客的名字紀錄方式并不一樣,一個銷售員喜歡紀錄全名(例如WardellStephenCurryII),另外一個銷售員喜歡將中間名省略(WardellSCurryII),雖然WardellStephenCurryII和WardellSCurryII是現實世界中是同一名顧客,但計算機會識別為兩位不同的顧客,解決這個問題就需要EntityIdentification。一個常用的EntityIndentificationProblem的解決算法是LSH算法。冗余和相關性分析當能夠從樣本的一個或多個屬性推導出另外的屬性的時候,那么數據中就存在冗余。檢測冗余的一種方法是相關性分析——給定要進行檢測的兩個屬性,相關性分析可以給出一個屬性隱含(imply)另外一個屬性的程度。對于標稱型(Nominal)數據,可以使用χ2檢驗,而對于數值數據,可以根據方差和相關系數來分析。當相關系數是正的時候表示屬性A和屬性B正相關,當相關系數是負的時候屬性A和屬性B負相關,注意,相關關系并不等同于因果關系。數據預處理——數據轉換在對數據進行統計分析時,要求數據必須滿足一定的條件,數據轉換就是將數據從一種表示形式變為另一種表現形式的過程。常見的數據轉換方法大致可分為如下幾類:離散化二值化歸一化標準化正則化特征編碼數據預處理——數據轉換離散化有些數據挖掘算法,特別是某些分類算法,要求數據是分類屬性形式。例如,發現關聯模式的算法要求數據是二元屬性形式。這樣,常常需要將連續屬性變換成分類屬性(離散化,discretization),并且連續和離散屬性可能都需要變換成一個或多個二元屬性。此外,如果一個分類屬性具有大量不同值(類別),或者某些值出現不頻繁,則對于某些數據挖掘任務,通過合并某些值減少類別的數目可能是有益的。相比于連續屬性值,離散屬性值有一下優點:①通過離散化數據將被簡化并且減少;②離散特征更容易被理解,使用和解釋;③離散化使學習更加準確,快速;④使用離散特征獲得的結果(如decisiontrees,inductionrules)更加緊湊,簡短,準確,結果更容易進行檢查,比較,使用和重復使用;⑤很多分類學習算法只能處理離散數據。常見離散化方法:1)無監督:分箱法(等寬/等頻)、直觀劃分等2)有監督:1R方法、基于卡方的離散方法、基于熵的離散方法等數據預處理——數據轉換二值化特征二值化是把數值特征轉化成布爾值的過程,其核心在于設定一個閾值,大于閾值的賦值為1,小于等于閾值的賦值為0。這個方法對符合多變量伯努利分布的輸入數據進行預測概率參數很有效。數據預處理——數據轉換歸一化歸一化是一種簡化計算的方式,即將有量綱的表達式,經過變換,化為無量綱的表達式,成為標量。它可將數據縮放至給定的最小值與最大值之間,通常是0與1之間。歸一化常見兩種方式:最小最大值歸一化,將數據歸一化到[0,1]區間絕對值最大歸一化,將數據歸一化到[-1,1]區間數據預處理——數據轉換標準化不同的特征有不同的取值范圍,如線性模型,特征的取值范圍會對最終的結果產生較大的影響,取值范圍不一致會導致模型會更偏向取值范圍較大的特征。標準化通常是為了消除不同屬性或樣本間的不齊性,使同一樣本內的不同屬性間或同一屬性在不同樣本內的方差減小。另外數據的標準化也會加快數據的收斂速度。例如:Z-score標準化:數據預處理——數據轉換正則化通常是為給數據加入某種限制,使其滿足某一特性,常見的:L1正則化(稀疏性):L2正則化(平滑性):數據預處理——數據轉換特征編碼我們經常會遇到一些類別特征,這些特征不是離散型的數值,而是這樣的:[“男性”,“女性”],[“來自歐洲”,“來自美國”,“來自亞洲”],[“使用Firefox瀏覽器”,“使用Chrome瀏覽器”,“使用Safari瀏覽器”,“使用IE瀏覽器”]等等。這種類型的特征可以被編碼為整型(int),如[“男性”,“來自美國”,“使用IE瀏覽器”]可以表示成[0,1,3],[“女性”,“來自亞洲”,“使用Chrome瀏覽器”]可以表示成[1,2,1]。這些整數式的表示不能直接作為機器學習模型的參數,因為我們需要的是連續型的輸入,而且我們通常是有序的翻譯這些特征,而不是所有的特征都是有序化的(譬如瀏覽器就是按人工排的序列)。將這些類別特征轉化成機器學習模型的參數,可以使用的方法是:使用one-of-K或者one-hot編碼(獨熱編碼OneHotEncoding)。它可以把每一個有m種類別的特征轉化成m中二值特征。注意:除了上述所提及的6種數據轉換方法,我們可以根據模型需求和數據特性,自定義轉換方法。數據預處理——數據降維維數災難指在涉及到向量的計算的問題中,隨著維數的增加,計算量呈指數倍增長的一種現象。維度災難最直接的后果就是過擬合現象,而發生該現象最根本的原因是:維度增加時,有限的樣本空間會越來越稀疏。因此模型出現在訓練集上表現良好,但對新數據缺乏泛化能力的現象。維度增加時,每個樣本數據越來越不可能符合所有維度(特征),這使得大部分樣本都變成了噪聲。數據降維,又稱特征降維,是將高維空間的數據集映射到低維度空間,同時盡可能少的丟失數據,或者降維后的數據點盡可能的被區分。數據預處理——數據降維常見特征降維方法特性選擇尋找最優子集,剔除不相關(irrelevant)或冗余(redundant)的特征,從而達到減少特征的個數,提高模型的緊缺度,減少運行時間,特征選擇后留下的特征在選擇前后沒有變化。常見的特征選擇的方法有:1)過濾方式:將所有特征進行打分,選擇最有效的特征。比如,卡方檢驗、信息增益、相關系數(皮爾遜、Cos、互信息等)等。2)包裝方式:將特征組合的選擇看做是一個在特征空間的搜索問題,比如啟發式的搜索方法等。3)嵌入方式:將特征選擇的過程嵌入到模型訓練的過程中,其實也是就是正則化的方法,比如lasso回歸、ridge回歸等。數據預處理——數據降維常見特征降維方法特性抽取特征抽取是指改變原有的特征空間,并將其映射到一個新的特征空間。例如某個特征是一張圖片,將這張圖片中的點,線條或顏色提取出來并參數化,就是一個特征抽取的過程。常見的特征抽取方法有:1)PCA主成分分析。其思想是將n維特征映射到k維上(k<n),這k維是全新的正交特征。這k維特征稱為主元,是重新構造出來的k維特征,而不是簡單地從n維特征中去除其余n-k維特征。通過協方差矩陣的特征值分解能夠得到數據的主成分,PCA的目標是發現特征之間的線性關系,并去除。數據需要去中心化。2)LDA線性判別式分析。使用類別信息,選擇使類內方差小而類間方差大的方向作為投影方向,將數據投影到維度更低的空間中,使得投影后的點區分度更高。3)SVD奇異值分解。直接對特征矩陣進行SVD分解,然后近似表示原矩陣。注意,SVD可以獲取多個方向上的主成分,而PCA只能獲得單個方向上的主成分。數據預處理參考資料《數據挖掘:概念與技術》韓家煒《數據挖掘導論》陳封能《機器學習實戰》Peter參考工具Python:scikit-learn、pandas

/stable/MatlabRThankYou!數據倉庫與數據立方體Contents數據倉庫背景及定義01數據倉庫系統架構02數據立方體03OLAP0405本章小結數據倉庫產生的背景數據的一項重要作用是為管理決策人員提供幫助,通過對數據進行整合、清洗和分析,管理人員能夠得到更準確、更全面的信息支持,從而做出更具前瞻性和決策性的選擇。一種直接的想法是利用數據庫進行統計分析,形成如圖3-1所示的自然演化的體系架構。數據倉庫產生的背景自然演化的體系架構主要存在以下缺陷:缺乏統一的數據來源缺乏統一的時間基準數據口徑差異數據獲取效率低數據集成時間長看懂數據困難以及數據加工速度慢數據倉庫概念的提出為了應對這些問題,提出了數據倉庫的概念。與“分散式管理”的自然演化體系架構不同,數據倉庫是一種“中央集中式管理”的數據架構。這種管理架構會對數據統一進行清洗、整合和建模,使得數據變得更加一致、準確和可信,消除不同數據源之間的口徑差異,提高數據一致性和質量。數據倉庫的定義數據倉庫是一個面向主題的、集成的、時變的、非易失的數據集合,支持管理者的決策過程。

面向主題的(subject-oriented):數據倉庫的構建通常圍繞的是一些比較重要的主題而構建,例如產品、客戶或銷售等。集成的(integrated):數據倉庫中的數據是在對原有分散的數據庫進行數據抽取、清理的基礎上經過系統加工、匯總和整理得到的時變的(time-variant):數據倉庫可以保存過去的數據,并且可以顯示數據隨著時間的推移而發生的變化。非易失的(nonvolatile):數據倉庫的非易失性意味著數據在數據倉庫中是安全的、不容易丟失的。數據倉庫與數據庫之間的區別數據庫與數據倉庫的區別,在本質上就是在線事務處理(OLTP)和在線分析處理(OLAP)的區別Contents數據倉庫背景及定義01數據倉庫系統架構02數據立方體03OLAP0405本章小結基本架構介紹每個數據倉庫系統的核心都有三個主要的組件,分別是:數據來源、提取-加載-轉換(ELT)過程以及數據倉庫本身。大部分數據倉庫系統還有數據應用部分數據倉庫系統分層意義數據倉庫系統的分層模式是一種在數據倉庫設計中常用的組織模式,通過將數據按照不同的層級進行劃分和管理,以實現更高效、更靈活的數據處理和利用。數據倉庫系統的分層模式主要具備以下幾點作用:分層模式使得數據組織結構更清晰提供數據血緣追蹤功能減少重復開發簡化復雜的問題減少業務的影響數據倉庫分層介紹從數據倉庫的基本架構圖中可以看到,數據倉庫包含了多個層級,其中每個層級都有著其特定的功能和處理原則。下面依次介紹數據倉庫各層級的用途和處理原則

原始數據層(OperationalDataStore)是數據倉庫中的一個重要組成部分,它用于存儲從各個業務系統中提取的、經過簡單清洗和整合后的原始數據。原始數據層通常是數據倉庫架構中的第一層,也是與業務系統交互的接口。數據倉庫分層介紹數據明細層(DataWarehouseDetail)中的數據是原始數據層數據經過清洗、轉換后得到的明細數據,保留了數據加載過程中的全部信息。同時包含了各種維度表和事實表,可以支持復雜的查詢和分析需求。此外還保留了歷史數據,能夠支持時間上的溯源和趨勢分析。該層中的數據質量較高,經過清洗、轉換、整合等處理,確保數據準確性和一致性。數據倉庫分層介紹數據匯總層(DataWarehouseSummary)通常用于存儲經過清洗、轉換和集成后的數據。這一層位于數據倉庫的核心位置,主要負責將來自數據源的數據進行整合,并提供給決策支持系統和業務智能應用程序使用。數據倉庫分層介紹數據應用層(ApplicationDataStore)是根據業務需要,由數據明細層、數據匯總層數據統計而出的結果,該層旨在為數據分析和報表生成等工作提供高性能的數據查詢和訪問能力,以支持業務決策和報告需求。該層與數據應用部分結合之后,可以為用戶提供靈活的數據查詢和分析功能,支持用戶通過圖表、報表等形式直觀地分析數據,使用戶能夠根據自身需求快速獲取所需數據,并進行多維分析、數據挖掘等操作。Contents數據倉庫背景及定義01數據倉庫系統架構02數據立方體03OLAP0405本章小結數據立方體的基本概念數據立方體是一種多維數據集合,通常用于存儲和分析數據倉庫中的大量數據。它由一個或多個維度和度量組成,維度表示數據的屬性或者類別,度量則表示要分析的數據指標。通過將數據按照不同維度組織,可以形成一個多維數據集合,這種數據結構就是數據立方體。數據立方體的基本概念需要注意的是,盡管人們經常把數據立方體看作三維幾何結構,但是在數據倉庫中,數據立方體是N維的,而不限于三維。數據立方體主要具備以下特點:1)多維性:數據立方體是一個多維數據集合,可以包含多個維度和度量,從而更全面地描述數據。2)預計算:為了提高查詢效率,數據立方體通常會事先計算并存儲聚合數據,而不是每次查詢時都重新計算。3)快速響應:由于預計算的結果,數據立方體可以快速響應用戶的查詢請求,提高數據分析的效率。4)易于理解:通過數據立方體,用戶可以直觀地理解數據之間的關系,進行交互式分析和探索。數據立方體的基本概念二維數據立方體四維數據立方體三維數據立方體數據立方體的組成元素數據立方體的組成元素主要包括維度、度量、層次、聚集、維度表和事實表等1)維度(Dimensions):維度是數據立方體中用于對數據進行分類和分組的屬性或者特征。2)度量(Measures):度量是數據立方體中需要進行分析和計算的指標或數值,用來衡量業務績效或者其他關鍵性能指標。3)層次(Hierarchies):層次定義了維度之間的父子關系,描述了維度值之間的層級結構。4)聚集(Aggregates):聚集是預先計算并存儲在數據立方體中的匯總數據,例如總銷售額、平均利潤等。5)維度表(DimensionTables):維度表是包含維度屬性信息的表格,用于描述維度的具體內容和特征。6)事實表(FactTable):事實表是包含度量信息的表格,用于存儲需要分析的數值型數據。多維數據模型的模式多維數據模型的模式定義了數據在多個維度上的組織結構和關聯關系。目前最流行的數據倉庫數據模型是多維數據模型,包括星形模式、雪花模式和事實星座模式等星形模式(starschema):星型模式是數據倉庫中最常用的多維數據模型之一,它采用星型結構來組織數據。在星型模式中,中心是一個事實表(FactTable),周圍圍繞著多個維度表(DimensionTables),構成了一個星型的結構。多維數據模型的模式多維數據模型的模式定義了數據在多個維度上的組織結構和關聯關系。目前最流行的數據倉庫數據模型是多維數據模型,包括星形模式、雪花模式和事實星座模式等雪花模式(snowflakeschema):雪花模式是一種數據倉庫多維數據模型設計結構,是在星型模式的基礎上發展而來的設計模式。在雪花模式中,維度表被進一步規范化,因此比星型模式具有更復雜的結構,其組成要素包括事實表、維度表和規范化維度表。多維數據模型的模式多維數據模型的模式定義了數據在多個維度上的組織結構和關聯關系。目前最流行的數據倉庫數據模型是多維數據模型,包括星形模式、雪花模式和事實星座模式等事實星座模式(factconstellation):復雜的應用可能需要多個事實表共享維表。這種模式可以看做星形模式的匯集,因此稱做星系模式(galaxyschema)或事實星座。事實星座模式支持復雜的數據關系和多變的數據分析需求,適用于需要處理多種不同業務過程和度量的場景。事實星座的組成要素包括多個事實表、多個維度表和事實表之間的聯系。Contents數據倉庫背景及定義01數據倉庫系統架構02數據立方體03OLAP0405本章小結OLAP概念在線分析處理OLAP,是一種用于快速分析、探索和匯總多維數據的計算技術。OLAP技術是基于數據倉庫中數據立方體的操作,旨在幫助用戶進行復雜的數據分析和提供決策支持,OLAP的核心特點如下:多維性:OLAP能夠處理多維數據,允許用戶以不同的角度(維度)對數據進行分析,支持多維數據切片和切塊操作。實時分析:OLAP技術支持用戶對數據進行即時的、動態的分析,用戶可以隨時根據需要進行數據探索和交互式查詢。聯機:OLAP能夠直接連接到數據倉庫或數據源,具有快速響應用戶查詢的特點,以便用戶可以實時獲取數據分析結果。分析功能:OLAP提供強大的分析功能,如數據的上卷、下鉆、轉軸、切片和切塊等方法,幫助用戶深入分析數據OLAP的基本操作OLAP依托于多維數據模型,定義了一系列專門針對數據分析的基本操作類型,主要包括:上卷(Roll-up)、下鉆(Drill-down)、切片(Slice)、切塊(Dice)以及轉軸(Pivot)。通過這些基本操作的組合使用,用戶可以很方便的在數據倉庫中完成對數據的處理和分析OLAP的基本操作上卷(roll-up):上卷操作是將數據從較低層次的維度匯總到較高層次的維度,減少數據的細節,以獲得總體性的視圖。下圖顯示了在維location上對中心立方體執行上卷操作的結果。所展示的上卷操作沿location的分層,由city層向上到country層聚集數據。OLAP的基本操作下鉆(drill-down):下鉆操作是在匯總數據的基礎上,查看較低層次的細節數據,以便深入了解具體細節。下圖顯示沿著“day<month<quarter<year”定義的time維的概念分層向下,在中心立方體執行下鉆操作的結果。這里下鉆由time維的分層結構向下,從quarter層到更詳細的month層。OLAP的基本操作切片(slice):切片是選取多維數據集中的一個子集,即在某個固定維度上進行數據的篩選和分析。下圖表示了一個切片操作,它對中心立方體使用條件time=“Q1”對維time選擇銷售數據。OLAP的基本操作切塊(dice):切塊是在多維數據集中選擇兩個或多個維度的交叉區塊(subset),對其進行分析和比較。下圖表示了一個切塊操作,它涉及三個維,根據如下條件對中心立方體切塊:(location=“南京”or“武漢”)and(time=“Q1”or“Q2”)and(item=“日常用品”or“飲料”)。OLAP的基本操作轉軸(pivot):轉軸操作是改變多維數據立方體中的視角,重新排列維度的位置以獲得新的數據觀察角度。下圖顯示了一個轉軸操作,其中item和location軸在一個2-D切片上轉動。OLAP系統的實現分類常見的OLAP系統可以分為以下三類::多維聯機實時分析系統(MOLAP),關系型聯機實時分析系統(ROLAP),混合型聯機實時分析系統(HOLAP)MOLAP通過基于數組的多維存儲引擎,支持數據的多維視圖。它們將多維視圖直接映射到數據立方體數組結構。典型的MOLAP框架如下圖所示。MOLAP中的數據來自數據倉庫或者來自存儲在多維立方體中的操作型數據源。底層數據的復雜性對于MOLAP工具的使用者是隱藏的。OLAP系統的實現分類常見的OLAP系統可以分為以下三類::多維聯機實時分析系統(MOLAP),關系型聯機實時分析系統(ROLAP),混合型聯機實時分析系統(HOLAP)ROLAP介于關系型數據庫(后端)和客戶前端工具之間。它們使用關系的或擴充關系的數據庫管理系統存儲并管理數據倉庫數據,而OLAP中間件支持其余部分。典型的ROLAP框架的高層視圖如圖3-17所示。ROLAP工具也提供本章之前描述的常用OLAP功能。ROLAP服務將查詢轉換成SQL語句,SQL語句被發送到由關系型數據庫支持的數據倉庫中。關系型數據庫執行查詢,并將查詢的結果集合發送到ROLAP服務器上,最終交給OLAP/BI工具終端用戶。OLAP系統的實現分類常見的OLAP系統可以分為以下三類::多維聯機實時分析系統(MOLAP),關系型聯機實時分析系統(ROLAP),混合型聯機實時分析系統(HOLAP)混合OLAP方法結合ROLAP和MOLAP技術,得益于ROLAP較大的可伸縮性和MOLAP的快速計算,使得其既能處理大規模數據,又能提供快速查詢性能。HOLAP在數據存儲和查詢時能夠根據需求自動選擇合適的存儲方式,既可以利用多維數據立方體進行快速查詢,也可以利用關系型數據庫支持復雜查詢。Contents數據倉庫背景及定義01數據倉庫系統架構02數據立方體03OLAP0405本章小結本章小結數據倉庫是一個面向主題的、集成的、時變的、非易失的數據集合,用于支持管理決策。數據倉庫的產生背景主要是由于企業需要更好地管理和分析海量數據以支持決策,而傳統的數據庫系統無法滿足復雜的分析需求。數據倉庫核心組件包括數據來源、ELT、數據倉庫和數據應用等。數據倉庫與數據庫的區別在于目標、數據結構、數據處理方式等方面。數據倉庫旨在支持決策分析,數據處理方式大都“讀多寫少”;而數據庫用于日常事務處理,數據結構為規范化形式,讀寫操作相對平衡。數據立方體是數據倉庫中一種多維數據模型,用于對數據進行多維分析。數據立方體由維度、度量、層次、聚集、維度表和事實表等部分組成,常見的模式包括星型模式、雪花模式和事實星座模式。OLAP是一種用于多維數據分析的技術,基本操作包括上卷、下鉆、切片、切塊和轉軸等。常見的OLAP系統可以分為多維聯機實時分析系統、關系型聯機實時分析系統和混合型聯機實時分析系統。ThankYou!關聯規則挖掘05高級關聯模式挖掘背景介紹01Contents關聯規則挖掘的基本概念02頻繁項集挖掘算法03關聯規則挖掘0406推薦系統中的關聯規則挖掘超市消費者購物小票說起“購買啤酒的男士經常會購買小孩的紙尿布”不同商品間的關聯規則背景介紹谷歌預測2009年部分地區的流感“2009年,Google通過分析5000萬條美國人最頻繁檢索的詞匯,將之和美國疾病中心在2003年到2008年間季節性流感傳播時期的數據進行比較,并建立一個特定的數學模型。最終Google成功預測了2009冬季流感的傳播甚至可以具體到特定的地區和州。”背景介紹超市預知高中生顧客懷孕明尼蘇達州一家塔吉特(Target)門店被客戶投訴,一位中年男子指控塔吉特將嬰兒產品優惠券寄給他的女兒——一個高中生。但沒多久他卻來電道歉,因為女兒經他逼問后坦承自己真的懷孕了。塔吉特百貨就是靠著分析用戶所有的購物數據,然后通過相關關系分析得出事情的真實狀況。背景介紹電表與空置房的匹配背景介紹05高級關聯模式挖掘背景介紹01Contents關聯規則挖掘的基本概念02頻繁項集挖掘算法03關聯規則挖掘0406推薦系統中的關聯規則挖掘購物籃事務下面表格中存儲的數據可以稱為購物籃事務。事務:事務表示為形如<t,X>的元組事務標識符(TID):事務中的t項集:

,如果一個項集包含k個項,則稱為k-項集。如{面包,尿布,啤酒,牛奶}為3-項集。TID項集1{面包,牛奶}2{面包,尿布,啤酒,牛奶}3{牛奶,尿布,啤酒,可樂}事務關聯規則挖掘關聯規則:是形如的表達式,其中

和是兩個不相交的項集。關聯規則挖掘步驟:頻繁項集產生:使用頻繁項集挖掘算法,找出滿足最小支持度閾值的所有項集,這些項集為頻繁項集。規則生成:從上一步得到的頻繁項集中過濾出滿足最小置信度閾值的規則,這些規則稱為強規則。關聯規則挖掘支持度計數:指一個項集在所有事務中出現的次數。換言之,它是該項集在事務數據庫中的絕對頻率。數學上可以表示為。支持度:支持度計數與總事務數的比例,表示在所有事務中有多少比例的事務包含該項集。這是一個標準化的指標,用于評估項集的普遍性。支持度的數學定義如下,N表示事務總數。在關聯規則挖掘中,支持度是用于初步篩選數據中潛在有用模式的重要工具。只有當項集的支持度達到預設的最小支持度閾值時,這些項集才被認為是頻繁項集。格結構格結構:挖掘頻繁項集時,候選項集之間的包含關系所形成的結構。性質:如果一個項集是另一個項集的子集,那么它們之間就存在一條連接。圖中顯示的是的項集格,其中2-項集{A,B}是3-項集{A,B,C}的直接子集。05高級關聯模式挖掘背景介紹01Contents關聯規則挖掘的基本概念02頻繁項集挖掘算法03關聯規則挖掘0406推薦系統中的關聯規則挖掘樸素法樸素法:將所有的k-項集作為候選項集,然后確定其在輸入數據中的支持度選出頻繁項集。算法步驟:候選生成:一次性生成所有候選項集,第k層的候選項集的數目為,其中d

溫馨提示

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

評論

0/150

提交評論