0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機(jī)器學(xué)習(xí)領(lǐng)域?qū)⑺惴ò凑諏W(xué)習(xí)方式分類進(jìn)行問題解決

dytfki8u8yql ? 來源:電子技術(shù)控 ? 作者:電子技術(shù)控 ? 2022-11-22 10:40 ? 次閱讀

根據(jù)數(shù)據(jù)類型的不同,對一個(gè)問題的建模有不同的方式。在機(jī)器學(xué)習(xí)或者人工智能領(lǐng)域,人們首先會考慮算法的學(xué)習(xí)方式。在機(jī)器學(xué)習(xí)領(lǐng)域,有幾種主要的學(xué)習(xí)方式。將算法按照學(xué)習(xí)方式分類是一個(gè)不錯(cuò)的想法,這樣可以讓人們在建模和算法選擇的時(shí)候考慮能根據(jù)輸入數(shù)據(jù)來選擇最合適的算法來獲得最好的結(jié)果。

aa6b895a-6994-11ed-8abf-dac502259ad0.jpg

1. 監(jiān)督式學(xué)習(xí):

aa892596-6994-11ed-8abf-dac502259ad0.jpg

在監(jiān)督式學(xué)習(xí)下,輸入數(shù)據(jù)被稱為“訓(xùn)練數(shù)據(jù)”,每組訓(xùn)練數(shù)據(jù)有一個(gè)明確的標(biāo)識或結(jié)果,如對防垃圾郵件系統(tǒng)中“垃圾郵件”“非垃圾郵件”,對手寫數(shù)字識別中的“1“,”2“,”3“,”4“等。在建立預(yù)測模型的時(shí)候,監(jiān)督式學(xué)習(xí)建立一個(gè)學(xué)習(xí)過程,將預(yù)測結(jié)果與“訓(xùn)練數(shù)據(jù)”的實(shí)際結(jié)果進(jìn)行比較,不斷的調(diào)整預(yù)測模型,直到模型的預(yù)測結(jié)果達(dá)到一個(gè)預(yù)期的準(zhǔn)確率。監(jiān)督式學(xué)習(xí)的常見應(yīng)用場景如分類問題和回歸問題。常見算法有邏輯回歸(Logistic Regression)和反向傳遞神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network) 2. 非監(jiān)督式學(xué)習(xí):

aaa17416-6994-11ed-8abf-dac502259ad0.jpg

在非監(jiān)督式學(xué)習(xí)中,數(shù)據(jù)并不被特別標(biāo)識,學(xué)習(xí)模型是為了推斷出數(shù)據(jù)的一些內(nèi)在結(jié)構(gòu)。常見的應(yīng)用場景包括關(guān)聯(lián)規(guī)則的學(xué)習(xí)以及聚類等。常見算法包括Apriori算法以及k-Means算法。 3. 半監(jiān)督式學(xué)習(xí):

aab96d96-6994-11ed-8abf-dac502259ad0.png

在此學(xué)習(xí)方式下,輸入數(shù)據(jù)部分被標(biāo)識,部分沒有被標(biāo)識,這種學(xué)習(xí)模型可以用來進(jìn)行預(yù)測,但是模型首先需要學(xué)習(xí)數(shù)據(jù)的內(nèi)在結(jié)構(gòu)以便合理的組織數(shù)據(jù)來進(jìn)行預(yù)測。應(yīng)用場景包括分類和回歸,算法包括一些對常用監(jiān)督式學(xué)習(xí)算法的延伸,這些算法首先試圖對未標(biāo)識數(shù)據(jù)進(jìn)行建模,在此基礎(chǔ)上再對標(biāo)識的數(shù)據(jù)進(jìn)行預(yù)測。如圖論推理算法(Graph Inference)或者拉普拉斯支持向量機(jī)(Laplacian SVM.)等。 4. 強(qiáng)化學(xué)習(xí):

aad0831e-6994-11ed-8abf-dac502259ad0.jpg

在這種學(xué)習(xí)模式下,輸入數(shù)據(jù)作為對模型的反饋,不像監(jiān)督模型那樣,輸入數(shù)據(jù)僅僅是作為一個(gè)檢查模型對錯(cuò)的方式,在強(qiáng)化學(xué)習(xí)下,輸入數(shù)據(jù)直接反饋到模型,模型必須對此立刻作出調(diào)整。常見的應(yīng)用場景包括動態(tài)系統(tǒng)以及機(jī)器人控制等。常見算法包括Q-Learning以及時(shí)間差學(xué)習(xí)(Temporal difference learning) 在企業(yè)數(shù)據(jù)應(yīng)用的場景下, 人們最常用的可能就是監(jiān)督式學(xué)習(xí)和非監(jiān)督式學(xué)習(xí)的模型。在圖像識別等領(lǐng)域,由于存在大量的非標(biāo)識的數(shù)據(jù)和少量的可標(biāo)識數(shù)據(jù), 目前半監(jiān)督式學(xué)習(xí)是一個(gè)很熱的話題。而強(qiáng)化學(xué)習(xí)更多的應(yīng)用在機(jī)器人控制及其他需要進(jìn)行系統(tǒng)控制的領(lǐng)域。 5. 算法類似性 根據(jù)算法的功能和形式的類似性,我們可以把算法分類,比如說基于樹的算法,基于神經(jīng)網(wǎng)絡(luò)的算法等等。當(dāng)然,機(jī)器學(xué)習(xí)的范圍非常龐大,有些算法很難明確歸類到某一類。而對于有些分類來說,同一分類的算法可以針對不同類型的問題。這里,我們盡量把常用的算法按照最容易理解的方式進(jìn)行分類。 6. 回歸算法:

aae8d554-6994-11ed-8abf-dac502259ad0.jpg

回歸算法是試圖采用對誤差的衡量來探索變量之間的關(guān)系的一類算法。回歸算法是統(tǒng)計(jì)機(jī)器學(xué)習(xí)的利器。在機(jī)器學(xué)習(xí)領(lǐng)域,人們說起回歸,有時(shí)候是指一類問題,有時(shí)候是指一類算法,這一點(diǎn)常常會使初學(xué)者有所困惑。常見的回歸算法包括:最小二乘法(Ordinary Least Square),邏輯回歸(Logistic Regression),逐步式回歸(Stepwise Regression),多元自適應(yīng)回歸樣條(Multivariate Adaptive Regression Splines)以及本地散點(diǎn)平滑估計(jì)(Locally Estimated Scatterplot Smoothing) 7. 基于實(shí)例的算法

ab04a7b6-6994-11ed-8abf-dac502259ad0.jpg

基于實(shí)例的算法常常用來對決策問題建立模型,這樣的模型常常先選取一批樣本數(shù)據(jù),然后根據(jù)某些近似性把新數(shù)據(jù)與樣本數(shù)據(jù)進(jìn)行比較。通過這種方式來尋找最佳的匹配。因此,基于實(shí)例的算法常常也被稱為“贏家通吃”學(xué)習(xí)或者“基于記憶的學(xué)習(xí)”。常見的算法包括 k-Nearest Neighbor(KNN), 學(xué)習(xí)矢量量化(Learning Vector Quantization, LVQ),以及自組織映射算法(Self-Organizing Map , SOM) 8. 正則化方法

ab1d2b06-6994-11ed-8abf-dac502259ad0.png

正則化方法是其他算法(通常是回歸算法)的延伸,根據(jù)算法的復(fù)雜度對算法進(jìn)行調(diào)整。正則化方法通常對簡單模型予以獎勵而對復(fù)雜算法予以懲罰。常見的算法包括:Ridge Regression,Least Absolute Shrinkage and Selection Operator(LASSO),以及彈性網(wǎng)絡(luò)(Elastic Net)。 9. 決策樹學(xué)習(xí)

ab36a540-6994-11ed-8abf-dac502259ad0.png

決策樹算法根據(jù)數(shù)據(jù)的屬性采用樹狀結(jié)構(gòu)建立決策模型, 決策樹模型常常用來解決分類和回歸問題。常見的算法包括:分類及回歸樹(Classification And Regression Tree, CART), ID3 (Iterative Dichotomiser 3), C4.5, Chi-squared Automatic Interaction Detection(CHAID), Decision Stump, 隨機(jī)森林(Random Forest), 多元自適應(yīng)回歸樣條(MARS)以及梯度推進(jìn)機(jī)(Gradient Boosting Machine, GBM) 10. 貝葉斯方法

ab5d2364-6994-11ed-8abf-dac502259ad0.jpg

貝葉斯方法算法是基于貝葉斯定理的一類算法,主要用來解決分類和回歸問題。常見算法包括:樸素貝葉斯算法,平均單依賴估計(jì)(Averaged One-Dependence Estimators, AODE),以及Bayesian Belief Network(BBN)。 11. 基于核的算法

ab71a4b0-6994-11ed-8abf-dac502259ad0.jpg

基于核的算法中最著名的莫過于支持向量機(jī)(SVM)了?;诤说乃惴ò演斎霐?shù)據(jù)映射到一個(gè)高階的向量空間, 在這些高階向量空間里, 有些分類或者回歸問題能夠更容易的解決。常見的基于核的算法包括:支持向量機(jī)(Support Vector Machine, SVM), 徑向基函數(shù)(Radial Basis Function ,RBF), 以及線性判別分析(Linear Discriminate Analysis ,LDA)等 12.聚類算法

ab91e6e4-6994-11ed-8abf-dac502259ad0.png

聚類,就像回歸一樣,有時(shí)候人們描述的是一類問題,有時(shí)候描述的是一類算法。聚類算法通常按照中心點(diǎn)或者分層的方式對輸入數(shù)據(jù)進(jìn)行歸并。所以的聚類算法都試圖找到數(shù)據(jù)的內(nèi)在結(jié)構(gòu),以便按照最大的共同點(diǎn)將數(shù)據(jù)進(jìn)行歸類。常見的聚類算法包括 k-Means算法以及期望最大化算法(Expectation Maximization, EM)。 13. 關(guān)聯(lián)規(guī)則學(xué)習(xí)

abab0052-6994-11ed-8abf-dac502259ad0.jpg

關(guān)聯(lián)規(guī)則學(xué)習(xí)通過尋找最能夠解釋數(shù)據(jù)變量之間關(guān)系的規(guī)則,來找出大量多元數(shù)據(jù)集中有用的關(guān)聯(lián)規(guī)則。常見算法包括 Apriori算法和Eclat算法等。 14. 人工神經(jīng)網(wǎng)絡(luò)

abc21a30-6994-11ed-8abf-dac502259ad0.jpg

人工神經(jīng)網(wǎng)絡(luò)算法模擬生物神經(jīng)網(wǎng)絡(luò),是一類模式匹配算法。通常用于解決分類和回歸問題。人工神經(jīng)網(wǎng)絡(luò)是機(jī)器學(xué)習(xí)的一個(gè)龐大的分支,有幾百種不同的算法。(其中深度學(xué)習(xí)就是其中的一類算法,我們會單獨(dú)討論),重要的人工神經(jīng)網(wǎng)絡(luò)算法包括:感知器神經(jīng)網(wǎng)絡(luò)(Perceptron Neural Network), 反向傳遞(Back Propagation), Hopfield網(wǎng)絡(luò),自組織映射(Self-Organizing Map, SOM)。學(xué)習(xí)矢量量化(Learning Vector Quantization, LVQ) 15. 深度學(xué)習(xí)

abe2884c-6994-11ed-8abf-dac502259ad0.jpg

深度學(xué)習(xí)算法是對人工神經(jīng)網(wǎng)絡(luò)的發(fā)展。在近期贏得了很多關(guān)注, 特別是百度也開始發(fā)力深度學(xué)習(xí)后, 更是在國內(nèi)引起了很多關(guān)注。在計(jì)算能力變得日益廉價(jià)的今天,深度學(xué)習(xí)試圖建立大得多也復(fù)雜得多的神經(jīng)網(wǎng)絡(luò)。很多深度學(xué)習(xí)的算法是半監(jiān)督式學(xué)習(xí)算法,用來處理存在少量未標(biāo)識數(shù)據(jù)的大數(shù)據(jù)集。常見的深度學(xué)習(xí)算法包括:受限波爾茲曼機(jī)(Restricted Boltzmann Machine, RBN), Deep Belief Networks(DBN),卷積網(wǎng)絡(luò)(Convolutional Network), 堆棧式自動編碼器(Stacked Auto-encoders)。 16. 降低維度算法

abf50f08-6994-11ed-8abf-dac502259ad0.jpg

像聚類算法一樣,降低維度算法試圖分析數(shù)據(jù)的內(nèi)在結(jié)構(gòu),不過降低維度算法是以非監(jiān)督學(xué)習(xí)的方式試圖利用較少的信息來歸納或者解釋數(shù)據(jù)。這類算法可以用于高維數(shù)據(jù)的可視化或者用來簡化數(shù)據(jù)以便監(jiān)督式學(xué)習(xí)使用。 常見的算法包括:主成份分析(Principle Component Analysis, PCA),偏最小二乘回歸(Partial Least Square Regression,PLS), Sammon映射,多維尺度(Multi-Dimensional Scaling, MDS), 投影追蹤(Projection Pursuit)等。 17. 集成算法:

ac115456-6994-11ed-8abf-dac502259ad0.jpg

集成算法用一些相對較弱的學(xué)習(xí)模型獨(dú)立地就同樣的樣本進(jìn)行訓(xùn)練,然后把結(jié)果整合起來進(jìn)行整體預(yù)測。集成算法的主要難點(diǎn)在于究竟集成哪些獨(dú)立的較弱的學(xué)習(xí)模型以及如何把學(xué)習(xí)結(jié)果整合起來。 這是一類非常強(qiáng)大的算法,同時(shí)也非常流行。常見的算法包括:Boosting, Bootstrapped Aggregation(Bagging), AdaBoost,堆疊泛化(Stacked Generalization, Blending),梯度推進(jìn)機(jī)(Gradient Boosting Machine, GBM),隨機(jī)森林(Random Forest)。 常見機(jī)器學(xué)習(xí)算法優(yōu)缺點(diǎn): 樸素貝葉斯: 1. 如果給出的特征向量長度可能不同,這是需要?dú)w一化為通長度的向量(這里以文本分類為例),比如說是句子單詞的話,則長度為整個(gè)詞匯量的長度,對應(yīng)位置是該單詞出現(xiàn)的次數(shù)。 2. 計(jì)算公式如下:

ac26711a-6994-11ed-8abf-dac502259ad0.jpg

其中一項(xiàng)條件概率可以通過樸素貝葉斯條件獨(dú)立展開。要注意一點(diǎn)就是的計(jì)算方法,而由樸素貝葉斯的前提假設(shè)可知,=,因此一般有兩種,一種是在類別為ci的那些樣本集中,找到wj出現(xiàn)次數(shù)的總和,然后除以該樣本的總和;第二種方法是類別為ci的那些樣本集中,找到wj出現(xiàn)次數(shù)的總和,然后除以該樣本中所有特征出現(xiàn)次數(shù)的總和。 3. 如果中的某一項(xiàng)為0,則其聯(lián)合概率的乘積也可能為0,即2中公式的分子為0,為了避免這種現(xiàn)象出現(xiàn),一般情況下會將這一項(xiàng)初始化為1,當(dāng)然為了保證概率相等,分母應(yīng)對應(yīng)初始化為2(這里因?yàn)槭?類,所以加2,如果是k類就需要加k,術(shù)語上叫做laplace光滑, 分母加k的原因是使之滿足全概率公式)。 樸素貝葉斯的優(yōu)點(diǎn):對小規(guī)模的數(shù)據(jù)表現(xiàn)很好,適合多分類任務(wù),適合增量式訓(xùn)練。 缺點(diǎn):對輸入數(shù)據(jù)的表達(dá)形式很敏感。 決策樹:決策樹中很重要的一點(diǎn)就是選擇一個(gè)屬性進(jìn)行分枝,因此要注意一下信息增益的計(jì)算公式,并深入理解它。 信息熵的計(jì)算公式如下: 其中的n代表有n個(gè)分類類別(比如假設(shè)是2類問題,那么n=2)。分別計(jì)算這2類樣本在總樣本中出現(xiàn)的概率p1和p2,這樣就可以計(jì)算出未選中屬性分枝前的信息熵。 現(xiàn)在選中一個(gè)屬性xi用來進(jìn)行分枝,此時(shí)分枝規(guī)則是:如果xi=vx的話,將樣本分到樹的一個(gè)分支;如果不相等則進(jìn)入另一個(gè)分支。很顯然,分支中的樣本很有可能包括2個(gè)類別,分別計(jì)算這2個(gè)分支的熵H1和H2,計(jì)算出分枝后的總信息熵H’=p1*H1+p2*H2.,則此時(shí)的信息增益ΔH=H-H’。以信息增益為原則,把所有的屬性都測試一邊,選擇一個(gè)使增益最大的屬性作為本次分枝屬性。 決策樹的優(yōu)點(diǎn):計(jì)算量簡單,可解釋性強(qiáng),比較適合處理有缺失屬性值的樣本,能夠處理不相關(guān)的特征; 缺點(diǎn):容易過擬合(后續(xù)出現(xiàn)了隨機(jī)森林,減小了過擬合現(xiàn)象)。 Logistic回歸:Logistic是用來分類的,是一種線性分類器,需要注意的地方有: 1. logistic函數(shù)表達(dá)式為: 其導(dǎo)數(shù)形式為:

ac3f84ca-6994-11ed-8abf-dac502259ad0.png

2. logsitc回歸方法主要是用最大似然估計(jì)來學(xué)習(xí)的,所以單個(gè)樣本的后驗(yàn)概率為: 到整個(gè)樣本的后驗(yàn)概率:

ac5b7e5a-6994-11ed-8abf-dac502259ad0.png

其中: 通過對數(shù)進(jìn)一步化簡為: 3. 其實(shí)它的loss function為-l(θ),因此我們需使loss function最小,可采用梯度下降法得到。梯度下降法公式為: Logistic回歸優(yōu)點(diǎn): 1. 實(shí)現(xiàn)簡單 2. 分類時(shí)計(jì)算量非常小,速度很快,存儲資源低; 缺點(diǎn): 1. 容易欠擬合,一般準(zhǔn)確度不太高 2. 只能處理兩分類問題(在此基礎(chǔ)上衍生出來的softmax可以用于多分類),且必須線性可分; 線性回歸: 線性回歸才是真正用于回歸的,而不像logistic回歸是用于分類,其基本思想是用梯度下降法對最小二乘法形式的誤差函數(shù)進(jìn)行優(yōu)化,當(dāng)然也可以用normal equation直接求得參數(shù)的解,結(jié)果為: 而在LWLR(局部加權(quán)線性回歸)中,參數(shù)的計(jì)算表達(dá)式為: 因?yàn)榇藭r(shí)優(yōu)化的是: 由此可見LWLR與LR不同,LWLR是一個(gè)非參數(shù)模型,因?yàn)槊看芜M(jìn)行回歸計(jì)算都要遍歷訓(xùn)練樣本至少一次。 線性回歸優(yōu)點(diǎn):實(shí)現(xiàn)簡單,計(jì)算簡單; 缺點(diǎn):不能擬合非線性數(shù)據(jù); KNN算法:KNN即最近鄰算法,其主要過程為: 1. 計(jì)算訓(xùn)練樣本和測試樣本中每個(gè)樣本點(diǎn)的距離(常見的距離度量有歐式距離,馬氏距離等); 2. 對上面所有的距離值進(jìn)行排序; 3. 選前k個(gè)最小距離的樣本; 4. 根據(jù)這k個(gè)樣本的標(biāo)簽進(jìn)行投票,得到最后的分類類別; 如何選擇一個(gè)最佳的K值,這取決于數(shù)據(jù)。一般情況下,在分類時(shí)較大的K值能夠減小噪聲的影響。但會使類別之間的界限變得模糊。一個(gè)較好的K值可通過各種啟發(fā)式技術(shù)來獲取,比如,交叉驗(yàn)證。另外噪聲和非相關(guān)性特征向量的存在會使K近鄰算法的準(zhǔn)確性減小。 近鄰算法具有較強(qiáng)的一致性結(jié)果。隨著數(shù)據(jù)趨于無限,算法保證錯(cuò)誤率不會超過貝葉斯算法錯(cuò)誤率的兩倍。對于一些好的K值,K近鄰保證錯(cuò)誤率不會超過貝葉斯理論誤差率。 注:馬氏距離一定要先給出樣本集的統(tǒng)計(jì)性質(zhì),比如均值向量,協(xié)方差矩陣等。關(guān)于馬氏距離的介紹如下: KNN算法的優(yōu)點(diǎn): 1. 思想簡單,理論成熟,既可以用來做分類也可以用來做回歸; 2. 可用于非線性分類; 3. 訓(xùn)練時(shí)間復(fù)雜度為O(n); 4. 準(zhǔn)確度高,對數(shù)據(jù)沒有假設(shè),對outlier不敏感; 缺點(diǎn): 1. 計(jì)算量大; 2. 樣本不平衡問題(即有些類別的樣本數(shù)量很多,而其它樣本的數(shù)量很少); 3. 需要大量的內(nèi)存; SVM: 要學(xué)會如何使用libsvm以及一些參數(shù)的調(diào)節(jié)經(jīng)驗(yàn),另外需要理清楚svm算法的一些思路: 1. svm中的最優(yōu)分類面是對所有樣本的幾何裕量最大(為什么要選擇最大間隔分類器,請從數(shù)學(xué)角度上說明?網(wǎng)易深度學(xué)習(xí)崗位面試過程中有被問到。答案就是幾何間隔與樣本的誤分次數(shù)間存在關(guān)系:

ac728712-6994-11ed-8abf-dac502259ad0.png

,其中的分母就是樣本到分類間隔距離,分子中的R是所有樣本中的最長向量值),即: 經(jīng)過一系列推導(dǎo)可得為優(yōu)化下面原始目標(biāo): 2. 下面來看看拉格朗日理論:

ac888e68-6994-11ed-8abf-dac502259ad0.png

可以將1中的優(yōu)化目標(biāo)轉(zhuǎn)換為拉格朗日的形式(通過各種對偶優(yōu)化,KKD條件),最后目標(biāo)函數(shù)為: 我們只需要最小化上述目標(biāo)函數(shù),其中的α為原始優(yōu)化問題中的不等式約束拉格朗日系數(shù)。 3. 對2中最后的式子分別w和b求導(dǎo)可得:

aca57a8c-6994-11ed-8abf-dac502259ad0.jpg

由上面第1式子可以知道,如果我們優(yōu)化出了α,則直接可以求出w了,即模型的參數(shù)搞定。而上面第2個(gè)式子可以作為后續(xù)優(yōu)化的一個(gè)約束條件。 4. 對2中最后一個(gè)目標(biāo)函數(shù)用對偶優(yōu)化理論可以轉(zhuǎn)換為優(yōu)化下面的目標(biāo)函數(shù):

acb907f0-6994-11ed-8abf-dac502259ad0.png

而這個(gè)函數(shù)可以用常用的優(yōu)化方法求得α,進(jìn)而求得w和b。 5. 按照道理,svm簡單理論應(yīng)該到此結(jié)束。不過還是要補(bǔ)充一點(diǎn),即在預(yù)測時(shí)有:

acdc2884-6994-11ed-8abf-dac502259ad0.png

那個(gè)尖括號我們可以用核函數(shù)代替,這也是svm經(jīng)常和核函數(shù)扯在一起的原因。 6. 最后是關(guān)于松弛變量的引入,因此原始的目標(biāo)優(yōu)化公式為: 此時(shí)對應(yīng)的對偶優(yōu)化公式為:

acf06542-6994-11ed-8abf-dac502259ad0.png

與前面的相比只是α多了個(gè)上界。 SVM算法優(yōu)點(diǎn): 1. 可用于線性/非線性分類,也可以用于回歸; 2. 低泛化誤差; 3. 容易解釋; 4. 計(jì)算復(fù)雜度較低; 缺點(diǎn): 1. 對參數(shù)和核函數(shù)的選擇比較敏感; 2. 原始的SVM只比較擅長處理二分類問題; Boosting: 主要以Adaboost為例,首先來看看Adaboost的流程圖,如下:

ad03cd08-6994-11ed-8abf-dac502259ad0.png

從圖中可以看到,在訓(xùn)練過程中我們需要訓(xùn)練出多個(gè)弱分類器(圖中為3個(gè)),每個(gè)弱分類器是由不同權(quán)重的樣本(圖中為5個(gè)訓(xùn)練樣本)訓(xùn)練得到(其中第一個(gè)弱分類器對應(yīng)輸入樣本的權(quán)值是一樣的),而每個(gè)弱分類器對最終分類結(jié)果的作用也不同,是通過加權(quán)平均輸出的,權(quán)值見上圖中三角形里面的數(shù)值。那么這些弱分類器和其對應(yīng)的權(quán)值是怎樣訓(xùn)練出來的呢? 下面通過一個(gè)例子來簡單說明,假設(shè)的是5個(gè)訓(xùn)練樣本,每個(gè)訓(xùn)練樣本的維度為2,在訓(xùn)練第一個(gè)分類器時(shí)5個(gè)樣本的權(quán)重各為0.2. 注意這里樣本的權(quán)值和最終訓(xùn)練的弱分類器組對應(yīng)的權(quán)值α是不同的,樣本的權(quán)重只在訓(xùn)練過程中用到,而α在訓(xùn)練過程和測試過程都有用到。 現(xiàn)在假設(shè)弱分類器是帶一個(gè)節(jié)點(diǎn)的簡單決策樹,該決策樹會選擇2個(gè)屬性(假設(shè)只有2個(gè)屬性)的一個(gè),然后計(jì)算出這個(gè)屬性中的最佳值用來分類。 Adaboost的簡單版本訓(xùn)練過程如下: 1. 訓(xùn)練第一個(gè)分類器,樣本的權(quán)值D為相同的均值。通過一個(gè)弱分類器,得到這5個(gè)樣本(請對應(yīng)書中的例子來看,依舊是machine learning in action)的分類預(yù)測標(biāo)簽。與給出的樣本真實(shí)標(biāo)簽對比,就可能出現(xiàn)誤差(即錯(cuò)誤)。如果某個(gè)樣本預(yù)測錯(cuò)誤,則它對應(yīng)的錯(cuò)誤值為該樣本的權(quán)重,如果分類正確,則錯(cuò)誤值為0. 最后累加5個(gè)樣本的錯(cuò)誤率之和,記為ε。 2. 通過ε來計(jì)算該弱分類器的權(quán)重α,公式如下:

ad1bd574-6994-11ed-8abf-dac502259ad0.png

3. 通過α來計(jì)算訓(xùn)練下一個(gè)弱分類器樣本的權(quán)重D,如果對應(yīng)樣本分類正確,則減小該樣本的權(quán)重,公式為:

ad34a680-6994-11ed-8abf-dac502259ad0.png

如果樣本分類錯(cuò)誤,則增加該樣本的權(quán)重,公式為:

ad4c42d6-6994-11ed-8abf-dac502259ad0.png

4. 循環(huán)步驟1,2,3來繼續(xù)訓(xùn)練多個(gè)分類器,只是其D值不同而已。 測試過程如下: 輸入一個(gè)樣本到訓(xùn)練好的每個(gè)弱分類中,則每個(gè)弱分類都對應(yīng)一個(gè)輸出標(biāo)簽,然后該標(biāo)簽乘以對應(yīng)的α,最后求和得到值的符號即為預(yù)測標(biāo)簽值。 Boosting算法的優(yōu)點(diǎn): 1. 低泛化誤差; 2. 容易實(shí)現(xiàn),分類準(zhǔn)確率較高,沒有太多參數(shù)可以調(diào); 3. 缺點(diǎn): 4. 對outlier比較敏感; 聚類: 根據(jù)聚類思想劃分: 1. 基于劃分的聚類: K-means, k-medoids(每一個(gè)類別中找一個(gè)樣本點(diǎn)來代表),CLARANS. k-means是使下面的表達(dá)式值最?。?/p>

ad606338-6994-11ed-8abf-dac502259ad0.png

k-means算法的優(yōu)點(diǎn): (1)k-means算法是解決聚類問題的一種經(jīng)典算法,算法簡單、快速。 (2)對處理大數(shù)據(jù)集,該算法是相對可伸縮的和高效率的,因?yàn)樗膹?fù)雜度大約是O(nkt),其中n是所有對象的數(shù)目,k是簇的數(shù)目,t是迭代的次數(shù)。通常k<

ad77f69c-6994-11ed-8abf-dac502259ad0.png

其中更深的顏色代表去掉小特征值重構(gòu)時(shí)的三個(gè)矩陣。 果m代表商品的個(gè)數(shù),n代表用戶的個(gè)數(shù),則U矩陣的每一行代表商品的屬性,現(xiàn)在通過降維U矩陣(取深色部分)后,每一個(gè)商品的屬性可以用更低的維度表示(假設(shè)為k維)。這樣當(dāng)新來一個(gè)用戶的商品推薦向量X,則可以根據(jù)公式X'*U1*inv(S1)得到一個(gè)k維的向量,然后在V’中尋找最相似的那一個(gè)用戶(相似度測量可用余弦公式等),根據(jù)這個(gè)用戶的評分來推薦(主要是推薦新用戶未打分的那些商品)。 pLSA:由LSA發(fā)展過來,而早期LSA的實(shí)現(xiàn)主要是通過SVD分解。pLSA的模型圖如下

ad97664e-6994-11ed-8abf-dac502259ad0.png

公式中的意義如下:

ada8a760-6994-11ed-8abf-dac502259ad0.jpg

LDA主題模型,概率圖如下:

adbf2c7e-6994-11ed-8abf-dac502259ad0.jpg

和pLSA不同的是LDA中假設(shè)了很多先驗(yàn)分布,且一般參數(shù)的先驗(yàn)分布都假設(shè)為Dirichlet分布,其原因是共軛分布時(shí)先驗(yàn)概率和后驗(yàn)概率的形式相同。 GDBT:GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),好像在阿里內(nèi)部用得比較多(所以阿里算法崗位面試時(shí)可能會問到),它是一種迭代的決策樹算法,該算法由多棵決策樹組成,所有樹的輸出結(jié)果累加起來就是最終答案。 它在被提出之初就和SVM一起被認(rèn)為是泛化能力(generalization)較強(qiáng)的算法。近些年更因?yàn)楸挥糜谒阉髋判虻臋C(jī)器學(xué)習(xí)模型而引起大家關(guān)注。 GBDT是回歸樹,不是分類樹。其核心就在于,每一棵樹是從之前所有樹的殘差中來學(xué)習(xí)的。為了防止過擬合,和Adaboosting一樣,也加入了boosting這一項(xiàng)。 Regularization作用是 1. 數(shù)值上更容易求解; 2. 特征數(shù)目太大時(shí)更穩(wěn)定; 3. 控制模型的復(fù)雜度,光滑性。復(fù)雜性越小且越光滑的目標(biāo)函數(shù)泛化能力越強(qiáng)。而加入規(guī)則項(xiàng)能使目標(biāo)函數(shù)復(fù)雜度減小,且更光滑。 4. 減小參數(shù)空間;參數(shù)空間越小,復(fù)雜度越低。 5. 系數(shù)越小,模型越簡單,而模型越簡單則泛化能力越強(qiáng)(Ng宏觀上給出的解釋)。 6. 可以看成是權(quán)值的高斯先驗(yàn)。 異常檢測:可以估計(jì)樣本的密度函數(shù),對于新樣本直接計(jì)算其密度,如果密度值小于某一閾值,則表示該樣本異常。而密度函數(shù)一般采用多維的高斯分布。 如果樣本有n維,則每一維的特征都可以看作是符合高斯分布的,即使這些特征可視化出來不太符合高斯分布,也可以對該特征進(jìn)行數(shù)學(xué)轉(zhuǎn)換讓其看起來像高斯分布,比如說x=log(x+c), x=x^(1/c)等。異常檢測的算法流程如下:

addabdae-6994-11ed-8abf-dac502259ad0.jpg

其中的ε也是通過交叉驗(yàn)證得到的,也就是說在進(jìn)行異常檢測時(shí),前面的p(x)的學(xué)習(xí)是用的無監(jiān)督,后面的參數(shù)ε學(xué)習(xí)是用的有監(jiān)督。那么為什么不全部使用普通有監(jiān)督的方法來學(xué)習(xí)呢(即把它看做是一個(gè)普通的二分類問題)? 主要是因?yàn)樵诋惓z測中,異常的樣本數(shù)量非常少而正常樣本數(shù)量非常多,因此不足以學(xué)習(xí)到好的異常行為模型的參數(shù),因?yàn)楹竺嫘聛淼漠惓颖究赡芡耆桥c訓(xùn)練樣本中的模式不同。 EM算法:有時(shí)候因?yàn)闃颖镜漠a(chǎn)生和隱含變量有關(guān)(隱含變量是不能觀察的),而求模型的參數(shù)時(shí)一般采用最大似然估計(jì),由于含有了隱含變量,所以對似然函數(shù)參數(shù)求導(dǎo)是求不出來的,這時(shí)可以采用EM算法來求模型的參數(shù)的(對應(yīng)模型參數(shù)個(gè)數(shù)可能有多個(gè)), EM算法一般分為2步: E步:選取一組參數(shù),求出在該參數(shù)下隱含變量的條件概率值; M步:結(jié)合E步求出的隱含變量條件概率,求出似然函數(shù)下界函數(shù)(本質(zhì)上是某個(gè)期望函數(shù))的最大值。 重復(fù)上面2步直至收斂,公式如下所示:

adfdaa8a-6994-11ed-8abf-dac502259ad0.png

M步公式中下界函數(shù)的推導(dǎo)過程:

ae131d52-6994-11ed-8abf-dac502259ad0.png

EM算法一個(gè)常見的例子就是GMM模型,每個(gè)樣本都有可能由k個(gè)高斯產(chǎn)生,只不過由每個(gè)高斯產(chǎn)生的概率不同而已,因此每個(gè)樣本都有對應(yīng)的高斯分布(k個(gè)中的某一個(gè)),此時(shí)的隱含變量就是每個(gè)樣本對應(yīng)的某個(gè)高斯分布。 GMM的E步公式如下(計(jì)算每個(gè)樣本對應(yīng)每個(gè)高斯的概率): 更具體的計(jì)算公式為: M步公式如下(計(jì)算每個(gè)高斯的比重,均值,方差這3個(gè)參數(shù)):

ae29fc3e-6994-11ed-8abf-dac502259ad0.png

Apriori是關(guān)聯(lián)分析中比較早的一種方法,主要用來挖掘那些頻繁項(xiàng)集合。其思想是: 1. 如果一個(gè)項(xiàng)目集合不是頻繁集合,那么任何包含它的項(xiàng)目集合也一定不是頻繁集合; 2. 如果一個(gè)項(xiàng)目集合是頻繁集合,那么它的任何非空子集也是頻繁集合; Aprioir需要掃描項(xiàng)目表多遍,從一個(gè)項(xiàng)目開始掃描,舍去掉那些不是頻繁的項(xiàng)目,得到的集合稱為L,然后對L中的每個(gè)元素進(jìn)行自組合,生成比上次掃描多一個(gè)項(xiàng)目的集合,該集合稱為C,接著又掃描去掉那些非頻繁的項(xiàng)目,重復(fù)… 看下面這個(gè)例子,元素項(xiàng)目表格: 如果每個(gè)步驟不去掉非頻繁項(xiàng)目集,則其掃描過程的樹形結(jié)構(gòu)如下:

ae4af22c-6994-11ed-8abf-dac502259ad0.jpg

在其中某個(gè)過程中,可能出現(xiàn)非頻繁的項(xiàng)目集,將其去掉(用陰影表示)為:

ae68e58e-6994-11ed-8abf-dac502259ad0.jpg

FP Growth是一種比Apriori更高效的頻繁項(xiàng)挖掘方法,它只需要掃描項(xiàng)目表2次。其中第1次掃描獲得當(dāng)個(gè)項(xiàng)目的頻率,去掉不符合支持度要求的項(xiàng),并對剩下的項(xiàng)排序。第2遍掃描是建立一顆FP-Tree(frequent-patten tree)。 接下來的工作就是在FP-Tree上進(jìn)行挖掘,比如說有下表:

ae8ad13a-6994-11ed-8abf-dac502259ad0.jpg

它所對應(yīng)的FP_Tree如下:

aead877a-6994-11ed-8abf-dac502259ad0.jpg

然后從頻率最小的單項(xiàng)P開始,找出P的條件模式基,用構(gòu)造FP_Tree同樣的方法來構(gòu)造P的條件模式基的FP_Tree,在這棵樹上找出包含P的頻繁項(xiàng)集。 依次從m,b,a,c,f的條件模式基上挖掘頻繁項(xiàng)集,有些項(xiàng)需要遞歸的去挖掘,比較麻煩,比如m節(jié)點(diǎn)。 來源:圖靈人工智能

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1792

    文章

    47508

    瀏覽量

    239223
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8428

    瀏覽量

    132838

原文標(biāo)題:17個(gè)機(jī)器學(xué)習(xí)的常用算法

文章出處:【微信號:電子技術(shù)控,微信公眾號:電子技術(shù)控】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    傳統(tǒng)機(jī)器學(xué)習(xí)方法和應(yīng)用指導(dǎo)

    用于開發(fā)生物學(xué)數(shù)據(jù)的機(jī)器學(xué)習(xí)方法。盡管深度學(xué)習(xí)(一般指神經(jīng)網(wǎng)絡(luò)算法)是一個(gè)強(qiáng)大的工具,目前也非常流行,但它的應(yīng)用領(lǐng)域仍然有限。與深度
    的頭像 發(fā)表于 12-30 09:16 ?298次閱讀
    傳統(tǒng)<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>方法和應(yīng)用指導(dǎo)

    NPU與機(jī)器學(xué)習(xí)算法的關(guān)系

    在人工智能領(lǐng)域,機(jī)器學(xué)習(xí)算法是實(shí)現(xiàn)智能系統(tǒng)的核心。隨著數(shù)據(jù)量的激增和算法復(fù)雜度的提升,對計(jì)算資源的需求也在不斷增長。NPU作為一種專門為深度
    的頭像 發(fā)表于 11-15 09:19 ?536次閱讀

    MLCC斷裂問題解決方案

    MLCC斷裂問題解決方案
    的頭像 發(fā)表于 10-16 09:43 ?555次閱讀

    利用Matlab函數(shù)實(shí)現(xiàn)深度學(xué)習(xí)算法

    在Matlab中實(shí)現(xiàn)深度學(xué)習(xí)算法是一個(gè)復(fù)雜但強(qiáng)大的過程,可以應(yīng)用于各種領(lǐng)域,如圖像識別、自然語言處理、時(shí)間序列預(yù)測等。這里,我概述一個(gè)基本的流程,包括環(huán)境設(shè)置、數(shù)據(jù)準(zhǔn)備、模型設(shè)計(jì)、訓(xùn)
    的頭像 發(fā)表于 07-14 14:21 ?2378次閱讀

    深度學(xué)習(xí)中的時(shí)間序列分類方法

    時(shí)間序列分類(Time Series Classification, TSC)是機(jī)器學(xué)習(xí)和深度學(xué)習(xí)領(lǐng)域的重要任務(wù)之一,廣泛應(yīng)用于人體活動識別
    的頭像 發(fā)表于 07-09 15:54 ?1071次閱讀

    深度學(xué)習(xí)的基本原理與核心算法

    處理、語音識別等領(lǐng)域取得了革命性的突破。本文詳細(xì)闡述深度學(xué)習(xí)的原理、核心算法以及實(shí)現(xiàn)方式,并通過一個(gè)具體的代碼實(shí)例
    的頭像 發(fā)表于 07-04 11:44 ?2306次閱讀

    機(jī)器學(xué)習(xí)算法原理詳解

    機(jī)器學(xué)習(xí)作為人工智能的一個(gè)重要分支,其目標(biāo)是通過讓計(jì)算機(jī)自動從數(shù)據(jù)中學(xué)習(xí)并改進(jìn)其性能,而無需進(jìn)行明確的編程。本文深入解讀幾種常見的
    的頭像 發(fā)表于 07-02 11:25 ?1211次閱讀

    深度學(xué)習(xí)與傳統(tǒng)機(jī)器學(xué)習(xí)的對比

    在人工智能的浪潮中,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)無疑是兩大核心驅(qū)動力。它們各自以其獨(dú)特的方式推動著技術(shù)的進(jìn)步,為眾多領(lǐng)域帶來了革命性的變化。然而,盡管
    的頭像 發(fā)表于 07-01 11:40 ?1466次閱讀

    機(jī)器學(xué)習(xí)的經(jīng)典算法與應(yīng)用

    關(guān)于數(shù)據(jù)機(jī)器學(xué)習(xí)就是喂入算法和數(shù)據(jù),讓算法從數(shù)據(jù)中尋找一種相應(yīng)的關(guān)系。Iris鳶尾花數(shù)據(jù)集是一個(gè)經(jīng)典數(shù)據(jù)集,在統(tǒng)計(jì)學(xué)習(xí)
    的頭像 發(fā)表于 06-27 08:27 ?1696次閱讀
    <b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>的經(jīng)典<b class='flag-5'>算法</b>與應(yīng)用

    名單公布!【書籍評測活動NO.35】如何用「時(shí)間序列與機(jī)器學(xué)習(xí)」解鎖未來?

    和專業(yè)知識,對這一領(lǐng)域進(jìn)行系統(tǒng)的梳理和總結(jié)。然而,時(shí)間序列分析與機(jī)器學(xué)習(xí)技術(shù)相結(jié)合的書籍卻并不多見。 以上正是《時(shí)間序列與
    發(fā)表于 06-25 15:00

    EMC問題解決實(shí)戰(zhàn)教學(xué)6——浪涌問題解決

    EMC問題解決之實(shí)戰(zhàn)教學(xué)SES”在實(shí)際工作中,工程師們可能缺乏對浪涌問題背后物理原理的深入了解,無法準(zhǔn)確把握浪涌問題的具體來源,導(dǎo)致表面性的解決措施難以從根本上解決浪涌問題。此外,由于
    的頭像 發(fā)表于 06-06 08:17 ?593次閱讀
    EMC<b class='flag-5'>問題解決</b>實(shí)戰(zhàn)教學(xué)6——浪涌<b class='flag-5'>問題解決</b>!

    EMC問題解決實(shí)戰(zhàn)教學(xué)2——傳導(dǎo)發(fā)射問題解決

    EMC問題解決之實(shí)戰(zhàn)教學(xué)SES”信號干擾、復(fù)雜的噪聲模型、差共模干擾判斷困難以及測試設(shè)備和方法選擇都是工程師在傳導(dǎo)發(fā)射測試中常遇到的挑戰(zhàn)。這些困難不僅影響了測試的準(zhǔn)確性和可靠性,同時(shí)也增加了工程師
    的頭像 發(fā)表于 05-28 08:17 ?623次閱讀
    EMC<b class='flag-5'>問題解決</b>實(shí)戰(zhàn)教學(xué)2——傳導(dǎo)發(fā)射<b class='flag-5'>問題解決</b>!

    深度學(xué)習(xí)與度量學(xué)習(xí)融合的綜述

    如今,機(jī)器學(xué)習(xí)的應(yīng)用廣泛,包括人臉識別、醫(yī)療診斷等,為復(fù)雜問題和大量數(shù)據(jù)提供解決方案。機(jī)器學(xué)習(xí)算法能基于數(shù)據(jù)產(chǎn)生成功的
    發(fā)表于 04-24 09:49 ?459次閱讀
    深度<b class='flag-5'>學(xué)習(xí)</b>與度量<b class='flag-5'>學(xué)習(xí)</b>融合的綜述

    【電磁兼容技術(shù)案例分享】智能門禁的ESD問題解決案例

    【電磁兼容技術(shù)案例分享】智能門禁的ESD問題解決案例
    的頭像 發(fā)表于 04-19 08:16 ?391次閱讀
    【電磁兼容技術(shù)案例分享】智能門禁的ESD<b class='flag-5'>問題解決</b>案例

    機(jī)器學(xué)習(xí)怎么進(jìn)入人工智能

    ,人工智能已成為一個(gè)熱門領(lǐng)域,涉及到多個(gè)行業(yè)和領(lǐng)域,例如語音識別、機(jī)器翻譯、圖像識別等。 在編程中進(jìn)行人工智能的關(guān)鍵是使用機(jī)器
    的頭像 發(fā)表于 04-04 08:41 ?354次閱讀