天天看點

重要的機器學習算法

通用的機器學習算法包括:

1.決策樹。

2.SVM。

3.樸素貝葉斯。

4.KNN。

5.K均值。

6.随機森林。

重要的機器學習算法

<b>1.</b><b>決策</b><b>樹:</b>

這是作者最喜歡的算法之一,作者經常使用它。它是一種主要用于分類問題的監督學習算法。令人驚訝的是,它竟然适用于分類和連續因變量。在這個算法中,我們可以将人口分成兩個或更多的齊次集合。這需要基于一些非常重要的屬性和獨立變量完成的,以使組群盡可能獨立。

Python代碼:

<b>R</b><b>代</b><b>碼</b>:

<b>2.</b><b>支援向量機(SVM)</b>

這是一種分類方法。在這個算法中,我們将每個資料項繪制為一個n維空間中的一個點(其中n是你擁有的特征的數量),每個特征的值是特定坐标的值。

例如,如果我們隻有兩個特征,比如一個人的身高和頭發長度,我們首先将這兩個變量繪制在二維空間中,每個點有兩個坐标值表示(稱為支援向量)。接着,我們将找到一些将兩個不同分類的資料組之間的資料分割的行,這将是兩組中最近點之間距離最遠的線。

<b>3.</b><b>樸素</b><b>貝</b><b>葉斯:</b>

這是一種基于貝葉斯定理的分類技術,假設預測變量之間具有獨立性。簡而言之,樸素貝葉斯分類器假設類中特定特征的存在與任何其他特征的存在無關。例如,如果果實呈紅色,圓形,直徑約3英寸,則果實可以被認為是蘋果。即使這些特征依賴于彼此或者依賴于其他特征的存在,樸素貝葉斯分類器也會考慮所有這些特性來獨立地預測該水果是蘋果的可能性。

樸素貝葉斯模型很容易建構,對于非常大的資料集特别有用。樸素貝葉斯是衆所周知的,高度複雜的分類方法。

貝葉斯定理提供了一種計算P(c),P(x)和P(x|c)的後驗機率的方法:P(c|x)。

·         P(c|x)是給定預測器(屬性)的類(目标)的後驗機率。

·         P(c)是類的先驗機率。

·         P(x|c)是預測器給定類的機率的可能性。

·         P(x)是預測器的先驗機率。

<b>4.KNN</b><b>(最近</b><b>鄰</b><b>居):</b>

這個算法可以用于分類和回歸問題。但在ML行業中分類問題更為廣泛。K近鄰是一種簡單的算法,它存儲所有可用的案例,并通過其K個鄰居的多數投票來分類新案例。KNN算法的核心是如果一個樣本在特征空間中的K個最相鄰樣本值得大多數屬于某一個類别,則該樣本也屬于這個類别,并具有這個類别上樣本的特性。其中判斷的依據是距離函數的計算。

這些距離函數可以是歐幾裡得,曼哈頓,闵可夫斯基或漢明距離。前三個函數用于連續函數,Hamming用于分類變量。如果K = 1,那麼這個情況就被簡單地配置設定給它最近的鄰居的類别。有時候,在執行KNN模組化時選擇K是一個巨大的挑戰。

KNN可以很容易地映射到我們的真實生活中。如果你想了解一個你不了解的人,你可能會想知道他們的密友和他們進入的圈子,以獲得他們的資訊!

選擇KNN之前需要考慮的事項是:

KNN在計算資源上是昂貴的。

變量應該被标準化,否則較高範圍的變量可能會偏差。

在進行KNN之前更多地處理預處理階段,如異常值/噪音消除。

<b>5.K</b><b>均</b><b>值:</b>

這是一種解決聚類問題的無監督算法,其過程遵循一個簡單的方法,即通過一定數量的聚類來分類給定的資料集(假設K個聚類)。群集内的資料點與同級群組是同質且異質的。

還記得從墨迹中弄出形狀嗎?K-means有點類似于這個活動。你可以通過看形狀破譯有多少不同的群集/人口存在!

K-means如何形成一個叢集:

K-均值為每個群集選取K個點數,稱為質心。

每個資料點形成具有最接近質心的群集,即K個群集。

根據現有叢集成員查找每個叢集的質心。

由于我們有新的質心,請重複步驟2和步驟3.從新質心找到每個資料點的最近距離,并與新的K個聚類關聯。重複這個過程直到收斂,即質心不變。

如何确定K的價值:

在K-means中,我們有簇,每個簇都有自己的質心。叢集内質心和資料點之差的平方和構成該叢集平方值的總和。另外,當所有群集的平方和的總和被加上時,它成為群集解決方案的平方和的總和。

我們知道,随着簇數量的增加,這個值會不斷下降,但是如果你繪制結果的話,你可能會看到,平方距離的總和急劇下降到某個K值,然後慢得多。這樣,我們就可以找到最佳的簇數。

<b>6.</b><b>随機森林:</b>

随機森林是一個決策樹集合的術語。在随機森林裡,我們有一系列被稱為森林的決策樹。為了根據屬性對新的對象進行分類,每棵樹都給出了一個分類,并且我們說這棵樹對那個分類“投票”,森林選擇票數最多的分類(在森林中的所有樹上)。

每棵樹種植和生長如下:

如果訓練集中的病例數為N,則随機抽取N個病例樣本,并進行替換。

如果有M個輸入變量,則指定一個數m &lt;&lt; M,使得從M中随機選擇每個m變量,并且使用m上的最佳劃分來分割節點。在森林生長期間,m的值保持不變。

每棵樹都盡可能地生長。沒有修剪。

文章原标題《important-machine-learning-algorithms》