TWI719743B - 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介 - Google Patents

提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介 Download PDF

Info

Publication number
TWI719743B
TWI719743B TW108144513A TW108144513A TWI719743B TW I719743 B TWI719743 B TW I719743B TW 108144513 A TW108144513 A TW 108144513A TW 108144513 A TW108144513 A TW 108144513A TW I719743 B TWI719743 B TW I719743B
Authority
TW
Taiwan
Prior art keywords
data
function
analysis model
output
accuracy
Prior art date
Application number
TW108144513A
Other languages
English (en)
Other versions
TW202123094A (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 中華電信股份有限公司
Priority to TW108144513A priority Critical patent/TWI719743B/zh
Application granted granted Critical
Publication of TWI719743B publication Critical patent/TWI719743B/zh
Publication of TW202123094A publication Critical patent/TW202123094A/zh

Links

Images

Abstract

本發明提出一種提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介,此方法透過三次函數的特徵來處理複雜的非線性問題,特色在輸入的數值介於±2之間時,輸出的變化小,但超過此範圍的數值,隨著數值的增加或減少,輸出的增加或減少幅度則會呈現出明顯的差異效果,在傳遞給下一個神經元或是傳遞給輸出層,使得下一個神經元或是輸出更加顯著。因此,本發明可改善現有技術鈍化的問題,且能夠在更少的訓練次數中較快達到較高的準確度,並且能在類神經網路的隱藏層增加時,避免可能發生之梯度消失的問題,進一步可提升整體的效率與效能。

Description

提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介
本發明係關於類神經網路分類問題之技術,特別是一種提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介。
由於類神經網路上,在處理複雜的非線性問題時,是透過神經元(neuron)所連接的激勵函數(Activation function)來處理,因而激勵函數對一個類神經網路系統而言,具有很重要的影響力,目前已知的激勵函數技術例如為S函數(Sigmoid函數)、雙曲函數(Tanh函數)與線性整流函數(ReLU函數),上述方法都仍存在著準確度或是訓練時間較長的問題,導致準確度有所限制。
具體來說,激勵函數的設計主要是利用非線性方程式解決非線性問題,讓神經元輸入程度增加,也就是受到更大的刺激時,會有更明顯的輸出,使其更能夠反應非線性問題,然而當神經元的輸入刺激到達 一定程度之後,即使再更大的刺激,輸出仍沒有太大的變化,也就是輸出會開始有鈍化的問題,縱使是增加隱藏層來試圖提高準確度,惟結果可能隨者計算的複雜度增加,效果卻可能比原先的準確度差異更大,亦即在類神經網路的隱藏層增加時,有可能發生梯度消失(Gradient vanishing)問題,也就是準確度可能因此而下降。此外,整體硬體、系統的效率與效能也較差。
由此可見,習用方式所採用激勵函數其精確度仍有待改進空間,因而需要找出有關一種神經網路之分類問題的技術,針對當輸入刺激達一定程度時所產生的鈍化問題和梯度消失問題進行改善,藉以提高神經網路分類的精確度,並進一步可提升整體硬體、系統的效率與效能,此將成為本領域技術人員所急欲追求之目標。
本發明之目的係提高類神經網路在分類問題的準確度,即提供相較先有技術常用之激勵函數有相近或更好準確性的函數,另外,本發明之其他目的包括能達到在分類問題上縮短模型訓練建模之時間的效果,以及減少梯度消失問題,並進一步可提升整體硬體、系統的效率與效能。
為了達成上述發明目的或其他目的,本發明係揭露一種提高類神經網路在分類問題的準確度之方法,包括:對所接收之數據資料執行資料前處理,將該數據資料之每一筆資料的屬性欄位定義為輸入值及將該數據資料之每一筆資料的標記欄位定義為輸出值;提供具有執行激勵函 數之計算的立方函數模組的分析模型;將該輸入值帶入該立方函數模組以判斷該輸出值為正值或非正值,俾於該輸出值為正值且該輸入值大於2或該輸出值為非正值且該輸入值小於-2時,利用該立方函數模組執行三次方放大,以及於該輸出值為正值且該輸入值非大於2或該輸出值為非正值且該輸入值非小於-2時,利用該立方函數模組執行一次方放大;以及將執行放大後之結果傳遞至下一個神經元或是輸出層。
於一實施例中,該執行資料前處理之步驟係包括該數據資料的遺缺值處理、資料型態轉換以及將該每一筆資料的屬性部分進行特徵正規化。
於一實施例中,該激勵函數定義為y=x3+x,其中,x為該每一筆資料的屬性欄位,且y為該每一筆資料的標記欄位。
於一實施例中,該分析模型具有接收多個該輸入值的多個隱藏層以及一個輸出層。另外,該多個隱藏層復包括丟棄層。
於上述方法中,該分析模型係包括以下建置步驟:提供資料集且對該資料集執行資料前處理;定義該立方函數模組;依據該立方函數模組建立能分析多個特徵屬性之輸入參數值以及輸出一個類別結果的該分析模型;設定該分析模型之訓練方式及訓練步驟;以及評估該分析模型。
於上述分析模型之建置中,該資料集中每一筆資料具有正例或負例之標記。
於上述分析模型之建置中,該訓練方式包括使用損失函數計算該分析模型之分析結果與正確結果之間之差異、使用優化器調整該分 析模型以減少該差異以及將該分析模型之該分析結果與該正確結果的評估指標設定為準確率。
於上述分析模型之建置中,該訓練步驟包括定義符合該資料集之批次訓練資料的大小以及所有資料的訓練次數。
於上述分析模型之建置中,該評估該分析模型之步驟係包括評估該分析模型之準確率和損失率。
此外,本發明另提供一種電腦可讀儲存媒介,係應用於電腦中且儲存有指令,以用於執行如上所述之提高類神經網路在分類問題的準確度之方法。
綜上所述,本發明揭露一種提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介,主要是在類神經網路上,對神經元所連接的激勵函數建構一個新的函數,藉由讓神經元的特徵更顯著,以改善現有技術鈍化的問題,進而讓整個神經網路在分類判斷上準確性優於現有技術的激勵函數,例如S函數、雙曲函數之方法,且與線性整流函數相近或有更好效果,特別的是,在分析模型訓練時,可以相較於S函數、線性整流函數之方法能在更少的訓練次數中較快達到較高的準確度,故能減少模型訓練建模的時間,另外,在類神經網路的隱藏層增加時,因梯度消失導致準確度下降之問題,本發明於這問題表現上也能優於現有技術,並進一步可提升整體硬體、系統的效率與效能。
S11~S14‧‧‧步驟
301~307‧‧‧流程
401~408‧‧‧流程
第1圖為本發明之提高類神經網路在分類問題的準確度之 方法的步驟圖。
第2圖為本發明之激勵函數曲線的示意圖。
第3圖為本發明之分析模型建置的流程圖。
第4圖為本發明之分析模型執行分析的流程圖。
第5A和5B圖為實現本發明之分析模型架構的相關資料。
第6A-6D圖說明不同激勵函數之準確率和損失率。
第7A-7D圖說明隱藏層增加對不同激勵函數之關係。
以下藉由特定的具體實施形態說明本發明之技術內容,熟悉此技藝之人士可由本說明書所揭示之內容輕易地瞭解本發明之優點與功效。然本發明亦可藉由其他不同的具體實施形態加以施行或應用。
第1圖為本發明之提高類神經網路在分類問題的準確度之方法的步驟圖,主要是應用在類神經網路上,以提升整體硬體、系統的效率與效能。於步驟S11中,對所接收之數據資料執行資料前處理,以將該數據資料之每一筆資料的屬性欄位定義為輸入值,以及將該數據資料之每一筆資料的標記欄位定義為輸出值。本步驟係接收要進行分析的數據資料並對該數據資料進行數據前處理,資料前處理可包括必要的遺缺值處理、資料型態轉換以及將每一筆資料的屬性部分進行特徵正規化,藉此將該數據資料每一筆資料的屬性欄位和標記欄位定義為輸入值和輸出值。
於步驟S12中,提供具有執行激勵函數之計算的立方函數模組的分析模型。本步驟說明提供一個分析模型,該分析模型具有執行激勵 函數之計算的立方函數模組,於一實施例中,該激勵函數定義為y=x3+x,其中,x為該每一筆資料的屬性欄位,也就是輸入值,y為該每一筆資料的標記欄位,也就是輸出值。
另外,該分析模型可具有接收該多個特徵屬性之輸入參數值的多個隱藏層(hidden layer)以及一個輸出層,其中,多個隱藏層中還可包括丟棄層(dropout layer),關於分析模型的結構組成,後續將以範例詳述。
於步驟S13中,令該輸入值帶入該立方函數模組,藉以判斷該輸出值為正值或非正值,以於該輸出值為正值且該輸入值大於2或該輸出值為非正值且該輸入值小於-2時,利用該立方函數模組執行三次方放大(例如y=x3+x中的y=x3部分),以及於該輸出值為正值且該輸入值非大於2或該輸出值為非正值且該輸入值非小於-2時,利用該立方函數模組執行一次方放大(例如y=x3+x中的y=x部份)。本步驟係將相關數值帶入立方函數模組進行分析,該立方函數模組中激勵函數主要是利用非線性方程式解決非線性問題,讓神經元輸入程度增加,也就是受到更大的刺激而有更明顯的輸出,藉此更能夠反應非線性問題。
為了達到上述目的,本發明的激勵函數分析方式能夠在輸入越明顯時,也就是越大或是越小時,能夠輸出放大效果,於本實施例中,輸出能呈現三次方的放大效果,另外,激勵函數包含一個斜率為1的一次函數,目的在輸入數值一定範圍內(以+2到-2之間為例)時,其輸出的變化較小。因此,輸入值帶入立方函數模組後先判斷該輸出值為正值或非正值,接著,當該輸出值為正值且該輸入值大於2或該輸出值為非正值且該輸入值小於-2時,也就是越大或越小時,利用立方函數模組執行三次方放大, 另外,當該輸出值為正值且該輸入值非大於2或該輸出值為非正值且該輸入值非小於-2時,也就是數值在範圍內時,利用立方函數模組執行一次方放大。
於步驟S14中,將執行放大後之結果傳遞至下一個神經元或是輸出層。於前一步驟透過立方函數模組執行一次方放大或三次方放大後,放大後的結果將會傳遞至下一個神經元或是輸出層,使得下一個神經元或是輸出更加顯著,因而隨著神經元的傳遞,有鞭長效應的效果,故能達到神經元的特徵更顯著的目的。
另外,於執行分析之前復包括執行該分析模型之建置,此建置步驟中,首先,提供資料集且對該資料集執行資料前處理,其中,資料集中每一筆資料具有正例或負例之標記,而資料前處理可包括必要的遺缺值處理、資料型態轉換以及將每一筆資料的屬性部分進行特徵正規化。
次之,定義出該立方函數模組。於此所述定義出該立方函數模組即定義出能執行激勵函數之計算的立方函數模組,而該資料集之每一筆資料的屬性欄位視為輸入值,以及該資料集之每一筆資料的標記欄位視為輸出值,激勵函數定義為y=x3+x,x表示每一筆資料的屬性欄位,y表示每一筆資料的標記欄位。
再者,依據該立方函數模組建立能分析多個特徵屬性之輸入參數值以及輸出一個類別結果的該分析模型。也就是分析模型能對多個特徵屬性之輸入參數值進行分析,最後產出一個類別結果,分析即由立方函數模組來進行。
接著,設定該分析模型之訓練方式及訓練步驟。具體來說, 在分析模型建立後,要對分析模型進行訓練,訓練方式可包括用於計算該分析模型之分析結果與正確結果之間差異的損失函數、用於調整該分析模型以減少差異之優化器以及將該分析模型之分析結果與正確結果的評估指標設定為準確率,而訓練步驟可包括定義符合該資料集之批次訓練資料的大小以及所有資料的訓練次數。
最後,評估該分析模型。具體來說,經過前述訓練後,本步驟即評估分析模型是否適用,而評估內容包括評估該分析模型之準確率和損失率。
第2圖說明本發明之激勵函數曲線的示意圖。本發明之激勵函數形成如圖所示的曲線函數,此曲線函數的特色是透過三次函數的特徵來處理複雜的非線性問題,詳言之,本發明一平面空間上,以原點為中心,將圖形由先前技術如S函數(Sigmoid函數)、雙曲函數(Tanh函數)等幾乎都為橫向增加量值的激勵函數,旋轉180度後成為縱向增加,因此,只要輸入少量的變化,輸出就可以反映出來差異,故能達到靈敏效果,此三次函數就是本發明所述的立方函數(Cubed函數),其中,因為是方程式運算的換算過程,因而圖式中XY軸的單位可依實際的應用而適用各種單位,例如「刻度」等。
此激勵函數的設計是利用非線性方程式,解決非線性問題,也就是神經元輸入程度增加,即受到更大刺激時,將會有更明顯的輸出,如此更能夠反應非線性問題,因而此激勵函數分析時,能夠在輸入越明顯時,也就是越大或是越小時,輸出能呈現三次方函數的放大效果,此可改 善先前技術如S函數、雙曲函數等方法在當神經元的輸入刺激到達一定程度(例如±5)之後,即使有再更大的刺激,輸出仍沒有太大的變化,也就是輸出會開始鈍化的問題,並且本發明的激勵函數之放大效果能優於線性整流函數。
此外,本發明另提供一種電腦可讀儲存媒介,應用於具有處理器及/或記憶體的電腦或計算裝置中,係儲存有指令,電腦或計算裝置透過處理器(例如,CPU、GPU等)及/或記憶體透過指令執行如上所述之提高類神經網路在分類問題的準確度之方法,以提升整體硬體、系統的效率與效能。
綜上可知,本發明所提出之提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介,主要應用在類神經網路上,即對神經元所連接的激勵函數建構新的函數,使神經元的特徵更顯著,即改善先前技術鈍化的問題,讓整個神經網路在分類判斷上的準確性優於先前技術;另外,習知技術中,本領域技術人員在模型訓練上僅能採用Keras套件所提供的S函數、雙曲函數或線性整流函數等方法,會使模型訓練建模時間較長,而本發明能提供更少訓練次數中,較快達到較高的準確度,故在分類問題上,有減少模型訓練建模的時間之功效;另外,在類神經網路的隱藏層增加時可能發生準確度下降的情形,本發明所提出之激勵函數的表現上優於S函數、雙曲函數與線性整流函數。
第3圖為本發明之分析模型建置的流程圖。如圖所示,分析模型建置的流程。流程301為讀取資料,為了建立一個分析模型能夠判斷特定領域的資料是屬於「正例」或「負例」,因而需要讓分析模型讀取 大量的資料來訓練,而訓練用的資料集需要在每一筆資料都標記為「正例」或「負例」,才能用來建立符合資料特性的模型,否則若欄位不符合,將無法繼續進行而結束全部流程。
流程302為資料前處理,為了達成本發明讓模型訓練時,重要神經元的特徵更顯著之功效,於資料讀入進來後要先進行資料前處理,除了必要的遺缺值處理、資料型態轉換,最主要的處理是將每筆資料屬性的部分進行特徵正規化,讓數值縮放到0.0和1.0之間,才能將資料提供給流程304所建立分析模型進行讀取。
在流程304執行之前,需要先執行流程303,即定義立方函數(Cubed函數),此立方函數模組之計算方法包含一個激勵函數的分析方法,激勵函數定義方式如下:y=x3+x,x為每一筆資料所帶的屬性欄位,視為輸入值,y為每一筆資料所帶的標記欄位,視為輸出值,此曲線函數的特色是透過三次函數的特徵來處理複雜的非線性問題,且只要輸入少量的變化,輸出就可以反映出來差異,達到靈敏效果,亦即在輸入越明顯時,也就是越大或是越小時,輸出能呈現三次方函數的放大效果,如此可以改善現有技術於神經元的輸入刺激到達一定程度(例如±5)之後輸出會開始產生鈍化的問題。
流程304為建立分析模型,但不限定分析模型規格,主要目的是使本發明分析模型訓練時,重要神經元的特徵能更顯著,舉例來說,請參考第5A和5B圖,第5A圖揭露一個可以分析四個特徵屬性的輸入參數值與輸出一個類別結果之模型架構,包含可接收四個輸入參數值的隱藏層(Hidden Layer)共三層,分別為Dense_1、2、3,所含的節點數各別為 1000、500、300,後面接一個丟棄層(Dropout Layer),丟棄率(Drop Rate)設定為0.2,最後接一個Dense_4為可輸出三種不同結果的歸一化指數函數(Softmax函數),以作為此分類預測方法的輸出層共1層。第5B圖說明可訓練的參數數量如何計算,當輸入層包含4種類別(花萼長度、花萼寬度、花瓣長度、花瓣寬度),輸出層則可輸出3種不同結果(類別一、二、三),則每層之間計算出的參數數量方式為:前節點數*後節點數+後節點數=參數數量,如此,總共的參數數量為5000+500500+150300+903=656703,可訓練的參數數量則為656703。
流程305為設定訓練方式,訓練方式可包含用來計算模型分析結果與正確結果之間的差異,即損失函數為類別型交叉熵(Categorical Crossentropy),用來調整模型減少差異的優化器(Optimizer),以及設定準確率(Accuracy)為模型分析結果與正確結果的評估指標(Metrics)。
流程306為分析模型訓練步驟,即定義符合資料集的訓練步驟,包含設定批次訓練資料的大小(Batch Size)以及所有資料訓練次數(Epochs)。
最後,流程307為評估分析模型準確率,這裡用於定義評估分析模型的方式包括準確率和損失率。
第4圖為本發明之分析模型執行分析的流程圖。分析模型執行分析的流程包括於流程401中,輸入值帶入立方函數(Cubed函數)模組算輸出值是否為正值,若為正值則進入流程402,反之進入流程403。
流程402為檢測輸入值是否大於+2,流程403為檢測輸入值是否小於-2。具體來說,流程402和流程403為定義立方函數的一次函 數,其斜率為1,此一次函數目的在輸入數值介於±2之間時,其輸出的變化較小,但又希望能呈現輸入數值介於±1與介於±2時,輸出數值的變化,因此,透過此一次函數可以呈現出來,而斜率為1的效果最好,此一次函數當輸入數值超過±2時,對原有的三次函數的輸出影響最小。
在流程402和流程403判斷下,若輸出值為正值且輸入值大於2或輸出值為非正值且輸入值小於-2時,分別進入流程404和流程407,皆使用立方函數(Cubed函數)模組進行輸出三次方放大(例如y=x3+x中的y=x3部分等),另外,若輸出值為正值且輸入值非大於2或輸出值為非正值且輸入值非小於-2時,分別進入流程405和流程406,皆使用立方函數(Cubed函數)模組進行輸出一次方放大(例如y=x3+x中的y=x部份等)。
最後,進入流程408,即傳遞給下一個神經元或是傳遞給輸出層。
由上可知,在流程404、405、406、407即是立方函數對輸入顯著值的回饋,也就是,在輸入的數值x超過±2的範圍的數值時,隨著數值的增加或減少,輸出y的變化的增加或減少幅度則會呈現出明顯的差異效果,在傳遞給下一個神經元或是傳遞給輸出層厚,使得下一個神經元或是輸出更加顯著,隨著神經元的傳遞,有鞭長效應的效果,達到神經元的特徵更顯著的效果,並且輸入的正負值,經過運算後仍然保留原本的正負符號。
下面將以實例說明本發明的分析模型與激勵函數。本實施例是從全世界公認最大的資料科學社群Kaggle,進行公用資料下載鳶尾花(Iris)資料集共150筆資料,其內容包含花瓣、花萼的長寬之數據資料, 以及山鳶尾、變色鳶尾、維吉尼亞鳶尾等三個類別,其樣本資料紀錄格式如下面表一所示:
Figure 108144513-A0101-12-0013-1
將其原始資料進行多維度分析,彙總資料如下面表二所示:
Figure 108144513-A0101-12-0013-2
本實施例一共執行四次,分別使用不同激勵函數,依序為本發明揭露之方法立方函數(Cubed函數),以及現有技術的S函數(Sigmoid函數)、雙曲函數(Tanb函數)、線性整流函數(ReLU函數)等方法,藉由示範比較不同激勵函數所訓練出來的模型,應用在驗證集所呈現的準確率結果之功效。
執行步驟如同第3圖流程,首先,於流程301中,讀取上述資料後,接著,流程302執行正規化,本實施例使用機器學習正規化(scikit-learn normalize)套件來實施,接著類別給予標籤,依序為山鳶尾=0、變色鳶尾=1、維吉尼亞鳶尾=2,最後得到下面表三的結果,隨後執行隨機分佈訓練資料集與驗證資料集各占八成與二成之比例。
Figure 108144513-A0101-12-0014-3
由表三可知,三個標籤在四個特徵屬性的數據差異並不明顯,為了讓神經元的特徵更顯著,改善現有技術輸入的特徵屬性鈍化問題,進而讓整個神經網路在分類判斷優於現有技術,於此採用本發明揭露之方法,於流程303中定義立方函數(Cubed函數),將本發明之激勵函數定義為一個函數,供流程304使用。
流程304為使用立方函數(Cubed函數)作為建立分析模型的激勵函數,使用方式於隱藏層指定激勵函數為立方函數(Cubed函數),例如model.add(Dense(500,activation=Cubed))。
流程305為設定訓練方式,其中損失函數設定為Categorical Crossentroby,模型學習的優化器設定為adam,模型分析結果與正確結果 的評估指標設定為accuracy,因而方程式可例如model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'])。
流程306為分析模型訓練,即用訓練資料集進行模型訓練,以及用驗證資料集驗證模型,批次訓練資料可設定為20,所有資料訓練次數可設定為100,因而方程式可例如model.fit(X_train,y_train,validation_data=(X_test,y_test),batch_size=20,epochs=100)。第6A-6D圖說明不同激勵函數之準確率和損失率,也就是此步驟準確率與損失率分別對應到訓練次數的結果,而訓練與驗證資料集,所分別對應的訓練(train)曲線與驗證(validation)曲線,其中,第6A圖為立方函數(Cubed函數),第6B圖為S函數(Sigmoid函數),第6C圖為線性整流函數(ReLU函數),第6D圖為雙曲函數(Tanh函數)。
準確率(acc)越高越好,藍色為訓練資料集的準確率,橘色為驗證資料集的準確率。損失函數(loss)越低越好,藍色為訓練的損失,橘色為驗證的損失,由第6A-6D圖可以發現,有關validation曲線在準確率上,立方函數(Cubed函數)的表現以第四個訓練次數(Epoch)可達到較高的準確率,同樣地validation曲線在損失函數上,立方函數(Cubed函數)的表現以第四個Epoch可達到0.4的損失率,優於線性整流函數(ReLU函數)與S函數(Sigmoid函數),所以此實施例可說明激勵函數為立方函數(Cubed函數)在提昇準確率與減少損失的功效,並且可以在更少的訓練次數(Epoch)中較快達到較高的準確度,進而減少模型訓練建模的時間。
另外,減少梯度消失問題則是指在類神經網路的隱藏層增加 時,可能發生準確度因此而下降的情形,因為使用S函數(Sigmoid函數)的缺點是縱使輸入層的兩個數據差異很大,經過S函數(Sigmoid函數)後,其差距大幅被降低,經過多層後,到最後的輸出層,他們的差距變得超級小,也就是輸入還是依實際情況隨機變化時,輸出就已經收斂了,得到的結果是很差的,改用線性整流函數(ReLU函數)可以改善此問題,而本發明之立方函數(Cubed函數)在這問題的表現上優於S函數(Sigmoid函數)與線性整流函數(ReLU函數)與雙曲函數(Tanh函數)。
第7A-7D圖說明隱藏層增加對不同激勵函數之關係,其中,第7A圖為立方函數(Cubed函數),第7B圖為S函數(Sigmoid函數),第7C圖為線性整流函數(ReLU函數),第7D圖為雙曲函數(Tanh函數),由圖式可發現,S函數(Sigmoid函數)其準確率表現最差,雙曲函數(Tanh函數)在隱藏層增加到第五層時,準確率開始下滑,線性整流函數(ReLU函數)在隱藏層增加到第二層與第五層時,準確率明顯的下滑,而本發明之立方函數(Cubed函數)在增加隱藏層的層數時,準確率優於其他三個激勵函數,顯示在梯度消失問題上的表現可優於現有技術。
由上可知,本發明所揭方法是透過三次函數的特徵,只要輸入少量的變化,輸出就可以反映出來差異,故能達到靈敏效果,另外,此方法是透過三次函數的特徵來處理複雜的非線性問題,特色在輸入的數值介於±2之間時,輸出的變化小,但超過此範圍的數值,隨著數值的增加或減少,輸出的增加或減少幅度則會呈現出明顯的差異效果,在傳遞給下一個神經元或是傳遞給輸出層,使得下一個神經元或是輸出更加顯著,而本發明之激勵函數能夠在輸入越明顯時,也就是越大或是越小時,輸出 能呈現三次方的放大效果,如此可以改善現有技術在當神經元的輸入刺激到達一定程度(±5)之後,輸出會開始鈍化的問題,且此方法放大的效果也優於線性整流函數(ReLU函數)。
綜上可知,透過本發明所述方法與電腦可讀儲存媒介在分類問題上,可達到下列四項效果,第一為分類的準確性優於現有技術的激勵函數(例如S函數、雙曲函數的方法,且與線性整流函數相近);第二為在分析模型訓練時,相較S函數、線性整流函數的方法,能夠在更少的訓練次數中較快達到較高的準確度,進而減少模型訓練建模的時間;第三為在類神經網路的隱藏層增加時,所可能發生梯度消失的問題(即準確度可能因此下降),在這問題的表現上本發明優於S函數、雙曲函數以及線性整流函數;第四為可提升整體硬體、系統的效率與效能。
上述實施形態僅例示性說明本發明之原理及其功效,而非用於限制本發明。任何熟習此項技藝之人士均可在不違背本發明之精神及範疇下,對上述實施形態進行修飾與改變。因此,本發明之權利保護範圍,應如後述之申請專利範圍所列。
S11~S14‧‧‧步驟

Claims (11)

  1. 一種提高類神經網路在分類問題的準確度之方法,包括:
    對所接收之數據資料執行資料前處理,將該數據資料之每一筆資料的屬性欄位定義為輸入值及將該數據資料之每一筆資料的標記欄位定義為輸出值;
    提供具有執行激勵函數之計算的立方函數模組的分析模型;
    將該輸入值帶入該立方函數模組以判斷該輸出值為正值或非正值,俾於該輸出值為正值且該輸入值大於2或該輸出值為非正值且該輸入值小於-2時,利用該立方函數模組執行三次方放大,以及於該輸出值為正值且該輸入值非大於2或該輸出值為非正值且該輸入值非小於-2時,利用該立方函數模組執行一次方放大;以及
    將執行放大後之結果傳遞至下一個神經元或輸出層。
  2. 如申請專利範圍第1項所述之方法,其中,該執行資料前處理之步驟係包括該數據資料的遺缺值處理、資料型態轉換以及將該每一筆資料的屬性部分進行特徵正規化。
  3. 如申請專利範圍第1項所述之方法,其中,該激勵函數定義為y=x3+x,其中,x為該每一筆資料的屬性欄位,且y為該每一筆資料的標記欄位。
  4. 如申請專利範圍第1項所述之方法,其中,該分析模型具有接收多個該輸入值的多個隱藏層以及一個輸出層。
  5. 如申請專利範圍第4項所述之方法,其中,該多個隱藏層復包括丟棄層。
  6. 如申請專利範圍第1項所述之方法,其中,該分析模型係包括以下建置步驟:
    提供資料集且對該資料集執行資料前處理;
    定義該立方函數模組;
    依據該立方函數模組建立能分析多個特徵屬性之輸入參數值以及輸出一個類別結果的該分析模型;
    設定該分析模型之訓練方式及訓練步驟;以及
    評估該分析模型。
  7. 如申請專利範圍第6項所述之方法,其中,該資料集中每一筆資料具有正例或負例之標記。
  8. 如申請專利範圍第6項所述之方法,其中,該訓練方式包括使用損失函數計算該分析模型之分析結果與正確結果之間之差異、使用優化器調整該分析模型以減少該差異以及將該分析模型之該分析結果與該正確結果的評估指標設定為準確率。
  9. 如申請專利範圍第6項所述之方法,其中,該訓練步驟包括定義符合該資料集之批次訓練資料的大小以及所有資料的訓練次數。
  10. 如申請專利範圍第6項所述之方法,其中,該評估該分析模型之步驟係包括評估該分析模型之準確率和損失率。
  11. 一種電腦可讀儲存媒介,係應用於電腦中且儲存有指令,以用於執行如申請專利範圍第1項所述之提高類神經網路在分類問題的準確度之方法。
TW108144513A 2019-12-05 2019-12-05 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介 TWI719743B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108144513A TWI719743B (zh) 2019-12-05 2019-12-05 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108144513A TWI719743B (zh) 2019-12-05 2019-12-05 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介

Publications (2)

Publication Number Publication Date
TWI719743B true TWI719743B (zh) 2021-02-21
TW202123094A TW202123094A (zh) 2021-06-16

Family

ID=75745885

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108144513A TWI719743B (zh) 2019-12-05 2019-12-05 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介

Country Status (1)

Country Link
TW (1) TWI719743B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018358A1 (en) * 2013-10-16 2018-01-18 University Of Tennessee Research Foundation Method and apparatus for constructing a neuroscience-inspired artificial neural network with visualization of neural pathways
TW201832179A (zh) * 2017-01-18 2018-09-01 美商輝達公司 使用一類神經網路過濾影像資料
CN110354501A (zh) * 2019-07-09 2019-10-22 腾讯科技(深圳)有限公司 行为预测方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018358A1 (en) * 2013-10-16 2018-01-18 University Of Tennessee Research Foundation Method and apparatus for constructing a neuroscience-inspired artificial neural network with visualization of neural pathways
TW201832179A (zh) * 2017-01-18 2018-09-01 美商輝達公司 使用一類神經網路過濾影像資料
CN110354501A (zh) * 2019-07-09 2019-10-22 腾讯科技(深圳)有限公司 行为预测方法、装置及电子设备

Also Published As

Publication number Publication date
TW202123094A (zh) 2021-06-16

Similar Documents

Publication Publication Date Title
Kuo et al. Application of particle swarm optimization to association rule mining
WO2017133492A1 (zh) 一种风险评估方法和系统
CN110084610B (zh) 一种基于孪生神经网络的网络交易欺诈检测系统
CN111539733B (zh) 基于全中心损失函数的欺诈交易识别方法、系统、装置
CN110728656A (zh) 基于元学习的无参考图像质量数据处理方法、智能终端
Wu et al. Wavelet fuzzy cognitive maps
CN109214444B (zh) 基于孪生神经网络和gmm的游戏防沉迷判定系统及方法
CN112700326A (zh) 一种基于灰狼算法优化bp神经网络的信贷违约预测方法
CN116306543B (zh) 一种基于生成式对抗网络的表格数据生成方法及系统
TWI719743B (zh) 提高類神經網路在分類問題的準確度之方法與電腦可讀儲存媒介
CN108510080A (zh) 一种基于dwh模型对多关系型数据的多角度度量学习方法
WO2020093817A1 (zh) 一种核身方法及装置
Hung et al. Using a fuzzy group decision approach-knowledge management adoption
Sun et al. Diagnosis of tomato pests and diseases based on lightweight CNN model
Zang et al. The credit risk assessment of P2P lending based on BP neural network
Mao et al. Information system construction and research on preference of model by multi-class decision tree regression
CN113177733B (zh) 基于卷积神经网络的中小微企业数据建模方法及系统
CN115081515A (zh) 能效评价模型构建方法、装置、终端及存储介质
CN114529063A (zh) 一种基于机器学习的金融领域数据预测方法、设备及介质
CN112465066A (zh) 一种基于clique匹配和分层池化的图分类方法
Kuh et al. Using leave‐one‐out cross validation (LOO) in a multilevel regression and poststratification (MRP) workflow: A cautionary tale
CN113239730B (zh) 一种基于计算机视觉的结构虚假模态参数自动剔除方法
Cao et al. Detection and fine-grained classification of malicious code using convolutional neural networks and swarm intelligence algorithms
CN108876210A (zh) 一种土地系统变化因果结构的识别方法、系统和装置
CN108921226A (zh) 一种基于低秩表示和流形正则化的零样本分类方法