人工智能十大流行算法
來源:學堂在線小助手
人工智能是什么?很多人都知道,但大多又都說不清楚。
事實上,人工智能已經存在于我們生活中很久了。
比如我們常常用到的郵箱,其中垃圾郵件過濾就是依靠人工智能;
比如每個智能手機都配備的指紋識別或人臉識別,也是用人工智能技術實現(xiàn)的;
比如疫情期間大規(guī)模使用的無人體溫檢測儀,同樣也使用了人工智能;
但對很多人來講,人工智能還是一個較為“高深”的技術,然而再高深的技術,也是從基礎原理開始的。
人工智能領域中就流傳著10大算法,它們的原理淺顯,很早就被發(fā)現(xiàn)、應用,甚至你在中學時就學過,在生活中也都極為常見。
本文用最簡單的語言來介紹目前最流行的10種人工智能的算法,讓對人工智能感興趣,或想要入門的同學,能有更為直觀的了解。
一、線性回歸
線性回歸(Linear Regression)可能是最流行的機器學習算法。線性回歸就是要找一條直線,并且讓這條直線盡可能地擬合散點圖中的數(shù)據(jù)點。它試圖通過將直線方程與該數(shù)據(jù)擬合來表示自變量(x 值)和數(shù)值結果(y 值)。然后就可以用這條線來預測未來的值!
這種算法最常用的技術是最小二乘法(Least of squares)。這個方法計算出最佳擬合線,以使得與直線上每個數(shù)據(jù)點的垂直距離最小??偩嚯x是所有數(shù)據(jù)點的垂直距離(綠線)的平方和。其思想是通過最小化這個平方誤差或距離來擬合模型。
例如,簡單線性回歸,它有一個自變量(x 軸)和一個因變量(y 軸)。
比如預測明年的房價漲幅、下一季度新產品的銷量等等。聽起來并不難,不過線性回歸算法的難點并不在于得出預測值,而在于如何更精確。為了那個可能十分細微的數(shù)字,多少工程師為之耗盡了青春和頭發(fā)。
二、邏輯回歸
邏輯回歸(Logistic regression)與線性回歸類似,但邏輯回歸的結果只能有兩個的值。如果說線性回歸是在預測一個開放的數(shù)值,那邏輯回歸更像是做一道是或不是的判斷題。
邏輯函數(shù)中Y值的范圍從 0 到 1,是一個概率值。邏輯函數(shù)通常呈S 型,曲線把圖表分成兩塊區(qū)域,因此適合用于分類任務。
比如上面的邏輯回歸曲線圖,顯示了通過考試的概率與學習時間的關系,可以用來預測是否可以通過考試。
邏輯回歸經常被電商或者外賣平臺用來預測用戶對品類的購買偏好。
三、決策樹
如果說線性和邏輯回歸都是把任務在一個回合內結束,那么決策樹(Decision Trees)就是一個多步走的動作,它同樣用于回歸和分類任務中,不過場景通常更復雜且具體。
舉個簡單例子,老師面對一個班級的學生,哪些是好學生?如果簡單判斷考試90分就算好學生好像太粗暴了,不能唯分數(shù)論。那面對成績不到90分的學生,我們可以從作業(yè)、出勤、提問等幾個方面分開討論。
以上就是一個決策樹的圖例,其中每一個有分叉的圈稱為節(jié)點。在每個節(jié)點上,我們根據(jù)可用的特征詢問有關數(shù)據(jù)的問題。左右分支代表可能的答案。最終節(jié)點(即葉節(jié)點)對應于一個預測值。
每個特征的重要性是通過自頂向下方法確定的。節(jié)點越高,其屬性就越重要。比如在上面例子中的老師就認為出勤率比做作業(yè)重要,所以出勤率的節(jié)點就更高,當然分數(shù)的節(jié)點更高。
四、樸素貝葉斯
樸素貝葉斯(Naive Bayes)是基于貝葉斯定理,即兩個條件關系之間。它測量每個類的概率,每個類的條件概率給出 x 的值。這個算法用于分類問題,得到一個二進制“是 / 非”的結果??纯聪旅娴姆匠淌?。
樸素貝葉斯分類器是一種流行的統(tǒng)計技術,經典應用是過濾垃圾郵件。
當然,小編****一頓火鍋,80%的人沒看懂上面這段話。(80%這個數(shù)字是小編猜的,但經驗直覺就是一種貝葉斯式的計算。)
用非術語解釋貝葉斯定理,就是通過A條件下發(fā)生B的概率,去得出B條件下發(fā)生A的概率。比如說,小貓喜歡你,有a%可能性在你面前翻肚皮,請問小貓在你面前翻肚皮,有多少概率喜歡你?
當然,這樣做題,等于抓瞎,所以我們還需要引入其他數(shù)據(jù),比如小貓喜歡你,有b%可能和你貼貼,有c%概率發(fā)出呼嚕聲。所以我們如何知道小貓有多大概率喜歡自己呢,通過貝葉斯定理就可以從翻肚皮,貼貼和呼嚕的概率中計算出來。
貓:別算了,我不喜歡你
五、支持向量機
支持向量機(Support Vector Machine,SVM)是一種用于分類問題的監(jiān)督算法。支持向量機試圖在數(shù)據(jù)點之間繪制兩條線,它們之間的邊距最大。為此,我們將數(shù)據(jù)項繪制為 n 維空間中的點,其中,n 是輸入特征的數(shù)量。在此基礎上,支持向量機找到一個最優(yōu)邊界,稱為超平面(Hyperplane),它通過類標簽將可能的輸出進行最佳分離。
超平面與最近的類點之間的距離稱為邊距。最優(yōu)超平面具有最大的邊界,可以對點進行分類,從而使最近的數(shù)據(jù)點與這兩個類之間的距離最大化。
所以支持向量機想要解決的問題也就是如何把一堆數(shù)據(jù)做出區(qū)隔,它的主要應用場景有字符識別、面部識別、文本分類等各種識別。
六、K- 最近鄰算法(KNN)
K- 最近鄰算法(K-Nearest Neighbors,KNN)非常簡單。KNN 通過在整個訓練集中搜索 K 個最相似的實例,即 K 個鄰居,并為所有這些 K 個實例分配一個公共輸出變量,來對對象進行分類。
K 的選擇很關鍵:較小的值可能會得到大量的噪聲和不準確的結果,而較大的值是不可行的。它最常用于分類,但也適用于回歸問題。
用于評估實例之間相似性的距離可以是歐幾里得距離(Euclidean distance)、曼哈頓距離(Manhattan distance)或明氏距離(Minkowski distance)。歐幾里得距離是兩點之間的普通直線距離。它實際上是點坐標之差平方和的平方根。
KNN理論簡單,容易實現(xiàn),可用于文本分類、模式識別、聚類分析等。
七、K-均值
K-均值(K-means)是通過對數(shù)據(jù)集進行分類來聚類的。例如,這個算法可用于根據(jù)購買歷史將用戶分組。它在數(shù)據(jù)集中找到 K 個聚類。K- 均值用于無監(jiān)督學習,因此,我們只需使用訓練數(shù)據(jù) X,以及我們想要識別的聚類數(shù)量 K。
該算法根據(jù)每個數(shù)據(jù)點的特征,將每個數(shù)據(jù)點迭代地分配給 K 個組中的一個組。它為每個 K- 聚類(稱為質心)選擇 K 個點?;谙嗨贫?,將新的數(shù)據(jù)點添加到具有最近質心的聚類中。這個過程一直持續(xù)到質心停止變化為止。
生活中,K-均值在欺詐檢測中扮演了重要角色,在汽車、醫(yī)療保險和保險欺詐檢測領域中廣泛應用。
八、隨機森林
隨機森林(Random Forest)是一種非常流行的集成機器學習算法。這個算法的基本思想是,許多人的意見要比個人的意見更準確。在隨機森林中,我們使用決策樹集成(參見決策樹)。
(a)在訓練過程中,每個決策樹都是基于訓練集的引導樣本來構建的。
(b)在分類過程中,輸入實例的決定是根據(jù)多數(shù)投****做出的。
隨機森林擁有廣泛的應用前景,從市場營銷到醫(yī)療保健保險,既可以用來做市場營銷模擬的建模,統(tǒng)計客戶來源、保留及流失,也可以用來預測疾病的風險和病患者的易感性。
九、降維
由于我們今天能夠捕獲的數(shù)據(jù)量之大,機器學習問題變得更加復雜。這就意味著訓練極其緩慢,而且很難找到一個好的解決方案。這一問題,通常被稱為“維數(shù)災難”(Curse of dimensionality)。
降維(Dimensionality reduction)試圖在不丟失最重要信息的情況下,通過將特定的特征組合成更高層次的特征來解決這個問題。主成分分析(Principal Component Analysis,PCA)是最流行的降維技術。
主成分分析通過將數(shù)據(jù)集壓縮到低維線或超平面 / 子空間來降低數(shù)據(jù)集的維數(shù)。這盡可能地保留了原始數(shù)據(jù)的顯著特征。
可以通過將所有數(shù)據(jù)點近似到一條直線來實現(xiàn)降維的示例。
十、人工神經網絡(ANN)
人工神經網絡(Artificial Neural Networks,ANN)可以處理大型復雜的機器學習任務。神經網絡本質上是一組帶有權值的邊和節(jié)點組成的相互連接的層,稱為神經元。在輸入層和輸出層之間,我們可以插入多個隱藏層。人工神經網絡使用了兩個隱藏層。除此之外,還需要處理深度學習。
人工神經網絡的工作原理與大腦的結構類似。一組神經元被賦予一個隨機權重,以確定神經元如何處理輸入數(shù)據(jù)。通過對輸入數(shù)據(jù)訓練神經網絡來學習輸入和輸出之間的關系。在訓練階段,系統(tǒng)可以訪問正確的答案。
如果網絡不能準確識別輸入,系統(tǒng)就會調整權重。經過充分的訓練后,它將始終如一地識別出正確的模式。
每個圓形節(jié)點表示一個人工神經元,箭頭表示從一個人工神經元的輸出到另一個人工神經元的輸入的連接。
圖像識別,就是神經網絡中的一個著名應用。
現(xiàn)在,你已經了解了最流行的人工智能算法的基礎介紹,并且,對它們的實際應用也有了一定認識。
*博客內容為網友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。