TWI793516B - 神經網路之自適應調節批量大小的訓練方法 - Google Patents
神經網路之自適應調節批量大小的訓練方法 Download PDFInfo
- Publication number
- TWI793516B TWI793516B TW110104311A TW110104311A TWI793516B TW I793516 B TWI793516 B TW I793516B TW 110104311 A TW110104311 A TW 110104311A TW 110104311 A TW110104311 A TW 110104311A TW I793516 B TWI793516 B TW I793516B
- Authority
- TW
- Taiwan
- Prior art keywords
- batch size
- image data
- neural network
- training
- training method
- Prior art date
Links
Images
Landscapes
- Filters That Use Time-Delay Elements (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Image Analysis (AREA)
Abstract
一種神經網路之自適應調節批量大小的訓練方法,為先用正常批量大小進行訓練,訓練途中發現驗證集損失不再下降時,甚至可能上升產生過度擬合的現象時再減小批量大小,以此方法增加變動量,進一步的提升模型效率及準確度。
Description
本發明係關於一種神經網路優化的訓練方法,特別是一種訓練時能即時依據當時情況來逐漸調整批量大小,使神經網路模型可以達到更好準確度的一種神經網路之自適應調節批量大小的訓練方法。
隨著科技的不斷進步,人工智慧領域中的神經網路系統也愈來愈發達,而神經網路系統為一種模仿人類大腦神經所設計出來的程式架構,由大量的神經元(neurons)去串接連結組成,透過演算法計算及資料傳遞,試圖使電腦可以有人類的思考模式去自我思考學習及判斷。
但是一個好的神經網路系統必須透過龐大的資料庫進行資料學習的訓練,然後才會生成模式(或一組參數,如權重和偏差),這樣才能有效率又準確的解決問題。
而神經網路訓練過程以批量(mini-batch)為單位進行,並且一個批量中所包含的樣本的數量是固定的,因此目前有部分的神經網路的訓練方式是針對資料量以及欲訓練的項目來選擇一個適當的批量大小(Mini-Batch Size)進行訓練。
而批量大小是指我們決定一次從訓練資料集中取出多少筆資料去進行一次迭代(iteration)的訓練,批量大小(Mini-Batch Size)的選擇是為了讓我們在記憶體效率及記憶體容量間尋找出最佳的平衡。適當增加批量大小可以通過並行處理提高記憶體利用率,並讓單次時期(epoch)的迭代次數減少,提高運算速度,而適當的減少批量大小,可使訓練震盪幅度減小,下降方向準確度增加。
雖然在神經網路的訓練中使用批量大小會具有前述諸多優點,但是批量大小對於神經網路運算速度及所產生的變動量有極其大的影響,如果在訓練時逐漸增大批量的大小,可以提升硬體的計算效率使其達到更快的運算速度,但是會降低其輸出的準確度。但如果批量大小過小又將導致訓練資料在每次修正方向以各自樣本的梯度方向修正,橫衝直撞各自為政,難以收斂,導致低度擬合(underfitting)等問題,因此如何找出最佳的平衡,此乃為學界與業界亟欲解決的關鍵問題之一。
為解決上述問題,本發明所揭露的一種神經網路之自適應調節批量大小的訓練方法,會與一影像資料庫相互配合比對,該訓練方法至少包括如下步驟:(a)從該影像資料庫內採集一影像數據,並將該影像數據進行一數據增強;
(b)構建一深度卷積神經網路模型,並將該影像數據輸入到該深度卷積神經網路模型中,並對該模型進行一第一批量大小的訓練;(c)當該深度卷積神經網路模型的一驗證集損失經過10個時期都未再下降,即利用一第二批量大小再進行訓練,用以訓練並提高該深度卷積神經網路模型的準確率,並輸出辦識結果。
前述步驟(a)的該影像數據也可選擇先進行一影像前處理,再進行該數據增強。
以上關於本發明所揭露內容的說明及以下實施方式的說明係用以示範與解釋本發明的精神與原理,並且提供本發明的專利申請範圍更進一步的解釋。
S100~S102:步驟
S100a~S102:步驟
S200~S202:步驟
S300~S302:步驟
圖1為本發明的神經網路之自適應調節批量大小的訓練方法之流程圖。
圖2為本發明進一步使用影像前處理的神經網路之自適應調節批量大小的訓練方法之流程圖。
圖3為本發明的影像前處理之第一實施例的步驟流程圖。
圖4為本發明的影像前處理之第二實施例的步驟流程圖。
圖5為本發明訓練方法之訓練時採用的初始權重的波形示意圖。
圖6為將本發明訓練方法使用ResNet-20訓練Cifar-10數據庫所呈現出來的數據表格示意圖。
圖7為將本發明訓練方法使用EffieientNet-B0訓練Cifar-10數據庫所呈現出來的數據表格示意圖。
請參閱圖1,為本發明所揭露的一種神經網路之自適應調節批量大小的訓練方法,會與一影像資料庫相互配合比對,該訓練方法至少包括如下步驟:第一步驟S100:從該影像資料庫內採集一影像數據,並將該影像數據進行一數據增強(Data Augmentation);第二步驟S101:構建一深度卷積神經網路模型(Deep Convolutional Neural Networks),並將該影像數據輸入到該深度卷積神經網路模型中,並對該模型進行一第一批量大小(Mini-Batch Size)的訓練;第三步驟S102:當該深度卷積神經網路模型的一驗證集損失(Valid Loss)經過10個時期(epoch)都未再下降,即利用一第二批量大小再進行訓練,用以訓練並提高該深度卷積神經網路模型的準確率,並輸出辦識結果。
前述的該影像資料庫可為公開的Cifar-10影像數據庫或是自行錄製拍攝的影像數據庫。
前述第一步驟S100中的該影像數據也可選擇先進行一影像前處理(Image Pre-processing),再進行該數據增強。則該第一步驟S100會變更為:第一步驟S100a:從該影像資料庫內所採集影像數據,並將該影像數據進行影像前處理,再將該影像前處理後的影像數據進行數據增強,如圖2所示;前述的影像前處理至少具有兩個實施例,其中第一實施例至少包括如下步驟,如圖3所示:第一步驟S200:先將該影像數據進行一直方圖均化(Histogram Equalization),用以提高影像數據的對比度;第二步驟S201:再利用一中值濾波器(Median Filter),用以降低影像數據中的雜訊;第三步驟S202:最後將該影像數據進行一灰階化(Gray Scale),將該影像數據轉換為一灰階圖,用以達到特徵降維(Dimension Reduction)。
前述影像前處理的第二實施例至少包括如下步驟,如圖4所示:第一步驟S300:先將該影像數據進行一限制對比度受限自適應直方圖均化(Contrast Limited Adaptive Histogram Equalization),用以提高影像數據的對比度;第二步驟S301:再利用一色調飽和度調整(Hue,Saturation,Value,簡稱HSV)來增加該影像數據的顏色飽和度;
第三步驟S302:最後將該影像數據進行一伽瑪校正濾波處理(Gamma Correction),用以強化該影像數據的特徵。
使用者可以依據不同的實施目的來選擇要不要使用前述的影像前處理,當然也可以擇一使用前述影像處理的第一實施例或者第二實施例,或是同時使用兩實施例;如為同時使用兩實施例,則可以優先使用第一實施例再進行第二實施例,也可以優先使用第二實施例再進行第一實施例的影像前處理。
前述第一步驟S100中的數據增強至少包括如下四種方式:將該影像數據隨機旋轉5~10°、將該影像數據隨機左右翻轉、將該影像數據隨機縮放、將該影像數據隨機裁剪5~10%。
前述第二步驟S101中的深度卷積神經網路模型可為一深度殘差網路模型(Deep Residual Network,ResNet)或一縮放網路模型(EfficientNet)。
前述第二步驟S101中的第一批量大小的訓練方式為逐漸增大批量大小,用以減少每次時期(epoch)的時間,進而提升整體運算速度,並且訓練時每次決定更改權重方向是由該驗證集損失(Valid loss)的函數所決定,該驗證集損失的函數的公式為:
其中L為驗證集損失函數,m為批量大小,xi和yi為函數的樣本。
前述第三步驟S102中的第二批量大小的訓練方式為回推取前面5個時期(epoch),且驗證集損失不能高於後面10個時期5%的權重,然後再改使用較小的批量大小再進行訓練,再去訓練產生較大的變動使模型有不一樣的改變方向。
由前述的說明可知,本發明的訓練方式為增加變動量,透過於訓練時改變批量大小來實行,在模型訓練時若模型效率不再提升時,如圖5所示(圈起位置為再訓練時採用的初始權重),判定方式以經過10個時期(epoch)都未再下降後,回推取前面5個時期(epoch)且驗證集損失(Valid Loss)不能高於後面10個時期(epoch)5%的權重,改使用較小的批量大小再去訓練,再去訓練產生較大的變動使模型有不一樣的改變方向。使用批量大小調整的優點是確認訓練資料集可以在調整訓練後使模型確切的更貼近訓練集的資料,然後不取用loss較高的特定樣本去訓練,是為了要保有原始其他樣本在這個模型的準確度。
為了更進一步說明,本發明的訓練方法用在20層的深度殘差網路(ResNet-20)訓練Cifar-10數據庫上做實驗,Cifar-10是一個公開的圖像資料庫,常被應用在各種圖像判別訓練上,其由60000張32×32的RGB彩色圖片所構成,其中共分為10個類別,分別是飛機、汽車、鳥、貓、鹿、狗、青蛙、馬、船及卡車,並在將這60000張圖片分成50000張訓練集圖片,10000張測試集圖片。
當本發明的訓練方法用在以ResNet-20訓練Cifar-10數據庫上做實驗時,一開始先用正常批量大小(即為第一批量大小)進行訓練,訓練途中發現驗證集損失(Valid Loss)不再下降時,甚至可能上升產生過度擬合的現象時再減小批量大小(即為第二批量大小),以此方法增加變動量,其結果如圖6所示。
由圖6可以看到在使用ResNet-20訓練Cifar-10數據庫上,在使用自適應批量大小(即第二批量大小)訓練方法時,設定的批量大小(Mini-Batch Size)由64降低為8後再接下去訓練,其驗證集準確度(Valid Accuracy)及驗證集損失(Valid Loss)相對與使用批量大小(Mini-Batch Size)為64或8時都較為提高。當將Cifar-10數據庫做數據增強(Data Augamentation)後,發現在使用較大的批量大小(Mini-Batch Size)時其仍然較快收斂,但於較小的批量大小(Mini-Batch Size)時,光是訓練集準確度(Train Accuracy)上便無法收斂,而再改用自適應批量大小(即第二批量大小)訓練方法後,雖然後續使用的是較小的批量大小(Mini-Batch Size),但是模型可以收斂,並且進一步的提升模型效率。降低批量大小幅度至少為原本的批量大小(Mini-Batch Size)的1/2是為了確保能夠創造出夠大的環境雜訊,不設定過小是為了防止某個異常值的出現會嚴重擾動到訓練過程。
同樣的,當本發明的訓練方法改用在EfficientNet-B0來訓練Cifar-10數據庫時,其結果如圖7所示。也可看到在使用
自適應調適批量大小(第二批量大小)的訓練方法時,驗證集準確度(Valid Accuracy)及驗證集損失(Valid Loss)都可以再更進一步變好。
雖然本發明以前述之諸項實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
S100~S102:步驟
Claims (7)
- 一種神經網路之自適應調節批量大小的訓練方法,會與一影像資料庫相互配合比對,該訓練方法至少包括如下步驟:(a)從該影像資料庫內採集一影像數據,並將該影像數據進行一數據增強;(b)構建一深度卷積神經網路模型,並將該影像數據輸入到該深度卷積神經網路模型中,並對該模型進行一第一批量大小的訓練;(c)當該深度卷積神經網路模型的一驗證集損失經過10個時期都未再下降,即利用一第二批量大小再進行訓練,用以訓練並提高該深度卷積神經網路模型的準確率,並輸出辦識結果;其中該第一批量大小的訓練方式為:逐漸增大批量大小,用以減少每次時期的時間,並且訓練時每次決定更改權重方向是由該驗證集損失的函數所決定,該驗證集損失的函數的公式為:
- 如請求項1所述的神經網路之自適應調節批量大小的訓練方法,其中該影像資料庫可為公開的Cifar-10數據庫或是自行錄製拍攝的數據庫。
- 如請求項1所述的神經網路之自適應調節批量大小的訓練方法,其中該影像數據也可選擇先進行一影像前處理,再進行數據增強。
- 如請求項3所述的神經網路之自適應調節批量大小的訓練方法,其中該影像前處理至少包括如下步驟:(a)先將該影像數據進行一直方圖均化,用以提高影像數據的對比度;(b)再利用一中值濾波器,用以降低影像數據中的雜訊;(c)最後將該影像數據進行一灰階化,將該影像數據轉換為一灰階圖,用以達到特徵降維。
- 請求項3所述的神經網路之自適應調節批量大小的訓練方法,其中該影像前處理至少包括如下步驟: (a)先將該影像數據進行一限制對比度受限自適應直方圖均化,用以提高影像數據的對比度;(b)再利用一色調飽和度調整來增加該影像數據的顏色飽和度;(c)最後將該影像數據進行一伽瑪校正濾波處理,用以強化該影像數據的特徵。
- 請求項1所述的神經網路之自適應調節批量大小的訓練方法,其中該數據增強至少有如下四種方式(a)將該影像數據隨機旋轉5~10°;(b)將該影像數據隨機左右翻轉;(c)將該影像數據隨機縮放;以及(d)將該影像數據隨機裁剪5~10%。
- 請求項1所述的神經網路之自適應調節批量大小的訓練方法,其中該深度卷積神經網路模型可為一深度殘差網路模型或一效率網路模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110104311A TWI793516B (zh) | 2021-02-04 | 2021-02-04 | 神經網路之自適應調節批量大小的訓練方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110104311A TWI793516B (zh) | 2021-02-04 | 2021-02-04 | 神經網路之自適應調節批量大小的訓練方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202232431A TW202232431A (zh) | 2022-08-16 |
TWI793516B true TWI793516B (zh) | 2023-02-21 |
Family
ID=83782664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110104311A TWI793516B (zh) | 2021-02-04 | 2021-02-04 | 神經網路之自適應調節批量大小的訓練方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI793516B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116701478B (zh) * | 2023-08-02 | 2023-11-24 | 蘑菇车联信息科技有限公司 | 航向角确定方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110298387A (zh) * | 2019-06-10 | 2019-10-01 | 天津大学 | 融入像素级attention机制的深度神经网络目标检测方法 |
US20200097829A1 (en) * | 2018-09-24 | 2020-03-26 | Samsung Electronics Co., Ltd. | Normalization method for training deep neural networks |
CN112085179A (zh) * | 2019-06-13 | 2020-12-15 | 杭州光启人工智能研究院 | 一种加大深度学习训练数据量的方法 |
TW202105261A (zh) * | 2018-12-19 | 2021-02-01 | 德商羅伯特博斯奇股份有限公司 | 用於訓練神經網路的方法 |
-
2021
- 2021-02-04 TW TW110104311A patent/TWI793516B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200097829A1 (en) * | 2018-09-24 | 2020-03-26 | Samsung Electronics Co., Ltd. | Normalization method for training deep neural networks |
TW202105261A (zh) * | 2018-12-19 | 2021-02-01 | 德商羅伯特博斯奇股份有限公司 | 用於訓練神經網路的方法 |
CN110298387A (zh) * | 2019-06-10 | 2019-10-01 | 天津大学 | 融入像素级attention机制的深度神经网络目标检测方法 |
CN112085179A (zh) * | 2019-06-13 | 2020-12-15 | 杭州光启人工智能研究院 | 一种加大深度学习训练数据量的方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202232431A (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112633497B (zh) | 一种基于重加权膜电压的卷积脉冲神经网络的训练方法 | |
CN106250939B (zh) | 基于fpga+arm多层卷积神经网络的手写体字符识别方法 | |
CN108665005B (zh) | 一种利用dcgan提高基于cnn图像识别性能的方法 | |
CN107092959B (zh) | 基于stdp非监督学习算法的脉冲神经网络模型构建方法 | |
CN109658344A (zh) | 基于深度学习的图像去噪方法、装置、设备和存储介质 | |
CN109416758A (zh) | 神经网络及神经网络训练的方法 | |
CN108171318B (zh) | 一种基于模拟退火—高斯函数的卷积神经网络集成方法 | |
CN113705769A (zh) | 一种神经网络训练方法以及装置 | |
CN106951959A (zh) | 基于学习自动机的深度神经网络优化方法 | |
CN114186672A (zh) | 一种用于脉冲神经网络的高效高精度训练算法 | |
CN107563430A (zh) | 一种基于稀疏自动编码器和灰度关联分析法的卷积神经网络算法优化方法 | |
Ran et al. | Memristor-based edge computing of ShuffleNetV2 for image classification | |
Zhang et al. | Channel-wise and feature-points reweights densenet for image classification | |
CN114861838A (zh) | 一种基于神经元复杂动力学的脉冲神经类脑智能分类方法 | |
Du et al. | Efficient network construction through structural plasticity | |
TWI793516B (zh) | 神經網路之自適應調節批量大小的訓練方法 | |
Sun et al. | Low-consumption neuromorphic memristor architecture based on convolutional neural networks | |
Qiu et al. | A nonuniform weighted loss function for imbalanced image classification | |
Halkias et al. | Sparse penalty in deep belief networks: using the mixed norm constraint | |
CN117011508A (zh) | 一种基于视觉变换和特征鲁棒的对抗训练方法 | |
Burhani et al. | Denoising autoencoder in neural networks with modified Elliott activation function and sparsity-favoring cost function | |
McCann et al. | Object detection using convolutional neural networks | |
CN112381176B (zh) | 一种基于双目特征融合网络的图像分类方法 | |
CN114676835A (zh) | 基于模式的神经网络修剪 | |
CN114743049A (zh) | 一种基于课程学习与对抗训练的图像分类方法 |