【機器學習】機器學習面試乾貨精講

產業智慧官發表於2018-03-29

【機器學習】機器學習面試乾貨精講

來源 | Gitchat

編輯 | 哈比

序言

本文儘可能的不涉及到繁雜的數學公式,把面試中常問的模型核心點,用比較通俗易懂但又不是專業性的語言進行描述。

希望可以幫助大家在找工作時提綱挈領的複習最核心的內容,或是在準備的過程中抓住每個模型的重點。

實戰環境說明:

  • Python 2.7;

  • Sklearn 0.19.0;

  • graphviz 0.8.1 決策樹視覺化。



一、決策樹


1.1 原理

顧名思義,決策樹就是用一棵樹來表示我們的整個決策過程。這棵樹可以是二叉樹(比如 CART 只能是二叉樹),也可以是多叉樹(比如 ID3、C4.5 可以是多叉樹或二叉樹)。

根節點包含整個樣本集,每個葉節都對應一個決策結果(注意,不同的葉節點可能對應同一個決策結果),每一個內部節點都對應一次決策過程或者說是一次屬性測試。從根節點到每個葉節點的路徑對應一個判定測試序列。

舉個例子:

【機器學習】機器學習面試乾貨精講

就像上面這個例子,訓練集由三個特徵:outlook(天氣),humidity(溼度),windy(是否有風)。

那麼我們該如何選擇特徵對訓練集進行劃分那?連續型特徵(比如溼度)劃分的閾值又是如何確定的?

決策樹的生成就是不斷的選擇最優的特徵對訓練集進行劃分,是一個遞迴的過程。遞迴返回的條件有三種:

(1)當前節點包含的樣本屬於同一類別,無需劃分;

(2)當前屬性集為空,或所有樣本在屬性集上取值相同,無法劃分;

(3)當前節點包含樣本集合為空,無法劃分。

1.2 ID3、C4.5、CART

這三個是非常著名的決策樹演算法。簡單粗暴來說,ID3 使用資訊增益作為選擇特徵的準則;C4.5 使用資訊增益比作為選擇特徵的準則;CART 使用 Gini 指數作為選擇特徵的準則。

ID3

熵表示的是資料中包含的資訊量大小。熵越小,資料的純度越高,也就是說資料越趨於一致,這是我們希望的劃分之後每個子節點的樣子。

資訊增益 = 劃分前熵 - 劃分後熵。資訊增益越大,則意味著使用屬性 a 來進行劃分所獲得的 “純度提升” 越大 **。也就是說,用屬性 a 來劃分訓練集,得到的結果中純度比較高。

ID3 僅僅適用於二分類問題。ID3 僅僅能夠處理離散屬性。

C4.5

C4.5 克服了 ID3 僅僅能夠處理離散屬性的問題,以及資訊增益偏向選擇取值較多特徵的問題,使用資訊增益比來選擇特徵。資訊增益比 = 資訊增益 / 劃分前熵  選擇資訊增益比最大的作為最優特徵。

C4.5 處理連續特徵是先將特徵取值排序,以連續兩個值中間值作為劃分標準。嘗試每一種劃分,並計算修正後的資訊增益,選擇資訊增益最大的分裂點作為該屬性的分裂點。

CART

CART 與 ID3,C4.5 不同之處在於 CART 生成的樹必須是二叉樹。也就是說,無論是迴歸還是分類問題,無論特徵是離散的還是連續的,無論屬性取值有多個還是兩個,內部節點只能根據屬性值進行二分。

CART 的全稱是分類與迴歸樹。從這個名字中就應該知道,CART 既可以用於分類問題,也可以用於迴歸問題。

迴歸樹中,使用平方誤差最小化準則來選擇特徵並進行劃分。每一個葉子節點給出的預測值,是劃分到該葉子節點的所有樣本目標值的均值,這樣只是在給定劃分的情況下最小化了平方誤差。

要確定最優化分,還需要遍歷所有屬性,以及其所有的取值來分別嘗試劃分並計算在此種劃分情況下的最小平方誤差,選取最小的作為此次劃分的依據。由於迴歸樹生成使用平方誤差最小化準則,所以又叫做最小二乘迴歸樹。

分類樹種,使用 Gini 指數最小化準則來選擇特徵並進行劃分;

Gini 指數表示集合的不確定性,或者是不純度。基尼指數越大,集合不確定性越高,不純度也越大。這一點和熵類似。另一種理解基尼指數的思路是,基尼指數是為了最小化誤分類的概率。

1.3 資訊增益 vs 資訊增益比

之所以引入了資訊增益比,是由於資訊增益的一個缺點。那就是:資訊增益總是偏向於選擇取值較多的屬性。資訊增益比在此基礎上增加了一個罰項,解決了這個問題。

1.4 Gini 指數 vs 熵

既然這兩個都可以表示資料的不確定性,不純度。那麼這兩個有什麼區別那?

  • Gini 指數的計算不需要對數運算,更加高效;

  • Gini 指數更偏向於連續屬性,熵更偏向於離散屬性。

1.5 剪枝

決策樹演算法很容易過擬合(overfitting),剪枝演算法就是用來防止決策樹過擬合,提高泛華效能的方法。

剪枝分為預剪枝與後剪枝。

預剪枝是指在決策樹的生成過程中,對每個節點在劃分前先進行評估,若當前的劃分不能帶來泛化效能的提升,則停止劃分,並將當前節點標記為葉節點。

後剪枝是指先從訓練集生成一顆完整的決策樹,然後自底向上對非葉節點進行考察,若將該節點對應的子樹替換為葉節點,能帶來泛化效能的提升,則將該子樹替換為葉節點。

那麼怎麼來判斷是否帶來泛化效能的提升那?最簡單的就是留出法,即預留一部分資料作為驗證集來進行效能評估。

1.6 總結

決策樹演算法主要包括三個部分:特徵選擇、樹的生成、樹的剪枝。常用演算法有 ID3、C4.5、CART。

  • 特徵選擇。特徵選擇的目的是選取能夠對訓練集分類的特徵。特徵選擇的關鍵是準則:資訊增益、資訊增益比、Gini 指數;

  • 決策樹的生成。通常是利用資訊增益最大、資訊增益比最大、Gini 指數最小作為特徵選擇的準則。從根節點開始,遞迴的生成決策樹。相當於是不斷選取區域性最優特徵,或將訓練集分割為基本能夠正確分類的子集;

  • 決策樹的剪枝。決策樹的剪枝是為了防止樹的過擬合,增強其泛化能力。包括預剪枝和後剪枝。


二、隨機森林(Random Forest)


要說隨機森林就要先說 Bagging,要說 Bagging 就要先說整合學習。

【機器學習】機器學習面試乾貨精講

2.1 整合學習方法

整合學習(ensemble learning)通過構建並組合多個學習器來完成學習任務。整合學習通過將多個學習器進行結合,常獲得比單一學習器顯著優越的泛化效能。

根據個體學習器是否是同型別的學習器(由同一個演算法生成,比如 C4.5,BP 等),分為同質和異質。同質的個體學習器又叫做基學習器,而異質的個體學習器則直接成為個體學習器。

原則:要獲得比單一學習器更好的效能,個體學習器應該好而不同。即個體學習器應該具有一定的準確性,不能差於弱學習器,並且具有多樣性,即學習器之間有差異。

根據個體學習器的生成方式,目前整合學習分為兩大類:

  • 個體學習器之間存在強依賴關係、必須序列生成的序列化方法。代表是 Boosting;

  • 個體學習器之間不存在強依賴關係、可同時生成的並行化方法。代表是 Bagging 和隨機森林(Random Forest)。

2.2 Bagging

【機器學習】機器學習面試乾貨精講

前面提到,想要整合演算法獲得效能的提升,個體學習器應該具有獨立性。雖然 “獨立” 在現實生活中往往無法做到,但是可以設法讓基學習器儘可能的有較大的差異。

Bagging 給出的做法就是對訓練集進行取樣,產生出若干個不同的子集,再從每個訓練子集中訓練一個基學習器。由於訓練資料不同,我們的基學習器可望具有較大的差異。

Bagging 是並行式整合學習方法的代表,取樣方法是自助取樣法,用的是有放回的取樣。初始訓練集中大約有 63.2% 的資料出現在取樣集中。

Bagging 在預測輸出進行結合時,對於分類問題,採用簡單投票法;對於迴歸問題,採用簡單平均法。

Bagging 優點:

  • 高效。Bagging 整合與直接訓練基學習器的複雜度同階;

  • Bagging 能不經修改的適用於多分類、迴歸任務;

  • 包外估計。使用剩下的樣本作為驗證集進行包外估計(out-of-bag estimate)。

Bagging 主要關注降低方差。(low variance)

【機器學習】機器學習面試乾貨精講

2.3 隨機森林(Random Forest)

2.3.1 原理

隨機森林(Random Forest)是 Bagging 的一個變體。Ramdon Forest 在以決策樹為基學習器構建 Bagging 整合的基礎上,進一步在決策樹的訓練過程中引入隨機屬性選擇。

原來決策樹從所有屬性中,選擇最優屬性。Ramdom Forest 的每一顆決策樹中的每一個節點,先從該節點的屬性集中隨機選擇 K 個屬性的子集,然後從這個屬性子集中選擇最優屬性進行劃分。

K 控制了隨機性的引入程度,是一個重要的超引數。

預測 :

  • 分類:簡單投票法;

  • 迴歸:簡單平均法。

2.3.2 優缺點

優點:

  • 由於每次不再考慮全部的屬性,而是一個屬性子集,所以相比於 Bagging 計算開銷更小,訓練效率更高;

  • 由於增加了屬性的擾動,隨機森林中基學習器的效能降低,使得在隨機森林在起始時候效能較差,但是隨著基學習器的增多,隨機森林通常會收斂於更低的泛化誤差,相比於 Bagging;

  • 兩個隨機性的引入,使得隨機森林不容易陷入過擬合,具有很好的抗噪聲能力;

  • 對資料的適應能力強,可以處理離散和連續的,無需要規範化;

  • 可以得到變數的重要性, 基於 oob 誤分類率和基於 Gini 係數的變化。

缺點:

  • 在噪聲較大的時候容易過擬合。


三、AdaBoost


AdaBoost 是 Boosting 的代表,前面我們提到 Boosting 是整合學習中非常重要的一類序列化學習方法。

3.1 Boosting

【機器學習】機器學習面試乾貨精講

Boosting 是指個體學習器之間存在強依賴關係,必須序列序列化生成的整合學習方法。他的思想來源是三個臭皮匠頂個諸葛亮。Boosting 意為提升,意思是希望將每個弱學習器提升為強學習器。

工作機制如下:

  • 先從初始訓練集中學習一個基學習器;

  • 根據基學習器的表現對訓練樣本分佈進行調整,使得先前基學習器做錯的訓練樣本在後續收到更多關注;

  • 基於調整後的樣本分佈來訓練下一個基學習器;

  • 如此反覆,直到基學習器數目達到 T,最終將這 T 個基學習器進行加權結合。

對訓練樣本分佈調整,主要是通過增加誤分類樣本的權重,降低正確分類樣本的權重。

Boosting 關注的主要是降低偏差。(low bias)

3.2 AdaBoost 原理

【機器學習】機器學習面試乾貨精講

面臨兩個問題:


(1)在每一輪,如何改變訓練資料的概率分佈或者權值分佈。(也可以重取樣,但是 AdaBoost 沒這麼做);

(2)如何將弱分類器組合成強分類器。

AdaBoost 的做法:

(1)提高那些被前一輪弱分類器錯誤分類樣本的權值,降低那些被正確分類的樣本的權值。這樣一來,那些沒有得到正確分類的資料,由於其權值的加大而受到後一輪弱分類器的關注;

(2)採用加權多數表決。具體的,加大分類錯誤率低的分類器的權值,使其在表決中起較大作用,減少分類誤差率大的弱分類器的權值,使其在表決中起較小作用。

弱分類器被線性組合成為一個強分類器。

訓練目標:

  • 最小化指數損失函式。


三部分組成:

(1)分類器權重更新公式;

(2)樣本分佈(也就是樣本權重)更新公式;

(3)加性模型。 最小化指數損失函式。

3.3 AdaBoost 優缺點

優點:

  • 不改變所給的訓練資料,而不斷改變訓練資料的權值分佈,使得訓練資料在基本分類器的學習中起不同的作用。這是 AdaBoost 的一個特點;

  • 利用基本分類器的加權線性組合構建最終分類器,是 AdaBoost 的另一個特點;

  • AdaBoost 被實踐證明是一種很好的防止過擬合的方法,但至今為什麼至今沒從理論上證明。

缺點:

  • AdaBoost 只適用於二分類問題。



四、GBDT



GBDT(Gradient Boosting Decision Tree)又叫 MART(Multiple Additive Regression Tree)。是一種迭代的決策樹演算法。

本文從以下幾個方面進行闡述:

  1. Regression Decision Tree(DT);

  2. Gradient Boosting(GB);

  3. Shrinkage(演算法的一個重要演進分支,目前大部分原始碼都是基於該版本實現);

  4. GBDT 適用範圍;

  5. 與隨機森林的對比。

4.1 DT:迴歸樹 Regression Decision Tree

GDBT 中的樹全部都是迴歸樹,核心就是累加所有樹的結果作為最終結果。只有迴歸樹的結果累加起來才是有意義的,分類的結果加是沒有意義的。

GDBT 調整之後可以用於分類問題,但是內部還是迴歸樹。

這部分和決策樹中的是一樣的,無非就是特徵選擇。迴歸樹用的是最小化均方誤差,分類樹是用的是最小化基尼指數(CART)

4.2 GB:梯度迭代 Gradient Boosting

首先 Boosting 是一種整合方法。通過對弱分類器的組合得到強分類器,他是序列的,幾個弱分類器之間是依次訓練的。GBDT 的核心就在於,每一顆樹學習的是之前所有樹結論和的殘差。

Gradient 體現在:無論前面一顆樹的 cost function 是什麼,是均方差還是均差,只要它以誤差作為衡量標準,那麼殘差向量都是它的全域性最優方向,這就是 Gradient。

4.3 Shrinkage

Shrinkage(縮減)是 GBDT 演算法的一個重要演進分支,目前大部分的原始碼都是基於這個版本的。

核心思想在於:Shrinkage 認為每次走一小步來逼近結果的效果,要比每次邁一大步很快逼近結果的方式更容易防止過擬合。

也就是說,它不信任每次學習到的殘差,它認為每棵樹只學習到了真理的一小部分,累加的時候只累加一小部分,通過多學習幾棵樹來彌補不足。

具體的做法就是:仍然以殘差作為學習目標,但是對於殘差學習出來的結果,只累加一小部分(step* 殘差)逐步逼近目標,step 一般都比較小 0.01-0.001, 導致各個樹的殘差是漸變而不是陡變的。

本質上,Shrinkage 為每一顆樹設定了一個 weight,累加時要乘以這個 weight,但和 Gradient 沒有關係。

這個 weight 就是 step。跟 AdaBoost 一樣,Shrinkage 能減少過擬合也是經驗證明的,目前還沒有理論證明。

4.4 GBDT 適用範圍

  • GBDT 可以適用於迴歸問題(線性和非線性),相對於 logistic regression 僅能用於線性迴歸,GBDT 適用面更廣;

  • GBDT 也可用於二分類問題(設定閾值,大於為正,否則為負)和多分類問題。

4.5 GBDT 和隨機森林

  • GBDT 和隨機森林的相同點:

    • 都是由多棵樹組成;

    • 最終的結果都由多棵樹共同決定。

  • GBDT 和隨機森林的不同點:

    • 組成隨機森林的可以是分類樹、迴歸樹;組成 GBDT 只能是迴歸樹;

    • 組成隨機森林的樹可以並行生成(Bagging);GBDT 只能序列生成(Boosting);

    • 對於最終的輸出結果而言,隨機森林使用多數投票或者簡單平均;而 GBDT 則是將所有結果累加起來,或者加權累加起來;

    • 隨機森林對異常值不敏感,GBDT 對異常值非常敏感;

    • 隨機森林對訓練集一視同仁權值一樣,GBDT 是基於權值的弱分類器的整合;

    • 隨機森林通過減小模型的方差提高效能,GBDT 通過減少模型偏差提高效能。

TIP

1. GBDT 相比於決策樹有什麼優點

泛化效能更好!GBDT 的最大好處在於,每一步的殘差計算其實變相的增大了分錯樣本的權重,而已經分對的樣本則都趨向於 0。這樣後面就更加專注於那些分錯的樣本。

2. Gradient 體現在哪裡?

可以理解為殘差是全域性最優的絕對方向,類似於求梯度。

3. re-sample

GBDT 也可以在使用殘差的同時引入 Bootstrap re-sampling,GBDT 多數實現版本中引入了這個選項,但是是否一定使用有不同的看法。

原因在於 re-sample 導致的隨機性,使得模型不可復現,對於評估提出一定的挑戰,比如很難確定效能的提升是由於 feature 的原因還是 sample 的隨機因素。


五、Logistic 迴歸


  1. LR 原理;

  2. 引數估計;

  3. LR 的正則化;

  4. 為什麼 LR 能比線性迴歸好?

  5. LR 與 MaxEnt 的關係。

5.1 LR 模型原理

首先必須給出 Logistic 分佈:

u 是位置引數,r 是形狀引數。對稱點是 (u,1/2),r 越小,函式在 u 附近越陡峭。

【機器學習】機器學習面試乾貨精講【機器學習】機器學習面試乾貨精講

然後,二分類 LR 模型,是引數化的 logistic 分佈,使用條件概率來表示:

【機器學習】機器學習面試乾貨精講

然後,一個事件的機率(odds):指該事件發生與不發生的概率比值:

【機器學習】機器學習面試乾貨精講

對數機率:

【機器學習】機器學習面試乾貨精講

那麼對於邏輯迴歸而言,Y=1 的對數機率就是:

【機器學習】機器學習面試乾貨精講

最終,輸出 Y=1 的對數機率是輸入 x 的線性函式表示的模型,這就是邏輯迴歸模型。

5.2 引數估計

在統計學中,常常使用極大似然估計法來估計引數。即找到一組引數,使得在這組引數下,我們資料的似然度(概率)最大。

似然函式:

【機器學習】機器學習面試乾貨精講

對數似然函式:

【機器學習】機器學習面試乾貨精講

對應的損失函式:

【機器學習】機器學習面試乾貨精講

5.3 最優化方法

邏輯迴歸模型的引數估計中,最後就是對 J(W) 求最小值。這種不帶約束條件的最優化問題,常用梯度下降或牛頓法來解決。

使用梯度下降法求解邏輯迴歸引數估計

求 J(W) 梯度:g(w):

【機器學習】機器學習面試乾貨精講

更新 Wk:

$$ W_{k+1} = W_k - \lambda*g(W_k) $$

5.4 正則化

正則化為了解決過擬合問題。分為 L1 和 L2 正則化。主要通過修正損失函式,加入模型複雜性評估;

正則化是符合奧卡姆剃刀原理:在所有可能的模型中,能夠很好的解釋已知資料並且十分簡單的才是最好的模型。

【機器學習】機器學習面試乾貨精講

p 表示範數,p=1 和 p=2 分別應用 L1 和 L2 正則。

L1 正則化。向量中各元素絕對值之和。又叫做稀疏規則運算元(Lasso regularization)。關鍵在於能夠實現特徵的自動選擇,引數稀疏可以避免非必要的特徵引入的噪聲;

L2 正則化。使得每個元素都儘可能的小,但是都不為零。在迴歸裡面,有人把他的迴歸叫做嶺迴歸(Ridge Regression),也有人叫他 “權值衰減”(weight decay)。

【機器學習】機器學習面試乾貨精講

一句話總結就是:L1 會趨向於產生少量的特徵,而其他的特徵都是 0,而 L2 會選擇更多的特徵,這些特徵都會接近於 0.

5.5 邏輯迴歸 vs 線性迴歸

首先,邏輯迴歸比線性迴歸要好。

兩者都屬於廣義線性模型。

線性迴歸優化目標函式用的最小二乘法,而邏輯迴歸用的是最大似然估計。邏輯迴歸只是線上性迴歸的基礎上,將加權和通過 sigmoid 函式,對映到 0-1 範圍內空間。

線性迴歸在整個實數範圍內進行預測,敏感度一致,而分類範圍,需要在 [0,1]。而邏輯迴歸就是一種減小預測範圍,將預測值限定為 [0,1] 間的一種迴歸模型。

邏輯曲線在 z=0 時,十分敏感,在 z>>0 或 z<<0 處,都不敏感,將預測值限定為 (0,1)。邏輯迴歸的魯棒性比線性迴歸要好。

5.6 邏輯迴歸模型 vs 最大熵模型 MaxEnt

簡單粗暴的說:邏輯迴歸跟最大熵模型沒有本質區別。邏輯迴歸是最大熵對應為二類時的特殊情況,也就是說,當邏輯迴歸擴充套件為多類別的時候,就是最大熵模型。

最大熵原理:學習概率模型的時候,在所有可能的概率模型(分佈)中,熵最大的模型是最好的模型。


六、SVM 支援向量機


雖然我們們的目標是儘可能的不涉及到公式,但是提到 SVM 就沒有辦法不涉及到公式推導,因為面試中只要問到 SVM,最基本也是最難的問題就是:SVM 的對偶問題數學公式推導。

所以想學好機器學習,還是要塌下心來,不僅僅要把原理的核心思想掌握了,公式推導也要好好學習才行。

6.1 SVM 原理

簡單粗暴的說:SVM 的思路就是找到一個超平面將資料集進行正確的分類。對於在現有維度不可分的資料,利用核函式對映到高緯空間使其線性可分。

支援向量機 SVM 是一種二分類模型。它的基本模型是定義在特徵空間上的間隔最大的線性分類器,間隔最大使它有別於感知機。SVM 的學習策略是間隔最大化,可形式化為求解凸二次規劃問題。

SVM 分為:

  • 線性可分支援向量機。當訓練資料線性可分時,通過硬間隔最大化,學習到的一個線性分類器;

  • 線性支援向量機。當訓練資料近似線性可分時,通過軟間隔最大化,學習到的一個線性分類器;

  • 非線性支援向量機。當訓練資料線性不可分,通過使用核技巧及軟間隔最大化,學習非線性支援向量機。

【機器學習】機器學習面試乾貨精講

上圖中,X 表示負例,O 表示正例。此時的訓練資料可分,線性可分支援向量機對應著將兩類資料正確劃分並且間隔最大的直線。

6.1.1 支援向量與間隔

支援向量:線上性可分的情況下,訓練資料樣本集中的樣本點中與分離超平面距離最近的樣本點的例項稱為支援向量(support vector)。

函式間隔定義如下:

【機器學習】機器學習面試乾貨精講

yi 表示目標值,取值為 +1、-1. 函式間隔雖然可以表示分類預測的準確性以及確信度。但是有個不好的性質:只要成倍的改變 W 和 B,雖然此時的超平面並沒有改變,但是函式間隔會變大。

所以我們想到了對超平面的法向量 W 施加一些約束,比如規範化,使得間隔確定,這就引出了幾何間隔:

【機器學習】機器學習面試乾貨精講

支援向量學習的基本思想就是求解能夠正確劃分訓練資料集並且幾何間隔最大的分類超平面。

6.1.2 對偶問題

為了求解線性可分支援向量機的最優化問題:

【機器學習】機器學習面試乾貨精講

將它作為原始最優化問題,應用拉格朗日對偶性,通過求解對偶問題得到原始問題的最優解,這就是線性可分支援向量機的對偶演算法。

本來的演算法也可以求解 SVM,但是之所以要用對偶問題來求解,優點是:

  • 一是對偶問題往往更容易求解;

  • 二是自然引入核函式,進而推廣到非線性分類問題。

說點題外話,這也是面試中會被問到的一個問題:原始問題既然可以求解,為什麼還要轉換為對偶問題。

答案就是上述這兩點。由於篇幅的願意,此處就不在展開數學公式的推導了,大家可以參考《機器學習》與《統計學習方法》。

6.1.3 核函式

對於在原始空間中不可分的問題,在高維空間中是線性可分的。

【機器學習】機器學習面試乾貨精講

對於線性不可分的問題,使用核函式可以從原始空間對映到高緯空間,使得問題變得線性可分。核函式還可以使得在高維空間計算的內積在低維空間中通過一個函式來完成。

常用的核函式有:高斯核、線性核、多項式核。

6.1.4 軟間隔

線性可分問題的支援向量機學習方法,對現行不可分訓練資料是不適用的。所以講間隔函式修改為軟間隔,對於函式間隔,在其上加上一個鬆弛變數,使其滿足大於等於 1。約束條件變為:

【機器學習】機器學習面試乾貨精講

6.2 優缺點

缺點:

  • 時空開銷比較大,訓練時間長;

  • 核函式的選取比較難,主要靠經驗。

優點:

  • 在小訓練集上往往得到比較好的結果;

  • 使用核函式避開了高緯空間的複雜性;

  • 泛化能力強。



七、利用 sklearn 進行實戰



使用 sklearn 用決策樹來進行鶯尾花資料集的劃分問題。程式碼上沒有固定隨機種子,所以每次執行的結果會稍有不同。

資料集三維視覺化:

【機器學習】機器學習面試乾貨精講

在 Sepal length 和 Sepal width 二維上的視覺化:

【機器學習】機器學習面試乾貨精講【機器學習】機器學習面試乾貨精講【機器學習】機器學習面試乾貨精講【機器學習】機器學習面試乾貨精講

執行結果:

【機器學習】機器學習面試乾貨精講

Decision Tree 視覺化,也就是生成的決策樹:

【機器學習】機器學習面試乾貨精講

參考書籍


  • 《機器學習》周志華

  • 《統計學習方法》





Intel免費AI課程三部曲:機器學習、深度學習以及TensorFlow基礎

【機器學習】機器學習面試乾貨精講

翻譯 | AI科技大本營(公眾號ID:rgznai100)

校對 成龍

編輯 | 明明


Intel於近期釋出了三門AI系列的免費課程,分別是關於機器學習基礎、深度學習基礎、TensorFlow基礎三個方面。據悉,該系列免費課程主要針對研究生階段的學生,營長將三門課程概要及連結整理如下。


課程1:機器學習基礎


概要


本課程介紹了Intel架構中的機器學習基礎知識。涵蓋的主題包括:


  • 回顧了機器學習可以解決的問題型別

  • 理解機器學習演算法中的各組成模組

  • 學習在機器學習中構建模型的基礎知識

  • 探索關鍵演算法


在本課程結束時,學生將瞭解以下內容:


  • 監督學習演算法

  • 機器學習關鍵概念:如過擬合,正則化和交叉驗證

  • 如何識別待解決問題的型別,選擇正確的演算法,調整引數並驗證模型


本次免費課有12周的課程,每週至少需要3個小時才能完成。並且這些課程的練習需要用Python來實現。


課程網址:

https://software.intel.com/en-us/ai-academy/students/kits/machine-learning-501


課程2:深度學習基礎


概要


本課程介紹了Intel架構中的深度學習基礎知識。深度學習在計算機視覺和自然語言處理方面所實現的優異表現,使其在業界引起了極大關注。


在本課程結束時,學生將對以下內容有一個明確的理解:


  • 深度學習的技術,專業術語和有關數學知識

  • 神經網路基本框架:前饋神經網路,卷積神經網路和迴圈神經網路

  • 如何適當地構建和訓練這些模型

  • 各種深度學習應用

  • 如何使用預先訓練好的模型獲得最佳結果


本次免費課有12周的課程,每週至少需要3個小時才能完成。


課程網址:

https://software.intel.com/en-us/ai-academy/students/kits/deep-learning-501

【機器學習】機器學習面試乾貨精講


課程3:TensorFlow基礎


概要


TensorFlow是一個流行的機器學習框架和資料流程式設計的開源庫。在本課程中,您將瞭解:


  • 用TensorFlow構建模型的基礎

  • 機器學習基礎知識:如線性迴歸,損失函式,梯度下降

  • 重要的技術:如標準化、正則化和小批量處理(mini-batching)

  • “核化”以及如何將它們應用於卷積神經網路(CNN)

  • CNN的基本模板以及不同的可調引數

  • TFRecord, queues, coordinators


    在本課程結束時,學生將對以下內容有一個明確的理解:


    • 基礎網路結構,卷積核,池化和多分類任務

    • 如何將基礎網路擴充套件到更復雜的網路

    • 通過在現有網路上使用遷移學習來利用它們的優勢


    本次免費課有8周的課程,每週至少需要3個小時才能完成。


    課程網址:

    https://software.intel.com/en-us/ai-academy/students/kits/tensor-flow-501

    【機器學習】機器學習面試乾貨精講



    人工智慧賽博物理作業系統

    AI-CPS OS

    人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS:雲端計算+大資料+物聯網+區塊鏈+人工智慧)分支用來的今天,企業領導者必須瞭解如何將“技術”全面滲入整個公司、產品等“商業”場景中,利用AI-CPS OS形成數字化+智慧化力量,實現行業的重新佈局、企業的重新構建和自我的煥然新生。


    AI-CPS OS的真正價值並不來自構成技術或功能,而是要以一種傳遞獨特競爭優勢的方式將自動化+資訊化、智造+產品+服務資料+分析一體化,這種整合方式能夠釋放新的業務和運營模式。如果不能實現跨功能的更大規模融合,沒有顛覆現狀的意願,這些將不可能實現。


    領導者無法依靠某種單一戰略方法來應對多維度的數字化變革。面對新一代技術+商業作業系統AI-CPS OS顛覆性的數字化+智慧化力量,領導者必須在行業、企業與個人這三個層面都保持領先地位:

    1. 重新行業佈局:你的世界觀要怎樣改變才算足夠?你必須對行業典範進行怎樣的反思?

    2. 重新構建企業:你的企業需要做出什麼樣的變化?你準備如何重新定義你的公司?

    3. 重新打造自己:你需要成為怎樣的人?要重塑自己並在數字化+智慧化時代保有領先地位,你必須如何去做?

    AI-CPS OS是數字化智慧化創新平臺,設計思路是將大資料、物聯網、區塊鏈和人工智慧等無縫整合在雲端,可以幫助企業將創新成果融入自身業務體系,實現各個前沿技術在雲端的優勢協同。AI-CPS OS形成的字化+智慧化力量與行業、企業及個人三個層面的交叉,形成了領導力模式,使數字化融入到領導者所在企業與領導方式的核心位置:

    1. 精細種力量能夠使人在更加真實、細緻的層面觀察與感知現實世界和數字化世界正在發生的一切,進而理解和更加精細地進行產品個性化控制、微觀業務場景事件和結果控制。

    2. 智慧:模型隨著時間(資料)的變化而變化,整個系統就具備了智慧(自學習)的能力。

    3. 高效:企業需要建立實時或者準實時的資料採集傳輸、模型預測和響應決策能力,這樣智慧就從批量性、階段性的行為變成一個可以實時觸達的行為。

    4. 不確定性:數字化變更顛覆和改變了領導者曾經仰仗的思維方式、結構和實踐經驗,其結果就是形成了複合不確定性這種顛覆性力量。主要的不確定性蘊含於三個領域:技術、文化、制度。

    5. 邊界模糊:數字世界與現實世界的不斷融合成CPS不僅讓人們所知行業的核心產品、經濟學定理和可能性都產生了變化,還模糊了不同行業間的界限。這種效應正在向生態系統、企業、客戶、產品快速蔓延。

    AI-CPS OS形成的數字化+智慧化力量通過三個方式激發經濟增長:

    1. 創造虛擬勞動力,承擔需要適應性和敏捷性的複雜任務,即“智慧自動化”,以區別於傳統的自動化解決方案;

    2. 對現有勞動力和實物資產進行有利的補充和提升,提高資本效率

    3. 人工智慧的普及,將推動多行業的相關創新,開闢嶄新的經濟增長空間


    給決策制定者和商業領袖的建議:

    1. 超越自動化,開啟新創新模式:利用具有自主學習和自我控制能力的動態機器智慧,為企業創造新商機;

    2. 迎接新一代資訊科技,迎接人工智慧:無縫整合人類智慧與機器智慧,重新

      評估未來的知識和技能型別;

    3. 制定道德規範:切實為人工智慧生態系統制定道德準則,並在智慧機器的開

      發過程中確定更加明晰的標準和最佳實踐;

    4. 重視再分配效應:對人工智慧可能帶來的衝擊做好準備,制定戰略幫助面臨

      較高失業風險的人群;

    5. 開發數字化+智慧化企業所需新能力:員工團隊需要積極掌握判斷、溝通及想象力和創造力等人類所特有的重要能力。對於中國企業來說,創造兼具包容性和多樣性的文化也非常重要。


    子曰:“君子和而不同,小人同而不和。”  《論語·子路》雲端計算、大資料、物聯網、區塊鏈和 人工智慧,像君子一般融合,一起體現科技就是生產力。


    如果說上一次哥倫布地理大發現,擴充的是人類的物理空間。那麼這一次地理大發現,擴充的就是人們的數字空間。在數學空間,建立新的商業文明,從而發現新的創富模式,為人類社會帶來新的財富空間。雲端計算,大資料、物聯網和區塊鏈,是進入這個數字空間的船,而人工智慧就是那船上的帆,哥倫布之帆!


    新一代技術+商業的人工智慧賽博物理作業系統AI-CPS OS作為新一輪產業變革的核心驅動力,將進一步釋放歷次科技革命和產業變革積蓄的巨大能量,並創造新的強大引擎。重構生產、分配、交換、消費等經濟活動各環節,形成從巨集觀到微觀各領域的智慧化新需求,催生新技術、新產品、新產業、新業態、新模式。引發經濟結構重大變革,深刻改變人類生產生活方式和思維模式,實現社會生產力的整體躍升。



    產業智慧官  AI-CPS


    用“人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS”:雲端計算+大資料+物聯網+區塊鏈+人工智慧)在場景中構建狀態感知-實時分析-自主決策-精準執行-學習提升的認知計算和機器智慧;實現產業轉型升級、DT驅動業務、價值創新創造的產業互聯生態鏈


    【機器學習】機器學習面試乾貨精講

    【機器學習】機器學習面試乾貨精講

    長按上方二維碼關注微信公眾號: AI-CPS,更多資訊回覆:


    新技術“雲端計算”、“大資料”、“物聯網”、“區塊鏈”、“人工智慧新產業:智慧製造”、智慧金融”、“智慧零售”、“智慧駕駛”、智慧城市新模式:“財富空間“工業網際網路”、“資料科學家”、“賽博物理系統CPS”、“供應鏈金融”


    官方網站:AI-CPS.NET



    本文系“產業智慧官”(公眾號ID:AI-CPS)收集整理,轉載請註明出處!



    版權宣告產業智慧官(公眾號ID:AI-CPS推薦的文章,除非確實無法確認,我們都會註明作者和來源。部分文章推送時未能與原作者取得聯絡。若涉及版權問題,煩請原作者聯絡我們,與您共同協商解決。聯絡、投稿郵箱:erp_vip@hotmail.com





    相關文章