人工智能的三大基石—算法蛋铆、數(shù)據(jù)和計(jì)算能力滨溉,算法作為其中之一,是非常重要的维咸,那么人工智能都會涉及哪些算法呢渠啤?不同算法適用于哪些場景呢狐肢?
一、按照模型訓(xùn)練方式不同可以分為監(jiān)督學(xué)習(xí)(Supervised Learning)埃篓,無監(jiān)督學(xué)習(xí)(Unsupervised Learning)处坪、半監(jiān)督學(xué)習(xí)(Semi-supervised Learning)和強(qiáng)化學(xué)習(xí)(Reinforcement Learning)四大類。
常見的監(jiān)督學(xué)習(xí)算法包含以下幾類:
(1)人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network)類:反向傳播(Backpropagation)、波爾茲曼機(jī)(Boltzmann Machine)同窘、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)玄帕、Hopfield網(wǎng)絡(luò)(hopfield Network)、多層感知器(Multilyer Perceptron)想邦、徑向基函數(shù)網(wǎng)絡(luò)(Radial Basis Function Network裤纹,RBFN)、受限波爾茲曼機(jī)(Restricted Boltzmann Machine)丧没、回歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network鹰椒,RNN)、自組織映射(Self-organizing Map呕童,SOM)漆际、尖峰神經(jīng)網(wǎng)絡(luò)(Spiking Neural Network)等。
(2)貝葉斯類(Bayesin):樸素貝葉斯(Naive Bayes)夺饲、高斯貝葉斯(Gaussian Naive Bayes)奸汇、多項(xiàng)樸素貝葉斯(Multinomial Naive Bayes)、平均-依賴性評估(Averaged One-Dependence Estimators往声,AODE)
貝葉斯信念網(wǎng)絡(luò)(Bayesian Belief Network擂找,BBN)、貝葉斯網(wǎng)絡(luò)(Bayesian Network浩销,BN)等贯涎。
(3)決策樹(Decision Tree)類:分類和回歸樹(Classification and Regression Tree,CART)慢洋、迭代Dichotomiser3(Iterative Dichotomiser 3塘雳, ID3),C4.5算法(C4.5 Algorithm)、C5.0算法(C5.0 Algorithm)且警、卡方自動交互檢測(Chi-squared Automatic Interaction Detection粉捻,CHAID)、決策殘端(Decision Stump)斑芜、ID3算法(ID3 Algorithm)肩刃、隨機(jī)森林(Random Forest)、SLIQ(Supervised Learning in Quest)等杏头。
(4)線性分類器(Linear Classifier)類:Fisher的線性判別(Fisher’s Linear Discriminant)
線性回歸(Linear Regression)盈包、邏輯回歸(Logistic Regression)、多項(xiàng)邏輯回歸(Multionmial Logistic Regression)醇王、樸素貝葉斯分類器(Naive Bayes Classifier)呢燥、感知(Perception)、支持向量機(jī)(Support Vector Machine)等寓娩。
常見的無監(jiān)督學(xué)習(xí)類算法包括:
(1) 人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network)類:生成對抗網(wǎng)絡(luò)(Generative Adversarial Networks叛氨,GAN)呼渣,前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Network)、邏輯學(xué)習(xí)機(jī)(Logic Learning Machine)寞埠、自組織映射(Self-organizing Map)等屁置。
(2) 關(guān)聯(lián)規(guī)則學(xué)習(xí)(Association Rule Learning)類:先驗(yàn)算法(Apriori Algorithm)、Eclat算法(Eclat Algorithm)仁连、FP-Growth算法等蓝角。
(3)分層聚類算法(Hierarchical Clustering):單連鎖聚類(Single-linkage Clustering),概念聚類(Conceptual Clustering)等饭冬。
(4)聚類分析(Cluster analysis):BIRCH算法使鹅、DBSCAN算法,期望最大化(Expectation-maximization昌抠,EM)患朱、模糊聚類(Fuzzy Clustering)、K-means算法扰魂、K均值聚類(K-means Clustering)麦乞、K-medians聚類、均值漂移算法(Mean-shift)劝评、OPTICS算法等。
(5)異常檢測(Anomaly detection)類:K最鄰近(K-nearest Neighbor倦淀,KNN)算法蒋畜,局部異常因子算法(Local Outlier Factor,LOF)等撞叽。
常見的半監(jiān)督學(xué)習(xí)類算法包含:生成模型(Generative Models)姻成、低密度分離(Low-density Separation)、基于圖形的方法(Graph-based Methods)愿棋、聯(lián)合訓(xùn)練(Co-training)等科展。
常見的強(qiáng)化學(xué)習(xí)類算法包含:Q學(xué)習(xí)(Q-learning)、狀態(tài)-行動-獎勵(lì)-狀態(tài)-行動(State-Action-Reward-State-Action糠雨,SARSA)才睹、DQN(Deep Q Network)、策略梯度算法(Policy Gradients)甘邀、基于模型強(qiáng)化學(xué)習(xí)(Model Based RL)琅攘、時(shí)序差分學(xué)習(xí)(Temporal Different Learning)等。
常見的深度學(xué)習(xí)類算法包含:深度信念網(wǎng)絡(luò)(Deep Belief Machines)松邪、深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks)坞琴、深度遞歸神經(jīng)網(wǎng)絡(luò)(Deep Recurrent Neural Network)、分層時(shí)間記憶(Hierarchical Temporal Memory逗抑,HTM)剧辐、深度波爾茲曼機(jī)(Deep Boltzmann Machine寒亥,DBM)、棧式自動編碼器(Stacked Autoencoder)荧关、生成對抗網(wǎng)絡(luò)(Generative Adversarial Networks)等溉奕。
二、按照解決任務(wù)的不同來分類羞酗,粗略可以分為二分類算法(Two-class Classification)腐宋、多分類算法(Multi-class Classification)、回歸算法(Regression)檀轨、聚類算法(Clustering)和異常檢測(Anomaly Detection)五種胸竞。
1.二分類(Two-class Classification)
(1)二分類支持向量機(jī)(Two-class SVM):適用于數(shù)據(jù)特征較多、線性模型的場景参萄。
(2)二分類平均感知器(Two-class Average Perceptron):適用于訓(xùn)練時(shí)間短卫枝、線性模型的場景。
(3)二分類邏輯回歸(Two-class Logistic Regression):適用于訓(xùn)練時(shí)間短讹挎、線性模型的場景校赤。
(4)二分類貝葉斯點(diǎn)機(jī)(Two-class Bayes Point Machine):適用于訓(xùn)練時(shí)間短、線性模型的場景筒溃。(5)二分類決策森林(Two-class Decision Forest):適用于訓(xùn)練時(shí)間短马篮、精準(zhǔn)的場景。
(6)二分類提升決策樹(Two-class Boosted Decision Tree):適用于訓(xùn)練時(shí)間短怜奖、精準(zhǔn)度高浑测、內(nèi)存占用量大的場景
(7)二分類決策叢林(Two-class Decision Jungle):適用于訓(xùn)練時(shí)間短、精確度高歪玲、內(nèi)存占用量小的場景迁央。
(8)二分類局部深度支持向量機(jī)(Two-class Locally Deep SVM):適用于數(shù)據(jù)特征較多的場景。
(9)二分類神經(jīng)網(wǎng)絡(luò)(Two-class Neural Network):適用于精準(zhǔn)度高滥崩、訓(xùn)練時(shí)間較長的場景岖圈。
解決多分類問題通常適用三種解決方案:第一種,從數(shù)據(jù)集和適用方法入手钙皮,利用二分類器解決多分類問題蜂科;第二種,直接使用具備多分類能力的多分類器株灸;第三種崇摄,將二分類器改進(jìn)成為多分類器今兒解決多分類問題。
常用的算法:
(1)多分類邏輯回歸(Multiclass Logistic Regression):適用訓(xùn)練時(shí)間短慌烧、線性模型的場景逐抑。
(2)多分類神經(jīng)網(wǎng)絡(luò)(Multiclass Neural Network):適用于精準(zhǔn)度高、訓(xùn)練時(shí)間較長的場景屹蚊。
(3)多分類決策森林(Multiclass Decision Forest):適用于精準(zhǔn)度高厕氨,訓(xùn)練時(shí)間短的場景进每。
(4)多分類決策叢林(Multiclass Decision Jungle):適用于精準(zhǔn)度高,內(nèi)存占用較小的場景命斧。
(5)“一對多”多分類(One-vs-all Multiclass):取決于二分類器效果田晚。
回歸
回歸問題通常被用來預(yù)測具體的數(shù)值而非分類。除了返回的結(jié)果不同国葬,其他方法與分類問題類似贤徒。我們將定量輸出,或者連續(xù)變量預(yù)測稱為回歸汇四;將定性輸出接奈,或者離散變量預(yù)測稱為分類。長巾的算法有:
(1)排序回歸(Ordinal Regression):適用于對數(shù)據(jù)進(jìn)行分類排序的場景通孽。
(2)泊松回歸(Poission Regression):適用于預(yù)測事件次數(shù)的場景序宦。
(3)快速森林分位數(shù)回歸(Fast Forest Quantile Regression):適用于預(yù)測分布的場景。
(4)線性回歸(Linear Regression):適用于訓(xùn)練時(shí)間短背苦、線性模型的場景互捌。
(5)貝葉斯線性回歸(Bayesian Linear Regression):適用于線性模型,訓(xùn)練數(shù)據(jù)量較少的場景行剂。
(6)神經(jīng)網(wǎng)絡(luò)回歸(Neural Network Regression):適用于精準(zhǔn)度高秕噪、訓(xùn)練時(shí)間較長的場景。
(7)決策森林回歸(Decision Forest Regression):適用于精準(zhǔn)度高厚宰、訓(xùn)練時(shí)間短的場景巢价。
(8)提升決策樹回歸(Boosted Decision Tree Regression):適用于精確度高、訓(xùn)練時(shí)間短固阁、內(nèi)存占用較大的場景。
聚類
聚類的目標(biāo)是發(fā)現(xiàn)數(shù)據(jù)的潛在規(guī)律和結(jié)構(gòu)城菊。聚類通常被用做描述和衡量不同數(shù)據(jù)源間的相似性备燃,并把數(shù)據(jù)源分類到不同的簇中。
(1)層次聚類(Hierarchical Clustering):適用于訓(xùn)練時(shí)間短凌唬、大數(shù)據(jù)量的場景并齐。
(2)K-means算法:適用于精準(zhǔn)度高、訓(xùn)練時(shí)間短的場景客税。
(3)模糊聚類FCM算法(Fuzzy C-means况褪,F(xiàn)CM):適用于精確度高、訓(xùn)練時(shí)間短的場景更耻。
(4)SOM神經(jīng)網(wǎng)絡(luò)(Self-organizing Feature Map测垛,SOM):適用于運(yùn)行時(shí)間較長的場景。
異常檢測
異常檢測是指對數(shù)據(jù)中存在的不正逞砭或非典型的分體進(jìn)行檢測和標(biāo)志食侮,有時(shí)也稱為偏差檢測号涯。
異常檢測看起來和監(jiān)督學(xué)習(xí)問題非常相似,都是分類問題锯七。都是對樣本的標(biāo)簽進(jìn)行預(yù)測和判斷链快,但是實(shí)際上兩者的區(qū)別非常大,因?yàn)楫惓z測中的正樣本(異常點(diǎn))非常小眉尸。常用的算法有:
(1)一分類支持向量機(jī)(One-class SVM):適用于數(shù)據(jù)特征較多的場景域蜗。
(2)基于PCA的異常檢測(PCA-based Anomaly Detection):適用于訓(xùn)練時(shí)間短的場景。
常見的遷移學(xué)習(xí)類算法包含:歸納式遷移學(xué)習(xí)(Inductive Transfer Learning) 噪猾、直推式遷移學(xué)習(xí)(Transductive Transfer Learning)霉祸、無監(jiān)督式遷移學(xué)習(xí)(Unsupervised Transfer Learning)、傳遞式遷移學(xué)習(xí)(Transitive Transfer Learning)等畏妖。
算法的適用場景:
需要考慮的因素有:
(1)數(shù)據(jù)量的大小脉执、數(shù)據(jù)質(zhì)量和數(shù)據(jù)本身的特點(diǎn)
(2)機(jī)器學(xué)習(xí)要解決的具體業(yè)務(wù)場景中問題的本質(zhì)是什么?
(3)可以接受的計(jì)算時(shí)間是什么戒劫?
(4)算法精度要求有多高半夷?
————————————————