數據挖掘的知識大綱

在數據挖掘領域中,一般的教程都只是推薦一大堆沒人看的書,沒有從需要掌握的知識點談起的,本文基於這個目標來探討。

一.數據挖掘基本知識

1.1 掌握數據對象的分類,基本統計量描述,以及相似性和相異性的度量

1.2 掌握如何處理缺失值,診斷異常值,離散化數據的方法

1.3 了解數據倉庫和數據立方體,以及OLAP操作,了解數據立方體計算

二.數據挖掘基本演算法

2.1 關聯規則演算法:

2.1.1 掌握Apriori演算法,了解如何提高Apriori演算法的效率.

2.1.2 了解Apriori演算法的限制:生成大量候選項集以及高I/O操作,了解關聯規則的其他演算法,如FP-growth等.

2.1.3 了解挖掘多層多維關聯規則的方法,重點是多維關聯演算法.

2.2 分類:

2.2.1 掌握常見分類演算法: KNN,決策樹,貝葉斯,貝葉斯信念網路,SVM以及關聯規則分類.

2.2.2 掌握常見組合分類,bagging,boosting,adaboost,randomforest.

2.2.3 掌握模型評估的方法,混淆矩陣,保持方法,隨機二次抽樣,交叉驗證,留一法,自助法,PR和ROC曲線.

[注]:交叉驗證分為以下幾類:保持交叉驗證,k折交叉驗證,分層交叉驗證。

2.3 聚類:

2.3.1 掌握基於劃分的聚類演算法:k-means, PAM,了解基於層次聚類的演算法:BIRCH等.

2.3.2 掌握基於密度的演算法:DBSCAN,OPTICS, DENCLUE.

2.3.3 掌握期望最大化演算法以及高維聚類方法,了解EM演算法的收斂性。

三.一些數學知識

3.1 線性代數:矩陣的性質以及方程組的解法,二次型,矩陣的微積分

3.2 概率論和測度論:從測度論了解概率論的本質,獨立性,PMF,PDF,CDF,常見的分布

3.3 運籌學和優化理論:無約束的優化以及有約束的優化,KTT條件尤為重要

3.4 隨機過程:馬爾科夫鏈,央差分,布朗運動,HMM(這個我沒看過,但是挺重要的)

3.5 其他:信號與系統的DFT,FFT,DWT,數字信號處理的濾波器,自動化處理的線性以及非線性的穩定性判別,大學物理中的熱力學和力學知識,資訊理論熵知識

四.數據挖掘進階知識

4.1 深入理解線性回歸,掌握LMS演算法的特點,批量梯度下降和和隨機梯度下降,牛頓法,了解最大似然估計產生OLS,了解LMR演算法。

4.2 深入理解Logistic回歸,指數分布族,廣義線性回歸,了解softmax回歸,GDA,GDA與Logistic的關係

4.3 掌握SVM的推導,以及核函數的使用,如何構造核函數,SMO演算法

4.4 掌握模型和特徵選擇的方法,方差/偏置權衡和VC維,KL選擇特徵。

4.5 掌握感知器演算法以及收斂性的證明,多層感知器的反向傳播演算法以及函數逼近的定理,RBF網路的混合學習過程

4.6 了解正則化理論,包括正則化網路以及廣義RBF網路,自組織的過程。

4.7 理解Boltzmann機以及變種:Logistic信度網路和RBM,了解Hopfiled模型以及BIS模型,NARX模型和RMLP模型

以上就是本人對數據挖掘領域的知識的簡單梳理,最近流行一些深度學習技術,個人和學校水平有限,搞不動,所以不會加入比較流行的深度學習技術放在數據挖掘領域裡。


推薦閱讀:

通俗易懂說數據挖掘十大經典演算法
推薦系統乾貨總結
為什麼有些公司在機器學習業務方面傾向使用R+Hadoop方案?
38套大數據,雲計算,架構,數據分析師,人工智慧,機器學習,深度學習,項目實戰視頻教程?
對於面試演算法工程師的想法

TAG:數據挖掘 | 機器學習 | 數據科學 |