国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      Rnn代碼測試方法及裝置的制造方法_2

      文檔序號:9432467閱讀:來源:國知局
      考結果矩陣中和初始結果矩陣中對應于初始矩陣中被改變的元素值的位置上的元素值是否均發(fā)生變化;若每次的判斷結果均為是,判定代碼段的邏輯正確。
      [0040]由于RNN算法輸出的結果是概率值,無法采用現(xiàn)有測試方法進行測試。針對該問題,本實施例提供一種RNN代碼測試方法,可由RNN代碼測試裝置來完成,用以實現(xiàn)對RNN代碼的測試,填補現(xiàn)有技術在RNN代碼測試方面存在的空白。
      [0041 ] 圖2是傳統(tǒng)的前饋神經網(wǎng)絡(feedforward neural network,F(xiàn)FNN)的結構示意圖。圖3是本發(fā)明一實施例提供的一種簡單的RNN的結構示意圖。結合圖2和圖3可知,該RNN包括輸入層,上下文層,隱藏層以及輸出層。其中,RNN與FFNN最為不同的地方在于:RNN是一反饋網(wǎng)絡,在RNN中,其隱藏層的有兩部分輸入,一部分是輸入層提供輸入,即t時刻的信號矩陣,另一部分是由上下文層提供的輸入,即隱藏層在t-Ι時刻輸出的結果矩陣。相應的,RNN中包括三種權重矩陣,記為權重矩陣U,權重矩陣V和權重矩陣W。其中,權重矩陣U是指上下文層與隱藏層之間的權重矩陣;權重矩陣V是輸入層與隱藏層之間的權重矩陣;權重矩陣W是隱藏層與輸出層之間的權重矩陣。
      [0042]在實際應用中,對RNN的訓練過程,實際上就是確定權重矩陣U,V和W的過程。本實施例不關注RNN的訓練過程,假設權重矩陣U,V和W均已訓練完畢,即是已知的。則RNN
      的使用過程是指:給定一時間序列X (t) = Ix (I),X (2),......x(t)},要求通過RNN來預測其在t+Ι時刻的輸出。由此可見,作為用于實現(xiàn)RNN的RNN代碼,其需要預測該時間序列X(t)在t+Ι時刻的輸出,主要是實現(xiàn)RNN中的隱藏層和輸出層的功能。
      [0043]基于上述分析,可以對RNN代碼的運行過程進行中斷控制,以實現(xiàn)對RNN代碼實現(xiàn)的RNN中的隱藏層和輸出層分別進行測試,進而實現(xiàn)對RNN代碼的功能測試。因此,如何對RNN代碼實現(xiàn)的RNN中的隱藏層和輸出層進行測試成為測試的關鍵。
      [0044]于是,本發(fā)明發(fā)明人從不同于本領域的常規(guī)角度出發(fā),開始對RNN中的隱藏層和輸出層做進一步研究,發(fā)現(xiàn):隱藏層和輸出層具有以下特征,并基于對這些特征的提煉和綜合處理提出了本發(fā)明技術方案。為便于理解本發(fā)明技術方案,下面對發(fā)明人的分析研究過程以及發(fā)現(xiàn)的特征進行說明:
      [0045]對于隱藏層:在t = I 時,net〗(I) = Σ JVjiXi (I), Yj (I) = f (net j (I))。在 t = 2時,net j⑵=藝七而⑵+藝卜^⑴+Θ.j,其中0』為偏置,丫.^2) =f(netj(2))。以此類推,netj(t) = Σ JV jiXi (t) + Σ hu jhy s (t~l) + Θ s, y s (t) = f (net s (t)) 0
      [0046]在上述公式中,Yj (t)表示t時刻隱藏層第j個神經元的輸出;Xi (t)表示t時刻輸入層第i個神經元的輸入,t時刻輸入層所有神經元的輸入構成t時刻的信號矩陣(t-1)表示上下文層提供給隱藏層的輸入,即隱藏層在t-Ι時刻第j個神經元的輸出;V]1表示權重矩陣V中第j行第i列的元素,對應于隱藏層第j個神經元;ujh表示權重矩陣U中第j行第h列的元素,對應于隱藏層第j個神經元。
      [0047]發(fā)明人在研究過程中發(fā)現(xiàn):Vli只在計算y i(t)時用到,在計算y2(t)和y3(t)等其它時刻的值時并沒有使用。若改變V11中各元素的值(假設將V η修改為O),則應該只有Y1 (t)發(fā)生改變,而y2(t)和73(0不應發(fā)生變化。由此可見,通過改變輸入層與隱藏層之間的權重矩陣V中的元素值,判斷該隱藏層輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該隱藏層功能的代碼段的邏輯是否正確。
      [0048]另外,Ulh只在計算y: (t)時用到,在計算y2(t)和y;5(t)等其它時刻的值時并沒有使用。若改變Ulh中的一個元素的值(假設將U11修改為O),則應該只有y Jl)發(fā)生改變,而Y2(I)和73(1)不應發(fā)生變化。由此可見,通過改變作為該隱藏層的輸入的權重矩陣U中的元素值,判斷該隱藏層輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該隱藏層功能的代碼段的邏輯是否正確。
      [0049]再者,X1⑴雖然在計算各J3⑴時都會用到,但是若改變X1⑴的元素值(假設將&(0修改為O),則用到X1 (t)的各y](t)都會發(fā)生改變。由此可見,通過改變輸入層提供的t時刻的信號,判斷該隱藏層t時刻輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該隱藏層功能的代碼段的邏輯是否正確。
      [0050]再者,yi (t-Ι)雖然在計算各y](t)時都會用到,但是若改變yi (t-Ι)的元素值(假設將yi(t-l)修改為O),則用到y(tǒng)i (t-1)的各y](t)都會發(fā)生改變。由此可見,通過改變隱藏層在t-1時刻輸出的結果矩陣中的元素值,判斷該隱藏層t時刻輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該隱藏層功能的代碼段的邏輯是否正確。
      [0051]對于輸出層:在t = I 時,net^l) = Σ JWkjYj (I), zk(l) =g(netk(l))。在 t = 2時,netk(2) = Σ JWk jY j (2), zk (2) =g(netk(2))。以此類推,netk(t) = Σ JWk jY j (t), zk (t)=g(netk(t)) ο
      [0052]在上述公式中,zk(t)表示第t時刻輸出層第k個神經元的輸出;y.j(t)表示隱藏層提供的t時刻第j個神經元的輸出;wkj表示權重矩陣W中第k行第j列的元素,對應于輸出層第k個神經元;gO表示一函數(shù)。
      [0053]發(fā)明人在研究過程中發(fā)現(xiàn)=Wu只在計算z i(t)時用到,在計算Z2 (t)和Z3 (t)等其它時刻的值時并沒有使用。若改變Wlj中的一個元素的值(假設將w n修改為O),則應該只有21(0發(fā)生改變,而Z2 (t)和23(0不應發(fā)生變化。由此可見,通過改變隱藏層與輸出層之間的權重矩陣W中的元素值,判斷該輸出層輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該輸出層功能的代碼段的邏輯是否正確。
      [0054]另外,71 (t)雖然在計算各Zk⑴時都會用到,但是若改變yi(t)的元素值(假設將乂乂^修改為0),則用到y(tǒng)i(t)的各zk(t)都會發(fā)生改變。由此可見,通過改變隱藏層輸出的t時刻的結果矩陣中的元素值,判斷輸出層t時刻輸出的結果矩陣中相應位置的元素值是否均發(fā)生變化,可以達到判斷實現(xiàn)該隱藏層功能的代碼段的邏輯是否正確。
      [0055]值得說明的是,結合RNN各層包含的神經元個數(shù)以及輸入的時間序列的維度,可以很容易確定矩陣元素之間的對應關系,也就是說,一旦信號矩陣、權重矩陣中某個或某幾個元素值發(fā)生變化,很容易判斷對應于隱藏層輸出的結果矩陣中的哪個或哪幾個元素。
      [0056]結合上述,本發(fā)明提出對RNN代碼進行測試的方法,具體如下:
      [0057]控制RNN代碼實現(xiàn)的RNN中的隱藏層和輸出層分別作為待測試層,則通過對待測試層進行測試就可以實現(xiàn)對RNN代碼的測試??蛇x的,可以按照RNN中隱藏層和輸出層之
      當前第2頁1 2 3 4 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1