清華大學(xué)-數(shù)據(jù)挖掘:理論與算法(國(guó)家級(jí)精品課)

數(shù)據(jù)挖掘
加工數(shù)據(jù),儲(chǔ)存以及計(jì)算
從數(shù)據(jù)中挖掘出有用的信息。
為什么我感覺這和易學(xué)很像,易學(xué)是從生活中提取各種信息,并將其帶入相應(yīng)的模型來(lái)指導(dǎo)生活實(shí)踐。比如通過生辰八字來(lái)推測(cè)吉兇禍福,通過風(fēng)水也就是環(huán)境,來(lái)推測(cè)墓穴位置、好地方等。本質(zhì)上都是對(duì)數(shù)據(jù)的分析和處理。
模式分類,數(shù)據(jù)挖掘概念與技術(shù)
跟蹤國(guó)際會(huì)議(了解學(xué)科最新動(dòng)態(tài))
關(guān)于學(xué)術(shù)、論文網(wǎng)站。
機(jī)器學(xué)習(xí)、人工智能、統(tǒng)計(jì)學(xué)
Tell me and I forget.Teach me and I remember.Invole me and I learn.
什么是數(shù)據(jù)?
什么是大數(shù)據(jù)?
數(shù)據(jù)量大,速度大,數(shù)據(jù)類型多。
數(shù)據(jù)挖掘的用處之一是預(yù)測(cè),預(yù)測(cè)犯罪,預(yù)測(cè)事件。
數(shù)據(jù)挖掘=知識(shí)發(fā)現(xiàn),是否=模式識(shí)別?
數(shù)據(jù)-信息-知識(shí)-決策觀點(diǎn)
P6
分類問題:訓(xùn)練模型,并通過模型對(duì)事物進(jìn)行分類與預(yù)測(cè)。
模型,就是為了預(yù)測(cè)。
易學(xué),將天地萬(wàn)物建模,以對(duì)生活中的各種事情進(jìn)行預(yù)測(cè)。
模型對(duì)n維空間進(jìn)行劃分,數(shù)據(jù)項(xiàng)點(diǎn)落在哪兒,就被分為什么類。
數(shù)據(jù)分為訓(xùn)練集和測(cè)試集。
訓(xùn)練集用來(lái)訓(xùn)練、生成模型,測(cè)試集用來(lái)檢驗(yàn)、校正模型。
Confusion Matrix 混淆矩陣
權(quán)重;衡量參數(shù)重要性的系數(shù)。
不同的錯(cuò)誤的權(quán)重是不同的,錯(cuò)誤與正確的權(quán)重也是不同的。這要看具體的正確或錯(cuò)誤的具體影響。
用了模型和不用模型的差異,lift, 提升度。

P7 聚類
聚類的對(duì)象沒有事先人為的標(biāo)簽
距離度量,樣本距離的遠(yuǎn)近
把樣本中距離相近的聚在一起
關(guān)聯(lián)規(guī)則:買了一個(gè)商品,往往會(huì)同時(shí)買其他一個(gè)或多個(gè)商品。一個(gè)事件的發(fā)生往往伴隨著其他時(shí)間的發(fā)生。也就是說(shuō),這些事件是關(guān)聯(lián)的。
在實(shí)際的數(shù)據(jù)挖掘中,最困難的是數(shù)據(jù)預(yù)處理。
垃圾進(jìn),垃圾出。GIGO。
擁有正確格式的樣本是獲得有價(jià)值的模型的前提條件。若是沒有正確、合適的樣本,就不可能挖掘出有價(jià)值的規(guī)律與模型。
數(shù)據(jù)的清洗
P8 隱私保護(hù)與并行計(jì)算
有隱私保護(hù)的數(shù)據(jù)挖掘
獲取數(shù)據(jù)時(shí),即保護(hù)隱私,又獲得需要的信息。
Cloud Computing 云計(jì)算
把算力當(dāng)作資源,去租用,在需要大時(shí)加大租用量,需求小時(shí)減租。
并行計(jì)算 Parallel Computing
將復(fù)雜問題差分成若干子問題,交給多個(gè)設(shè)備同時(shí)進(jìn)行計(jì)算。在整體上,問題以數(shù)倍的速度被解決。
GPU,科學(xué)計(jì)算也常用顯卡來(lái)計(jì)算。
數(shù)據(jù)+算法+硬件=價(jià)值
No Free Lunch
決策樹
數(shù)據(jù)挖掘不是創(chuàng)造規(guī)律,而是發(fā)現(xiàn)規(guī)律。進(jìn)行數(shù)據(jù)挖掘的前提是,數(shù)據(jù)中要有規(guī)律可挖。
幸存者偏差;看到的樣本就是有偏差的,從這些有偏差的樣本中得到的規(guī)律往往也是有偏差的。如何從有偏差的樣本數(shù)據(jù)中得到正確的、有價(jià)值的規(guī)律是需要大膽假設(shè)、小心求證、謹(jǐn)慎分析的。
真實(shí)的數(shù)據(jù)是很臟的,不能直接拿來(lái)用。
比如,不完整,冗余(屬性太多,淹沒有用屬性)
如何處理缺失數(shù)據(jù)?:刪,填。
刪:若缺失的數(shù)據(jù)刪掉對(duì)整體沒有太大影響,大膽刪掉。
填:根據(jù)其他屬性合理推測(cè)未知數(shù)據(jù),如通過在某地方的居住時(shí)間來(lái)推測(cè)買房子還是租房子。
離群點(diǎn),outlier.
異常點(diǎn),anomaly
利群的,不見得是異常的。
如何檢測(cè)離群點(diǎn)
檢測(cè)自己和鄰居的距離,以及鄰居和鄰居的鄰居的距離,對(duì)比之。
數(shù)據(jù)量太大,無(wú)法完全處理,通過采樣減少數(shù)據(jù)量 進(jìn)行處理。
大數(shù)據(jù)中的采樣和統(tǒng)計(jì)學(xué)中的采樣具有完全不同的涵義。大數(shù)據(jù)中的采樣,是因?yàn)閿?shù)據(jù)量太過龐大,計(jì)算機(jī)無(wú)法全部處理,所以隨機(jī)抽取一些數(shù)據(jù)來(lái)進(jìn)行處理。而統(tǒng)計(jì)學(xué)中的采樣,是因?yàn)闊o(wú)法完全獲取所有數(shù)據(jù),才進(jìn)行抽樣檢測(cè)。如無(wú)法完全統(tǒng)計(jì)全國(guó)人民的身高,只能抽取全國(guó)范圍的部分人的數(shù)據(jù)來(lái)計(jì)算。
邊緣點(diǎn)是最有價(jià)值的,可能5%的邊緣點(diǎn),擬合出來(lái)的結(jié)果就和100%的一樣,那么就可以節(jié)省大量的資源。
數(shù)據(jù)標(biāo)準(zhǔn)化
數(shù)據(jù)描述,均值,極大值,極小值,中值,相關(guān)
r=0,說(shuō)明兩者線性不相關(guān),并不是不相關(guān)。
數(shù)據(jù)可視化。
一圖省萬(wàn)言。
高維可視化。
CiteSpace 文本可視化
Feature Selection 特征選擇
選擇合適的屬性,能降低數(shù)據(jù)復(fù)雜度,進(jìn)而簡(jiǎn)化模型,使模型更高效。
Entropy 熵 不確定性越大,熵越高。
信息熵 條件熵
信息增益,屬性降低的不確定性。屬性的信息增益越大,屬性越好。
特征的提出 Feature Extraction
主成分分析

特征的提取,應(yīng)該保留有效信息。
Variance: information 方差就是信息
方差越大,越能區(qū)分不同的數(shù)據(jù)項(xiàng),信息越豐富,屬性越重要。因此,選屬性時(shí),應(yīng)該選擇方差較大的那些屬性。
屬性在做投影時(shí),應(yīng)該用一條直線去擬合,然后旋轉(zhuǎn),使得丟失的信息最少。
降維,投影方向選的好,丟失信息少。
PCA不包含類信息
Reading Materials:
分類,Classification
分類能力是生物生存得基礎(chǔ)能力
分類是有監(jiān)督學(xué)習(xí),需要老師來(lái)打標(biāo)簽
分類問題就是函數(shù),輸入一些東西,輸出一些東西。
貝葉斯定理

先驗(yàn)概率,聯(lián)合概率分布,條件獨(dú)立,樸素貝葉斯
原本不獨(dú)立,加上一個(gè)條件后就獨(dú)立了。
如果忽略條件而只看到所謂的獨(dú)立,這樣得到的結(jié)論是站不住腳的。
Decision Making 做決策
用樹的好處,可以理解規(guī)則
奧卡姆剃刀:如無(wú)必要,勿增實(shí)體。
在具有同樣功能的前提下,我們通常選擇更簡(jiǎn)單的那個(gè)。
給定一定的數(shù)據(jù)集,來(lái)生成決策樹,如何衡量決策樹的優(yōu)劣?是否簡(jiǎn)單。
如何建立一個(gè)最簡(jiǎn)單的決策樹。
把強(qiáng)大的屬性放在上面。
如何選擇屬性?如何衡量屬性的好不好?
屬性能降低不確定性越多越好,屬性帶來(lái)的信息增益越大越好。這樣的屬性就應(yīng)該放在決策樹的上面。
Information Gain 信息增益
Entropy 熵,不確定性
ID3 Framework
建樹,是遞歸結(jié)構(gòu)
樹太復(fù)雜了就會(huì)造成Overfitting
Overfitting 過學(xué)習(xí),過擬合
A在測(cè)試集中的表現(xiàn)比B好,而在測(cè)試集中B的表現(xiàn)比A好。
如何防止過擬合
1.防止樹長(zhǎng)得太大 2.減枝
剪枝:從樹梢開始,合并。

如果減得太多了,那么樹就太簡(jiǎn)單了,就沒有能力去把數(shù)據(jù)分開。
要在拐點(diǎn)處停手。
Neural Networks 神經(jīng)網(wǎng)絡(luò) 分類器
超平面 感知機(jī) 與門 或門
設(shè)置感知機(jī)權(quán)重 收斂 梯度下降
批處理 誤差 求偏導(dǎo) 誤差的梯度信息
學(xué)習(xí)率 一般用一個(gè)較小的學(xué)習(xí)率,讓模型慢慢去改,而不是用很大的學(xué)習(xí)率一下子跳過了最優(yōu)質(zhì)。
Stochastic Learning
線性不可分問題
感知機(jī),就是線性分類器,
解決不了線性不可分問題
與非門
亦或問題 XOR 同0,異1
線性不可分為題:一根線無(wú)論如何也分不開
學(xué)習(xí),從概念開始,把一門學(xué)問比作是一個(gè)面,從概念開始,就是點(diǎn)亮這面中的一個(gè)個(gè)點(diǎn)。當(dāng)連點(diǎn)成線,連線成圖時(shí),就對(duì)這門學(xué)問有一個(gè)較為系統(tǒng)的認(rèn)識(shí)了。
NAND 與非門 Not And
Back Propagation Rule(BP算法) 逆?zhèn)鞑?/strong>
進(jìn)化計(jì)算 深度學(xué)習(xí),多層神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)
訓(xùn)練集,校驗(yàn)集,測(cè)試集
過學(xué)習(xí)時(shí),模型的泛化能力降低,也就是解決不了沒有見過的問題。防止過學(xué)習(xí),也就是提高模型的泛化能力,使得模型能夠正確解決從未見過的問題的能力。
最怕陷入局部最優(yōu)解。
誤差來(lái)回波動(dòng),也就是震蕩,是因?yàn)閷W(xué)習(xí)率太大。學(xué)習(xí)率是可以隨著訓(xùn)練過程動(dòng)態(tài)調(diào)整的
前饋型網(wǎng)絡(luò),也就是BP網(wǎng)絡(luò)
Elman Network
Support Vector Machines 支持向量機(jī) SVM
SVM本質(zhì)上是線性分類器

選擇margin較大的選擇器
有用的點(diǎn)叫做Support Vectors
支持向量機(jī)保證margin最大
1.樣本分對(duì) 2.最大化margin
目標(biāo)函數(shù) 拉格朗日乘數(shù)法

做好映射,就能把復(fù)雜問題變成簡(jiǎn)單問題
升維
SVM的核心操作是向量做內(nèi)積
Kernel 核
核函數(shù)是提高SVM分類能力的關(guān)鍵
最初的SVM就是線性分類器,為了使margin最大,所以導(dǎo)出Linear SVM。但是實(shí)際問題中,樣本點(diǎn)是交錯(cuò)的,是無(wú)論如何用直線是不可分的,所以就有了soft SVM,將數(shù)據(jù)升維,將低維的不可分化為高維的可分。
為了解決線性不可分問題,需要把數(shù)據(jù)映射到高維空間,就變成了線性可分問題。但是高位空間中,計(jì)算非常復(fù)雜,那就用一個(gè)核函數(shù)來(lái)簡(jiǎn)化計(jì)算。
VC Dimension
一條直線可以將三個(gè)點(diǎn)完美地分開,但是四個(gè)點(diǎn)就不行,那么“直線”這個(gè)模型的VC Dimension就是3。
矩形框可以將四個(gè)及以下的點(diǎn)完美地分開,但是五個(gè)及以上就不行了,說(shuō)明矩形的VC Dimension是4.
一個(gè)模型可以將多少個(gè)點(diǎn)完美地分開,那么這個(gè)模型的VC Dimension 就是多少。
在n維空間中,VC dimension就是n+1.
比如,二維中,VC Dimension是3.
越復(fù)雜的模型,在未知樣本中的風(fēng)險(xiǎn)就越大。所以,面對(duì)兩個(gè)效果相同的模型,應(yīng)該選擇那個(gè)更簡(jiǎn)單的。
聚類 聚類模式
層次性聚類 在不同的層面,有不同的聚類規(guī)則
如中國(guó)人可分為各個(gè)省的人,各個(gè)省又分很多市。
聚類分析,尋找相似的事物,然后聚為一類。
簇內(nèi)部差異較小,簇與簇之間差別較大。
Inter-Cluster outer-Cluster
事物之間距離的度量取決于具體的需求,比如從性別看,男生和男生更接近,女生和女生更接近。從關(guān)系上看,我們一家人更接近。
論學(xué)
不是為了學(xué)習(xí)而學(xué)習(xí),而是為了變強(qiáng)而學(xué)習(xí)。
為什么要變強(qiáng)?因?yàn)槲易儚?qiáng)符合所有人的利益,所有人都期望我變強(qiáng)。哪怕是我的敵人。所以,我就眾望所歸,努力變強(qiáng)。因此,我要學(xué)習(xí)。
Silhouette 剪影 衡量聚類結(jié)果的函數(shù)
K-Means
首先生成K個(gè)隨機(jī)中心點(diǎn)
然后把樣本點(diǎn)分配到距它最近的中心點(diǎn)
然后用k個(gè)均值點(diǎn)來(lái)代替中心點(diǎn)
然后不斷迭代

噪點(diǎn)對(duì)均值的影響很大

初始點(diǎn)選的不好容易這個(gè)樣子

基于模型的聚類 概率密度估計(jì)
混合高斯模型,一個(gè)高斯分不開,那就用一組。
最大似然估計(jì)
隱含參數(shù),雖然不是我們的目標(biāo)參數(shù),但是它的地位類似于輔助線,幫助我們更好地解決問題。
基于密度的聚類,類似于人眼對(duì)事物的感覺
DBSCAN 連通性 膨脹算法
Core Point 核心點(diǎn) Border Point 邊緣點(diǎn)
確定一個(gè)核心點(diǎn)后,膨脹,將盡可能多的點(diǎn)包含在一個(gè)簇中。
層次型聚類,聚類結(jié)果取決于從哪個(gè)或者哪些層面考察。
從最底層開始,把所有層面上的簇都聚在一起,直到左右的樣本被聚為一類。中間是各個(gè)層面上的簇,根據(jù)需要去選擇相應(yīng)的層面。
最小生成樹
關(guān)聯(lián)規(guī)則 Association Rule
頻繁集 關(guān)聯(lián)規(guī)則
item 項(xiàng),商品 itemset 項(xiàng)集 K-itemset 有k個(gè)商品的集 Transactions交易記錄
support 支持度,本質(zhì)上就是頻率
買了牛奶的人同時(shí)買了面包這條規(guī)則的支持度,就是買了牛奶的人中同時(shí)買了面包的人的百分比
我們需要發(fā)現(xiàn)支持度高的規(guī)則。
Confidence 置信度
簡(jiǎn)單的說(shuō),就是條件概率

頻繁項(xiàng) 強(qiáng)規(guī)則
一個(gè)規(guī)則很強(qiáng),不代表它就是有益的。
Association≠Causality
有相關(guān)性,但不能代表有因果關(guān)系。
復(fù)雜度 The Apriori Method
一個(gè)事物不頻繁,那么包含他的超集也必然不頻繁,那就去掉所有包含不頻繁事物的集合,剩下的,就是比較強(qiáng)大的規(guī)律??梢源蟠蟮販p少計(jì)算量。
生成 計(jì)數(shù) 過濾
序列模式

主體的一個(gè)行為背后大概率對(duì)應(yīng)著其他的行為,這種行為的先后關(guān)聯(lián),就是序列模式。
推薦算法 Recommendation Algorithms

向量空間模型 隱含模式分析
推薦的兩個(gè)門類:基于內(nèi)容的推薦 協(xié)同過濾
我們不是討厭廣告,而是討厭那些自己不需要的廣告。給光頭賣洗發(fā)水,給盲人賣眼鏡。
合適的推薦在商業(yè)中極其重要
TF-IDF Term Frequency 頻率 Inverse Document Freuency tf*idf

單詞-文本矩陣
向量空間模型


協(xié)同過濾 Collaborative Filtering
比如要推測(cè)一個(gè)人喜不喜歡某部電影,就去詢問和他有相同喜好、品味的人喜不喜歡這部電影。進(jìn)而推測(cè)出目標(biāo)主體喜歡這個(gè)電影的概率。
冷啟動(dòng) 打分矩陣 相關(guān)性
集成學(xué)習(xí) 集體決策、共同頭片來(lái)確定一件事情的例子,轉(zhuǎn)化成算法,就是集成學(xué)習(xí)。
一個(gè)分類器達(dá)不到那么高的準(zhǔn)確度,那就多整幾個(gè)分類器,最后合起來(lái)。
又稱為多分類器系統(tǒng) 他不是某個(gè)具體的算法,而是算法的集合。

同一組輸入,交給不同的分類器、模型,最后把所有的分類器、模型的輸出綜合在一起,再做最終輸出。
我不多選一,我全都要
Combiners

不同的分類器,有不同的權(quán)重。權(quán)重代表重要性。
不同的分類器用來(lái)集成學(xué)習(xí)才是有意義的。若是所有人都發(fā)出同一種聲音,那么所謂的群策群力就沒意義了,還不如問一個(gè)人。
要保證用來(lái)集成學(xué)習(xí)的分類器生成的模型大體上相似,但是又各有不同。
不需要保證每個(gè)分類器都很強(qiáng),用很弱的分類器,可以合成很強(qiáng)大的分類器。用很強(qiáng)的分類器來(lái)進(jìn)行集成學(xué)習(xí),效果不一定好。
如何生成不同的訓(xùn)練樣本,同時(shí)服從相似的分布?
Bootstarp Samples 有放回的采樣

1.拿來(lái)一個(gè)數(shù)據(jù)集 2.采樣n次,生成n個(gè)樣本 3.用來(lái)生成n個(gè)分類器 4.然后那種結(jié)論多,就是輸出哪種結(jié)論

隨機(jī)森林 將很多樹組合在一起。

用bootstrap,自然情況下,就會(huì)有三分之一的元素不被選中。那些被選中的就是訓(xùn)練集,那些沒被選中的,就是自然生成的測(cè)試集。
一般不少于500棵樹,具體數(shù)量要根據(jù)具體情況來(lái)確定。
feature selection 屬性選擇 RF Random Forest隨機(jī)森林
Stacking 分層定高盤旋
兩層訓(xùn)練, 第一層,輸入數(shù)據(jù),子分類器輸出相應(yīng)的輸出。第二層,訓(xùn)練第一層輸出的權(quán)重。

boosting 激勵(lì) 訓(xùn)練分類器

基本思想:先訓(xùn)練兩個(gè)分類器,然后對(duì)比兩個(gè)分類器的結(jié)果。如果某樣本在兩個(gè)分類其中的分類結(jié)果不一致,說(shuō)明兩個(gè)分類器中肯定有一個(gè)分錯(cuò)了。對(duì)經(jīng)常犯錯(cuò)的樣本加上權(quán)重,然后讓后續(xù)的分類器來(lái)重點(diǎn)學(xué)習(xí)這些前級(jí)分類器會(huì)出錯(cuò)的樣本。核心思想就是對(duì)經(jīng)常分錯(cuò)的樣本進(jìn)行重點(diǎn)照顧。

bagging能夠降低模型的various
boosting對(duì)基礎(chǔ)分類器的要求很弱很弱,甚至強(qiáng)過隨機(jī)猜測(cè)就行。它是很多個(gè)較弱的分類器加在一起,勝過一個(gè)絕強(qiáng)的分類器。

模型串行訓(xùn)練,最后將所有的模型結(jié)合起來(lái)用。
十大算法之一

動(dòng)態(tài)權(quán)重 根據(jù)不同的樣本,分類器們各自擁有不同的權(quán)重。

bagging是并行生成,boosting是串行生成。
進(jìn)化計(jì)算 進(jìn)化 適者生存,而不是強(qiáng)者生存。
真正厲害的是能夠完美適應(yīng)環(huán)境變化的。
我們要學(xué)習(xí)自然,從自然中找靈感,而不是完全模仿自然。
優(yōu)化問題 以需求為核心,以選擇和行為為輔助,選擇最能滿足需求的做法。


目標(biāo)函數(shù) Objective Function
計(jì)算機(jī)最快可以算多快?和重量有關(guān),開關(guān)開關(guān),需要能量,能量和質(zhì)量有關(guān)。能量的最小單位是能量子,與普朗克常數(shù)有關(guān)。

質(zhì)量可以轉(zhuǎn)化為算力,也就是理論上單位質(zhì)量最大的算力。
用求導(dǎo)去優(yōu)化,容易陷入局部最優(yōu)的困境。
這時(shí)候可以用并行搜索,讓多個(gè)模型同時(shí)搜索,這樣就能盡量避免單一的模型陷入局部最優(yōu)解。
Blondie 24 協(xié)同進(jìn)化,自己跟自己下,水平提高。
一般情況下,程序的能力無(wú)法超過設(shè)計(jì)者的水平?;蛘吣芰υ诔绦虮辉O(shè)計(jì)的一開始就被定死了。但是使用進(jìn)化計(jì)算的程序,它可以自我進(jìn)化,可以逐漸提升自己的能力。
Gene 基因 Gene Trait 基因控制的性狀 Allele 性狀的集合
Genetic Algorithms 遺傳算法 John Holland
chromosome 染色體 Mutation 變異

Representation表達(dá) Crossover雜交

精英選擇,把原來(lái)最好的,直接保送到下一代,防止雜交使得原來(lái)好的,變成不好的。
一點(diǎn)雜交 One Point Crossover 選擇一個(gè)雜交位,其后面的交換位置,前面的不變。
Two Point Crossover 兩點(diǎn)雜交 Uniform Crossover
Mutation 變異,保證基因的多樣性。
雜交,選擇出合適的基因組合。
選擇,給最優(yōu)秀的個(gè)體以資源傾斜。





在遺傳算法中兩個(gè)親本雜交毫無(wú)意義,但是在GP中確實(shí)有意義的。


進(jìn)化電路 Evolvable Circuits 可編程電路
Artificial Life
理論上講,機(jī)器是人的身體與意志的延申,機(jī)器人、人工智能反過來(lái)壓迫人類的情況,就像是人的手腳奴役人類一樣。這可能會(huì)發(fā)生,比如某些壞習(xí)慣會(huì)讓人控制不住自己的手腳,但是,相較于它們帶來(lái)的收益或者進(jìn)步意義來(lái)說(shuō),風(fēng)險(xiǎn)是可以接受的。