TWI831016B - 機器學習方法、機器學習系統以及非暫態電腦可讀取媒體 - Google Patents

機器學習方法、機器學習系統以及非暫態電腦可讀取媒體 Download PDF

Info

Publication number
TWI831016B
TWI831016B TW110120430A TW110120430A TWI831016B TW I831016 B TWI831016 B TW I831016B TW 110120430 A TW110120430 A TW 110120430A TW 110120430 A TW110120430 A TW 110120430A TW I831016 B TWI831016 B TW I831016B
Authority
TW
Taiwan
Prior art keywords
hypernetwork
classification model
parameter
parameters
classification
Prior art date
Application number
TW110120430A
Other languages
English (en)
Other versions
TW202147139A (zh
Inventor
陳智暘
張哲瀚
張智威
Original Assignee
宏達國際電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 宏達國際電子股份有限公司 filed Critical 宏達國際電子股份有限公司
Publication of TW202147139A publication Critical patent/TW202147139A/zh
Application granted granted Critical
Publication of TWI831016B publication Critical patent/TWI831016B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

一種機器學習方法包含下列步驟:(a)取得超參數以及超網路參數的初始值;(b)根據超參數以及超網路參數產生第一分類模型參數,基於第一分類模型參數針對訓練樣本的分類結果更新超網路參數;(c)根據超參數以及更新後的超網路參數產生第二分類模型參數,基於第二分類模型參數針對驗證樣本的分類結果更新超參數;以及(d)重複步驟(b)與(c)以更新超網路參數以及超參數。

Description

機器學習方法、機器學習系統以及非暫態電腦可讀取媒體
本揭示有關於一種機器學習技術,且特別是有關於具有資料增強功能的機器學習技術。
在機器視覺領域中,經常會利用到機器學習及神經網路等技術。機器視覺的其中一種重要應用是偵測或辨識圖片或影像當所包含的物件(例如人臉、車牌等),其可透過特徵擷取和特徵分類來進行物件偵測。
為了正確的偵測圖片或影像中的物件並提高偵測的精準度,通常需要大量的訓練資料(例如訓練用的輸入圖片以及相應的分類標籤),讓負責分類的神經網路能夠從訓練資料中學習到輸入圖片與正確的分類標籤之間的相關性。實際情況中,要取得足夠數量的訓練資料以符合精準度需求是有相當難度,各種物件偵測的應用經常都面臨著訓練資料的樣本數目不足的問題。
本揭示的一態樣揭露一種機器學習方法,包含:(a) 取得一超參數以及一超網路參數的初始值;(b)根據該超參數以及該超網路參數產生一第一分類模型參數,基於該第一分類模型參數針對一訓練樣本的分類結果更新該超網路參數;(c)根據該超參數以及更新後的該超網路參數產生一第二分類模型參數,基於該第二分類模型參數針對一驗證樣本的分類結果更新該超參數;以及(d)重複步驟(b)與(c)以更新該超網路參數以及該超參數。
本揭示的另一態樣揭露一種機器學習系統,包含記憶單元以及處理單元。記憶單元用以儲存超參數以及超網路參數的初始值。處理單元與記憶單元耦接,處理單元運行超網路以及分類模型,處理單元用以進行下列操作:(a) 利用該超網路根據該超參數以及該超網路參數產生一第一分類模型參數,利用該分類模型基於該第一分類模型參數產生一訓練樣本的分類結果,藉以更新該超網路參數;(b) 利用該超網路根據該超參數以及更新後的該超網路參數產生一第二分類模型參數,利用該分類模型基於該第二分類模型參數產生一驗證樣本的分類結果,藉以更新該超參數;以及(c)重複操作(a)與(b)以更新該超網路參數以及該超參數。
本揭示的另一態樣揭露一種非暫態電腦可讀取媒體包含至少一指令程序,由一處理器執行該至少一指令程序以實行一機器學習方法,其包含:(a)取得超參數以及超網路參數的初始值;(b)根據超參數以及超網路參數產生第一分類模型參數,基於該第一分類模型參數針對訓練樣本的分類結果更新該超網路參數;(c)根據該超參數以及更新後的該超網路參數產生一第二分類模型參數,基於該第二分類模型參數針對一驗證樣本的分類結果更新該超參數;以及(d)重複步驟(b)與(c)以更新該超網路參數以及該超參數。
以下揭示提供許多不同實施例或例證用以實施本揭示文件的不同特徵。特殊例證中的元件及配置在以下討論中被用來簡化本揭示。所討論的任何例證只用來作解說的用途,並不會以任何方式限制本揭示文件或其例證之範圍和意義。在適當的情況下,在圖示之間及相應文字說明中採用相同的標號以代表相同或是相似的元件。
請參閱第1圖,其繪示根據本揭示之一實施例中一種機器學習系統100的示意圖。機器學習系統100包括記憶單元120以及處理單元140。處理單元140與記憶單元120耦接。
在一些實施例中,機器學習系統100由電腦、伺服器或處理中心建立。於一些實施例中,處理單元140可由處理器、中央處理單元或計算單元實現。於一些實施例中,記憶單元120可以利用記憶體、快閃記憶體、唯讀記憶體、硬碟或任何具相等性的儲存組件來實現。
於一些實施例中,機器學習系統100並不限於包含記憶單元120以及處理單元140,機器學習系統100可以進一步包含操作以及應用中所需的其他元件,舉例來說,機器學習系統100可以更包含輸出介面(例如用於顯示資訊的顯示面板)、輸入介面(例如觸控面板、鍵盤、麥克風、掃描器或快閃記憶體讀取器)以及通訊電路(例如WiFi通訊模組、藍芽通訊模組、無線電信網路通訊模組等)。
如第1圖所示,記憶單元120當中儲存了至少兩種超參數(hyperparameter)HP以及超網路參數(hypernetwork parameter)HNP各自的初始值。於一實施例中,機器學習系統100根據這兩種參數(超參數HP以及超網路參數HNP)分別決定要如何進行資料增強以及標籤分類的操作,詳細作法將在後續段落詳細說明。資料增強(data  augmentation)是一種增加訓練資料數量的技術,又稱為資料擴增或者資料增補,在進行深度學習訓練時,經常需要大量的訓練資料,利用資料增強技術可以基於原始的訓練資料計算產生更多數量的增強訓練資料,以確保訓練機器學習模型時不會產生過度擬合(over-fitting)的現象。
如第1圖所示,處理單元140與記憶單元120耦接,處理單元140基於相應的軟體/韌體指令程序用以運行資料增強模型142、超網路(hypernetwork)144以及分類模型146。
於一些實施例中,資料增強模型142用以基於輸入的訓練樣本進行資料增強產生多筆增強訓練樣本。舉例來說,當輸入的訓練樣本為一張原始影像(例如為一張白天路面上汽車行駛中的照片)以及與這張原始影像對應的訓練標籤(例如汽車、公路或紅綠燈),資料增強模型142用以將原始影像進行水平翻轉、垂直翻轉、旋轉、垂直平移、水平平移、放大/縮小、亮度調整等上述多種影像處理其中一或多種處理的組合。
於一些實施例中,資料增強模型142基於超參數HP的數值對訓練樣本中的原始影像進行不同程度的處理(例如採用不同的旋轉角度、不同的放大/縮小程度)產生多筆增強訓練樣本中的資料增強影像。這些資料增強影像雖然都是基於原始影像產生,但因為資料增強影像中像素的數值已經因為影像處理而改變,對於分類模型146來說多筆增強訓練樣本可以等效視為不同的訓練樣本,藉此可以拓展訓練樣本的數目,解決訓練樣本不足的問題。
於一些實施例中,分類模型146可以對輸入的資料(例如上述的資料增強影像)進行分類,例如偵測輸入的影像當中具有車輛、人臉、車牌、文字、圖騰或是其他影像特徵物件。分類模型146根據分類的結果產生相應的標籤。需特別說明的是,分類模型146在進行分類運作時需參考本身的分類模型參數。
於此實施例中,超網路144用以將超參數HP轉換成分類模型146使用的分類模型參數。其中,超網路根據超網路參數HNP的設定,來決定要超參數HP要如何進行轉換為分類模型參數。
也就是說,於一些實施例中,超參數HP不僅決定了資料增強模型142要如何進行資料增強,超參數HP也透過超網路144的轉換後(形成分類模型參數)用以決定分類模型146要如何進行分類操作。
請一併參閱第2圖,其繪示根據本揭示之一實施例中一種機器學習方法200的示意圖,第1圖所示的機器學習系統100可用以執行第2圖中的機器學習方法200。
如第2圖所示,於步驟S210中首先取得超參數HP以及超網路參數HNP的初始值。於一些實施例中,這個超參數HP以及超網路參數HNP的初始值可以是根據過往訓練經驗當中取得的平均值、人工給定的預設值、或是隨機數值。
於步驟S220中,根據超參數以及超網路參數產生第一分類模型參數,並基於第一分類模型參數針對訓練樣本的分類結果更新超網路參數。於一實施例中,由超網路144根據超網路參數HNP將超參數HP轉換為第一分類模型參數,基於第一分類模型參數針對訓練樣本的分類結果更新超網路參數HNP。後續將配合具體的例子,進一步說明步驟S220在一些實施例當中的詳細步驟。
於步驟S230中,根據超參數以及更新後的超網路參數產生第二分類模型參數,並基於第二分類模型參數針對驗證樣本的分類結果更新超參數。於一實施例中,由超網路144根據更新後的超網路參數HNP將超參數HP轉換為第二分類模型參數,基於第二分類模型參數針對驗證樣本的分類結果更新超參數HP。後續將配合具體的例子,進一步說明步驟S230在一些實施例當中的詳細步驟。
也就是說,在步驟S220中先對超網路參數HNP進行更新。在步驟S230中基於新的超網路參數HNP進而對超參數HP進行更新。
在步驟S240當中,判斷收斂條件是否達成,若收斂條件尚未達成,則再次回到步驟S220,持續重複步驟S220與S230以更新超網路參數HNP以及超參數HP。於一些實施例當中,在收斂條件達成之前,可以持續進行步驟S220與S230以迭代方式逐步更新超網路參數HNP以及超參數HP。
若收斂條件已達成(例如分類模型146給出的分類結果準確度高於門檻值、訓練次數達到預定次數、訓練樣本數達到預定樣本數、或訓練時間達到預定時間等),則表示機器學習系統100已完成訓練,後續可以依照訓練完成後的分類模型146進行後續應用。例如訓練完成後的分類模型146可以用於輸入圖片、影像、串流當中的物件辨識、人臉辨識、音頻辨識或動態偵測等。
請一併參閱第3圖以及第4圖,第3圖繪示在一些實施例當中步驟S220的詳細步驟S221至S225的流程圖。第4圖繪示在一些實施例當中處理單元140當中各元件執行步驟S221至S225的示意圖。
如第4圖所示,假設在初始狀態下,超參數的初始值為超參數HP1,超網路參數的初始值為超網路參數HNP1。
如第3圖及第4圖所示,在步驟S221中,由資料增強模型142基於超參數HP1對訓練樣本TD進行資料增強產生增強訓練樣本ETD。在步驟S222中,由超網路144基於超網路參數HNP1將超參數HP1轉換為第一分類模型參數MP1。
請一併參閱第5A圖,其繪示根據本揭示文件的一些實施例中步驟S222由超網路144基於超網路參數HNP1將超參數HP1轉換為第一分類模型參數MP1的示意圖。如第5A圖所示,步驟S222是用以將資料增強空間SP1當中的一個資料點(即超參數HP1)映射至分類參數空間SP2當中的一個資料點(即第一分類模型參數MP1)。
於第5A圖中,資料增強空間SP1是以兩個軸向的平面座標系為例,舉例來說,其中一個軸向可以代表資料增強時旋轉角度的角度大小,另一個軸向可以表示資料增強時尺寸縮放的比例大小,因此資料點位於資料增強空間SP1的不同位置就對應到不同的資料增強設定。分類參數空間SP2是以三個軸向的立體座標系為例,三個軸向可以分別代表卷積層的三個權重大小。在步驟S222當中,超網路參數HNP1用以決定超網路144如何將資料增強空間SP1當中的超參數HP1映射至分類參數空間SP2當中的第一分類模型參數MP1其間的映射關係。若超網路參數HNP1改變,則超網路144則會將超參數HP1映射至分類參數空間SP2中的其他位置。
需特別補充的是,為了說明上的方便,第5A圖中的資料增強空間SP1與分類參數空間SP2僅僅是例示性說明而繪示兩個軸向及三個軸向,本揭示文件並不以此為限。實際應用中,資料增強空間SP1與分類參數空間SP2可以具有不同的維度,於一些實施例中,分類參數空間SP2是具有更多軸向的高維度空間。
如第3圖及第4圖所示,步驟S223中,由分類模型146基於第一分類模型參數MP1對增強訓練樣本ETD進行分類產生對應增強訓練樣本ETD之第一預測標籤LPD1。
於步驟S224中,由處理單元140執行比較演算法將第一預測標籤LPD1與訓練樣本TD之訓練標籤LTD比較產生之第一損失L1。於一些實施例中,處理單元140將第一預測標籤LPD1與訓練標籤LTD進行交叉熵計算以得到第一損失L1。
其中,第一損失L1的大小代表分類模型146進行的分類結果是否準確,若分類模型146產生的第一預測標籤LPD1與訓練樣本TD之訓練標籤LTD相同(或相似)則第一損失L1的數值較小,代表目前分類模型146採用的第一分類模型參數MP1較為準確。若分類模型146產生的第一預測標籤LPD1與訓練樣本TD之訓練標籤LTD相異則第一損失L1的數值較大,代表目前分類模型146採用的第一分類模型參數MP1較不準確。
於步驟S225中,根據第一損失L1更新超網路參數HNP2。請一併參閱第5B圖,其繪示根據本揭示文件的一些實施例中步驟S225根據第一損失L1更新超網路參數HNP2的示意圖。如第5B圖所示,當知道目前分類模型146採用的第一分類模型參數MP1所對應的第一損失L1之後,可以透過反向傳遞至分類模型146回推得知較佳的分類模型參數MP1m以降低第一損失L1。接著,再透過反向傳遞至超網路144,基於較佳的分類模型參數MP1m回推得知更新後的超網路參數HNP2。於一些實施例中,是採用隨機梯度下降法(​Stochastic gradient descent, SGD)來尋找較佳的分類模型參數MP1m以降低第一損失L1。
如第4圖及第5B圖所示,在超參數HP1維持不變的情況下,超網路144基於更新後的超網路參數HNP2會將超參數HP1映射至較佳的分類模型參數MP1m。
於部分實施例中,如第5A圖所示,在步驟S222當中會引入複數個探索值(exploration value),這些探索值用以在超參數HP1周圍形成複數個探索超參數,各探索值可以分別是在各軸向上的微小差異量(例如偏轉角度增加/減少0.5度、平移量增加/減少1%等),如第5A圖當中所示,在超參數HP1周圍得到四個探索超參數HPe1~HPe4。超網路144除了將超參數HP1映射至分類參數空間SP2中的第一分類模型參數MP1,超網路144基於超網路參數HNP1將這些探索值形成的探索超參數HPe1~HPe4映射至分類參數空間SP2中的其他四個探索分類模型參數MPe1~MPe4。於第5A圖當中,探索分類模型參數MPe1~MPe4同樣鄰近於原始的第一分類模型參數MP1。於一些實施例中,也可以將第一分類模型參數MP1同樣視為一組探索分類模型參數。
也就是說,當加上四個探索超參數後,會將四個探索超參數HPe1~HPe4映射至另外四個探索分類模型參數MPe1~MPe4。上述探索超參數的數目為四組僅為舉例說明,實際應用中探索超參數的數目並不以四組為限。
於部分實施例中,根據四個探索分類模型參數MPe1~MPe4會產生四個探索分類模型,這四個探索分類模型會各自對訓練樣本TD進行分類產生四個第一預測標籤LPD1。於步驟S224中,將產生四個第一預測標籤LPD1分別與訓練標籤LTD比較計算,可以分別得到與四個探索分類模型對應的四個第一損失L1。在一些實施例中,是將四個第一預測標籤LPD1分別與訓練標籤LTD進行交叉熵計算以得到各自的第一損失L1。
於此實施例中,在步驟S225中,可以將四個探索分類模型以及其對應計算四個第一損失L1共同考慮,以將超網路參數HNP1更新為超網路參數HNP2。
請一併參閱第6圖,其繪示根據本揭示文件之一些實施例中分類模型146根據四個探索分類模型參數MPe1~MPe4所形成之四個探索分類模型146e1~146e4的內部架構示意圖。如第6圖所示,探索分類模型146e1~146e4每一者各自包含n個神經網路結構層SL1、SL2、SL3、SL4、SL5…SLn。於一些實施例中,每一個神經網路結構層SL1、SL2、SL3、SL4、SL5…SLn可以是卷積層(convolution layer)、池化層(pooling layer)、線性整流層、全連接層或其他種類之神經網路結構層。
其中,n為正整數,一般而言,分類模型的總層數可以根據實際應用的需求(分類的精確度、分類目標物的複雜度、輸入影像的差異性)而定,一般來說,常見的層數n可以是16至128之間,但本揭示文件並不以特定層數為限。
舉例來說,神經網路結構層SL1及SL2可以是卷積層,神經網路結構層SL3可以是池化層,神經網路結構層SL4及SL5可以是卷積層,神經網路結構層SL6可以是池化層,神經網路結構層SL7可以是卷積層,神經網路結構層SL8可以是線性整流層,神經網路結構層SLn可以是全連接層,但本揭示文件並不以此為限。
如第6圖所示,上述多個神經網路結構層SL1~SLn分為第一結構層部分P1以及接續於第一結構層部分P1的第二結構層部分P2。如第6圖所示的例子中,第一結構層部分P1包含神經網路結構層SL1~SL3,第二結構層部分P2包含神經網路結構層SL4~SLn。
用以形成四個探索分類模型146e1~146e4的四組探索分類模型參數MPe1~MPe4各自包含第一權重參數內容(用以決定第一結構層部分P1之運作)以及第二權重參數內容(用以決定第二結構層部分P2之運作)。於一些實施例中,其中四個探索分類模型146e1~146e4的第二結構層部分P2(即神經網路結構層SL4~SLn)共享相同的第二權重參數內容,神經網路結構層SL4~SLn之運作邏輯彼此相同。
也就是說,探索分類模型146e1的神經網路結構層SL4與探索分類模型146e2的神經網路結構層SL4採用相同的權重參數並以相同的邏輯運作。也就是說,探索分類模型146e1的神經網路結構層SL5與探索分類模型146e2的神經網路結構層SL5採用相同的權重參數並以相同的邏輯運作,依此類推。
另一方面,四個探索分類模型146e1~146e4的第一結構層部分P1(即神經網路結構層SL1~SL3)各自具有獨立的第一權重參數內容,神經網路結構層SL1~SL3之運作邏輯彼此不同。
第6圖中第一結構層部分P1與第二結構層部分P2的分佈只是例示性說明。本揭示文件並不以此為限。
於一實施例中,探索分類模型146e1~146e4各自的第一結構層部分P1至少包含第一卷積層,例如第一結構層部分P1包含神經網路結構層SL1(即為第一卷積層),探索分類模型146e1~146e4各自的第一卷積層彼此權重參數不同。於此實施例中,其餘的神經網路結構層SL2~SLn均為第二結構層部分P2(圖中未示),第二結構層部分P2包含第二卷積層以及全連接層,探索分類模型146e1~146e4各自的第二卷積層以及全連接層彼此權重參數相同。在此實施例中,由於大部分的神經網路結構層SL2~SLn都共享了相同的權重參數,僅有少數的神經網路結構層SL1採用獨立的權重參數,於運算上較為簡便,故整體訓練速度較快且所需的運算資源較少,經過實驗也可能保持一定的精準度。
請一併參閱第7圖以及第8圖,第7圖繪示在一些實施例當中步驟S230的詳細步驟S231至S234的流程圖。第8圖繪示在一些實施例當中處理單元140當中各元件執行步驟S231至S234的示意圖。
經過第3圖及第4圖所示的步驟S220後,在進入步驟S230時,如第8圖所示,超參數的目前數值仍為超參數HP1,超網路參數的目前數值已更新為超網路參數HNP2。
如第7圖及第8圖所示,在步驟S231中,由超網路144基於更新後之超網路參數HNP2將超參數HP1轉換為第二分類模型參數MP2,此時第二分類模型參數MP2等同於先前第5B圖實施例中回推得知之較佳的分類模型參數MP1m。請一併參閱第9A圖,其繪示根據本揭示文件的一些實施例中步驟S231將超參數HP1轉換計算第二分類模型參數MP2的示意圖。如第9A圖所示,步驟S231是用以將資料增強空間SP1當中的一個資料點(即超參數HP1)映射至分類參數空間SP2當中的一個資料點(即第二分類模型參數MP2)。
在步驟S231當中,超網路參數HNP2用以決定超網路144如何將資料增強空間SP1當中的超參數HP1映射至分類參數空間SP2當中的第二分類模型參數MP2其間的映射關係。
將第9A圖與第5A圖比較,由於超網路參數HNP2已經不同於先前實施例的超網路參數HNP1(如第5A圖所示),因此,超網路144會將相同的超參數HP1映射至分類參數空間SP2中的新的位置(即第二分類模型參數MP2)。
如第7圖及第8圖所示,步驟S232中,由分類模型146基於第二分類模型參數MP2對驗證樣本VD進行分類產生對應驗證樣本VD之第二預測標籤LPD2。
於步驟S233中,由處理單元140執行比較演算法將第二預測標籤LPD2與驗證樣本VD之驗證標籤LVD比較產生之第二損失L2。於一些實施例中,處理單元140將第二預測標籤LPD2與驗證標籤LVD進行交叉熵計算以得到第二損失L2。
其中,第二損失L2的大小代表分類模型146進行的分類結果是否準確,若分類模型146產生的第二預測標籤LPD2與驗證樣本VD之驗證標籤LVD相同(或相似)則第二損失L2的數值較小,代表目前分類模型146採用的第二分類模型參數MP2較為準確。若分類模型146產生的第二預測標籤LPD2與驗證樣本VD之驗證標籤LVD相異則第二損失L2的數值較大,代表目前分類模型146採用的第二分類模型參數MP2較不準確。
於步驟S234中,根據第二損失L2將超參數HP1更新為超參數HP2。請一併參閱第9B圖,其繪示根據本揭示文件的一些實施例中步驟S234根據第二損失L2更新超參數HP2的示意圖。如第9B圖所示,當知道目前分類模型146採用的第二分類模型參數MP2所對應的第二損失L2之後,可以透過反向傳遞至分類模型146回推得知較佳的分類模型參數MP2m以降低第二損失L2。接著,再透過反向傳遞至超網路144,基於較佳的分類模型參數MP2m回推得知更新後的超參數HP2。於一些實施例中,是採用隨機梯度下降法(​Stochastic gradient descent, SGD)來尋找較佳的分類模型參數MP2m以降低第二損失L2。
如第8圖及第9B圖所示,在超網路144使用的超網路參數HNP2維持不變的情況下,超網路144基於超網路參數HNP2會將更新後的超參數HP2映射至較佳的分類模型參數MP2m。
綜上所述,在步驟S220中先將超網路參數HNP1更新為超網路參數HNP2。在步驟S230中基於超網路參數HNP2將超參數HP1更新為超參數HP2。當完成步驟S230,若收斂條件尚未達成,則可基於超參數HP2回到步驟S220,以超參數HP2與超網路參數HNP2為輸入條件再次進行步驟S220與S230,則可再次更新超參數與超網路參數。依此類推,則可以迭代更新超網路參數以及超參數,直到滿足收斂條件。
如第1圖所示,在機器學習系統100的訓練過程中,可以根據超參數HP的內容控制資料增強模型142的資料增強操作,以及根據超參數HP(透過超網路144的轉換)控制分類模型146的分類操作。此外,本揭示文件中不同的探索分類模型之間可以進行權重分享,如此可以節省儲存空間以及運算資源,有助於加速訓練的速度。並且,本揭示文件之機器學習系統100可以利用資料增強模型,增加訓練樣本TD的等效數量,藉此訓練得到的分類模型146不需要大量的訓練樣本TD仍可保有較高的精準度。
目前在電腦視覺領域,深度學習的準確性主要是依賴大量已被標記好的訓練資料。隨著訓練資料的質量、數量及多樣性的提升,分類模型的效能通常會隨之提升。然而,常見的狀況是難以收集到高品質的資料來訓練分類模型,分類模型的效能也因此提升不起來。解決這個問題的方法之一,是讓專家採取手動設計資料增強的參數,例如旋轉角度、翻轉方式或亮度調整比例等,這些手動設計的資料增強已普遍用於訓練出高效能的電腦視覺之分類模型。若找到運用機器學習自動找到決定資料增強使用的參數,將更有效率且能有更高的準確性。於本揭示文件的上述實施例中,提出以超網路為基礎的資料增強(hybernetwork-based augmentation, HBA),以超網路產生多個連續性探索模型,利用梯度下降法 (Gradient descent)來自動化調整資料增強所使用的超參數,並且採用了權重分享的策略來提升運算速度以及準確性,可以節省手動調整資料增強之參數的時間與人力資源。另外,不論原始訓練樣本是否已經足夠,透過資料增強均可以有效提高準確率,降低過度擬合的問題,因此針對資料增強進行自動化的參數調整能更有效率地提高模型表現。
於應用層面上,本揭示文件的機器學習方法與機器學習系統可以用在各種具有機器視覺、圖像分類或是資料分類的領域,舉例來說,此機器學習方法可以用在醫療影像的分類,像是可以分辨正常狀態、患有肺炎、患有支氣管炎、患有心臟疾病的X光影像,或是可以分辨正常胎兒、胎位不正的超音波影像。另一方面,此機器學習方法也可以用在自動駕駛收集之影像的分類,像是可以分辨正常路面、有障礙物的路面及其他車輛的路況影像。還有其他與此類似的機器學習領域,舉例來說,本揭示文件的機器學習方法與機器學習系統也可以用在音譜辨識、光譜辨識、大數據分析、數據特徵辨識等其他有關機器學習的範疇當中。
本揭示文件的另一種實施例為一種非暫態電腦可讀取媒體,包含至少一指令程序,由處理器(例如第1圖中的處理單元140)執行該至少一指令程序以實行如第2圖、第3圖及第7圖之實施例中機器學習方法200。
雖然本揭示的特定實施例已經揭露有關上述實施例,此些實施例不意欲限制本揭示。各種替代及改良可藉由相關領域中的一般技術人員在本揭示中執行而沒有從本揭示的原理及精神背離。因此,本揭示的保護範圍由所附申請專利範圍確定。
100:機器學習系統 120:記憶單元 140:處理單元 142:資料增強模型 144:超網路 146:分類模型 200:機器學習方法 S210, S220, S230, S240:步驟 S221, S222, S223, S224, S225:步驟 S231, S232, S233, S234:步驟 HP, HP1, HP2:超參數 HNP, HNP1, HNP2:超網路參數 MP1:第一分類模型參數 MP2:第二分類模型參數 MP1m, MP2m:較佳的分類模型參數 SP1:資料增強空間 SP2:分類參數空間 HPe1, HPe2, HPe3, HPe4:探索超參數 MPe1, MPe2, MPe3, MPe4:探索分類模型參數 146e1, 146e2, 146e3, 146e4:探索分類模型 SL1, SL2, SL3, SL4, SL5:神經網路結構層 SL6, SL7, SL8, SLn:神經網路結構層 P1:第一結構層部分 P2:第二結構層部分 TD:訓練樣本 LTD:訓練標籤 ETD:增強訓練樣本 VD:驗證樣本 LVD:驗證標籤 LPD1:第一預測標籤 LPD2:第二預測標籤 L1:第一損失 L2:第二損失
第1圖繪示根據本揭示之一實施例中一種機器學習系統的示意圖。 第2圖繪示根據本揭示之一實施例中一種機器學習方法的示意圖。 第3圖繪示在一些實施例中機器學習方法其中一步驟的詳細步驟的流程圖。 第4圖繪示在一些實施例當中處理單元當中各元件執行第3圖中的詳細步驟的示意圖。 第5A圖繪示根據本揭示文件的一些實施例中將超參數轉換計算該第一分類模型參數的示意圖。 第5B圖繪示根據本揭示文件的一些實施例中根據第一損失更新超網路參數的示意圖。 第6圖繪示根據本揭示文件之一些實施例中分類模型根據四個探索分類模型參數所形成之四個探索分類模型的內部架構示意圖。 第7圖繪示在一些實施例當中機器學習方法其中一步驟的詳細步驟的流程圖。 第8圖繪示在一些實施例當中處理單元當中各元件執行第7圖中的詳細步驟的示意圖。 第9A圖繪示根據本揭示文件的一些實施例中將超參數轉換計算第二分類模型參數的示意圖。 第9B圖繪示根據本揭示文件的一些實施例中根據第二損失更新超參數的示意圖。
國內寄存資訊(請依寄存機構、日期、號碼順序註記) 無 國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記) 無
200:機器學習方法
S210,S220,S230,S240:步驟

Claims (20)

  1. 一種機器學習方法,包含:(a)取得一超參數以及一超網路參數的初始值;(b)由一資料增強模型基於該超參數對一訓練樣本進行資料增強產生一增強訓練樣本,由一超網路基於該超網路參數將該超參數轉換為一第一分類模型參數,該超參數轉換後的該第一分類模型參數用以控制一分類模型針對該增強訓練樣本進行分類並依據分類結果更新該超網路參數;(c)由該超網路基於更新後的該超網路參數將該超參數轉換為一第二分類模型參數,該超參數轉換後的該第二分類模型參數用以控制該分類模型針對一驗證樣本進行分類並依據分類結果更新該超參數;以及(d)重複步驟(b)與(c)以更新該超網路參數以及該超參數,藉此利用重複更新後的該超網路參數以及該超參數控制該超網路、該分類模型以及該資料增強模型的運作。
  2. 如請求項1所述之機器學習方法,其中步驟(b)更包含:(b1)由該分類模型基於該第一分類模型參數對該增強訓練樣本進行分類產生對應該增強訓練樣本之一第一預測標籤;以及(b2)根據該第一預測標籤與該訓練樣本之一訓練標籤比較產生之一第一損失更新該超網路參數。
  3. 如請求項2所述之機器學習方法,其中步驟(b)包含:由該超網路基於該超網路參數以及複數個探索值,將該超參數轉換為對應該些探索值的複數個探索分類模型參數;其中步驟(b1)包含:由該分類模型基於該複數個探索分類模型參數分別形成複數個探索分類模型,該複數個探索分類模型分別對該增強訓練樣本進行分類產生對應該增強訓練樣本之複數個第一預測標籤;以及其中步驟(b2)包含:根據該複數個第一預測標籤與該訓練樣本之該訓練標籤比較計算與該複數個探索分類模型對應的複數個第一損失;以及根據該複數個探索分類模型以及其對應的該複數個第一損失以更新該超網路參數。
  4. 如請求項3所述之機器學習方法,其中步驟(b2)中:將該複數個第一預測標籤分別與該訓練標籤進行一交叉熵計算以得到該複數個第一損失。
  5. 如請求項3所述之機器學習方法,其中該複數個探索分類模型每一者各自包含複數個神經網路結構層, 該複數個神經網路結構層分為一第一結構層部分以及接續於該第一結構層部分的一第二結構層部分,用以形成該複數個探索分類模型的該複數個探索分類模型參數各自包含一第一權重參數內容以及一第二權重參數內容,該第一權重參數內容用以決定該第一結構層部分之運作,該第二權重參數內容用以決定該第二結構層部分之運作。
  6. 如請求項5所述之機器學習方法,其中該複數個探索分類模型的該複數個第二結構層部分共享相同的該些第二權重參數內容,該複數個第二結構層部分之運作邏輯彼此相同。
  7. 如請求項5所述之機器學習方法,其中該第一結構層部分包含至少一第一卷積層,該複數個探索分類模型各自的該至少一第一卷積層彼此權重參數不同。
  8. 如請求項5所述之機器學習方法,其中該第二結構層部分包含至少一第二卷積層以及至少一全連接層,該複數個探索分類模型各自的該至少一第二卷積層以及該至少一全連接層彼此權重參數相同。
  9. 如請求項1所述之機器學習方法,其中步驟(c)更包含:(c1)由該分類模型基於該第二分類模型參數對該驗證 樣本進行分類產生對應該驗證樣本之一第二預測標籤;以及(c2)根據該第二預測標籤與該驗證樣本之一驗證標籤比較產生之一第二損失更新該超參數。
  10. 如請求項9所述之機器學習方法,其中步驟(c2)中:將該第二預測標籤與該驗證標籤進行一交叉熵計算以得到該第二損失。
  11. 一種機器學習系統,包含:一記憶單元,用以儲存一超參數以及一超網路參數的初始值;一處理單元,與該記憶單元耦接,該處理單元運行一資料增強模型、一超網路以及一分類模型,該處理單元用以進行下列操作:(a)由該資料增強模型基於該超參數對一訓練樣本進行資料增強產生一增強訓練樣本,由該超網路基於該超網路參數將該超參數轉換為一第一分類模型參數,該超參數轉換後的該第一分類模型參數用以控制該分類模型針對該增強訓練樣本進行分類並依據分類結果更新該超網路參數;(b)由該超網路基於更新後的該超網路參數將該超參數轉換為一第二分類模型參數,該超參數轉換後的該第 二分類模型參數用以控制該分類模型針對一驗證樣本進行分類,並依據分類結果更新該超參數;以及(c)重複操作(a)與(b)以迭代更新該超網路參數以及該超參數,藉此利用重複更新後的該超網路參數以及該超參數控制該超網路、該分類模型以及該資料增強模型的運作。
  12. 如請求項11所述之機器學習系統,其中該處理單元更用以運行該資料增強模型,該處理單元進行的操作(a)包含:(a1)利用該分類模型基於該第一分類模型參數對該增強訓練樣本進行分類產生對應該增強訓練樣本之一第一預測標籤;以及(a2)根據該第一預測標籤與該訓練樣本之一訓練標籤比較產生之一第一損失更新該超網路參數。
  13. 如請求項12所述之機器學習系統,其中該處理單元進行的操作(a)包含:由該超網路基於該超網路參數以及複數個探索值,將該超參數轉換為對應該些探索值的複數個探索分類模型參數;其中該處理單元進行的操作(a1)包含:由該分類模型基於該複數個探索分類模型參數分別形成複數個探索分類模型,該複數個探索分類模型分別對該增 強訓練樣本進行分類產生對應該增強訓練樣本之複數個第一預測標籤;以及其中該處理單元進行的操作(a2)包含:根據該複數個第一預測標籤與該訓練樣本之該訓練標籤比較計算與該複數個探索分類模型對應的複數個第一損失;以及根據該複數個探索分類模型以及其對應的該複數個第一損失以更新該超網路參數。
  14. 如請求項13所述之機器學習系統,其中該處理單元進行的操作(a2)包含:將該複數個第一預測標籤分別與該訓練標籤進行一交叉熵計算以得到該複數個第一損失。
  15. 如請求項13所述之機器學習系統,其中該複數個探索分類模型每一者各自包含複數個神經網路結構層,該複數個神經網路結構層分為一第一結構層部分以及接續於該第一結構層部分的一第二結構層部分,用以形成該複數個探索分類模型的該複數個探索分類模型參數各自包含一第一權重參數內容以及一第二權重參數內容,該第一權重參數內容用以決定該第一結構層部分之運作,該第二權重參數內容用以決定該第二結構層部分之運作。
  16. 如請求項15所述之機器學習系統,其中該 複數個探索分類模型的該複數個第二結構層部分共享相同的該些第二權重參數內容,該複數個第二結構層部分之運作邏輯彼此相同。
  17. 如請求項15所述之機器學習系統,其中該第一結構層部分包含至少一第一卷積層,該複數個探索分類模型各自的該至少一第一卷積層彼此權重參數不同。
  18. 如請求項15所述之機器學習系統,其中該第二結構層部分包含至少一第二卷積層以及至少一全連階層,該複數個探索分類模型各自的該至少一第二卷積層以及該至少一全連階層彼此權重參數相同。
  19. 如請求項11所述之機器學習系統,其中該處理單元進行的操作(b)包含:(b1)由該分類模型基於該第二分類模型參數對該驗證樣本進行分類產生對應該驗證樣本之一第二預測標籤;以及(b2)根據該第二預測標籤與該驗證樣本之一驗證標籤比較產生之一第二損失更新該超參數。
  20. 一種非暫態電腦可讀取媒體,包含至少一指令程序,由一處理器執行該至少一指令程序以實行一機器學習方法,其包含: (a)取得一超參數以及一超網路參數的初始值;(b)由一資料增強模型基於該超參數對一訓練樣本進行資料增強產生一增強訓練樣本,由一超網路基於該超網路參數將該超參數轉換為一第一分類模型參數,該超參數轉換後的該第一分類模型參數用以控制一分類模型針對該增強訓練樣本進行分類並依據分類結果更新該超網路參數;(c)由該超網路基於更新後的該超網路參數將該超參數轉換為一第二分類模型參數,該超參數轉換後的該第二分類模型參數用以控制該分類模型針對一驗證樣本進行分類,並依據分類結果更新該超參數;以及(d)重複步驟(b)與(c)以迭代更新該超網路參數以及該超參數,藉此利用重複更新後的該超網路參數以及該超參數控制該超網路、該分類模型以及該資料增強模型的運作。
TW110120430A 2020-06-05 2021-06-04 機器學習方法、機器學習系統以及非暫態電腦可讀取媒體 TWI831016B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063034993P 2020-06-05 2020-06-05
US63/034,993 2020-06-05

Publications (2)

Publication Number Publication Date
TW202147139A TW202147139A (zh) 2021-12-16
TWI831016B true TWI831016B (zh) 2024-02-01

Family

ID=76283633

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110120430A TWI831016B (zh) 2020-06-05 2021-06-04 機器學習方法、機器學習系統以及非暫態電腦可讀取媒體

Country Status (6)

Country Link
US (1) US20210383224A1 (zh)
EP (1) EP3920102A1 (zh)
JP (1) JP7226696B2 (zh)
KR (1) KR20210152402A (zh)
CN (1) CN113762327B (zh)
TW (1) TWI831016B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479679B1 (ko) * 2021-12-31 2022-12-21 주식회사 애자일소다 데이터 증강과 오토 레이블링을 이용한 데이터 구축 장치 및 방법
KR102656568B1 (ko) * 2022-03-31 2024-04-12 주식회사 에임퓨처 데이터를 분류하는 방법 및 장치
CN117877103B (zh) * 2024-03-13 2024-05-24 宁波市眼科医院 一种基于深度元学习的角膜炎智能筛查方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110861A (zh) * 2019-05-09 2019-08-09 北京市商汤科技开发有限公司 确定模型超参数及模型训练的方法和装置、存储介质
TWI675335B (zh) * 2017-06-09 2019-10-21 宏達國際電子股份有限公司 訓練任務優化系統、訓練任務優化方法及其非暫態電腦可讀媒體
WO2020070876A1 (ja) * 2018-10-05 2020-04-09 日本電気株式会社 教師データ拡張装置、教師データ拡張方法およびプログラム
JP2020087103A (ja) * 2018-11-28 2020-06-04 株式会社ツバサファクトリー 学習方法、コンピュータプログラム、分類器、及び生成器

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102386806B1 (ko) * 2016-10-28 2022-04-14 구글 엘엘씨 신경 아키텍처 검색
JP6773618B2 (ja) * 2017-09-04 2020-10-21 株式会社東芝 学習装置、情報処理装置、学習方法およびプログラム
KR102521054B1 (ko) * 2017-10-18 2023-04-12 삼성전자주식회사 조기 중단에 기반한 심층 신경망의 연산 제어 방법 및 시스템
KR101864286B1 (ko) 2017-11-10 2018-07-04 주식회사 한컴엠디에스 머신 러닝 알고리즘을 이용하는 방법 및 장치
US20210081792A1 (en) * 2018-04-26 2021-03-18 Nippon Telegraph And Telephone Corporation Neural network learning apparatus, neural network learning method and program
US10810996B2 (en) * 2018-07-31 2020-10-20 Nuance Communications, Inc. System and method for performing automatic speech recognition system parameter adjustment via machine learning
CN110163234B (zh) * 2018-10-10 2023-04-18 腾讯科技(深圳)有限公司 一种模型训练方法、装置和存储介质
CN110231360B (zh) * 2019-05-31 2020-06-26 华南农业大学 电镜像差的确定方法、消除方法及装置
CN110580496A (zh) * 2019-07-11 2019-12-17 南京邮电大学 一种基于熵最小化的深度迁移学习***及方法
CN110889489A (zh) * 2019-11-08 2020-03-17 北京小米移动软件有限公司 神经网络的训练方法、图像识别方法及其装置
CN111126564B (zh) * 2019-11-27 2023-08-08 东软集团股份有限公司 一种神经网络结构搜索方法、装置及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI675335B (zh) * 2017-06-09 2019-10-21 宏達國際電子股份有限公司 訓練任務優化系統、訓練任務優化方法及其非暫態電腦可讀媒體
WO2020070876A1 (ja) * 2018-10-05 2020-04-09 日本電気株式会社 教師データ拡張装置、教師データ拡張方法およびプログラム
JP2020087103A (ja) * 2018-11-28 2020-06-04 株式会社ツバサファクトリー 学習方法、コンピュータプログラム、分類器、及び生成器
CN110110861A (zh) * 2019-05-09 2019-08-09 北京市商汤科技开发有限公司 确定模型超参数及模型训练的方法和装置、存储介质

Also Published As

Publication number Publication date
KR20210152402A (ko) 2021-12-15
CN113762327B (zh) 2024-07-09
EP3920102A1 (en) 2021-12-08
JP7226696B2 (ja) 2023-02-21
CN113762327A (zh) 2021-12-07
US20210383224A1 (en) 2021-12-09
TW202147139A (zh) 2021-12-16
JP2021193564A (ja) 2021-12-23

Similar Documents

Publication Publication Date Title
US11610115B2 (en) Learning to generate synthetic datasets for training neural networks
TWI831016B (zh) 機器學習方法、機器學習系統以及非暫態電腦可讀取媒體
US10783394B2 (en) Equivariant landmark transformation for landmark localization
US20200334502A1 (en) Training a neural network to predict superpixels using segmentation-aware affinity loss
CN106204522B (zh) 对单个图像的联合深度估计和语义标注
JP7196218B2 (ja) 画像質問応答方法、装置、コンピュータ装置、媒体及びプログラム
US11681913B2 (en) Method and system with neural network model updating
US11816185B1 (en) Multi-view image analysis using neural networks
US20210383241A1 (en) Training neural networks with limited data using invertible augmentation operators
KR20220047228A (ko) 이미지 분류 모델 생성 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램, 노변 장치 및 클라우드 제어 플랫폼
US20230073154A1 (en) Semantic rearrangement of unknown objects from natural language commands
US20230237342A1 (en) Adaptive lookahead for planning and learning
WO2023201681A1 (zh) 面向粗标签的语义分割模型的训练方法和装置
US11669565B2 (en) Method and apparatus for tracking object
CN113128564A (zh) 一种基于深度学习的复杂背景下典型目标检测方法及***
US20220383073A1 (en) Domain adaptation using domain-adversarial learning in synthetic data systems and applications
US20220067532A1 (en) Method to Train Model
KR102437396B1 (ko) 모델 학습 방법
KR20220029366A (ko) 모델 학습 방법
US20230376659A1 (en) Vlsi placement optimization using self-supervised graph clustering
US20240144000A1 (en) Fairness-based neural network model training using real and generated data
US20230229916A1 (en) Scalable tensor network contraction using reinforcement learning
US20230169329A1 (en) Method to incorporate uncertain inputs into neural networks
US20230111375A1 (en) Augmenting and dynamically configuring a neural network model for real-time systems
KR102285240B1 (ko) 모델 학습 방법