日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

來源:Datawhale

本文約6000字,建議閱讀10+分鐘

本文以圖文的形式對模型算法中的集成學(xué)習(xí),以及對集中學(xué)習(xí)在深度學(xué)習(xí)中的應(yīng)用進(jìn)行了詳細(xì)解讀。

標(biāo)簽:機(jī)器學(xué)習(xí)

數(shù)據(jù)及背景

阿里天池-零基礎(chǔ)入門CV賽事:

https://tianchi.aliyun.com/competition/entrance/531795/introduction

集成學(xué)習(xí)

集成學(xué)習(xí),即分類器集成,通過構(gòu)建并結(jié)合多個學(xué)習(xí)器來完成學(xué)習(xí)任務(wù)。一般結(jié)構(gòu)是:先產(chǎn)生一組“個體學(xué)習(xí)器”,再用某種策略將它們結(jié)合起來。結(jié)合策略主要有平均法、投票法和學(xué)習(xí)法等。集成學(xué)習(xí)(ensemble learning)通過構(gòu)建并結(jié)合多個學(xué)習(xí)器來完成學(xué)習(xí)任務(wù),有時也被稱為多分類器系統(tǒng)(multi-classifier system)、基于委員會的學(xué)習(xí)(committee-based learning)。

集成學(xué)習(xí)是這樣一個過程,按照某種算法生成多個模型,如分類器或者稱為專家,再將這些模型按照某種方法組合在一起來解決某個智能計算問題。集成學(xué)習(xí)主要用來提高模型(分類,預(yù)測,函數(shù)估計等)的性能,或者用來降低模型選擇不當(dāng)?shù)目赡苄浴<伤惴ū旧硎且环N監(jiān)督學(xué)習(xí)算法,因為它可以被訓(xùn)練然后進(jìn)行預(yù)測,組合的多個模型作為整體代表一個假設(shè)(hypothesis)。

集成方法是將幾種機(jī)器學(xué)習(xí)技術(shù)組合成一個預(yù)測模型的元算法,以達(dá)到減小方差(bagging)、偏差(boosting) 或改進(jìn)預(yù)測(stacking) 的效果。

分類器(Classifier)

分類器是數(shù)據(jù)挖掘中對樣本進(jìn)行分類的方法的統(tǒng)稱,包含決策樹、邏輯回歸、樸素貝葉斯、神經(jīng)網(wǎng)絡(luò)等算法。分類是數(shù)據(jù)挖掘的一種非常重要的方法。分類的概念是在已有數(shù)據(jù)的基礎(chǔ)上學(xué)會一個分類函數(shù)或構(gòu)造出一個分類模型(即分類器)。該函數(shù)或模型能夠把數(shù)據(jù)庫中的數(shù)據(jù)記錄映射到給定類別中的某一個,從而可以應(yīng)用于數(shù)據(jù)預(yù)測。

分類器的構(gòu)造和實施大體會經(jīng)過以下幾個步驟:

  • 選定樣本(包含正樣本和負(fù)樣本),將所有樣本分成訓(xùn)練樣本和測試樣本兩部分。
  • 在訓(xùn)練樣本上執(zhí)行分類器算法,生成分類模型。
  • 在測試樣本上執(zhí)行分類模型,生成預(yù)測結(jié)果。
  • 根據(jù)預(yù)測結(jié)果,計算必要的評估指標(biāo),評估分類模型的性能。

1. 決策樹分類器

構(gòu)造這個分類器不需要任何領(lǐng)域的知識,也不需要任何的參數(shù)設(shè)置。因此它特別適合于探測式的知識發(fā)現(xiàn)。此外,這個分類器還可以處理高維數(shù)據(jù),而且采用的是類似于樹這種形式,也特別直觀和便于理解。因此,決策樹是許多商業(yè)規(guī)則歸納系統(tǒng)的基礎(chǔ)。

2. 樸素貝葉斯分類器

素貝葉斯分類器是假設(shè)數(shù)據(jù)樣本特征完全獨立,以貝葉斯定理為基礎(chǔ)的簡單概率分類器。

3. AdaBoost算法

AdaBoost算法的自適應(yīng)在于前一個分類器產(chǎn)生的錯誤分類樣本會被用來訓(xùn)練下一個分類器,從而提升分類準(zhǔn)確率,但是對于噪聲樣本和異常樣本比較敏感。

4. 支持向量機(jī)

支持向量機(jī)是用過構(gòu)建一個或者多個高維的超平面來將樣本數(shù)據(jù)進(jìn)行劃分,超平面即為樣本之間的分類邊界。

5. K近鄰算法

基于k近鄰的K個樣本作為分析從而簡化計算提升效率,K近鄰算法分類器是基于距離計算的分類器。

集成學(xué)習(xí)方法

集成學(xué)習(xí)有許多集成模型,例如自助法、自助聚合(Bagging)、隨機(jī)森林、提升法(Boosting)、堆疊法(stacking)以及許多其它的基礎(chǔ)集成學(xué)習(xí)模型。

集成方法的思想是通過將這些個體學(xué)習(xí)器(個體學(xué)習(xí)器稱為“基學(xué)習(xí)器”,基學(xué)習(xí)器也被稱為弱學(xué)習(xí)器。)的偏置和/或方差結(jié)合起來,從而創(chuàng)建一個強(qiáng)學(xué)習(xí)器(或集成模型),從而獲得更好的性能。

我們可以用三種主要的旨在組合弱學(xué)習(xí)器的元算法:

  • 自助聚合(Bagging),該方法通常考慮的是同質(zhì)弱學(xué)習(xí)器,相互獨立地并行學(xué)習(xí)這些弱學(xué)習(xí)器,并按照某種確定性的平均過程將它們組合起來。
  • 提升法(Boosting),該方法通常考慮的也是同質(zhì)弱學(xué)習(xí)器。它以一種高度自適應(yīng)的方法順序地學(xué)習(xí)這些弱學(xué)習(xí)器(每個基礎(chǔ)模型都依賴于前面的模型),并按照某種確定性的策略將它們組合起來。
  • 堆疊法(Stacking),該方法通常考慮的是異質(zhì)弱學(xué)習(xí)器,并行地學(xué)習(xí)它們,并通過訓(xùn)練一個 元模型 將它們組合起來,根據(jù)不同弱模型的預(yù)測結(jié)果輸出一個最終的預(yù)測結(jié)果。

非常粗略地說,我們可以說Bagging的重點在于獲得一個方差比其組成部分更小的集成模型,而Boosting和Stacking則將主要生成偏置比其組成部分更低的強(qiáng)模型(即使方差也可以被減小)。

1. 自助聚合(Bagging)

在并行化的方法中,我們單獨擬合不同的學(xué)習(xí)器,因此可以同時訓(xùn)練它們。最著名的方法是自助聚合(Bagging),它的目標(biāo)是生成比單個模型更棒的集成模型。Bagging的方法實現(xiàn)。

自助法:這種統(tǒng)計技術(shù)先隨機(jī)抽取出作為替代的 B 個觀測值,然后根據(jù)一個規(guī)模為 N 的初始數(shù)據(jù)集生成大小為 B 的樣本(稱為自助樣本)。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

在某些假設(shè)條件下,這些樣本具有非常好的統(tǒng)計特性:在一級近似中,它們可以被視為是直接從真實的底層(并且往往是未知的)數(shù)據(jù)分布中抽取出來的,并且彼此之間相互獨立。因此,它們被認(rèn)為是真實數(shù)據(jù)分布的代表性和獨立樣本(幾乎是獨立同分布的樣本)。

為了使這種近似成立,必須驗證兩個方面的假設(shè):

  • 初始數(shù)據(jù)集的大小N應(yīng)該足夠大,以捕獲底層分布的大部分復(fù)雜性。這樣,從數(shù)據(jù)集中抽樣就是從真實分布中抽樣的良好近似(代表性);
  • 與自助樣本的大小B相比,數(shù)據(jù)集的規(guī)模N應(yīng)該足夠大,這樣樣本之間就不會有太大的相關(guān)性(獨立性)。注意,接下來我可能還會提到自助樣本的這些特性(代表性和獨立性),但讀者應(yīng)該始終牢記:這只是一種近似。

舉例而言,自助樣本通常用于評估統(tǒng)計估計量的方差或置信區(qū)間。根據(jù)定義,統(tǒng)計估計量是某些觀測值的函數(shù)。因此,隨機(jī)變量的方差是根據(jù)這些觀測值計算得到的。為了評估這種估計量的方差,我們需要對從感興趣分布中抽取出來的幾個獨立樣本進(jìn)行估計。

在大多數(shù)情況下,相較于實際可用的數(shù)據(jù)量來說,考慮真正獨立的樣本所需要的數(shù)據(jù)量可能太大了。然而,我們可以使用自助法生成一些自助樣本,它們可被視為最具代表性以及最具獨立性(幾乎是獨立同分布的樣本)的樣本。這些自助樣本使我們可以通過估計每個樣本的值,近似得到估計量的方差。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

2. 提升法(Boosting)

在順序化的方法中,組合起來的不同弱模型之間不再相互獨立地擬合。其思想是迭代地擬合模型,使模型在給定步驟上的訓(xùn)練依賴于之前的步驟上擬合的模型。提升法(Boosting)是這些方法中最著名的一種,它生成的集成模型通常比組成該模型的弱學(xué)習(xí)器偏置更小。

Boosting和Bagging的工作思路是一樣的:我們構(gòu)建一系列模型,將它們聚合起來得到一個性能更好的強(qiáng)學(xué)習(xí)器。然而,與重點在于減小方差的Bagging不同,Boosting著眼于以一種適應(yīng)性很強(qiáng)的方式順序擬合多個弱學(xué)習(xí)器:序列中每個模型在擬合的過程中,會更加重視那些序列中之前的模型處理的很糟糕的觀測數(shù)據(jù)。

直觀地說,每個模型都把注意力集中在目前最難擬合的觀測數(shù)據(jù)上。這樣一來,在這個過程的最后,我們就獲得了一個具有較低偏置的強(qiáng)學(xué)習(xí)器(我們會注意到,Boosting也有減小方差的效果)。和Bagging一樣,Boosting也可以用于回歸和分類問題。由于其重點在于減小偏置,用于Boosting的基礎(chǔ)模型通常是那些低方差高偏置的模型。

例如,如果想要使用樹作為基礎(chǔ)模型,我們將主要選擇只有少許幾層的較淺決策樹。而選擇低方差高偏置模型作為Boosting弱學(xué)習(xí)器的另一個重要原因是:這些模型擬合的計算開銷較低(參數(shù)化時自由度較低)。實際上,由于擬合不同模型的計算無法并行處理(與Bagging不同),順序地擬合若干復(fù)雜模型會導(dǎo)致計算開銷變得非常高。

一旦選定了弱學(xué)習(xí)器,我們?nèi)孕枰x它們的擬合方式和聚合方式。介紹兩個重要的Boosting算法:自適應(yīng)提升(adaboost)和梯度提升(gradient boosting)。

簡而言之,這兩種元算法在順序化的過程中創(chuàng)建和聚合弱學(xué)習(xí)器的方式存在差異。自適應(yīng)提升算法會更新附加給每個訓(xùn)練數(shù)據(jù)集中觀測數(shù)據(jù)的權(quán)重,而梯度提升算法則會更新這些觀測數(shù)據(jù)的值。這里產(chǎn)生差異的主要原因是:兩種算法解決優(yōu)化問題(尋找最佳模型——弱學(xué)習(xí)器的加權(quán)和)的方式不同。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

2.1. 自適應(yīng)adaboost

在自適應(yīng)adaboost中,我們將集成模型定義為L個弱學(xué)習(xí)器的加權(quán)和:

其中為系數(shù),為弱學(xué)習(xí)器尋找這種最佳集成模型是一個困難的優(yōu)化問題。因此,我們并沒打算一次性地解決該問題(找到給出最佳整體加法模型的所有系數(shù)和弱學(xué)習(xí)器),而是使用了一種更易于處理的迭代優(yōu)化過程(即使它有可能導(dǎo)致我們得到次優(yōu)解)。另外,我們將弱學(xué)習(xí)器逐個添加到當(dāng)前的集成模型中,在每次迭代中尋找可能的最佳組合(系數(shù)、弱學(xué)習(xí)器)。換句話說,我們循環(huán)地將 定義如下:

其中,和被挑選出來,使得是最適合訓(xùn)練數(shù)據(jù)的模型,因此這是對 的最佳可能改進(jìn)。我們可以進(jìn)一步將其表示為:

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

其中,是給定模型的擬合誤差,是損失/誤差函數(shù)。因此,我們并沒有在求和過程中對所有L個模型進(jìn)行「全局優(yōu)化」,而是通過「局部」優(yōu)化來近似最優(yōu)解并將弱學(xué)習(xí)器逐個添加到強(qiáng)模型中。

更特別的是,在考慮二分類問題時,我們可以將 adaboost 算法重新寫入以下過程:首先,它將更新數(shù)據(jù)集中觀測數(shù)據(jù)的權(quán)重,訓(xùn)練一個新的弱學(xué)習(xí)器,該學(xué)習(xí)器重點關(guān)注當(dāng)前集成模型誤分類的觀測數(shù)據(jù)。其次,它會根據(jù)一個表示該弱模型性能的更新系數(shù),將弱學(xué)習(xí)器添加到加權(quán)和中:弱學(xué)習(xí)器的性能越好,它對強(qiáng)學(xué)習(xí)器的貢獻(xiàn)就越大。

因此,假設(shè)我們面對的是一個二分類問題:數(shù)據(jù)集中有N個觀測數(shù)據(jù),我們想在給定一組弱模型的情況下使用adaboost算法。在算法的起始階段(序列中的第一個模型),所有的觀測數(shù)據(jù)都擁有相同的權(quán)重1/N。然后,我們將下面的步驟重復(fù)L次(作用于序列中的L個學(xué)習(xí)器):

  • 用當(dāng)前觀測數(shù)據(jù)的權(quán)重擬合可能的最佳弱模型;
  • 計算更新系數(shù)的值,更新系數(shù)是弱學(xué)習(xí)器的某種標(biāo)量化評估指標(biāo),它表示相對集成模型來說,該弱學(xué)習(xí)器的分量如何;
  • 通過添加新的弱學(xué)習(xí)器與其更新系數(shù)的乘積來更新強(qiáng)學(xué)習(xí)器計算新觀測數(shù)據(jù)的權(quán)重,該權(quán)重表示我們想在下一輪迭代中關(guān)注哪些觀測數(shù)據(jù)(聚和模型預(yù)測錯誤的觀測數(shù)據(jù)的權(quán)重增加,而正確預(yù)測的觀測數(shù)據(jù)的權(quán)重減小)。

重復(fù)這些步驟,我們順序地構(gòu)建出L個模型,并將它們聚合成一個簡單的線性組合,然后由表示每個學(xué)習(xí)器性能的系數(shù)加權(quán)。注意,初始adaboost算法有一些變體,比如LogitBoost(分類)或L2Boost(回歸),它們的差異主要取決于損失函數(shù)的選擇。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

3. 堆疊法(Stacking)

堆疊法Stacking與Bagging和Boosting主要存在兩方面的差異。首先,堆疊法通常考慮的是異質(zhì)弱學(xué)習(xí)器(不同的學(xué)習(xí)算法被組合在一起),而Bagging和Boosting主要考慮的是同質(zhì)弱學(xué)習(xí)器。其次,stacking堆疊法學(xué)習(xí)用元模型組合基礎(chǔ)模型,而Bagging和Boosting則根據(jù)確定性算法組合弱學(xué)習(xí)器。

正如上文已經(jīng)提到的,堆疊法的概念是學(xué)習(xí)幾個不同的弱學(xué)習(xí)器,并通過訓(xùn)練一個元模型來組合它們,然后基于這些弱模型返回的多個預(yù)測結(jié)果輸出最終的預(yù)測結(jié)果。

因此,為了構(gòu)建Stacking模型,我們需要定義兩個東西:想要擬合的L個學(xué)習(xí)器以及組合它們的元模型。例如,對于分類問題來說,我們可以選擇KNN分類器、logistic回歸和SVM作為弱學(xué)習(xí)器,并決定學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)作為元模型。然后,神經(jīng)網(wǎng)絡(luò)將會把三個弱學(xué)習(xí)器的輸出作為輸入,并返回基于該輸入的最終預(yù)測。所以,假設(shè)我們想要擬合由L個弱學(xué)習(xí)器組成的Stacking集成模型。我們必須遵循以下步驟:

  • 將訓(xùn)練數(shù)據(jù)分為兩組;
  • 選擇 L 個弱學(xué)習(xí)器,用它們擬合第一組數(shù)據(jù);
  • 使 L 個學(xué)習(xí)器中的每個學(xué)習(xí)器對第二組數(shù)據(jù)中的觀測數(shù)據(jù)進(jìn)行預(yù)測;
  • 在第二組數(shù)據(jù)上擬合元模型,使用弱學(xué)習(xí)器做出的預(yù)測作為輸入。

在前面的步驟中,我們將數(shù)據(jù)集一分為二,因為對用于訓(xùn)練弱學(xué)習(xí)器的數(shù)據(jù)的預(yù)測與元模型的訓(xùn)練不相關(guān)。因此,將數(shù)據(jù)集分成兩部分的一個明顯缺點是,我們只有一半的數(shù)據(jù)用于訓(xùn)練基礎(chǔ)模型,另一半數(shù)據(jù)用于訓(xùn)練元模型。

為了克服這種限制,我們可以使用某種k-折交叉訓(xùn)練方法(類似于 k-折交叉驗證中的做法)。這樣所有的觀測數(shù)據(jù)都可以用來訓(xùn)練元模型:對于任意的觀測數(shù)據(jù),弱學(xué)習(xí)器的預(yù)測都是通過在k-1折數(shù)據(jù)(不包含已考慮的觀測數(shù)據(jù))上訓(xùn)練這些弱學(xué)習(xí)器的實例來完成的。換句話說,它會在k-1折數(shù)據(jù)上進(jìn)行訓(xùn)練,從而對剩下的一折數(shù)據(jù)進(jìn)行預(yù)測。迭代地重復(fù)這個過程,就可以得到對任何一折觀測數(shù)據(jù)的預(yù)測結(jié)果。這樣一來,我們就可以為數(shù)據(jù)集中的每個觀測數(shù)據(jù)生成相關(guān)的預(yù)測,然后使用所有這些預(yù)測結(jié)果訓(xùn)練元模型。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

十折交叉驗證

由于深度學(xué)習(xí)模型一般需要較長的訓(xùn)練周期,如果硬件設(shè)備不允許建議選取留出法,如果需要追求精度可以使用交叉驗證的方法。

十折交叉驗證用來測試算法準(zhǔn)確性。將數(shù)據(jù)集分成十份,輪流將其中九份作為訓(xùn)練數(shù)據(jù),一份作為測試數(shù)據(jù),進(jìn)行試驗。每次試驗都會得出相應(yīng)的正確率(或差錯率)。十次的結(jié)果的正確率(或差錯率)的平均值作為對算法精度的估計,一般還需要進(jìn)行多次十折交叉驗證(例如十次十折交叉驗證),再求其均值,作為對算法準(zhǔn)確性的估計。

下面假設(shè)構(gòu)建了十折交叉驗證,訓(xùn)練得到十個CNN模型。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

那么在十個CNN模型可以使用如下方式進(jìn)行集成:

  • 對預(yù)測的結(jié)果的概率值進(jìn)行平均,然后解碼為具體字符;
  • 對預(yù)測的字符進(jìn)行投票,得到最終字符。

深度學(xué)習(xí)中的集成學(xué)習(xí)

此外在深度學(xué)習(xí)中本身還有一些集成學(xué)習(xí)思路的做法,值得借鑒學(xué)習(xí):

  • 丟棄法Dropout
  • 測試集數(shù)據(jù)擴(kuò)增TTA
  • Snapshot

1. 丟棄法Dropout

Dropout可以作為訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的一種技巧。在每個訓(xùn)練批次中,通過隨機(jī)讓一部分的節(jié)點停止工作。同時在預(yù)測的過程中讓所有的節(jié)點都起作用。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

Dropout經(jīng)常出現(xiàn)在在先有的CNN網(wǎng)絡(luò)中,可以有效的緩解模型過擬合的情況,也可以在預(yù)測時增加模型的精度。加入Dropout后的網(wǎng)絡(luò)結(jié)構(gòu)如下:

# 定義模型class SVHN_Model1(nn.Module):    def __init__(self):        super(SVHN_Model1, self).__init__()        # CNN提取特征模塊        self.cnn = nn.Sequential(            nn.Conv2d(3, 16, kernel_size=(3, 3), stride=(2, 2)),            nn.ReLU(),            nn.Dropout(0.25),            nn.MaxPool2d(2),            nn.Conv2d(16, 32, kernel_size=(3, 3), stride=(2, 2)),            nn.ReLU(),            nn.Dropout(0.25),            nn.MaxPool2d(2),        )        #        self.fc1 = nn.Linear(32*3*7, 11)        self.fc2 = nn.Linear(32*3*7, 11)        self.fc3 = nn.Linear(32*3*7, 11)        self.fc4 = nn.Linear(32*3*7, 11)        self.fc5 = nn.Linear(32*3*7, 11)        self.fc6 = nn.Linear(32*3*7, 11)    def forward(self, img):        feat = self.cnn(img)        feat = feat.view(feat.shape[0], -1)        c1 = self.fc1(feat)        c2 = self.fc2(feat)        c3 = self.fc3(feat)        c4 = self.fc4(feat)        c5 = self.fc5(feat)        c6 = self.fc6(feat)        return c1, c2, c3, c4, c5, c6

2. 測試集數(shù)據(jù)擴(kuò)增TTA

測試集數(shù)據(jù)擴(kuò)增(Test Time Augmentation,簡稱TTA)也是常用的集成學(xué)習(xí)技巧,數(shù)據(jù)擴(kuò)增不僅可以在訓(xùn)練時候用,而且可以同樣在預(yù)測時候進(jìn)行數(shù)據(jù)擴(kuò)增,對同一個樣本預(yù)測三次,然后對三次結(jié)果進(jìn)行平均。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

def predict(test_loader, model, tta=10):   model.eval()   test_pred_tta = None   # TTA 次數(shù)   for _ in range(tta):       test_pred = []       with torch.no_grad():           for i, (input, target) in enumerate(test_loader):               c0, c1, c2, c3, c4, c5 = model(data[0])               output = np.concatenate([c0.data.numpy(), c1.data.numpy(),                  c2.data.numpy(), c3.data.numpy(),                  c4.data.numpy(), c5.data.numpy()], axis=1)               test_pred.Append(output)       test_pred = np.vstack(test_pred)       if test_pred_tta is None:           test_pred_tta = test_pred       else:           test_pred_tta += test_pred   return test_pred_tta

Snapshot

本章的開頭已經(jīng)提到,假設(shè)我們訓(xùn)練了10個CNN則可以將多個模型的預(yù)測結(jié)果進(jìn)行平均。但是加入只訓(xùn)練了一個CNN模型,如何做模型集成呢?

在論文Snapshot Ensembles中,作者提出使用cyclical learning rate進(jìn)行訓(xùn)練模型,并保存精度比較好的一些checkopint,最后將多個checkpoint進(jìn)行模型集成。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

由于在cyclical learning rate中學(xué)習(xí)率的變化有周期性變大和減少的行為,因此CNN模型很有可能在跳出局部最優(yōu)進(jìn)入另一個局部最優(yōu)。在Snapshot論文中作者通過使用表明,此種方法可以在一定程度上提高模型精度,但需要更長的訓(xùn)練時間。

基礎(chǔ)通俗講解集成學(xué)習(xí)算法

 

寫到最后

在不同的任務(wù)中可能會有不同的解決方案,不同思路的模型不僅可以互相借鑒,同時也可以修正最終的預(yù)測結(jié)果。

在本次賽題中,可以從以下幾個思路對預(yù)測結(jié)果進(jìn)行后處理:

  • 統(tǒng)計圖片中每個位置字符出現(xiàn)的頻率,使用規(guī)則修正結(jié)果;
  • 單獨訓(xùn)練一個字符長度預(yù)測模型,用來預(yù)測圖片中字符個數(shù),并修正結(jié)果。

延伸閱讀:

  • 書籍:《深度實踐OCR:基于深度學(xué)習(xí)的文字識別》
  • 作者:劉樹春 阿里巴巴本地生活研究院算法專家,前復(fù)旦七牛云聯(lián)合實驗室OCR算法負(fù)責(zé)人

編輯:黃繼彥

校對:林亦霖

—完—

分享到:
標(biāo)簽:算法 集成 學(xué)習(xí)
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達(dá)人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定