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

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

Info

Publication number
TWI742312B
TWI742312B TW107134519A TW107134519A TWI742312B TW I742312 B TWI742312 B TW I742312B TW 107134519 A TW107134519 A TW 107134519A TW 107134519 A TW107134519 A TW 107134519A TW I742312 B TWI742312 B TW I742312B
Authority
TW
Taiwan
Prior art keywords
function
machine learning
value
neural network
partition
Prior art date
Application number
TW107134519A
Other languages
English (en)
Other versions
TW201915800A (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 TW201915800A publication Critical patent/TW201915800A/zh
Application granted granted Critical
Publication of TWI742312B publication Critical patent/TWI742312B/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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

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

Abstract

一機器學習系統包含一記憶體以及一處理器。該處理器用以存取並執行該記憶體儲存的至少一指令以:輸入一原始資料至一神經網路的一第一分區,其中該第一分區至少包含該神經網路中的一激勵函數,該激勵函數用以轉換該原始資料為非可逆的一元資料,其中該元資料被用以傳輸至該神經網路的一第二分區以產生對應於該原始資料的一學習結果。

Description

機器學習系統、機器學習方法及其非暫態 電腦可讀媒體
本發明涉及一種計算系統、計算方法以及用以計算的非暫態電腦可讀媒體。詳細而言,本發明涉及一種用以執行機器學習任務的系統、方法以及非暫態電腦可讀媒體。
近期以來,神經網路以及深度學習被有效地應用於不同的技術領域,例如,其可應用於機器視覺、語音辨識以及機器翻譯等領域當中。然而,為了以具有較高的機敏程度的訓練樣本進行訓練以及學習,應思考如何兼顧深度學習的有效性以及訓練樣本的保密性。
本發明的一面向涉及一種機器學習系統。該機器學習系統包含一記憶體以及一處理器,該處理器通訊耦接於該記憶體。該記憶體儲存至少一指令。該處理器用以存取並執行 該至少一指令以:輸入一原始資料(raw data)至一神經網路(neural network)的一第一分區(first partition),其中該第一分區至少包含該神經網路當中的一激勵函數(activation function layer),該激勵函數用以轉換(transform)該原始資料為非可逆(irreversible)的一元資料(metadata),其中該元資料被用以傳輸至該神經網路的一第二分區(second partition)以產生對應於該原始資料的一學習結果。
本發明的另一面向涉及一種機器學習方法。該機器學習方法由一處理器所執行。該機器學習方法包含下列步驟:輸入一原始資料至一神經網路的一第一分區,其中該第一分區至少包含該神經網路當中的一激勵函數,該激勵函數用以轉換該原始資料為非可逆的一元資料,其中該元資料被用以傳輸至該神經網路的一第二分區以產生對應於該原始資料的一學習結果。
本發明的又一面向係涉及一種非暫態電腦可讀取媒體。該非暫態電腦可讀媒體關聯於至少一指令以界定一機器學習方法,該機器學習方法包含:輸入一原始資料至一神經網路的一第一分區,其中該第一分區至少包含該神經網路當中的一激勵函數,該激勵函數用以轉換該原始資料為非可逆的一元資料,其中該元資料被用以傳輸至該神經網路的一第二分區以產生對應於該原始資料的一學習結果。
應注意的是,前述的發明內容以及後述的實施方式皆僅係舉例說明而已,其主要目的係為詳細地解釋本發明申請專利範圍當中的內容。
100‧‧‧機器學習系統
110‧‧‧本地端
111‧‧‧記憶體
112‧‧‧處理器
120‧‧‧遠端
121‧‧‧記憶體
122‧‧‧處理器
200‧‧‧機器學習方法
S210~S240‧‧‧步驟流程
S1‧‧‧曲線
S2‧‧‧階躍線
NN‧‧‧神經網路
CL1~CL10‧‧‧運算層
PT1‧‧‧第一分區
PT2‧‧‧第二分區
參照後續段落中的實施方式以及下列圖式,當可更佳地理解本發明的內容:第1圖係為根據本發明一實施例繪示的機器學習系統之示意圖;第2圖係為根據本發明一實施例繪示的機器學習方法之步驟流程圖;第3圖係為根據本發明一實施例繪示的習知S型函數以及階層式S型函數之對照示意圖;第4A圖係為根據本發明一實施例繪示的神經網路之示意圖;第4B圖係為根據本發明一實施例繪示的神經網路之示意圖;第5A圖係為根據本發明一實施例提供的原始影像之示意圖;第5B圖係為根據習知技術提供的還原影像之示意圖;第5C圖係為根據本發明一實施例提供的還原影像之示意圖;第6A圖係為根據本發明一實施例提供的原始影像之示意圖;第6B圖係為根據習知技術提供的還原影像之示意圖;以及第6C圖係為根據本發明一實施例提供的還原影像之示意 圖。
以下將以圖式及詳細敘述清楚說明本發明之精神,任何所屬技術領域中具有通常知識者在瞭解本發明之實施例後,當可由本發明所教示之技術,加以改變及修飾,其並不脫離本發明之精神與範圍。
本文之用語只為描述特定實施例,而無意為本發明之限制。單數形式如“一”、“這”、“此”、“本”以及“該”,如本文所用,同樣也包含複數形式。
關於本文中所使用之『耦接』或『連接』,均可指二或多個元件或裝置相互直接作實體接觸,或是相互間接作實體接觸,亦可指二或多個元件或裝置相互操作或動作。
關於本文中所使用之『包含』、『包括』、『具有』、『含有』等等,均為開放性的用語,即意指包含但不限於。
關於本文中所使用之『及/或』,係包括所述事物的任一或全部組合。
關於本文中所使用之用詞(terms),除有特別註明外,通常具有每個用詞使用在此領域中、在本發明之內容中與特殊內容中的平常意義。某些用以描述本發明之用詞將於下或在此說明書的別處討論,以提供本領域技術人員在有關本發明之描述上額外的引導。
第1圖為根據本發明一實施例繪示的機器學習系 統之示意圖。如第1圖所示,在一些實施例中,機器學習系統100可包含本地端110,舉例而言,可以是本地伺服器或獨立電腦,其至少包括記憶體111以及處理器112。在一些實施例中,記憶體111電性/通訊耦接於處理器112。
在一些實施例中,記憶體111可為快閃(flash)記憶體、硬碟(HDD)、固態硬碟(SSD)、動態隨機存取記憶體(DRAM)或靜態隨機存取記憶體(SRAM)。在一些實施例中,作為一種非暫態電腦可讀取媒體,記憶體111可儲存關聯於機器學習方法的至少一指令,該至少一指令可供處理器112存取並執行。
在一些實施例中,處理器112包含但不限於單一處理器以及多個微處理器之集成,例如,中央處理器(CPU)或繪圖處理器(GPU)等。該些(微)處理器電性耦接於記憶體111,藉此,處理器112可用以自記憶體111存取前述的至少一指令,以依據該至少一指令執行前述的機器學習方法。為了更佳地理解該機器學習方法,將於下面段落中詳細解釋之。
在一些實施例中,機器學習系統100更可包含一遠端120,舉例而言,可以是雲端伺服器或獨立電腦,其至少包括記憶體121以及處理器122。在一些實施例中,記憶體121電性/通訊耦接於處理器122。應理解,遠端120的記憶體121和處理器122之構成以及功能類似於本地端110的記憶體111以及處理器112,於此不再贅述。
在一些實施例中,機器學習系統100當中的本地端110通訊耦接於遠端120,應注意的是,前述的「通訊耦接」 可為實體或非實體之耦接。例如,在一實施例中,本地端110可以藉由無線通訊技術耦接至遠端120,藉此兩者可進行雙向的訊息交換。在一些實施例中,本地端110以及遠端120可以藉由實體線路耦接,藉此兩者可進行雙向的訊息交換。
在一些實施例中,本地端110可設置於保存有機敏資料的機關單位,例如,醫院、軍方或半導體公司等。在一些實施例中,遠端120可設置於為具有較佳資料運算能力的網路單位,例如,運算平台或雲端服務供應者等等。在一些實施例中,遠端120的資料運算能力優於本地端110,但不以此為限。
第2圖為根據本發明一實施例繪示的機器學習方法之步驟流程圖。如第2圖所示,在一些實施例中,機器學習方法200可由第1圖中所示的本地端110的處理器112所執行。在一些實施例中,機器學習方法200可由第1圖中所示的本地端110的處理器112以及遠端120的處理器122協同執行。在一些實施例中,機器學習方法200之詳細步驟將於下面段落中敘述。
步驟S210:接收一原始資料。
在一些實施例中,本地端110的處理器112可自一記憶體(例如,記憶體111)存取至少一原始資料(raw data)。在一些實施例中,該至少一原始資料可為影像資料。在一些實施例中,該至少一原始資料可為語音資料或文字資料等,本發明可應用的資料形式並不以此為限。
例如,在一實施例中,本地端110係對應於一醫 院,本地端110的處理器112通訊耦接於醫院的資料庫,醫院的資料庫可儲存有醫院所蒐集的病患的X光片影像、患部切片影像或全身磁振造影影像等醫學影像資料。在一些實施例中,處理器112所存取/接收的至少一原始資料可為前述的X光片影像、患部切片影像或全身磁振造影影像等。
在一些實施例中,本地端110的記憶體111以及處理器112係設置於醫院中,醫院係為安全(secured)端。意即,在本地端110以及醫院內,資料的安全性應可獲得保證。
步驟S220:輸入原始資料至神經網路的第一分區,其中第一分區至少包含神經網路中的激勵函數,激勵函數用以轉換原始資料為非可逆的元資料。
在一些實施例中,處理器112於存取/接收至少一原始資料後,可將至少一原始資料輸入神經網路(neural network)的第一分區(first partition)。關於該神經網路(如後述的神經網路NN)以及第一分區(如後述的第一分區PT1)之細節,將於後面段落中詳述。
應理解,此處所指的神經網路係為機器學習(machine learning)程序中用以訓練的模型(model),神經網路可包含有具有次序關係的複數層(layers),該些層各自可包含若干神經元(neurons)。大致而言,該些層中的神經元可接收輸入(input)值並產生輸出(output)值,對應地,各層所屬的該些神經元分別對應於一運算。
在一些實施例中,神經網路係為卷積神經網路(convolutional neural network),此架構可用以訓練深度學 習(deep learning)程序。在一些實施例中,神經網路可包含卷積層、激勵函數、池化層以及全連接層等運算層。
例如,在一些實施例中,卷積層(convolution layer)係以特定的濾波器(filter)對其輸入值作卷積運算,藉此可萃取出輸入值當中的某些特徵(features)以產生輸出值。例如,在一些實施例中,激勵函數(activation function)可接續於卷積層之後,主要係用以對卷積層的輸出值作非線性(nonlinear)濾波。在一些實施例中,激勵函數係用以轉換卷積層的輸出值為正值,但不以此為限。例如,在一些實施例中,池化層(pooling layer)係用以針對某些輸入值作累積(aggregate)運算,如極大值(maximum)運算或平均數(average)運算等,藉此可保留該些輸入值當中的某些特徵並去除雜訊。例如,在一些實施例中,全連接層(fully-connected layer)的神經元係用以依據神經元對應的權重(weight)對輸入值進行矩陣乘法(matrix multiplication)運算,並將輸出值連結至該神經網路的學習結果。
在一些實施例中,神經網路包含複數卷積層、複數激勵函數、複數池化層以及複數全連接層,該些運算層以一定次序排列,其間的各神經元可以相互連結。取決神經網路中各層的次序關係,以及各層的神經元之間的連結關係,該至少一原始資料可作為訓練樣本(training samples)輸入神經網路,經由該些運算層運算以獲取訓練結果。在一些實施例中,可多次地基於神經網路進行梯度運算,藉此訓練並修改神經網路中的卷積層和池化層所萃取的特徵,以及訓練並修改全連接 層當中的權重,最後完成基於該神經網路的機器學習程序/深度學習程序。
在一些實施例中,神經網路的第一分區至少包含一激勵函數,激勵函數可用以轉換至少一原始資料為元資料,元資料係為非可逆(irreversible)資料,關於「非可逆」之解釋,將於後面段落中詳述。
在一些實施例中,本發明的激勵函數可為階層式非線性(stepwise nonlinear)函數。應理解,習知技術中的非線性函數可為,例如,S型函數(sigmoid)、雙曲正切函數(hyperbolic tangent)或線性整流函數(rectified linear unit,ReLU)等等。若以函數圖形理解,相較於先前技術中的非線性函數,本發明的階層式非線性的定義域(domain)大致分割為複數區間(intervals),且該些區間各自對應於複數階躍(step)線段,使本發明的階層式非線性函數的函數圖形表示為該些階躍線段之集成。應理解,本發明的階層式非線性函數可應用於習知的S型函數、雙曲正切函數或線性整流函數之定義域,將其轉換為階層化之函數。
舉例而言,在一些實施例中,本發明的激勵函數可為階層式S型函數(stepwise sigmoid),相較於先前技術中的S型(sigmoid)函數,階層式S型函數的函數圖形可表示為複數階躍線段之集成。
例如,在一些實施例中,本發明的階層式S型函數(標記為g step(x))之函數式可表示如下。
Figure 107134519-A0101-12-0009-1
在前述函數式中,符號
Figure 107134519-A0101-12-0010-16
代表取底函數(或稱下取整函數)。若以
Figure 107134519-A0101-12-0010-14
a
Figure 107134519-A0101-12-0010-15
為例,函數輸入值為a,函數輸出值為小於等於a的首個整數(integer)值。
在前述函數式中,符號min()代表為極小值函數。若以min(b,c)為例,函數輸入值為b以及c,函數輸出值為b,c兩者當中的較小者。
在前述函數式中,符號| |代表為絕對值函數。若以|d|為例,函數輸入值為d,若d為非負數,函數輸出值為d,若d為負數(negative),函數輸出值為-d。
在前述函數式中,符號sign( )代表為二元階躍函數。若以sign(e)為例,函數輸入值為e,若e為非負數,其輸出值為1,若e為負數,其輸出值為-1。
在前述函數式中,n值代表區間數量(number of intervals),亦即階層式S型函數的定義域的分割數量。
在前述函數式中,v值代表切分值,亦即階層式S型函數設定用以分割的定值(clipping value)。
在前述函數式中,x值代表函數之輸入值,亦即階層式S型函數定義域當中的某一數值。
整體而言,前述函數式的意義如下。當某一x值作為前述函數式的一輸入值,函數式可自該x值的絕對值與v當中取最小值為一第一數值,再將該第一數值除以v與n的比值以產生一第二數值。函數式可再獲取小於等於該第二數值的首個整數為一第三數值。函數式可再將該第三數值乘以v與n 的比值以產生一第四數值。函數式可再依據原x值的正負狀況選擇將該第四數值乘以1或-1,以產生一第五數值。該第五數值可被輸入至S型函數當中,以獲取對應於該x值的一輸出值。
為了更佳地理解,可一併參照第3圖。第3圖為根據本發明一實施例繪示的習知S型函數以及階層式S型函數之對照示意圖。在一些實施例中,如第3圖所示,橫軸(horizontal axis)係用以表示x值,x值對應於習知S型函數以及階層式S型函數的定義域(domain)。如第3圖所示,縱軸(vertical axis)係用以表示g(x)值以及g step(x)值,其中,g(x)值對應於習知S型函數的值域(range),g step(x)值對應於本發明之階層式S型函數的值域。
如第3圖所示,基於同樣之定義域(亦即,x值為-10~10之區間內),習知S型函數的值域可表示為曲線S1,本發明的階層式S型函數的值域(即g(x)值或g step(x)為0.0~1.0之區間內)可表示為由複數階躍線段構成的階躍線S2(即各區間當中的橫線段之集成)。
如第3圖所示,習知S型函數對應的曲線S1係為指數曲線,對應x值之遞增,曲線S1呈現平滑向上之趨勢。應理解,在本實施例中,習知的S型函數之函數式可表示如下:g(x)=1/(1+e -x ),其中,e代表以歐拉數(Euler’s number)為底的指數函數。
如第3圖所示,階層式S型函數對應的階躍線S2係由複數階躍線段構成,對應x值之遞增,階躍線S2呈現階層向上之趨勢。應理解,階層式S型函數之函數式可參照前述實 施例所述的g step(x)。在本實施例中,g step(x)之函數式當中的v值(即切分值)為10,n值(即區間數量)為21。
如第3圖所示,依據曲線S1之趨勢變化,可以理解,在習知S型函數的整體區間中,每一個g(x)值僅對應於一個x值。如第3圖所示,依據階躍線S2之趨勢,可以理解,在階層式S型函數的分割區間中,每一個g step(x)值可能對應於一個以上的x值。
應理解,第3圖所示的階層式S型函數僅係一示例,本發明並不以此為限。在一些實施例中,該階層式S型函數的定義域的分割數量(即n值)以及用以分割的該定值(即v值)可以不同,運算量亦隨之變化。在一些實施例中,以前述的階層式S型函數為參照,本發明的階層式非線性函數亦可實施於習知的雙曲正切函數或線性整流函數。亦即,可依據同於上述的計算式對輸入值(x值)做轉換,再將轉換後之數值輸入雙曲正切函數或線性整流函數,其即為階層式雙曲正切函數或階層式線性整流函數。
在一些實施例中,藉由第一分區當中的激勵函數(例如,前述的階層式S型函數),處理器112可將至少一原始資料當中的數值(例如,各畫素對應之灰階值)轉換為元資料(metadata),元資料係為一種中介資料。
在一些實施例中,處理器112可依據第3圖所示的階層式S型函數處理至少一原始資料,以將至少一原始資料轉換為元資料。應理解,承前所述,在階層式S型函數的分割區間中,元資料的每一個g step(x)值可對應於一個以上的x值。是 以,若將元資料輸入逆轉函數(inverse function)當中,將產生多對一(many to one)映射(mapping)之非可逆(irreversible)狀況。應理解,此處所指的非可逆狀況係指,由於階層式S型函數的同一輸出值可能對應複數個輸入值,故無法將該元資料完整地還原為該至少一原始資料。
在一些實施例中,即便階層式S型函數的運算邏輯已被獲取,仍難以推導出有效的逆轉函數以將元資料完整還原為該至少一原始資料。
應理解,前述的階層式S型函數僅係一示例,本發明並不以此為限。在一些實施例中,處理器112可以其他可行的激勵函數將該至少一原始資料轉換為元資料,只要將元資料輸入逆轉函數時,將產生多對一映射之非可逆狀況,使元資料無法被有效地還原為該至少一原始資料,該等激勵函數皆為本發明範圍所涵蓋。
步驟S230:傳輸元資料至伺服器。
在一些實施例中,當處理器112藉由第一分區當中的激勵函數將至少一原始資料轉換為元資料後,處理器112可藉由通訊管道傳輸該元資料至遠端120。在一些實施例中,遠端120的記憶體121以及處理器122係設置於雲端服務供應者。
步驟S240:伺服器接收元資料,並將元資料輸入至神經網路中接續於第一分區的第二分區以產生學習結果。
在一些實施例中,處理器112可藉由通訊管道傳輸元資料至遠端120。遠端120的處理器122可接收元資料,並 將元資料儲存於記憶體121。或者,處理器122可將元資料輸入至神經網路當中的第二分區(second partition),藉由第二分區之運算,處理器112可產生對應於該至少一原始資料的學習結果。關於神經網路(如後述的神經網路NN)以及第二分區(如後述的第二分區PT2)之細節,將於後面段落中詳述。
為了更佳地理解神經網路當中的第一分區以及第二分區,可一併參照第4A圖以及第4B圖。第4A圖以及第4B圖皆為根據本發明一實施例繪示的神經網路之示意圖。
在一實施例中,如第4A圖所繪示,神經網路NN可包含複數運算層CL1~CL10。運算層CL1可為第一卷積層,運算層CL2可為第一激勵函數,運算層CL3可為第二卷積層,運算層CL4可為第二激勵函數,運算層CL5可為第一池化層,運算層CL6可為第三卷積層,運算層CL7可為第三激勵函數,運算層CL8可為第二池化層,運算層CL9可為第一全連接層,運算層CL10可為第二全連接層,該些運算層CL1~CL10構成神經網路NN。
在一實施例中,神經網路NN可應用為機器學習系統100的訓練模型。在一實施例中,機器學習系統100的輸入(即該至少一原始資料)係輸入自神經網路NN的運算層CL1,經運算層CL1運算後產生輸出,該輸出再輸入至運算層CL2,經運算層CL2運算後產生輸出。以此類推,運算層CL10的輸出則連接至神經網路NN的判斷結果,亦即神經網路NN的學習結果。
再參照第4B圖。應理解,第4B圖之實施例所示 的本地端110以及遠端120與第1圖之實施例所示的本地端110以及遠端120相同,第4B圖之架構旨在解釋該神經網路NN之第一分區以及第二分區。
如第4B圖所示,在一些實施例中,神經網路NN可包含第一分區PT1以及第二分區PT2。
在一些實施例中,神經網路NN的該些運算層當中的運算層CL1~CL2位於第一分區PT1當中。在本實施例中,神經網路NN的第一分區PT1係由本地端110的處理器112所執行。
在一些實施例中,神經網路NN的該些運算層當中的運算層CL3~CL10位於第二分區PT2當中。在本實施例中,第二分區PT2由遠端120的處理器122所執行。
亦即,如第4B圖所示,在一些實施例中,神經網路NN至少可分為兩部分,且兩部分係分別由本地端110以及遠端120執行。
請一併參照第4A圖以及第4B圖。如第4A圖之實施例所述,神經網路NN中包含複數個非線性激勵函數,分別對應於該些運算層當中的運算層CL2、CL4、CL7。如第4B圖所示,在一些實施例中,第一分區PT1包含運算層CL2,而運算層CL2對應於神經網路NN中的第一激勵函數。亦即,在一些實施例中,激勵函數係為神經網路NN當中次序為首的非線性激勵函數。
如第4B圖所示,在一些實施例中,第一分區PT1當中更包含運算層CL1,運算層CL1係為第一卷積層。在一些 實施例中,處理器112可將至少一原始資料當中的數值輸入運算層CL1以獲取卷積輸出,並將運算層CL1之輸出再輸入至運算層CL2,由運算層CL2的第一激勵函數進行轉換,以輸出該元資料。
如第4B圖所示,在一些實施例中,處理器112可將元資料傳輸至遠端120,由遠端120的處理器122執行後續的運算層CL3~CL10,最後產生該神經網路NN的學習結果。在一些實施例中,運算層CL4以及運算層CL7所對應的激勵函數可為S型函數、雙曲正切函數或線性整流函數等。
應理解,第4A圖以及第4B圖所示的該神經網路NN僅係一示例,本發明並不以此為限。在一些實施例中,神經網路NN可包含不同數量以及次序的運算層,第一分區PT1以及第二分區PT2各自包含的運算層數量亦可不同。
承前所述,在一些實施例中,處理器112所存取/接收的該至少一原始資料可為前述的X光片影像、患部切片影像或全身磁振造影影像等應保密資料。在習知技術中,若未對該至少一原始資料處理即向外傳輸,當該通訊管道的保密性不足時,惡意第三方可攔截並直接獲取該至少一原始資料。
或者,即便習知技術可藉由習知的激勵函數對該至少一原始資料進行轉換,經轉換的該至少一原始資料仍較易被還原為該至少一原始資料。在一些實施例中,習知的激勵函數可包含但不限於,例如,S型函數、雙曲正切函數或線性整流函數等等。
在一些實施例(例如,第3圖)中,習知的S型函數 之函數式可表示如下:sigmoid(z)=1/(1+e -z ),其中,e代表以歐拉數為底的指數函數。在一些實施例中,若藉由習知的S型函數轉換至少一原始資料為元資料,可藉由下列的逆轉函數將元資料還原為該至少一原始資料。逆轉函數之函數式可表示為:z=sigmoid -1(y)=-ln((1/y)-1),其中,ln()代表自然對數函數。
在一些實施例中,習知的雙曲正切函數之函數式可表示如下:tanh(z)=(e 2z -1)/(e 2z +1),其中,e代表以歐拉數為底的指數函數。在一些實施例中,若藉由習知的雙曲正切函數轉換該至少一原始資料為元資料,可藉下列逆轉函數將元資料還原為該至少一原始資料。逆轉函數之函數式可表示為:tanh-1(z)=[ln(1+z)-ln(1-z)]/2,其中,ln()代表自然對數函數。
在一些實施例中,習知的線性整流函數之函數式可表示如下:ReLU(z)={z,if z≧0;0,otherwise},亦即,若輸入值z大於等於0,函數輸出值為z,若輸入值z小於0,函數輸出值為0。在一些實施例中,若藉由習知的線性整流函數轉換至少一原始資料為元資料。若惡意第三方獲取元資料,元資料中的正數部分可直接使用,僅須補足零值部分,即可獲取該至少一原始資料。此外,若以習知的線性整流函數轉換原始資料為元資料,即便只獲取元資料中的正數部分,其仍可於視覺上大致辨識(recognizable)為該至少一原始資料。
相對地,在一些實施例中,本發明的處理器112可藉由前述的該階層式S型函數將該至少一原始資料轉換為元資料。在此狀況下,難以找到一種有效的逆轉函數可將該元資料還原為該至少一原始資料。
在一些實施例中,若惡意第三方仍嘗試藉由其所推導的逆轉函數還原該元資料,由於階層式S型函數之轉換效果,其嘗試還原的資料於視覺上將難以辨識(unrecognizable)為該至少一原始資料。亦即,被還原的資料仍難以辨識為前述的X光片影像、患部切片影像或全身磁振造影影像等資料。
在一些實施例中,本發明與習知技術的系統效率比較如下所示。
在一些實施例中,若依據習知的S型函數建構機器學習系統,並以MNIST影像資料庫作為此系統的訓練樣本(即前述的該至少一原始資料)來源,採用隨機梯度下降法(Stochastic gradient descent,SGD)運算90個時期(epochs),此系統的學習結果之準確率為99.68%。在此實施例中,MNIST影像資料庫(Mixed National Institute of Standards and Technology database)提供多張手寫數字(handwritten digits)影像,該些影像可於LeCun教授的網站(http://yann.lecun.com/exdb/mnist/)上獲取。
在一些實施例中,若依據習知的S型函數建構機器學習系統,並以CIFAR10影像資料庫作為此系統的訓練樣本(即前述的該至少一原始資料)時,採用隨機梯度下降法運算90個時期,此系統的學習結果之準確率為86.94%。在此實施例中,CIFAR10影像資料庫當中具有10個分類的物體影像,包含:飛機、汽車、鳥、貓、鹿、狗、青蛙、船、卡車等。該些影像可於http://www.cs.toronto.edu/~kriz/cifar.html網站上獲取。
對應地,在一些實施例中,若依據本發明的階層式S型函數建構機器學習系統,同樣採用隨機梯度下降法運算90個時期。若以MNIST影像資料庫作為此系統的訓練樣本來源,在n值(即該階層式S型函數的定義域的分割數量)為1的時候,學習結果之準確率為10.28%;在n值為5的時候,學習結果之準確率為23.27%;在n值為11的時候,學習結果之準確率為99.57%;在n值為21的時候,學習結果之準確率為99.65%。應注意的是,學習結果之準確率隨n值增加而提升,在n值至少為21的時候,本發明的系統與習知技術的系統的學習結果之準確率幾無二致。
對應地,在一些實施例中,若依據本發明的階層式S型函數建構機器學習系統,採用隨機梯度下降法運算90個時期。若以CIFAR10影像資料庫作為此系統的訓練樣本來源(即為前述的該至少一原始資料)時,在n值(即該階層式S型函數的定義域的分割數量)為1的時候,學習結果之準確率為13.74%;在n值為5的時候,學習結果之準確率為23.45%;在n值為11的時候,學習結果之準確率為49.91%;在n值為21的時候,學習結果之準確率為81.28%。應注意的是,學習結果之準確率隨n值增加而提升,在n值至少為21的時候,本發明的系統的學習結果之準確率與習知技術系統差距較小。
可預期地,在n值更高的時候,本發明的系統的學習結果之準確率可接近於習知技術之系統。此外,依據學習結果之準確率隨n值增加的變化趨勢,可以理解,在n值提升至一定值以上時,本發明的系統的學習結果之準確率將趨於一 固定值(亦即n值可被設定介於第一數值與第二數值間,例如:5~21之間)。
為了更佳地理解上述內容,請參照第5A~5C圖以及第6A~6C圖。
第5A圖係為根據本發明一實施例提供的原始影像之示意圖。如第5A圖所示,六個物體的原始影像於圖中呈縱向排列,該些原始影像係自前述的CIFAR10影像資料庫當中所獲取。該些物體的原始影像由上而下分別呈現汽車、狗、青蛙、汽車、青蛙、鳥。
第5B圖係為根據習知技術提供的還原影像之示意圖。應理解,第5B圖所示的兩列還原影像係對應於第5A圖的原始影像。第5B圖當中左列所呈現的係為第5A圖的該些原始影像經習知的S型函數處理後,再根據S型函數的逆轉函數還原後之影像。第5B圖當中右列所呈現的係為第5A圖的該些原始影像經習知的線性整流函數處理後,再根據線性整流函數的逆轉函數還原後之影像。如第5B圖所示,根據習知的激勵函數處理再還原的影像可清楚辨識為如第5A圖所示的該些物體。
第5C圖係為根據本發明一實施例提供的還原影像之示意圖。應理解,第5C圖所示的還原影像係對應於第5A圖的原始影像。第5C圖當中所呈現的四列影像皆為第5A圖的原始影像經本發明的階層式S型函數處理後,再根據推導的逆轉函數嘗試還原之影像。於第5C圖當中,由左至右的四列影像分別對應階層式S型函數當中n選取為3、5、11、21的還原 影像。如圖中所示,當n選取為21時,該些還原影像於視覺上仍難以辨識為原始影像(亦即,非可逆的)。而根據前述實施例,可知n選取為21時,本發明的學習結果之準確率可達81.28%。
第6A圖係為根據本發明一實施例提供的原始影像之示意圖。如第6A圖所示,複數手寫數字的原始影像於圖中呈縱向排列,該些原始影像係自前述的MNIST影像資料庫當中所獲取。該些數字的原始影像由上而下分別呈現數字2、數字5、數字2、數字8、數字7、數字4。
第6B圖係為根據習知技術提供的還原影像之示意圖。應理解,第6B圖所示的兩列還原影像係對應於第6A圖的原始影像。第6B圖當中左列所呈現的係為第6A圖的該些原始影像經習知的S型函數處理後,再根據S型函數的逆轉函數還原後之影像。第6B圖當中右列所呈現的係為第6A圖的該些原始影像經習知的線性整流函數處理後,再根據線性整流函數的逆轉函數還原後之影像。如第6B圖所示,根據習知的激勵函數處理再還原的影像皆可清楚辨識為如第6A圖所示的該些數字。
第6C圖係為根據本發明一實施例提供的還原影像之示意圖。應理解,第6C圖所示的四列還原影像係對應於第6A圖的原始影像。第6C圖當中所呈現的皆為第6A圖的該些原始影像經本發明的階層式S型函數處理後,再根據推導的逆轉函數嘗試還原之影像。於第6C圖當中,由左至右的四列影像分別對應階層式S型函數當中n選取為3、5、11、21的還原 影像。如圖中所示,當n選取為11時,該些還原影像於視覺上難以辨識為原始影像(亦即,非可逆的)。而根據前述實施例,可知n選取為11時,本發明的學習結果之準確率可達99.57%。
因此由上述實施例可知,在資料型態不同的兩個實施例之間,n值的選取可影響學習結果準確率以及還原影像的可辨識程度。一般而言,以原始資料為影像資料為例,文字影像的內容複雜度相較於物體影像的內容複雜度為低。因此,當應用於文字影像時,選取的n值可能較低。對應地,當應用於物體影像時,選取的n值可能較高。是故,應理解,在一些實施例中,依據該至少一原始資料的資料型態的內容複雜度(例如文字影像或物體影像)的不同,本發明的階層式非線性函數的n值的選取亦可不同。
應理解,在前述比較中,本發明的系統之學習結果相較於習知技術仍具有顯著的準確率。然而,若習知技術的系統的元資料被獲取,經由前述的逆轉函數還原該元資料,其嘗試還原的資料於視覺上將可有效地辨識為該至少一原始資料。相對地,若本發明的系統的元資料被獲取,其嘗試還原的資料於視覺上將難以有效地辨識為該至少一原始資料。亦即,前述比較說明了,本發明的系統在元資料難以還原的前提上,仍可達成顯著的學習結果之準確率。
然而,應理解,前述實施例中雖以醫院以及雲端服務供應者為例說明本發明,然本發明並不以此為限,機器學習系統100的本地端110以及遠端120可應用於其他網路服務架構中。
依據前述實施例,本發明提供了一種機器學習系統、機器學習方法以及其非暫態電腦可讀媒體。藉由將神經網路的不同分區分別指派於本地端或遠端當中執行,可有效降低系統的運算成本。
另外,本發明亦可應用於複數本地端上,藉以實現以同一遠端連接複數本地端之運算服務模式,可提供一種並行且有效的機器學習架構。
應理解,在本發明的系統中,神經網路分為位於本地端的第一分區以及位於遠端的第二分區,惡意第三方欲同時獲取完整神經網路架構的難度較高。
此外,在本發明的系統中,若本地端傳輸至遠端的過程中發生元資料外洩,或遠端受到惡意第三方攻擊而發生元資料外洩,承前所述,此元資料亦難以辨識。因此,本發明可有效地防止黑箱(black-box)攻擊。
進一步地,在本發明的系統中,若本地端發生元資料外洩,且本地端的運算層權重亦同樣被獲知,獲知者僅憑元資料仍無法完全還原出原始資料。因此,本發明亦可有效地防止白箱(white-box)攻擊。
綜上所述,本發明可在機敏資料受保密的前提下提供一種有效的機器學習系統、機器學習方法以及其非暫態電腦可讀媒體。
雖然本發明以詳細之實施例揭露如上,然而本發明並不排除其他可行之實施態樣。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準,而非受於前述實施例之 限制。
對本領域技術人員而言,在不脫離本發明之精神和範圍內,當可對本發明作各種之更動與潤飾。基於前述實施例,所有對本發明所作的更動與潤飾,亦涵蓋於本發明之保護範圍內。
100‧‧‧機器學習系統
110‧‧‧本地端
120‧‧‧遠端
NN‧‧‧神經網路
CL1~CL10‧‧‧運算層
PT1‧‧‧第一分區
PT2‧‧‧第二分區

Claims (16)

  1. 一種機器學習系統,包含:一記憶體,儲存至少一指令;以及一處理器,通訊耦接於該記憶體,其中該處理器用以存取並執行該至少一指令以:輸入一原始資料(raw data)至一神經網路,其中該神經網路至少包含一激勵函數(activation function),該激勵函數用以轉換該原始資料為非可逆(irreversible)的一元資料(metadata),其中該激勵函數為階層式非線性函數,該激勵函數依據一分割數量將該激勵函數的一定義域分割為複數區間,該些區間於該激勵函數的一值域中分別對應一固定數值,且該分割數量介於一第一數值與一第二數值間。
  2. 如請求項1所述之機器學習系統,更包含:一伺服器,通訊耦接於該處理器,其中該伺服器用以接收經設置於該處理器的該神經網路的一第一分區中的該激勵函數轉換的該元資料,並將該元資料輸入至該神經網路中接續於該第一分區的一第二分區以產生對應該原始資料的一學習結果。
  3. 如請求項1所述之機器學習系統,其中該激勵函數係為該神經網路中次序為首的非線性(nonlinear)激勵函數。
  4. 如請求項1所述之機器學習系統,其中該激勵函數對應於一切分值,該切分值與該些區間的一數量具有一比值,該激勵函數將比較一輸入值以及該切分值以取得一比較結果,該激勵函數依據該比值、該比較結果與該輸入值產生該元資料。
  5. 如請求項1所述之機器學習系統,其中該分割數量的大小對應於該原始資料的內容複雜度。
  6. 如請求項2所述之機器學習系統,其中該第一分區包含一卷積(convolution)層。
  7. 如請求項2所述之機器學習系統,其中該第二分區包含一卷積(convolution)層、一池化(pooling)層以及一全連接(fully connected)層中的至少一者。
  8. 一種機器學習方法,由一處理器所執行,該機器學習方法包含:輸入一原始資料至一神經網路,其中該神經網路至少包含一激勵函數,該激勵函數用以轉換該原始資料為非可逆的一元資料,其中該激勵函數為階層式非線性函數,該激勵函數依據一分割數量將該激勵函數的一定義域分割為複數區間,該些區間於該激勵函數的一值域中分別對應一固定數值,且該分割數量介於一第一數值與一第二數值間。
  9. 如請求項8所述之機器學習方法,更包含:傳輸由該神經網路的一第一分區中的該激勵函數轉換的該元資料至一伺服器;以及該伺服器接收該元資料,並將該元資料輸入至該神經網路中接續於該第一分區的一第二分區以產生對應該原始資料的一學習結果。
  10. 如請求項8所述之機器學習方法,其中該激勵函數係為該神經網路中次序為首的非線性激勵函數。
  11. 如請求項8所述之機器學習方法,其中該激勵函數對應於一切分值,該切分值與該些區間的一數量具有一比值,該激勵函數將比較一輸入值以及該切分值以取得一比較結果,該激勵函數依據該比值、該比較結果與該輸入值產生該元資料。
  12. 如請求項8所述之機器學習方法,其中該分割數量的大小對應於該原始資料的內容複雜度。
  13. 如請求項9所述之機器學習方法,其中該第一分區更包含一卷積層。
  14. 如請求項9所述之機器學習方法,其中該第二分區包含一卷積層、一池化層以及一全連接層中的至少一 者。
  15. 一種非暫態電腦可讀取媒體,關聯於至少一指令以界定一機器學習方法,其中該機器學習方法包含:輸入一原始資料至一神經網路,其中該神經網路至少包含一激勵函數,該激勵函數用以轉換該原始資料為非可逆的一元資料,其中該激勵函數為階層式非線性函數,該激勵函數依據一分割數量將該激勵函數的一定義域分割為複數區間,該些區間於該激勵函數的一值域中分別對應一固定數值,且該分割數量介於一第一數值與一第二數值間。
  16. 如請求項15所述之非暫態電腦可讀取媒體,其中該機器學習方法更包含:傳輸由該神經網路的一第一分區中的該激勵函數轉換的該元資料至一伺服器;以及該伺服器接收該元資料,並將該元資料輸入至該神經網路中接續於該第一分區的一第二分區以產生對應該原始資料的一學習結果。
TW107134519A 2017-10-02 2018-09-28 機器學習系統、機器學習方法及其非暫態電腦可讀媒體 TWI742312B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762566534P 2017-10-02 2017-10-02
US62/566,534 2017-10-02

Publications (2)

Publication Number Publication Date
TW201915800A TW201915800A (zh) 2019-04-16
TWI742312B true TWI742312B (zh) 2021-10-11

Family

ID=65993412

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107134519A TWI742312B (zh) 2017-10-02 2018-09-28 機器學習系統、機器學習方法及其非暫態電腦可讀媒體

Country Status (3)

Country Link
US (1) US20190108442A1 (zh)
CN (1) CN109615083B (zh)
TW (1) TWI742312B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810536B2 (en) 2017-11-30 2020-10-20 DoorDash, Inc. System and method for dynamic pairing function optimization

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW460851B (en) * 1999-09-06 2001-10-21 Jang Jen Cheng A digital watermarking technique using neural networks
US7941846B2 (en) * 2002-11-12 2011-05-10 Somfy Sas Method of securing the learning mode of a home automation device
CN105447498A (zh) * 2014-09-22 2016-03-30 三星电子株式会社 配置有神经网络的客户端设备、系统和服务器系统
CN105868678A (zh) * 2015-01-19 2016-08-17 阿里巴巴集团控股有限公司 人脸识别模型的训练方法及装置
CN105934576A (zh) * 2014-01-17 2016-09-07 Fev有限责任公司 用于内燃机的基于模型的气缸充气检测
TW201636905A (zh) * 2015-01-22 2016-10-16 前進公司 神經網路及神經網路訓練的方法
US20160350648A1 (en) * 2014-11-07 2016-12-01 Microsoft Technology Licensing, Llc. Neural networks for encrypted data
CN106776540A (zh) * 2016-11-23 2017-05-31 清华大学 一种自由化文本生成方法
CN107013449A (zh) * 2017-04-18 2017-08-04 山东万腾电子科技有限公司 基于深度学习的声音信号识别压缩机故障的方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW460851B (en) * 1999-09-06 2001-10-21 Jang Jen Cheng A digital watermarking technique using neural networks
US7941846B2 (en) * 2002-11-12 2011-05-10 Somfy Sas Method of securing the learning mode of a home automation device
CN105934576A (zh) * 2014-01-17 2016-09-07 Fev有限责任公司 用于内燃机的基于模型的气缸充气检测
CN105447498A (zh) * 2014-09-22 2016-03-30 三星电子株式会社 配置有神经网络的客户端设备、系统和服务器系统
US20160350648A1 (en) * 2014-11-07 2016-12-01 Microsoft Technology Licensing, Llc. Neural networks for encrypted data
CN105868678A (zh) * 2015-01-19 2016-08-17 阿里巴巴集团控股有限公司 人脸识别模型的训练方法及装置
TW201636905A (zh) * 2015-01-22 2016-10-16 前進公司 神經網路及神經網路訓練的方法
CN106776540A (zh) * 2016-11-23 2017-05-31 清华大学 一种自由化文本生成方法
CN107013449A (zh) * 2017-04-18 2017-08-04 山东万腾电子科技有限公司 基于深度学习的声音信号识别压缩机故障的方法及系统

Also Published As

Publication number Publication date
CN109615083A (zh) 2019-04-12
CN109615083B (zh) 2021-03-30
US20190108442A1 (en) 2019-04-11
TW201915800A (zh) 2019-04-16

Similar Documents

Publication Publication Date Title
Masud et al. Leveraging deep learning techniques for malaria parasite detection using mobile application
Kaissis et al. End-to-end privacy preserving deep learning on multi-institutional medical imaging
Toldinas et al. A novel approach for network intrusion detection using multistage deep learning image recognition
Lucas A translucent box: interpretable machine learning in ecology
CN111191791B (zh) 基于机器学习模型的图片分类方法、装置及设备
WO2021232832A1 (zh) 数据处理方法、联邦学习的训练方法及相关装置、设备
EP3779774A1 (en) Training method for image semantic segmentation model and server
CN110659723B (zh) 基于人工智能的数据处理方法、装置、介质及电子设备
CN112949786A (zh) 数据分类识别方法、装置、设备及可读存储介质
WO2021218471A1 (zh) 一种用于图像处理的神经网络以及相关设备
JP2023175804A (ja) 生物医学画像内の異常を検出するためのノックアウト・オートエンコーダ
Zhang et al. Image enhancement based on rough set and fractional order differentiator
Salathé et al. Focus group on artificial intelligence for health
CN113095475A (zh) 一种神经网络的训练方法、图像处理方法以及相关设备
CN113821668A (zh) 数据分类识别方法、装置、设备及可读存储介质
Ziegler et al. Defending against reconstruction attacks through differentially private federated learning for classification of heterogeneous chest X-ray data
GB2607440A (en) Method and apparatus for determining encryption mask, device and storage medium
WO2022044957A1 (en) Systems and methods for enhanced review comprehension using domain-specific knowledgebases
Rocha et al. Malaria parasites detection and identification using object detectors based on deep neural networks: a wide comparative analysis
TWI742312B (zh) 機器學習系統、機器學習方法及其非暫態電腦可讀媒體
Gong et al. Recover user’s private training image data by gradient in federated learning
Mahmmod et al. 3D object recognition using fast overlapped block processing technique
Jiang et al. Construction of pancreatic cancer classifier based on SVM optimized by improved FOA
Brown et al. Statistical models for infectious diseases: a useful tool for practical decision-making
Shi et al. J-Net: asymmetric encoder-decoder for medical semantic segmentation