李秉坤 陳志祥
(紹興文理學(xué)院 數(shù)理信息學(xué)院, 浙江 紹興 312000)
人工神經(jīng)網(wǎng)絡(luò)是根據(jù)人腦建立的數(shù)學(xué)模型,在計(jì)算科學(xué)、數(shù)學(xué)、工程等領(lǐng)域有廣泛的應(yīng)用[1-2].而在一些應(yīng)用中,如模式識(shí)別、回歸分析、智能控制等方面,主要是將人工神經(jīng)網(wǎng)絡(luò)模型用來(lái)逼近多元函數(shù).人工神經(jīng)網(wǎng)絡(luò)作為一種萬(wàn)能逼近器,受到人們的廣泛關(guān)注,其中最重要和最簡(jiǎn)單的一種模型就是單隱層前向神經(jīng)網(wǎng)絡(luò),其數(shù)學(xué)表達(dá)式為
其中aj是連接隱層與輸出層之間的權(quán)值(也稱外權(quán)),x∈Rd是網(wǎng)絡(luò)的輸入,ωj∈Rd是連接輸入層與隱層之間的權(quán)值(也稱內(nèi)權(quán)),bj是閾值或偏置, 而φ是定義在R上的激活函數(shù),n是隱層神經(jīng)元的個(gè)數(shù). 第二種是近年來(lái)引起人們極大興趣的, 在計(jì)算機(jī)視覺、自然語(yǔ)言處理及模式識(shí)別等領(lǐng)域取得突破性成功應(yīng)用的深度網(wǎng)絡(luò)或多隱層神經(jīng)網(wǎng)絡(luò). 由于深度網(wǎng)絡(luò)有多個(gè)隱層, 從而其網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)就較單隱層而言更復(fù)雜, 且網(wǎng)絡(luò)隱層數(shù)越多, 其結(jié)構(gòu)越復(fù)雜. 由此引起其表示能力的增強(qiáng).
無(wú)論是第一種還是第二種網(wǎng)絡(luò)模型, 事實(shí)上第一種是第二種的特例, 總是涉及這樣三個(gè)問(wèn)題:稠密性、復(fù)雜性和算法. 已知, 稠密性是理論基礎(chǔ), 是對(duì)一個(gè)網(wǎng)絡(luò)模型進(jìn)行復(fù)雜性和算法研究的前提和支撐. 對(duì)于單隱層模型, 所謂稠密性, 就是指對(duì)定義在Rd中緊集Ω上一個(gè)函數(shù)空間中的任一函數(shù)f(x)以及任意給定的精度ε>0,總存在一個(gè)網(wǎng)絡(luò)使
這里aj,ωj,bj(j=1,2,…,n)均是具體的數(shù)或者向量. 我們知道決定一個(gè)網(wǎng)絡(luò)的重要因素是激活函數(shù)φ,此模型對(duì)定義在Rd中緊集上的勒貝格Lebesgue可積函數(shù)類具有稠密性, 所以對(duì)于深度網(wǎng)絡(luò)模型, 當(dāng)激活函數(shù)是非線性函數(shù)時(shí), 自然具有稠密性. 比較常見的激活函數(shù)有Sigmoidal函數(shù)、tanh函數(shù)、ReLU函數(shù)等. 有關(guān)稠密性結(jié)果可參看文獻(xiàn)[3-10]. 一個(gè)網(wǎng)絡(luò)的復(fù)雜性就是指對(duì)給定的精度, 網(wǎng)絡(luò)中所含神經(jīng)元的個(gè)數(shù)以及所涉及的權(quán)值與閾值的數(shù)量.因此,復(fù)雜性的研究為網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)與算法設(shè)計(jì)提供理論基礎(chǔ).而在網(wǎng)絡(luò)復(fù)雜性問(wèn)題的研究中, 有一個(gè)重要的方法, 就是構(gòu)造出具體的網(wǎng)絡(luò)結(jié)構(gòu)或網(wǎng)絡(luò)算子,并對(duì)具體的函數(shù)空間通過(guò)一定的度量給出其逼近上界估計(jì),這樣也就得到了精度、隱層神經(jīng)元(包括權(quán)值與閾值數(shù))之間的關(guān)系,從而對(duì)復(fù)雜性問(wèn)題給出了一個(gè)量化的估計(jì). 不論是淺層網(wǎng)絡(luò)還是深度學(xué)習(xí)中的深度網(wǎng)絡(luò), 這種方法都是復(fù)雜性問(wèn)題研究中的重要方法(可見文獻(xiàn)[11-27]). 鑒于ReLU函數(shù),其定義為
σ(x)=max{0,x}.
是目前深度網(wǎng)絡(luò)中常用的激活函數(shù),而該網(wǎng)絡(luò)的研究更多地偏重于模式分類問(wèn)題.所以,本文一方面將利用ReLU函數(shù)的特點(diǎn)構(gòu)造插值網(wǎng)絡(luò)和擬插值網(wǎng)絡(luò),并討論其逼近誤差估計(jì); 另一方面, 為了提高逼近函數(shù)的光滑性, 將研究修正的冪函數(shù)的網(wǎng)絡(luò)構(gòu)造與逼近問(wèn)題. 本文還將通過(guò)數(shù)值實(shí)驗(yàn)進(jìn)行說(shuō)明.
插值法是數(shù)值分析和函數(shù)逼近的重要方法之一.下面首先討論單隱層插值ReLU網(wǎng)絡(luò)逼近的構(gòu)造與逼近.這里不妨設(shè)目標(biāo)函數(shù)是定義在區(qū)間[0,1]上連續(xù)函數(shù),且設(shè)插值節(jié)點(diǎn)為x0=0 Nn(f,x)=a-1σ(x+1)+a0σ(x-x0)+a1σ(x-x1)+…+an-1σ(x-xn-1). 而a-1,a0,a1,…,an-1可這樣來(lái)確定: 由Nn(f,0)=f(0), 即a-1σ(1)=f(0), 則 a-1=f(0). Nn(f,x1)=f(x1), 即a-1σ(x1+1)+a0σ(x1)= ? Nn(f,xn)=f(xn), 即a-1σ(xn+1)+a0σ(xn)+…+an-1σ(xn-xn-1)=f(xn). 或a-1(xn+1)+a0xn+…+an-1(xn-xn-1)=f(xn), 則有: 這樣,網(wǎng)絡(luò)Nn(f,x)就在節(jié)點(diǎn)x0,x1,…,xn上插值f.如果我們令: δ=max{x1-x0,x2-x1,…,xn-xn-1}. 則有|Nn(f,x)-f(x)|≤ω(f,δ),x∈[0,1],這里ω(f,t)是連續(xù)模,即: 特別地, 當(dāng)f在[0,1]上滿足Lip條件, 即存 在M>0,使得對(duì)任意的x′,x″∈[0,1]有|f(x′)-f(x″)|≤M|x′-x″|α,(0<α≤1). 注1:若f是定義在一般的區(qū)間[a,b]上,只要通過(guò)線性變換就可以定義在[0,1]區(qū)間上. 接下來(lái),通過(guò)數(shù)值實(shí)驗(yàn)給以說(shuō)明. 本實(shí)驗(yàn)是在Windows環(huán)境下MATLAB R2016a中進(jìn)行的.取f1(x)=sin(x), 其圖像與f1(x)=sin(x)在 x∈[0,1]上平均取5個(gè)插值節(jié)點(diǎn)作線性插值圖像, 如圖1所示.f1(x)=sin(x)在x∈[0,1]上平均取5個(gè)插值節(jié)點(diǎn)作線性插值與f1(x)=sin(x)的誤差絕對(duì)值如圖2所示,誤差絕對(duì)值的最大值為0.003 9. 圖1 線性插值 圖2 誤差絕對(duì)值 f2(x)=sin(2πx)圖像和f2(x)=sin(2πx)在x∈[0,1]上平均取10個(gè)插值節(jié)點(diǎn)作線性插值圖像如圖3所示.f2(x)=sin(2πx)在 圖3 線性插值 x∈[0,1]上平均取10個(gè)插值節(jié)點(diǎn)作線性插值與f2(x)=sin(2πx)的誤差絕對(duì)值如圖4所示,誤差絕對(duì)值的最大值為0.048 9. 圖4 誤差絕對(duì)值 對(duì)于前面的ReLu激活函數(shù)σ(x),令: σ0(x)=σ(x+1)-2σ(x)+σ(x-1),x∈(-∞,+∞). 事實(shí)上,容易得到: 從而有: 如此便得到結(jié)果.于是有: 從而有: 圖5 f1(x)與的圖像 圖6 f2(x)與的圖像 圖 7 f1(x)=sin(x)最大絕對(duì)誤差曲線 圖8 f2(x)=sin(2πx)最大絕對(duì)誤差曲線 x∈[0,1]誤差絕對(duì)值的最大值比較結(jié)果如表1所示. 表1 比較結(jié)果 我們知道,ReLu網(wǎng)絡(luò)的輸出是一個(gè)連續(xù)函數(shù),但是一條折線,從而在某些點(diǎn)不可導(dǎo).與ReLu相關(guān)的所謂修正的r次冪函數(shù)單元(RePU)σr(x), r≥2為整數(shù), 其定義為σr(x)=(max{0,x})r.在回歸問(wèn)題中,根據(jù)神經(jīng)網(wǎng)絡(luò)中的萬(wàn)有逼近定理,對(duì)于非多項(xiàng)式作為激活函數(shù)的單隱層前向神經(jīng)網(wǎng)絡(luò)必具有萬(wàn)有逼近性,即對(duì)于任意的精度,總存在某網(wǎng)絡(luò)結(jié)構(gòu)使其對(duì)定義在閉區(qū)間上連續(xù)目標(biāo)函數(shù)逼近給定的精度. 對(duì)給定的r≥2,若r是奇數(shù),則σr(x)-σr(-x)=xr,x∈(-∞,+∞).而當(dāng)r為偶數(shù)時(shí),則有σr(x)+σr(-x)=xr,x∈(-∞,+∞).由于(x+1)r-xr=Pr-1(x)是一個(gè)r-1次多項(xiàng)式,而Pr-1(x+1)-Pr-1(x)是一個(gè)r-2次多項(xiàng)式,如此可得到任一r次多項(xiàng)式可通過(guò) ar(x+br)r+ar-1(x+br-1)r+…+a1(x+b1)r+a0(x+b0)r來(lái)表示.也就是說(shuō), 當(dāng)以xr為激活函數(shù)時(shí),含有r+1個(gè)隱層神經(jīng)元的單隱層前向神經(jīng)網(wǎng)絡(luò)可得到任意的次數(shù)不超過(guò)r的多項(xiàng)式,自然形成一個(gè)對(duì)目標(biāo)函數(shù)用次數(shù)不超過(guò)r的多項(xiàng)式近似.也就是說(shuō),當(dāng)用σr作為激活函數(shù)時(shí),其隱層單元是2r+2個(gè). 而且由于xr是通過(guò)σr(x)與σr(-x)表示,從而網(wǎng)絡(luò)結(jié)構(gòu)中的參數(shù)只有一半在變化. 由此我們可以看出, 當(dāng)用一個(gè)r次冪函數(shù)或r次多項(xiàng)式作為單隱層前向神經(jīng)網(wǎng)絡(luò)的激活函數(shù)時(shí), 隱層神經(jīng)元不管怎么多, 其輸出至多為一個(gè)r次多項(xiàng)式. 不過(guò), 對(duì)光滑性比較好的目標(biāo)函數(shù), 自然可以考慮用多項(xiàng)式作為逼近工具, 而且, 隱層神經(jīng)元數(shù)只需比激活函數(shù)的次數(shù)多一. 但是, 如果再利用σr(x)作為隱層激活函數(shù),也就是使其輸出是一個(gè)r次樣條函數(shù), 這時(shí)網(wǎng)絡(luò)的逼近能力就增強(qiáng)了.所以, 這也充分表明網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)的重要性. 不妨將所考慮的目標(biāo)函數(shù)仍定義在[0,1]上,x1 Sr(x1,x2,…,xk)={s∈Cr-1[0,1]:s|[xi,xi+1]∈Pr,i=0,1,…,k}, 這里x0=0,xk+1=1,Cr-1[0,1]表示由定義在[0,1]上的r-1階連續(xù)函數(shù)所構(gòu)成的線性空間. 1,x,x2,…,xr,(x-x1)r,…,(x-xk)r形成Sr(x1,x2,…,xk)的一個(gè)基, 而且有如下結(jié)果(可見[28]): 對(duì)任意給定的j∈{0,1,…,r},存在僅依賴于j的常數(shù)kj,使得對(duì)任意的f∈Cj[0,1]及節(jié)點(diǎn)集{x1,x2,…,xk}成立: 這里δ=max{|xi+1-xi|:i=0,1,…,k}.這說(shuō)明對(duì)給定的f∈Cj[0,1]存在s∈Sr(x1,x2,…,xk)使得|f(x)-S(x)|≤kδjω(f(j),δ),x∈[0,1].特別地,若x0,x1,…,xk+1構(gòu)成[0,1]區(qū)間的k+1等分點(diǎn),則有: 顯然s(x)可以看作以激活函數(shù)σr(x)構(gòu)成的單隱層前向網(wǎng)絡(luò)的輸出.而且, 網(wǎng)絡(luò)結(jié)構(gòu)的隱層含有2r+k個(gè)神經(jīng)元. 最后,還是選取如下兩個(gè)目標(biāo)函數(shù): f1(x)=sin(x),x∈[0,1],f2(x)=sin(2πx),x∈[0,1]. 進(jìn)行數(shù)值實(shí)驗(yàn). f1(x)=sin(x)圖像與f1(x)=sin(x)在x∈[0,1]上平均取10個(gè)插值節(jié)點(diǎn)作三次樣條插值如圖9所示.f1(x)=sin(x)在x∈[0,1]上平均取10個(gè)插值節(jié)點(diǎn)作三次樣條插值與f1(x)=sin(x)的誤差絕對(duì)值如圖10所示,誤差絕對(duì)值的最大值為2.1927e-06. 圖9 三次樣條插值 圖10 誤差絕對(duì)值 f2(x)=sin(2πx)圖像與f2(x)=sin(2πx)在x∈[0,1]上平均取10個(gè)點(diǎn)作三次樣條插值圖像如圖11所示.f2(x)=sin(2πx)在x∈[0,1]上平均取200個(gè)點(diǎn)作三次樣條插值與f2(x)=sin(2πx)的誤差絕對(duì)值如圖12所示,誤差絕對(duì)值的最大值為2.5370e-09. 圖11 三次樣條插值 圖12 誤差絕對(duì)值2 擬插值(近似插值)ReLU網(wǎng)絡(luò)的構(gòu)造與逼近
3 RePU網(wǎng)絡(luò)的構(gòu)造與逼近