TWI776353B - 學習處理裝置及方法 - Google Patents
學習處理裝置及方法 Download PDFInfo
- Publication number
- TWI776353B TWI776353B TW110101040A TW110101040A TWI776353B TW I776353 B TWI776353 B TW I776353B TW 110101040 A TW110101040 A TW 110101040A TW 110101040 A TW110101040 A TW 110101040A TW I776353 B TWI776353 B TW I776353B
- Authority
- TW
- Taiwan
- Prior art keywords
- learning
- neural network
- model
- data set
- parameters
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/096—Transfer learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Electrotherapy Devices (AREA)
Abstract
提供可在短期間內完成輕量模型之學習的學習處理裝置及方法。一種從既存之第1學習模型獲得新的第2學習模型的學習處理裝置,其特徵為,具備:輸入部,係取得學習第1學習資料集而事前生成的第1學習模型與未被剪枝的神經網路;和重要參數特定部,係使用第1學習模型與神經網路而將學習對象之神經網路予以初始化,並使用第2學習資料集與已被初始化之神經網路,而將已被初始化之神經網路的在辨識處理中的參數之重要度,予以特定;和新模型生成部,係使用參數之重要度,來進行從已被初始化之神經網路刪除非重要之參數的剪枝處理並生成第2神經網路;和學習部,係使用第2學習資料集而將第2神經網路進行學習;和輸出部,係將學習後的前記第2神經網路當作第2學習模型而予以輸出」。
Description
本發明係有關於利用神經網路的學習處理裝置及方法。
在以影像處理或自然語言處理、聲音辨識為首的訊號處理的領域中,會使用利用多層神經網路的學習處理裝置,來進行辨識處理。近年來,神經網路為了提升辨識性能而會持有多數的參數,且需要龐大的演算量。然而,在學習後所進行的辨識處理時,為了處理大量的影像等之資料,以較少的參數與較少的演算量來進行處理,較為理想。在本發明中,能夠以較少的參數與演算量來進行處理的神經網路,稱作輕量模型。
作為在學習後削減多層神經網路之參數及演算量的技術,係有所謂的「剪枝」。剪枝係為,將學習後的神經網路中不需要的參數或不需要的演算加以特定,並藉由刪除以削減神經網路的辨識處理時所需要之參數與演算量的技術。
例如專利文獻1中係探討了,將學習後的神經網路之單元予以隨機刪除,在再學習後進行成本函數之評價,將成本函數最佳的結構當作神經網路之最佳結構而予以輸出的機制。
[先前技術文獻]
[專利文獻]
[專利文獻1]日本特開2015-11510號公報
[發明所欲解決之課題]
一般而言,剪枝所致的神經網路的輕量化,是需要較長的學習期間。這是因為,在神經網路的輕量化之際,為了使得對辨識精度的不良影響呈最小化,每次只能刪除少量的參數。由於一次刪除大量參數就會導致辨識精度大幅降低,因此通常藉由重複數次的少量參數之刪除與再學習,以學習出辨識精度的劣化較少的輕量的模型。
因此輕量的神經網路之學習會需要通常的神經網路之學習的數倍的學習次數,導致學習期間變得長期化。特別是在所執行的辨識處理之種類為較多的情況或在執行環境下會切換所利用之神經網路之模型的情況下,由於必須準備複數個輕量模型,因此學習期間的長期化是造成辨識處理功能的佈署、更新延遲的主因。
因此,雖然用來使輕量模型之學習在短期間就能完成所需之構成係為必要,但在專利文獻1中並未針對輕量模型之學習的短期化做探討。
[用以解決課題之手段]
有鑑於以上事情,於本發明中係設計成:「一種學習處理裝置,係從既存之第1學習模型獲得新的第2學習模型的學習處理裝置,其特徵為,具備:輸入部,係取得學習第1學習資料集而事前生成的第1學習模型與未被剪枝的神經網路;和重要參數特定部,係使用第1學習模型與神經網路而將學習對象之神經網路予以初始化,並使用第2學習資料集與已被初始化之神經網路,而將已被初始化之神經網路的在辨識處理中的參數之重要度,予以特定;和新模型生成部,係使用參數之重要度,來進行從已被初始化之神經網路刪除非重要之參數的剪枝處理並生成第2神經網路;和學習部,係使用第2學習資料集而將第2神經網路進行學習;和輸出部,係將學習後的前記第2神經網路當作第2學習模型而予以輸出」。
又,於本發明中係設計成:「一種學習處理方法,係從既存之第1學習模型獲得新的第2學習模型的學習處理方法,其特徵為,具備以下步驟:取得學習第1學習資料集而事前生成的第1學習模型與未被剪枝的神經網路,使用第1學習模型與神經網路而將學習對象之神經網路予以初始化,並使用第2學習資料集與已被初始化之神經網路,將已被初始化之神經網路在辨識處理中的參數之重要度予以特定,使用參數之重要度,來進行從已被初始化之神經網路刪除非重要之參數的剪枝處理並生成第2神經網路,使用第2學習資料集而將第2神經網路進行學習,將學習後的第2神經網路當作第2學習模型」。
又,於本發明中係設計成:「一種學習處理方法,係從既存之第1學習模型獲得新的第2學習模型的學習處理方法,其特徵為:使用未剪枝的神經網路與第1學習模型而將學習對象之未剪枝的神經網路予以初始化,並使用第2學習資料集與已被初始化之神經網路,求出已被初始化之神經網路在辨識處理中的參數之重要度,進行相應於重要度的剪枝處理,藉由使用第2學習資料集進行了剪枝後的神經網路的學習,而獲得第2學習模型」。
[發明效果]
若依據本發明,則即使所執行的辨識處理係為多種,隨著執行環境而切換所利用之神經網路的模型的情況下,仍可使得輕量模型的學習所花費的時間短期化,可提供迅速的辨識處理功能。
以下使用圖式來說明本發明的實施例。
[實施例1]
圖1、圖2係為本發明的學習處理裝置所想定之神經網路之利用形態之一例的圖示。在這些事例中,雖然針對由學習處理裝置100來進行影像處理的事例來做例示,但即使處理的對象是自然語言處理、聲音辨識、其他的訊號處理,仍可適用。
圖1的情況下,學習處理裝置100係將輸入影像101予以輸入然後給予至複數個影像處理部102(102-1、102-2、102-3),影像處理部102係對輸入影像101執行辨識處理。
影像處理部102中的處理係為例如影像分類、物體偵測、語義分割、自動上字幕這類的影像處理,影像處理部102-1、102-2、102-3係分別進行不同的辨識處理。例如,在產品的影像檢查的例子中,針對所被給予的影像,影像處理部102-1係執行良品、不良品等產品之品質分類的影像處理1,影像處理部102-2係執行用來偵測混入產品之異物的影像處理2,影像處理部102-3係執行辨識產品形狀的分割的影像處理3。結果,在處理結果部103(103-1、103-2、103-3)中,係獲得各部位的處理結果。
影像處理部102-1、102-2、102-3係為含有針對各個辨識處理做了特化之構成的神經網路的學習模型。如此對一個輸入影像101適用複數種影像處理的情況下,且在各個影像處理中使用不同神經網路等情況下,對複數個神經網路必須學習輕量模型。
在本發明中的圖1之構成的學習處理裝置100中,想定要新追加為了在新的檢查項目發生之際獲得所被追加之影像處理結果4的影像處理部102-4(輕量模型)、與處理結果部103-4。
又,即使是相同的辨識處理仍會有需要學習複數個輕量模型的情況。圖2係例示了圖1的影像處理部102-1、102-2、102-3中的各學習模型會隨應於例如影像計測上的環境之變化,而變成已被最佳化之學習模型的情況。影像處理部102’(102-1、102’-2、102’-3)係為,使用了隨著環境變化而已被最佳化之學習模型(環境模型)的構成。在本發明中是想定,從圖1的構成,變成圖2的新追加了環境模型的構成。
例如在透過不同倍率之鏡頭而取得影像的情況下為了進行處理所需之學習模型,係與通常倍率下的學習模型不同,因此必須要構成對透過不同倍率之鏡頭所取得之影像做了特化的新的神經網路,必須獲得新的圖2的構成。
像這樣,圖2的環境別模型102’(102-1、102’-2、102’-3),雖然是進行與圖1的學習模型102(102-1、102-2、102-3)相同的影像處理,但隨著輸入影像101的相關環境而改變所執行之模型的例子。這裡所謂的環境,係有關於輸入影像101所被取得的場所或狀況,或是執行辨識處理的場所或狀況等等。例如若為戶外的影像資料的情況則會隨著日間、夜間這類的狀況而變更所執行的模型,若為影像檢查系統則隨著檢查對象之種類而變更模型等等。
此外處理結果部103’(103’-1、103’-2、103’-3)係為環境別模型102’(102-1、102’-2、102’-3)所做的輸出。處理結果1’,2’、3’係由於所被執行的神經網路為不同,因此會輸出異於圖1的結果。
如此利用環境別模型102’(102-1、102’-2、102’-3)的情況下,仍需要學習複數個輕量模型。尤其是在影像檢查系統之情況下,檢查對象的物體種別或檢查工程的種別之組合係有無限多種,因此環境別模型與影像處理之組合會變得龐大。因此必須有效率地取得輕量的模型。
此外,在本實施例中雖然展示了影像處理、環境別模型都分別為3個的例子,但只要是1個以上的情況即可。
作為學習、作成輕量模型的手法,已知有剪枝的手法。圖3係為先前法所致之剪枝的概要的圖示。藉由進行剪枝,就可使學習模型輕量化。
通常,在剪枝中首先是藉由學習處理201-0針對未剪枝的神經網路204-0使用學習資料集301來進行學習。其後藉由剪枝處理202-1將學習後的前記未剪枝的神經網路204-0中的不需要的參數予以特定,進行參數的刪除並將剪枝後的神經網路204-1予以輸出。此處所謂藉由剪枝所被特定的不需要的參數,係為選擇參數之絕對值較小者等。
藉由剪枝而已被刪除參數的神經網路204-1係由於相較於未剪枝的神經網路204-0而辨識精度會較為降低,因此,藉由再學習處理203-1而將剪枝後的神經網路204-1的未被剪枝之參數予以更新,使得已降低的辨識精度能夠變成接近於未剪枝的神經網路204-0的值。其後,在剪枝量不足的情況或有被設定複數次的剪枝處理的情況下,則藉由剪枝處理202-2及再學習處理203-2而獲得再進行了剪枝的神經網路204-2。該剪枝處理與再學習處理亦可重複適用2次以上。此外在再學習處理203-1、203-2中,在學習時是使用與最初的學習處理201-0中所使用過的相同內容的學習資料集301,來進行學習。
如此,在先前法所致之剪枝中,在學習後將不需要的參數加以特定,在不需要的參數的刪除後,進行再學習,並重複之。這是因為,剪枝所致的輕量化時,為了對辨識性能不要造成不良影響,而必須逐步地刪除參數。在該程序所致的處理中,由於重複學習處理存在有複數次,因此輕量模型的學習所需要的時間會變長。因此,尤其是如圖1、圖2所記載的需要準備複數個輕量模型的這類情況下,準備期間會變得長期化,是造成辨識功能的提供延遲之主因。
圖4係為本發明所述之學習處理裝置之處理概要的圖示。在此處理中,是從事前準備的第1模型(網路),生成適合於另一處理的第2模型(網路)。此關係係為,例如於圖1中,將影像處理部102(102-1、102-2、102-3)之任一模型(網路)當作第1模型,將新的影像處理部102-4當作第2模型而加以生成;或者將影像處理部102(102-1、102-2、102-3)之任一模型(網路)當作第1模型,將圖2中的新的環境模型102’當作第2模型而加以生成。
因此,作為新模型作成之基礎的第1模型,係為事前準備的事前學習模型302,事前學習模型302是使用針對事前學習模型302做了特化的學習對象也就是第1學習資料集301A而被生成。又於該圖中,303係為由操作者所提示的未剪枝的神經網路。
在重要參數特定部304中,對於第1模型也就是事前學習模型302,適用對欲新作成之第2模型做了特化的學習對象也就是第2學習資料集301B。藉此,於第2學習資料集301B中為重要的參數會從事前學習模型302加以特定,僅抽出重要的參數。這裡的重要參數係意味著,將第2學習資料集301B之辨識上為重要的第2模型之參數加以特定的意思。
其後,於新模型生成部306中,生成從未剪枝的神經網路303,僅抽出第2學習資料集301B之辨識上為重要的第2模型之參數的神經網路305。該神經網路305藉由學習處理307而進行學習,就可在短期內取得輕量模型。在該學習處理307中是使用第2學習資料集301B。
在未適用剪枝的情況下,亦即把使用不同資料集(學習資料集301A)所學習出來的模型當作初期值而進行學習的方法,稱作遷移學習。在本發明是在遷移時藉由適用剪枝因此可以將先前為必要的學習處理201-0變成不需要,所以可減少學習次數,可達成輕量模型之學習的短期化。
本發明雖然基本上是進行如上記的程序中的處理,但在其實現上,有幾個需要巧妙設計的事項。
需要巧妙設計、改善的事項的第1點係為,在先前手法中,在遷移學習時難以適用剪枝。一般而言在圖3的學習處理201-0中執行剪枝處理202之際為了使得精度降低較少,而會適用適合於剪枝處理202的正規化。例如在剪枝處理202中將參數之絕對值較小者予以刪除的情況下,在學習處理201-0中會適用使得一種被稱作Weight decay的神經網路之參數之絕對值變小的正規化。含有Weight decay的神經網路之損失函數,示於(1)式。
於(1)式中,構成神經網路之損失函數L的右邊第一項係為按照辨識處理之每種學習所被定義的損失函數Lr,第2項係為Weight decay的項。λ係為Weight decay之係數,θ係為神經網路之參數。為了刪除較多的參數,必須將Weight decay之係數λ設定成較大。
然而,Weight decay之係數λ越大則會有許多參數會變成微小的值。因此,只能針對已學習之資料集發揮辨識性能,不適於遷移學習。因此,已事前學習模型302係為,並非對特定之學習資料集302適用了強Weiget decay的模型,而是許多參數是具有非零之值的神經網路,較為理想。
在如此情況下,重要參數特定部304無法藉由參數之絕對值來特定重要的參數。
關於此點的改善,在本發明的實施例中,是還做了如下的對應即可。
於圖4中,一般而言,以異於學習資料集301B的學習資料集301A所學習出來的事前學習模型302中,存在有學習資料集301B之辨識上為有效的參數與不需要的參數。重要參數特定部304係藉由分析海森矩陣,而將學習資料集301B之辨識上為有效的參數予以抽出。海森矩陣係為針對損失函數L之參數的二次微分。因此,藉由例如各參數之值的平方與海森矩陣的對角成分之積就可算出各參數刪除之際對損失函數帶來的影響。
(2)式中表示算出式。下標字的q係表示這是關於第q個參數的值。H係為海森矩陣,下標字qq係表示這是第q行q列的值。藉由從該值為較小者到變成所望之剪枝量為止而將參數予以刪除,就可從事前學習模型302僅抽出學習資料集301B之辨識上為有效的參數。
如此在本發明中在某個參數的刪除之際,會將對神經網路之舉動造成的影響進行評價,並當作各參數之重要度。該重要度越大的參數,在刪除之際會使神經網路之辨識性能越為降低。因此從重要度較低的參數起進行剪枝,藉此就可抑制神經網路之辨識性能的降低並刪除許多的參數。
又,與這點相關連而需要巧妙設計、改善的事項的第2點係為,一般來說,多層的神經網路係由參數數量龐大因此會有難以直接計算海森矩陣的情況。
在如此的情況下,亦可藉由損失函數L的一次微分的二階動差也就費雪資訊矩陣、或費雪資訊矩陣之近似亦即Kronecker-Factored Approximated Curvature,來算出各參數刪除之際的影響。又,亦可使用損失函數L的一次微分的統計量或一次微分與參數之積的統計量來算出影響。此情況下例如可將梯度的期望值與參數之值的積的絕對值,當作各參數刪除之際對損失函數所造成的影響,而予以算出。
又,在卷積神經網路的情況下,則亦可將以參數單位所求出的重要度,按照一種被稱作通道或過濾器的每一維度做統整而作為每一通道或過濾器的重要度。
又,亦可利用實施例4所示的鬆弛伯努利分布來評價各參數之重要度。
圖5係為本發明與先前法所致之效果做比較的圖示。本發明所致之學習曲線401、先前法所致之學習曲線402係皆為,橫軸表示學習時的參數更新次數,縱軸表示辨識性能的圖。
若依據圖5左的本發明,則從事前學習模型302於學習資料集301B中僅特定出重要的參數並直接學習輕量模型306,因此如學習曲線401般地,只描繪出一條的學習曲線。
相對於此,在先前法中,因為需要學習處理201-0或1次以上之再學習處理203,所以如學習曲線402般地呈現2條以上的學習曲線。此處,位於學習曲線402的中央附近的虛線是表示剪枝所致的精度降低之影響。如此若依據本發明則以一輪的學習就能夠取得輕量模型,因此可大幅縮短獲得一個輕量模型所需要的時間。
圖6中係圖示本發明的學習處理裝置的功能構成例,圖7中係圖示本發明的學習處理方法的處理流程例。在這些圖中是圖示,使用學習資料集301與已事前學習模型302來學習輕量模型為止的構成與流程。
首先圖6所示的本發明的學習處理裝置的功能構成例圖,係將以計算機來實現本發明的處理時的演算部中的處理內容當作主要的處理功能而表示。此處是將以學習資料集301A進行了學習的事前學習模型302、與未剪枝的神經網路303為對象。
在重要參數特定部304中,係使用事前學習模型302與未剪枝的神經網路303,首先將學習對象之神經網路303予以初始化。藉由該初始化,事前學習模型302之參數係被反映至尚未剪枝之形式的神經網路303,因此初始化後的神經網路303係可說是與事前學習模型302等價。在重要參數特定部304中,接著使用初始化後的神經網路303與對欲新作成之第2模型305做了特化的學習對象也就是第2學習資料集301B,將初始化後的神經網路303的在辨識處理中為重要的參數加以特定。
剪枝部306,係為對應於圖4的新模型生成部306的處理,生成從未剪枝的神經網路306,僅抽出第2學習資料集301B之辨識上為重要的第2模型之參數的剪枝後形式之神經網路305。
學習處理部307中,係使用第2學習資料集301B而將神經網路305進行學習。
在模型評價部503中,係對神經網路305(第2模型),使用評價資料集504,將其演算精度進行評價。能夠發揮滿足評價資料集504之基準的性能的神經網路305,最終會被當作第2模型(計量模型)。
在圖7所示的本發明的學習處理方法的處理流程例中,首先在步驟S601中開始學習流程。這是藉由操作者等設定了輕量模型的學習上所必須之事項後,藉由操作者而執行學習之際,就會開始。
步驟S602,係對應於圖6的重要參數特定部304之一部分,這裡是使用已被操作者所輸入的未剪枝的網路結構303與事前學習模型302來將學習對象之神經網路予以初始化。此處未剪枝的網路結構303,係為了執行輕量模型的學習之對象的影像處理,而由操作者所給予的網路結構。又此處,所謂學習對象之神經網路的初始化,係將所被給予的網路結構303之參數之初期值加以決定,前記學習對象之神經網路之一部或全部係藉由複製事前學習模型302之參數而被初始化。前記學習對象之神經網路之中,未被複製事前學習模型302之參數的參數係藉由操作者所設定的亂數、或常數而決定其值。
如此利用事前學習模型302之參數來進行神經網路之初始化,一般稱作遷移學習。此外已被初始化的網路結構303,係為未剪枝的神經網路構成,該網路結構303係反映了事前學習模型302之參數。因此,已被初始化的網路結構303係可說是,令已被輕量化之形式的事前學習模型302,被反映至未剪枝的網路原形式之網路結構而成。
此處,在前記學習對象之神經網路之中要把哪個參數從事前學習模型302複製過來,是藉由操作者而被決定。僅前記學習對象之神經網路之一部是從事前學習模型302複製參數的操作,係在學習對象之影像處理功能與事前學習模型之影像處理功能不同之際等情況下,會被進行。例如學習對象係為物體偵測功能,事前學習模型302是影像分類功能之際,則只有從輸入影像抽出影像特徵的被稱作特徵抽出器的神經網路之部分,參數會被複製給物體偵測用之神經網路。又,即使兩者都是相同的影像分類功能,有時也會僅被稱作特徵抽出器的神經網路之一部會複製參數,預測分類結果的後段的層則是藉由其他方法來進行初始化。
步驟S603係對應於圖6的重要參數特定部304之一部分,此處係使用步驟S602中所初始化的神經網路與學習資料集301B,而將步驟S602中所初始化的神經網路的各參數之重要度,進行評價。這裡的重要度之評價係如同圖4的說明中所記載。
步驟S604係對應於圖6的剪枝部(圖4的新模型生成部)306,此處係從步驟S602中所初始化的神經網路,隨應於步驟S603中所評價的各參數之重要度,而將重要度低的參數予以刪除。此處刪除的參數的決定方法係由操作者所選擇,係有:將重要度為上位多少比率之參數以外予以刪除的方法、或將重要度為某個閾值以下之參數予以刪除的方法等。
步驟S605係對應於圖6的學習部307,此處使用學習資料集301B來將步驟S604中所得到的已輕量化之神經網路之參數,進行學習。這是藉由神經網路之學習中所通常使用的機率梯度降下法等,而被進行。
步驟S606係對應於圖6的模型評價部503,此處係使用評價資料集504,而將步驟S605中所學習之神經網路的性能,進行評價。該神經網路的性能評價係為,將所得到的輕量模型505,在辨識對象之影像處理中可以達成什麼程度之性能,進行評價。
在步驟S607中,係將步驟S605中所學習之神經網路,當作輕量模型505而予以輸出。此時,亦可一併輸出步驟S606中所評價之辨識性能或辨識處理之執行時間。
在步驟S608中,結束學習流程。
如此在本發明中是從事前學習模型302特定出學習資料集301B、評價資料集504之辨識上為重要的參數,藉由只遷移重要的參數即可在初始化時構成輕量的模型,因此藉由一輪的學習就可獲得辨識精度良好的輕量模型505。
[實施例2]
在實施例2中是有關於,在事前學習模型係為複數存在的情況下,先生成所望之輕量模型,至於利用哪個事前學習模型為適切,則是在事前作成其判斷根據,供作實際運用上之參考。
若依據本發明的實施例1,則不必進行長時間的學習,就可將事前學習模型302究竟保持了多少程度的對學習資料集301B、評價資料集504而言為重要的參數,進行評價。在準備複數個學習模型的案例中,作為事前學習模型302而利用的模型之候補,也是複數存在。一般而言,隨著作為事前學習模型302而利用的模型,進行學習的神經網路之性能會跟著改變。因此,要在短期間內將輕量的模型進行學習,選擇適切的事前學習模型302這件事情是重要的。
然而在先前手法中,若不實際使用學習資料集301B與學習部306而將神經網路進行學習,並使用評價資料集504與模型評價部503來將辨識性能進行評價的話,則無法判別各事前學習模型的好壞。
因此,在有複數個事前學習模型302之候補的情況下,若想要選擇最佳的模型來當作事前學習模型302,則對全部的候補都必須要進行學習、評價。如此情況下會導致輕量模型305之學習所需要的時間變得龐大。因此,不進行學習就從複數個事前學習模型302的候補之中選擇出一個適切的模型這件事情,對於短時間內學習出高精度的輕量模型而言,是重要的。
此處由於未剪枝的非輕量模型會變成對象之神經網路所能到達的辨識性能之指標,因此將前記非輕量模型予以學習、保持,這件事情對於模型的管理上,是必要。
在本發明的實施例2中,是利用圖6所示的學習處理裝置100之一部分功能也就是重要參數特定部304,而事前作成圖8的重要度評價表700,參照事前作成之重要度評價表700而供作實際運用上的適切的事前學習模型之選擇的參考。用來事前作成重要度評價表700所需之裝置構成以及處理流程,係參照圖9、圖10而後述。
圖8係對於複數個事前學習模型302之候補的重要度評價表之一例的圖示。該表格係在學習資料集301B與網路結構303、剪枝相關設定是已被操作者所選擇之際,作為用來抽出可進行遷移學習之事前學習候補所需的判斷根據資訊,而被提示給操作者。具體的判斷根據資訊係為,針對複數個事前學習模型的網路結構及事前學習模型的學習中所使用的每個資料集所準備的各事前學習模型之重要度總和及剪枝後的重要度總和之資訊。
於圖8的重要度評價表700中,事前學習模型種別701,係為各事前學習模型的網路種別。例如學習對象之辨識處理是物體偵測的情況下,作為事前學習模型302,在使用影像分類器的情況下是僅將一種稱作特徵抽出器的神經網路之部分做遷移;作為事前學習模型302同樣是使用物體偵測器的情況下,則除了特徵抽出器以外還把物體偵測用之神經網路之部分也做遷移。因此即使網路結構303已被給定,事前學習模型之種別仍會有複數存在。又,即使只將特徵抽出器做遷移,隨著層數或各層之參數數量等,事前學習模型之種別仍可能會有複數存在。因此,此處是先把事前學習模型之種別701明確設好。
事前學習資料集702係表示事前學習模型之學習中所使用過的資料集(對應於圖4的學習資料集301A)。在進行遷移學習之際,遷移來源所學習過的特徵與學習對象之資料集301A所持有的特徵為一致的這件事情,對神經網路的高精度化來說,是重要的。
重要度總和703,係為各事前學習模型302之重要度的總和。這是藉由學習資料集301A與重要參數特定部304而被評價的各參數之重要度的總和。又,由於隨著事前學習模型302而參數數量會有所不同,因此單就總和來說,參數數量越多的模型,重要度總和就容易變大。因此亦可使用,將事前學習模型的重要度總和除以各事前學習模型的參數數量所得到的重要度平均值。
剪枝後重要度總和704,係為使用已被操作者所給定之剪枝相關設定進行了剪枝之際所剩下的參數之重要度的總和。這個值也可與重要度總和703同樣地使用重要度平均值。
重要度係為,參數刪除之際對辨識性能所帶來之不良影響的評價值,因此重要度總和703越大可以想成是,含有越多的對學習對象之辨識處理而言為重要的參數。
因此若把重要度總和703較大的模型予以選擇作為事前學習模型302,就可容易學習出高精度的模型。又,輕量模型的學習時,會藉由剪枝而被刪除複數個參數。因此藉由將剪枝後重要度總和704進行評價,就可評價剪枝後剩下的參數對學習資料集301B之辨識而言是重要到何種程度。因此,剪枝後重要度總和704越大的模型在學習了輕量模型505之際,可學習出輕量且高精度的模型。操作者係確認如此的表格,來選擇重要度總和703與剪枝後重要度總和704之雙方皆為較大的模型,就可學習出輕量且高精度的模型。
圖9及圖10中係圖示,對圖8中所示的複數個事前學習模型302之候補作成重要度評價表700的裝置構成及處理流程例。
首先圖9所示的本發明的實施例2所述之學習處理裝置的功能構成例圖係為,對圖6的學習處理裝置100追加了已學習模型記憶部801、事前學習模型候補抽出部802、事前學習模型選擇部803、重要度評價結果記憶部804之各功能而成者。其中,已學習模型記憶部801與重要度評價結果記憶部804,係為計算機的資料庫等之記憶部,已學習模型記憶部801中係有例如圖1的模型(網路)102-1、102-2、102-3之資訊是被當作事前學習模型而記憶,又,重要度評價結果記憶部804中係被記憶有,針對圖6的重要參數特定部(剪枝部)304所抽出之重要參數的評價結果。又,圖8的重要度評價資料最終也是被積存記憶在重要度評價結果記憶部804中。此外,事前學習模型候補抽出部802、事前學習模型選擇部803係表示了操作者所做的處理、判斷內容。
圖10的流程圖,係使用圖9所示的硬體資源、軟體資源等,而逐一執行以下所示的處理。首先,在圖10的最初的步驟S901中,對複數個事前學習模型302之候補,開始重要度評價流程。這是藉由操作者而被指示了執行的時序上,就會開始。
在步驟S902(對應於事前學習模型候補抽出部802之處理)中,係使用操作者所給定的網路結構303,而從學習模型記憶部801抽出事前學習模型302之候補。學習模型記憶部801係將按照每一模型而被設定的模型ID、模型的名稱、模型的網路結構、用於學習的資料集301A、及所達到的辨識性能予以建立關連而儲存。又在步驟S902(對應於事前學習模型候補抽出部802之處理)中,係將含有可遷移至所被給定之網路結構303的網路結構的模型,從已學習模型記憶部801予以抽出當作事前學習模型候補而輸出至事前學習模型選擇部803。
在步驟S903(對應於事前學習模型選擇部803之處理)中,係從事前學習模型候補抽出部802所抽出的事前學習模型候補之中,選擇一個尚未進行重要度評價的模型當作事前學習模型302。
在步驟S904(對應於重要參數特定部304之處理)中,係使用操作者所給定的網路結構303、事前學習模型302,來進行學習對象之神經網路的初始化。這是用與圖7所記載之步驟S602相同的方法來進行。
在步驟S905(對應於重要參數特定部304之處理)中,係使用學習資料集301B而將步驟S904中已被初始化的神經網路之各參數的重要度予以評價。這是用與圖7所記載之步驟S603相同的方法來進行。
在步驟S906(對應於重要參數特定部304之處理)中,係確認步驟S904、步驟S905所做的評價是否已經達到操作者所設定的次數。若已達到所被設定的次數則往步驟S907前進,若未達到則返回步驟S904,重複進行直到達到所被設定的次數為止。此處所被設定的次數係只要是1次以上即可,可為任意次數。這是由於在步驟S904中所進行的神經網路之初始化時是利用亂數,因此藉由進行複數次評價以抑制亂數的影響。
例如在將物體偵測用的神經網路進行學習之際,將藉由影像分類而已被事前學習之模型進行遷移的情況下,一般而言,只有特徵抽出器的部分會被複製參數,至於其他部分則是用亂數而被初始化。重要度評價時所使用的特徵抽出器的1次乃至2次之梯度資訊係會因為位於特徵抽出器之後段的其他神經網路之初始化而受到影響。因此,在此種案例中,為了正確評價特徵抽出器中所含之各參數的重要度,亦可進行複數次的亂數所致之初始化,並進行複數次的重要度評價。實際上,只要把從進行過複數次評價的重要度而在步驟S907中使用統計資訊所算出的重要度,當作各事前模型的重要度來使用即可。
在步驟S907(對應於重要參數特定部304之處理)中,係從步驟S904、S905、S906中所評價出來的重要度,算出各參數的重要度。這可使用重要度總和為最大的回次之結果或使用各評價的平均值。利用重要度總和為最大的回次的這件事情是相當於利用獲得最佳之初期值的回次的評價值。此情況下亦可將各參數之初期值加以記憶,然後在實際學習之際來做利用。又,將各次的平均當作重要度來利用的情況,係相當於重視並利用難以受到亂數之影響的參數。
在步驟S908(對應於重要參數特定部304之處理)中,係將所利用的評價條件與步驟S907中所評價的重要度建立關連而儲存在重要度評價結果記憶部804中。此處所利用的評價條件係為關於事前學習模型302的相關資訊或進行過重要度之評價的次數或步驟S907中利用於重要度之評價的方法等。重要度評價結果記憶部804中係被儲存有:在各評價中所利用的學習資料集301B之資訊或關於所評價出來的重要度之資訊、作為事前學習模型而曾利用過的模型之模型ID、名稱、網路結構、事前學習中所被使用的資料集、事前學習時的辨識性能。此處關於重要度之資訊係亦可將關於各參數的重要度之全部都予以保存,亦可將經過統計化的資訊予以保存。藉由步驟S908之處理,在圖8的重要度評價表700中,針對所著眼的事前學習模型候補,就會追記關於其的重要度總和703、剪枝後重要度總和704之資料。
在步驟S909(對應於重要參數特定部304之處理)中,係確認對於步驟S902中所抽出之所有事前學習模型候補的評價是否都已完成,若已完成則往步驟S910前進,若未完成則從步驟S903起重複進行直到完成為止。
在步驟S910中,結束重要度評價流程。在對必要的所有事前準備模型的處理完成後,在重要度評價結果記憶部804就會備妥圖8的資料。
如以上所述,若依據本發明,則在遷移學習時,從事前學習模型302僅特定出重要的參數並進行學習,藉此,可以只用一輪的學習就能獲得輕量模型306,可在短期間內進行輕量模型306之學習。
又,如圖8、圖9、圖10所示般地對於事前學習模型302只進行重要度之評價而不進行實際的學習就可評價各事前學習模型的良惡,可使輕量模型305的學習變成短期間化。
[實施例3]
在實施例3中是針對,在遷移學習時,事前學習模型302沒有學習到學習對象之辨識處理中為重要的特徵的情況,做出對應。
在本發明的實施例1中,是在遷移學習時,藉由僅將學習對象之辨識處理中為重要的參數做遷移,以縮短輕量模型505的學習所需之時間。然而,在遷移學習時,有可能會發生事前學習模型302沒有學習到學習對象之辨識處理中為重要的特徵的情況。在如此情況下,從事前學習模型302僅將重要的參數做遷移,是難以學習出高精度的輕量模型505。
圖11係為了解決如此課題而導入的部分性再初始化處理的圖示。圖11係圖示了對應於圖4的處理之流程,是在圖4的程序中,新增追加了部分性再初始化處理1001與剪枝處理1003之處理。
在這些一連串的處理中,如同已經做過的說明,重要參數特定部304會將重要參數予以特定,此時的網路305會被想定,但在遷移學習時,事前學習模型302沒有學習到學習對象之辨識處理中為重要的特徵,因此網路305係為不充分,是以此為前提。這裡所謂的不充分係意味著,網路過於簡單,或者尚未形成必要之路徑等。
因此,在部分性再初始化處理1001中,係在重要參數特定部304已經特定出重要參數之後,僅將被剪枝之參數進行再度初始化。藉此,若對僅留下重要度高之參數的神經網路305適用部分性再初始化處理1001,則如神經網路1002所示,會如虛線所示之神經元般地被再初始化。該再初始化是以易於剪枝的形式而被實施,可以使得已被模型生成處理部306進行學習後藉由剪枝處理1003而能夠對精度影響較少地進行剪枝。該所謂易於剪枝的再初始化,係為例如將各參數以零進行初始化等。又,亦可使用,可採之值的絕對值為較小的亂數。
圖12及圖13係為,包含了圖11的部分性再初始化的本發明的學習處理裝置的功能構成例及學習處理方法的處理流程例的圖示。由於這些係為對圖6及圖7所示的本發明的功能構成例及處理流程例追加了部分性再初始化處理所成的構成及流程,因此僅記載差異部分。
於圖13的流程中,在步驟S1201中係將步驟S604中由剪枝部502隨應於步驟S603中所評價之重要度而從步驟S602中進行了初始化的神經網路刪除了低重要度參數的參數,以部分性再初始化部1101進行再初始化。這是如前述,以零或絕對值較小的亂數等來進行,藉此以實施易於剪枝的再初始化。
在步驟S1202中剪枝部502係從步驟S605中所學習之神經網路刪除不需要的參數。步驟S1201中所進行的再初始化處理係以易於剪枝的方式而實施因此可使對精度的影響維持較小。
如此藉由組合部分再初始化處理,在事前學習模型302是持有學習資料集301B的辨識上為重要的參數的情況則已遷移之參數會被學習,在未持有的情況下則已被部分性再初始化的神經元會被學習。又,在學習資料集301B的辨識上為重要的特徵是全部都已經被事前學習模型302所學習的情況下,則可使得已被部分性再初始化的神經元容易進行剪枝。又,亦可在步驟S1202的剪枝後,再度以步驟S605將神經網路進行學習。
[實施例4]
在實施例3中雖然記載了,於部分性再初始化處理1001中使用較小的值來將參數進行再初始化,但亦可用與通常之學習相同的方法來進行初始化並以不同的方法來求出剪枝的領域。在本發明的實施例4中係記載遮罩層所致之剪枝。
遮罩層所致之剪枝的概念,示於圖14。圖14圖示,對影像處理中經常使用的卷積神經網路適用了遮罩層理1304之際的構成。通常在卷積神經網路中會適用複數個卷積層1302,但圖14係為注目於一個卷積層1302之際的構成。在通常的卷積神經網路,會對輸入1301適用卷積層1302、正規化層1303、活化層1305而獲得輸出1306。
令卷積層1302的處理及參數為f、w,令正規化層1303的處理及參數為g、θ,令活化層1305的處理為a,令輸入為x,令輸出為y,則卷積層1302的一連串之處理係可以用(3)式來表示。
此處輸出入x、y係分別為3階張量,具有影像特徵的寬度、高度、特徵通道的維度。一般而言將卷積層1302予以高速化的情況下,以特徵通道單位來刪除演算是有效的。例如原本的卷積層1302是具有128通道的情況下,會將對辨識性能不造成影響的10通道予以刪除,將118通道予以輸出。
在本發明的實施例4中,該通道之刪除是由遮罩層1304來進行。若令遮罩層1304的處理與參數為m、ν則(3)式中所示的卷積層1302之一連串的處理係變成如(4)式所示。
為了進行卷積層1302的特徵通道單位之刪除,遮罩層1304係將參數ν進行學習。參數ν係為取0或1之值的帶有與特徵通道相同維度的向量,遮罩層1304之處理m係在參數ν為1的部分是將所被輸入的特徵地圖予以直接輸出,在參數ν為0的部分則是將所有的寬度、高度之值輸出成0。若能學習如此的參數ν,則可對辨識性能不造成影響,而在學習後將參數ν為0的部分之計算予以刪除。亦即,將對輸入適用了卷積層1302及正規化層1303的隱藏變數令作h,對隱藏變數h適用了遮罩層而得的隱藏變數令作h’的情況下,則h’的各要素係由(5)式而被給定。
又於(5)式中,適用了遮罩層1304的隱藏變數h’,係可以用對輸入適用了卷積層處理1302及正規化層1303的隱藏變數h來表示,因此可以用將屬於3階張量的隱藏變數的寬度i、高度j、特徵通道的位置k設成可變的(6)式來表示。
然而(7)式中所示的取0或1之值的離散性參數ν,無法使用神經網路之學習中所通常採用的機率梯度法來進行學習。這是因為,離散性參數ν的梯度不會傳播的緣故。因此應該將參數ν的哪個特徵通道設成有效才好,這是難以進行學習的。
為了解決該課題,在本發明的實施例4中,係更進一步從鬆弛伯努利分布將參數ν在學習中進行取樣。鬆弛伯努利分布係將離散分布也就是伯努利分布予以鬆弛成連續分布所成者,係可以使用機率梯度下降法進行學習。又,一般也以Gumbel-softmax此一名稱而為人所知。在利用鬆弛伯努利分布之際,參數ν係以0.1或0.5等取0到1之值的連續值而被取樣。遮罩層1304計算將已被取樣之參數ν對已被輸入之特徵地圖所對應的通道全體的乘積並輸出。因此,在學習中,對辨識而言不需要的通道,其參數ν會藉由機率梯度下降法而緩緩變成較小的值,對辨識而言為重要的通道則其參數ν會緩緩變成較大的值。遮罩層1304係為了將參數ν做取樣而將鬆弛伯努利分布的羅吉特進行學習。該羅吉特係為與伯努利分布的羅吉特相同的參數。羅吉特為較大值的情況下,在伯努利分布中生成1的機率會變高,但在鬆弛伯努利分布中則是生成接近1之值的機率會變高。在學習結束後的推論時,藉由只使用鬆弛伯努利分布的羅吉特大於所定之值的特徵通道,就可以較少的演算量,不降低辨識精度,而進行辨識處理。亦即遮罩層1304之輸出係變成如(8)式所示。
此處ν’係如(9)式所示,是從具有羅吉特l與溫度t作為參數的鬆弛伯努利分布RB中所被取樣出來的值且為0到1之間的連續性變數。這樣一來,就可將羅吉特l以機率梯度下降法進行學習,可按照進行剪枝的特徵通道單位來學習遮罩。
在鬆弛伯努利分布之中,藉由以使得有效的通道數會變成所定之值以下的方式進行學習,就可學習成只有重要的特徵通道的羅吉特會變大,對辨識沒有貢獻的參數則羅吉特會變小。藉由,在學習尾盤就會變成以較少的特徵通道來進行學習的狀態,因此會變成和圖2所示的剪枝後的再學習相同的狀況。因此不需要再學習而藉由僅利用羅吉特較大的特徵通道,就可不降低辨識精度地實施剪枝。此處所謂以使得有效的通道數會變成所定之值以下的方式進行學習,係以使得神經網路全體所持有的鬆弛伯努利分布的上位多少比率的羅吉特係為羅吉特會變大,而剩餘的通道則為羅吉特會變小的方式進行學習的方法,例如在羅吉特之上位多少比率所對應的特徵通道中,係以使得與1的生成機率是被設定成較高值的伯努利分布之間的Kullback-Leibler資訊量會呈最小化等,而被進行。亦即如(10)式般地對學習時的損失函數加入關於羅吉特的項。
此處(10)式的第3項係為,具有與鬆弛伯努利分布RB(l、t)相同羅吉特的伯努利分布B(l)與把對應於羅吉特之上位多少比率的要素會變成較大值的yl當作羅吉特的B(yl),兩者之間的Kullback-Leibler資訊量。
又遮罩層1304所致之剪枝處理係亦可不與重要參數特定部做組合而是單獨地適用。
又,亦可將藉由遮罩層之追加而獲得的鬆弛伯努利分布的羅吉特之值,當作重要參數特定部304中進行評價的重要度來使用,而進行圖6所示之構成所致之學習處理。此情況也可視為,羅吉特之值越大的特徵通道,在以通道單位進行刪除之際,對神經網路的辨識性能所造成的影響也越大。
又,對實施例3所示的構成適用遮罩層的情況下,則在進行部分性再初始化部1101的再初始化之際,關於神經網路的權重係使用與通常相同的初始化方法來進行初始化,將遮罩層的羅吉特以較通常為小的值進行初始化。藉此,關於已被再初始化的參數,就可以較其他網路易於剪枝的形式來進行初始化。
[實施例5]
在實施例5中是說明,對具有複雜網路結構的神經網路適用遮罩層之方法。
圖15係為對具有複雜網路結構的神經網路適用遮罩層之方法的圖示。
在具有一種被稱為Residual Shortcut或Residual connection之結構的神經網路中,如圖15所示般地,複數個卷積層是共用相同的特徵地圖。例如輸入1401係被適用卷積層1402-a及1402-b且變成相同維度之3階張量然後被計算和。該二個卷積層之輸出的和係被適用卷積層1402-c,然後會被計算與自身的和。然後會被適用卷積層1402-d並被計算與自身的和,成為輸出1403。此處為了簡化因此省略了卷積層以外的正規化層、遮罩層、活化層,但亦可附隨於各卷積層而做適用。如此複數個卷積層1402-a~d是共用相同特徵地圖的情況下,會有無法有效率地進行剪枝的情況。
對此,圖16係為,具有圖15所示之複雜網路結構的神經網路中所被共用的卷積層1402-a~d的4個層中所被共用的4個通道於辨識中的有效程度與實際可剪枝之通道的關係的圖示。表的第1行通道號碼1404係表示各卷積層1402-a~d的4個特徵通道的號碼。有效特徵通道1405-a~d係表示在各卷積層1402-a~d中被設成有效的特徵通道。此處所謂被設成有效的特徵通道係為,遮罩層1304所持有的羅吉特是閾值以上的特徵通道。有效特徵通道1405-a~d係在該當之通道號碼的羅吉特為閾值以上的情況下,對應成有效特徵通道的格子中是記載1,在不是有效特徵通道的情況下則記載0。例如有效特徵通道1405-a係為,與通道號碼1及4相對應的遮罩層1304的羅吉特的第1個與第4個要素是閾值以上,是對辨識處理而言為重要的特徵通道。
邏輯和1406係為,將特徵地圖做共用的卷積層的有效特徵通道1405-a~d的邏輯和。只有通道號碼3是在所有的卷積層1402-a~d皆為非有效的0,其他通道號碼則是在卷積層1402-a~d之某些者中會是有效的特徵通道因此會被記載1。在如此的案例中,雖然存在有某個特徵通道在某些卷積層中為非有效的情況,但只能如通道號碼3般地,在所被共用的卷積層1402-a~d之全部中皆為非有效的通道,才可以刪除演算處理。因此,難以刪除較多的演算。
先前的剪枝手法係以卷積層的參數之值或各參數的重要度來評價要進行剪枝的參數,因此在共用特徵地圖的複數個卷積層中難以使得要進行剪枝的特徵通道變成一致。
遮罩層1403係即使對於具有複雜網路的層,仍可決定能有效率地進行剪枝的特徵通道。這是以使得共用特徵地圖的卷積層所附隨的遮罩層1304的鬆弛伯努利分布的羅吉特會變成同一值的方式,而被進行。這是藉由例如,在卷積層1402-a~d所附隨之遮罩層的羅吉特間利用相同的參數、或以使得各羅吉特間的Kullback-Leibler資訊量會變小的方式進行學習,而進行之。除此以外,亦可使得複數個羅吉特之平均或最大值等之統計量之間的Kullback-Leibler資訊量會變小的方式,或如邏輯和1406般地將表示複數個羅吉特的有效特徵通道之邏輯和視為參數ν會採取1的機率的伯努利分布之間的Kullback-Leibler資訊量會變小的方式而為之。
[實施例6]
在實施例6中是說明適合於本發明的學習處理裝置的監視器畫面之構成例。圖17係為用來實施輕量模型之學習所需之畫面之構成的圖示。在圖17的畫面構成例中,是由各種設定部與執行部與結果顯示部所構成。各種設定部,係由1501至1507的設定因素所構成。
在設定部之中,學習資料集設定部1501係為進行學習資料集301B之相關設定的領域。此處是藉由指定以所定格式而被儲存的記憶領域,而讀取資料。評價資料集設定部1502係為進行評價資料集504之相關設定的領域。此處係進行與學習資料集設定部1501相同的設定。學習條件設定部1503係為用來設定學習部(新模型生成部)306將神經網路進行學習之際之條件的領域。其係有關於例如學習時的參數更新次數,或是學習率排程、weight decay之係數、各種損失函數之係數等等。
網路結構設定部1504係為進行所要學習之網路結構303之相關設定的領域。此處是由操作者隨應於學習對象之辨識處理而選擇適切的網路結構303。事前學習模型設定部1505係為用來設定事前學習模型302A的領域。此處係由操作者選擇或指定一個事前學習模型。
剪枝參數設定部1506係為用來設定剪枝相關參數的領域。在使用到遮罩層1304的剪枝的情況下,是設定鬆弛伯努利分布的羅吉特之初期值或用來決定羅吉特的遮罩機率之初期值、關於遮罩層1304的損失函數之係數等。又,一般而言在神經網路的學習中,在初期係學習邊緣或曲線等之原始的影像特徵,之後為了提升辨識性能而漸漸去學習重要的複雜特徵。因此,從學習初期就把關於遮罩層的損失函數設定得較強,或是使許多的特徵通道不會變成有效的這類設定,會有難以學習的情況。因此,在學習初期亦可將遮罩的損失函數之係數設成極小的值,或是亦可將用來決定遮罩層1304的羅吉特之中容許上位多少比率變成有效的遮罩目標值,隨著學習的進度而逐漸予以放寬。例如亦可為,學習的初期30%係將遮罩損失函數之係數設成零,而在學習的初期50%時在網路全體的特徵通道之中只將10%設成有效,在學習的進度達到75%為止係讓20%為止的特徵通道變成有效,到學習結束為止係讓30%的特徵通道變成有效的方式,來進行學習。
重要參數特定條件設定部1507係為進行重要參數特定部304的處理條件之相關設定的領域。此處例如作為重要度之評價函數係設定:海森矩陣與參數的矩陣積、海森矩陣之對角成分與參數向量的要素積、梯度資訊與參數向量的要素積之絕對值、作為海森矩陣之替代而使用K-FAC、使用遮罩層等的條件。又,將進行遷移的參數之比率或部分性再初始化的執行有無、執行手法,予以設定。
接著,執行部係由重要度評價執行部1508與學習結果顯示部1510所構成。此處,一旦重要度評價執行部1508被操作者所選擇,則重要參數特定部304就會作動,進行已被設定之事前學習模型302之各參數的重要度評價。一旦輕量模型作成執行部1509被操作者所選擇,則學習部306就會作動,依照已被設定之條件,從步驟S604起開始學習流程。
學習結果顯示部1510係為顯示學習結果之相關資訊的領域。此處係顯示例如所達成的辨識性能或所得到的輕量模型之推論上所需要的時間、相對於學習時間的辨識性能及有效特徵通道數之變化。又,在重要度評價執行部1508被選擇並完成評價的時點上,亦可顯示出重要度的直方圖。
操作者係使用這些資訊來調整各參數直到達到所望之辨識性能、推論速度為止。
圖18係為對複數個事前學習模型之候補實施重要度評價所需之畫面之構成的圖示。此情況下,畫面也是由設定部與執行部與結果顯示部所構成。
操作者係使用該畫面來決定圖17中所示的輕量模型505之學習時所要使用的事前學習模型。學習資料集設定部1501、網路結構設定部1504、重要參數特定條件設定部1507則與圖17相同。
評價事前學習模型設定部1601係設定用來評價重要度的事前學習模型。在圖8及圖9中雖然記載了把事前學習模型候補抽出部802所抽出的事前學習模型之候補全部都予以評價的例子,但亦可為了縮短評價時間而讓操作者以評價事前學習模型設定部1601來選擇要進行重要度評價的模型。又,此處亦可把事前學習模型候補抽出部802已抽出的事前學習模型,提示給使用者。
重要度評價批量執行部1602一旦被操作者所選擇,處理就從圖10所記載之重要度評價流程之步驟S903開始。
事前學習模型評價結果顯示部1603係將各事前學習模型之評價結果,加以顯示。此處係記載了圖8所示的表與已被選擇之事前學習模型之重要度之直方圖的例子。
若依據採用以上之畫面構成的本發明則可有效率地學習出輕量模型505。
本發明係不限定於上記實施形態,可包含各式各樣的變形例。例如,上記的實施形態是為了將本發明以容易理解的方式加以說明而做的詳細說明,並非限定為必須具備所說明的全部構成。又,某個實施形態的構成的一部分可置換成其他實施形態的構成,又,亦可對某個實施形態的構成追加其他實施形態的構成。又,針對各實施形態的構成的一部分,可做其他構成的追加、刪除、置換。
100:學習處理裝置
101:輸入影像
102(102-1,102-2,102-3,102-4):影像處理部(學習模型)
103(103-1,103-2,103-3,103-4):處理結果部
102’(102-1,102’-2,102’-3):影像處理部(環境別模型)
103’(103’-1,103’-2,103’-3):處理結果部
201:先前的剪枝中的學習處理
202:先前的剪枝中的剪枝處理
203:先前的剪枝中的再學習處理
204:先前的剪枝所致之神經網路之構成例
301(301A,301B):學習資料集
302:事前學習模型
303:未剪枝的神經網路
304:重要參數特定部
305:由已被抽出之重要參數所構成的神經網路
306:新模型生成部
307:學習處理
401,402:學習曲線
502:剪枝部
503:模型評價部
504:評價資料集
700:重要度評價表
701:事前學習模型種別
702:事前學習資料集
703:重要度總和
704:剪枝後重要度總和
801:已學習模型記憶部
802:事前學習模型候補抽出部
803:事前學習模型選擇部
804:重要度評價結果記憶部
1001:部分性再初始化處理部
1002:已被部分性再初始化的神經網路
1003:剪枝處理部
1004:已被剪枝的神經網路
1101:部分性再初始化部
1301:對卷積層的輸入
1302:卷積層
1303:正規化層
1304:遮罩層
1305:活化層
1306:一連串的卷積層之輸出
1401:對具有複雜網路結構的神經網路的輸入
1402-a~d:具有複雜網路結構的神經網路中的複數個卷積層
1403:具有複雜網路結構的神經網路之輸出
1404:通道號碼
1405-a~d:有效特徵通道
1406:邏輯和
1501:學習資料集設定部
1502:評價資料集設定部
1503:學習條件設定部
1504:網路結構設定部
1505:事前學習模型設定部
1506:剪枝參數設定部
1507:重要參數特定條件設定部
1508:重要度評價執行部
1509:輕量模型作成執行部
1510:學習結果顯示部
1601:評價事前學習模型設定部
1602:重要度評價批量執行部
1603:事前學習模型評價結果顯示部
[圖1]本發明的學習處理裝置所想定之神經網路之利用形態之一例的圖示。
[圖2]本發明的學習處理裝置所想定之神經網路之利用形態之一例的圖示。
[圖3]先前法所致之剪枝的概要的圖示。
[圖4]本發明所述之學習處理裝置之處理概要的圖示。
[圖5]本發明與先前法所致之效果做比較的圖示。
[圖6]本發明的學習處理裝置的功能構成例的圖示。
[圖7]本發明的學習處理方法的處理流程例的圖示。
[圖8]操作者針對複數個事前學習模型302之候補進行重要度評價之際的判斷根據資訊以表格形式來表示的圖。
[圖9]本發明的實施例2所述之學習處理裝置的功能構成例的圖示。
[圖10]本發明的實施例2所述之學習處理方法的處理流程例的圖示。
[圖11]部分性再初始化處理之概要的圖示。
[圖12]本發明的實施例3所述之學習處理裝置的功能構成例的圖示。
[圖13]本發明的實施例2所述之學習處理方法的處理流程例的圖示。
[圖14]遮罩層所致之剪枝的概要的圖示。
[圖15]對具有複雜網路結構的神經網路適用遮罩層之方法的圖示。
[圖16]卷積層1402-a~d共用4個通道之狀況以表格形式來表示的圖。
[圖17]適合於本發明的學習處理裝置的監視器畫面之構成例的圖示。
[圖18]對複數個事前學習模型之候補實施重要度評價所需之畫面之構成例的圖示。
301A,301B:學習資料集
302:事前學習模型(第1模型)
303:未剪枝的神經網路
304:重要參數特定部
305:由已被抽出之重要參數所構成的神經網路
306:新模型生成部(第2模型)
307:學習處理
Claims (10)
- 一種學習處理裝置,係從既存之第1學習模型獲得新的第2學習模型的學習處理裝置,其特徵為,具備:輸入部,係取得學習第1學習資料集而事前生成的前記第1學習模型與未被剪枝的神經網路、及第2學習資料集;和重要參數特定部,係使用前記第1學習模型與前記神經網路而將學習對象之前記神經網路予以初始化,並使用前記第2學習資料集與已被初始化之前記神經網路,而將已被初始化之前記神經網路的在前記第2學習資料集的辨識處理中的參數之重要度,予以特定;和新模型生成部,係使用前記參數之重要度,來進行從已被初始化之前記神經網路,刪除在前記第2學習資料集的辨識上非重要之參數的剪枝處理並生成第2神經網路;和學習部,係使用前記第2學習資料集而將前記第2神經網路進行學習;和輸出部,係將學習後的前記第2神經網路當作第2學習模型而予以輸出。
- 如請求項1所記載之學習處理裝置,其中,具備:顯示部,係針對複數個前記第1學習模型,分別求出前記重要參數特定部中所求出的參數之重要度,連 同前記第1學習模型之種別而加以記憶,並作為重要度資訊而予以提示。
- 如請求項2所記載之學習處理裝置,其中,前記重要度係包含重要度總和與剪枝後重要度總和。
- 如請求項1所記載之學習處理裝置,其中,具備:部分性再初始化部,係針對前記重要參數特定部所給予的重要度,在前記第1學習模型沒有學習到學習對象之辨識處理中為重要的特徵的情況下,將所被剪枝的參數,部分性地進行再度初始化;在部分性再初始化後進行前記新模型生成部之處理。
- 如請求項1所記載之學習處理裝置,其中,神經網路係為卷積神經網路;藉由鬆弛伯努利分布來學習,在卷積神經網路中所含之卷積層的一部或全部中,是否把卷積層之輸出的特徵通道利用於辨識。
- 如請求項5所記載之學習處理裝置,其中,在前記鬆弛伯努利分布之學習時,在學習中逐漸增大把特徵通道利用於辨識的量。
- 如請求項6所記載之學習處理裝置,其中, 前記重要度之評價係藉由,損失函數的關於前記神經網路之參數的1次乃至2次微分資訊與從前記神經網路之參數所被求出的量或是前記鬆弛伯努利分布之參數,而被求出。
- 如請求項7所記載之學習處理裝置,其中,將未以前記第1學習模型之參數做過初始化的網路結構之部分進行初始化之際,係以會變成易於剪枝之值的方式,來進行初始化。
- 一種學習處理方法,係從既存之第1學習模型獲得新的第2學習模型的學習處理方法,其特徵為,具備以下步驟:取得學習第1學習資料集而事前生成的前記第1學習模型與未被剪枝的神經網路、及第2學習資料集;使用前記第1學習模型與前記神經網路而將學習對象之前記神經網路予以初始化;使用前記第2學習資料集與已被初始化之前記神經網路,而將已被初始化之前記神經網路在前記第2學習資料集的辨識處理中的參數之重要度,予以特定;使用前記參數之重要度,來進行從已被初始化之前記神經網路,刪除在前記第2學習資料集的辨識上非重要之參數的剪枝處理並生成第2神經網路;使用前記第2學習資料集而將前記第2神經網路進行學習,將學習後的前記第2神經網路當作第2學習模型。
- 一種學習處理方法,係從既存之第1學習模型獲得新的第2學習模型的學習處理方法,其特徵為:使用未剪枝的神經網路與學習第1學習資料集而事前生成的前記第1學習模型而將學習對象之前記未剪枝的神經網路予以初始化;使用第2學習資料集與已被初始化之前記神經網路,求出已被初始化之前記神經網路在前記第2學習資料集的辨識處理中的參數之重要度;進行相應於重要度而將在前記第2學習資料集的辨識上非重要之參數予以刪除的剪枝處理;藉由使用前記第2學習資料集進行了剪枝後的前記神經網路的學習,而獲得第2學習模型。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
WOPCT/JP2020/004878 | 2020-02-07 | ||
PCT/JP2020/004878 WO2021157067A1 (ja) | 2020-02-07 | 2020-02-07 | 学習処理装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202131232A TW202131232A (zh) | 2021-08-16 |
TWI776353B true TWI776353B (zh) | 2022-09-01 |
Family
ID=77200454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110101040A TWI776353B (zh) | 2020-02-07 | 2021-01-12 | 學習處理裝置及方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230004811A1 (zh) |
JP (1) | JP7404404B2 (zh) |
KR (1) | KR20220116270A (zh) |
CN (1) | CN115004195A (zh) |
TW (1) | TWI776353B (zh) |
WO (1) | WO2021157067A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190099930A (ko) * | 2018-02-20 | 2019-08-28 | 삼성전자주식회사 | 완전 연결 네트워크의 데이터 입력 및 출력을 제어하는 방법 및 장치 |
KR20210141123A (ko) * | 2020-05-15 | 2021-11-23 | 한국전자통신연구원 | 인공지능의 부분 학습 방법 및 이를 위한 장치 |
JP2022122364A (ja) * | 2021-02-10 | 2022-08-23 | 日本電気株式会社 | データ生成装置、データ生成方法、及びプログラム |
WO2023248454A1 (ja) * | 2022-06-24 | 2023-12-28 | 日立Astemo株式会社 | 演算装置及び演算方法 |
WO2024090600A1 (ko) * | 2022-10-26 | 2024-05-02 | 한국전자기술연구원 | 딥러닝 모델 학습 방법 및 이를 적용한 딥러닝 연산장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180114114A1 (en) * | 2016-10-21 | 2018-04-26 | Nvidia Corporation | Systems and methods for pruning neural networks for resource efficient inference |
US20190251444A1 (en) * | 2018-02-14 | 2019-08-15 | Google Llc | Systems and Methods for Modification of Neural Networks Based on Estimated Edge Utility |
US20190286945A1 (en) * | 2018-03-16 | 2019-09-19 | Cisco Technology, Inc. | Neural architecture construction using envelopenets for image recognition |
US20190378017A1 (en) * | 2018-06-12 | 2019-12-12 | Sun-Yuan Kung | System and method for implementing a neural network |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6042274B2 (ja) | 2013-06-28 | 2016-12-14 | 株式会社デンソーアイティーラボラトリ | ニューラルネットワーク最適化方法、ニューラルネットワーク最適化装置及びプログラム |
-
2020
- 2020-02-07 CN CN202080093955.XA patent/CN115004195A/zh active Pending
- 2020-02-07 US US17/791,967 patent/US20230004811A1/en active Pending
- 2020-02-07 WO PCT/JP2020/004878 patent/WO2021157067A1/ja active Application Filing
- 2020-02-07 KR KR1020227024814A patent/KR20220116270A/ko unknown
- 2020-02-07 JP JP2021575563A patent/JP7404404B2/ja active Active
-
2021
- 2021-01-12 TW TW110101040A patent/TWI776353B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180114114A1 (en) * | 2016-10-21 | 2018-04-26 | Nvidia Corporation | Systems and methods for pruning neural networks for resource efficient inference |
US20190251444A1 (en) * | 2018-02-14 | 2019-08-15 | Google Llc | Systems and Methods for Modification of Neural Networks Based on Estimated Edge Utility |
US20190286945A1 (en) * | 2018-03-16 | 2019-09-19 | Cisco Technology, Inc. | Neural architecture construction using envelopenets for image recognition |
US20190378017A1 (en) * | 2018-06-12 | 2019-12-12 | Sun-Yuan Kung | System and method for implementing a neural network |
Also Published As
Publication number | Publication date |
---|---|
CN115004195A (zh) | 2022-09-02 |
JP7404404B2 (ja) | 2023-12-25 |
JPWO2021157067A1 (zh) | 2021-08-12 |
KR20220116270A (ko) | 2022-08-22 |
TW202131232A (zh) | 2021-08-16 |
US20230004811A1 (en) | 2023-01-05 |
WO2021157067A1 (ja) | 2021-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI776353B (zh) | 學習處理裝置及方法 | |
CN106845529B (zh) | 基于多视野卷积神经网络的影像特征识别方法 | |
US10769761B2 (en) | Generating high resolution images from low resolution images for semiconductor applications | |
US20160163035A1 (en) | Automatic Defect Classification Without Sampling and Feature Selection | |
CN111582397B (zh) | 一种基于注意力机制的cnn-rnn图像情感分析方法 | |
CN112102229A (zh) | 一种基于深度学习的工业ct检测缺陷的智能识别方法 | |
CN110674305A (zh) | 一种基于深层特征融合模型的商品信息分类方法 | |
JP2015087903A (ja) | 情報処理装置及び情報処理方法 | |
CN108875752A (zh) | 图像处理方法和装置、计算机可读存储介质 | |
CN111931914A (zh) | 一种基于模型微调的卷积神经网络通道剪枝方法 | |
CN111222519B (zh) | 一种层次化彩绘文物线稿提取模型构建、方法及装置 | |
CN112686902B (zh) | 核磁共振影像中脑胶质瘤识别与分割的两阶段计算方法 | |
CN109741341A (zh) | 一种基于超像素和长短时记忆网络的图像分割方法 | |
CN112101364B (zh) | 基于参数重要性增量学习的语义分割方法 | |
CN109872331A (zh) | 一种基于深度学习的遥感图像数据自动识别分类方法 | |
CN116089883B (zh) | 用于提高已有类别增量学习新旧类别区分度的训练方法 | |
CN110569780A (zh) | 一种基于深度迁移学习的高精度人脸识别方法 | |
CN110097096A (zh) | 一种基于tf-idf矩阵和胶囊网络的文本分类方法 | |
CN115049952A (zh) | 一种基于多尺度级联感知深度学习网络的幼鱼肢体识别方法 | |
CN112837320A (zh) | 一种基于并行空洞卷积的遥感影像语义分割方法 | |
CN114581434A (zh) | 基于深度学习分割模型的病理图像处理方法、电子设备 | |
CN114842343A (zh) | 一种基于ViT的航空图像识别方法 | |
CN115994900A (zh) | 基于迁移学习的无监督缺陷检测方法和系统、存储介质 | |
CN116310466A (zh) | 基于局部无关区域筛选图神经网络的小样本图像分类方法 | |
Hosseini et al. | Carpets color and pattern detection based on their images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |