吳恩達:機器學習的 6 個核心算法

導讀:這六種算法分別是:線性回歸、邏輯回歸、梯度下降、神經(jīng)網(wǎng)絡、決策樹與k均值聚類算法。

算法:線性和邏輯回歸、決策樹等 概念:正則化、優(yōu)化損失函數(shù)、偏差/方差等


汽車的油耗 y 與其重量 x 之間的關系取決于直線的斜率 w(油耗隨重量上升的幅度)和偏置項 b(零重量時的油耗):y=w*x+b。 在訓練期間,給定汽車的重量,算法會預測預期的油耗。它比較了預期和實際的油耗。然后,它將平方差最小化,通常通過普通最小二乘技術,磨練 w 和 b 的值。 考慮汽車的阻力可以生成更精確的預測。附加變量將線延伸到平面。通過這種方式,線性回歸可以容納任意數(shù)量的變量/維度。

訓練水平調(diào)整曲線的中心位置,垂直調(diào)整曲線的中間位置,以最大限度地減少函數(shù)輸出與數(shù)據(jù)之間的誤差。 將中心調(diào)整到右側或左側意味著殺死普通人需要或多或少的毒藥。陡峭的坡度意味著確定性:在中途點之前,大多數(shù)人幸存下來;超過一半,「就只能說再見了」(死亡的意思)。緩坡更寬容:低于曲線中部,一半以上幸存;再往上,只有不到一半的人會幸存。 在一個結果和另一個結果之間設置一個閾值,比如 0.5,曲線就變成了一個分類器。只需在模型中輸入劑量,您就會知道您應該計劃聚會還是葬禮。
在 1960 年代后期,英國統(tǒng)計學家 David Cox 和荷蘭統(tǒng)計學家 Henri Theil 獨立工作,對具有兩種以上可能結果的情況進行了邏輯回歸。 進一步的工作產(chǎn)生了有序邏輯回歸,其中結果是有序值。 為了處理稀疏或高維數(shù)據(jù),邏輯回歸可以利用與線性回歸相同的正則化技術。


基本方法是向地形下降最陡的方向移動。訣竅是校準你的步幅。步幅太小,就需要很長時間才能取得進展;步幅太大,你就會跳入未知的領域,可能是上坡而不是下坡。 給定當前位置,算法通過計算損失函數(shù)的梯度來估計最快下降的方向。梯度指向上坡,那么該算法就是通過減去梯度的一小部分來以相反的方向前進。稱為學習率的分數(shù) α 決定了再次測量梯度之前的步長。 反復做這幾個步驟,希望你能到達一個山谷。恭喜!

一個神經(jīng)元可接受各種輸入(例如,代表像素或單詞的數(shù)字,或前一層的輸出),將它們與權重相乘,乘積相加,并得出由開發(fā)人員選擇的非線性函數(shù)或激活函數(shù)的總和。期間要考慮到它是線性回歸、加上一個激活函數(shù)。 訓練修改權重。對于每個示例輸入,網(wǎng)絡會計算一個輸出并將其與預期輸出進行比較。反向傳播可通過梯度下降來改變權重,以減少實際輸出和預期輸出間的差異。當有足夠多(好的)例子重復這個過程足夠多次,網(wǎng)絡就能學會執(zhí)行這個任務。
這棵樹從一個可視為包含了所有案例的生物數(shù)據(jù)庫的根節(jié)點出發(fā)——黑猩猩、大猩猩和紅毛猩猩,以及卷尾猴、狒狒和狨猴。根會在兩個子節(jié)點間提供選擇,是否表現(xiàn)出某種特定特征,導致兩個子節(jié)點包含具有和不具有該特征的示例。以此類推,這個過程中以任意數(shù)量的葉節(jié)點結束,每個葉節(jié)點都包含大部分或全部屬于一個類別。 為了成長,樹必須找到根決策。要做選擇,則得考慮所有的特征及其價值——后附肢、桶狀胸等——并選擇能夠最大限度提高分割純度的那個特征。「最佳純度」被定義為一個類別示例會 100% 進入一個特定的子節(jié)點、而不進入另一個節(jié)點。分叉很少在只做了一個決定之后就百分之百純粹、且很可能永遠也達不到。隨著這個過程繼續(xù)進行,產(chǎn)生一個又一個層次的子節(jié)點,直至純度不會因為考慮更多的特征而增加多少。此時,這棵樹樹已經(jīng)完全訓練好了。 在推理時,一個新的示例從上到下經(jīng)歷過決策樹,完成每個級別不同決策的評估。它會得到它所在葉節(jié)點所包含的數(shù)據(jù)標簽。

在訓練期間,算法最初通過隨機選擇 k 人來指定 k 個質(zhì)心。(K 必須手動選擇,找到一個最優(yōu)值有時非常重要。)然后它通過將每個人與最近的質(zhì)心相關聯(lián)來增長 k 個集群。 對于每個集群,它計算分配到該組的所有人的平均位置,并將該平均位置指定為新的質(zhì)心。每個新的質(zhì)心可能都沒有被一個人占據(jù),但那又如何呢?人們傾向于聚集在巧克力和火鍋周圍。 計算出新的質(zhì)心后,算法將個體重新分配到離他們最近的質(zhì)心。然后它計算新的質(zhì)心,調(diào)整集群,等等,直到質(zhì)心(以及它們周圍的組)不再移動。之后,將新成員分配到正確的集群就很容易。讓他們在房間里就位并尋找最近的質(zhì)心。 預先警告:鑒于最初的隨機質(zhì)心分配,你可能最終不會與你希望與之相處的以數(shù)據(jù)為中心的可愛 AI 專家在同一組中。該算法做得很好,但不能保證找到最佳解決方案。
K-medoids 使用實際數(shù)據(jù)點作為質(zhì)心,而不是給定集群中的平均位置。中心點是可以將到集群中所有點的距離最小化的點。這種變化更容易解釋,因為質(zhì)心始終是數(shù)據(jù)點。 Fuzzy C-Means Clustering 使數(shù)據(jù)點能夠不同程度地參與多個集群。它根據(jù)與質(zhì)心的距離,用集群的度來代替硬簇分配。

延伸閱讀??

延伸閱讀《機器學習實戰(zhàn)》
評論
圖片
表情
