TWI634489B - 多層人造神經網路 - Google Patents
多層人造神經網路 Download PDFInfo
- Publication number
- TWI634489B TWI634489B TW105131828A TW105131828A TWI634489B TW I634489 B TWI634489 B TW I634489B TW 105131828 A TW105131828 A TW 105131828A TW 105131828 A TW105131828 A TW 105131828A TW I634489 B TWI634489 B TW I634489B
- Authority
- TW
- Taiwan
- Prior art keywords
- layer
- computing
- artificial neural
- neural network
- circuit
- Prior art date
Links
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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
- Advance Control (AREA)
Abstract
本發明提供一種多層人造神經網路,其中包含至少一高速通訊介面與N個運算層。N為大於1之整數。該N個運算層透過該至少一高速通訊介面串聯。每一個運算層各自包含一運算電路與一本地記憶體。該本地記憶體係用以儲存供該運算電路使用之輸入資料以及可學習參數。第i
個運算層中之該運算電路將其運算結果透過該至少一高速通訊介面提供至第(i
+1)個運算層中之該本地記憶體,供該第(i
+1)個運算層中之該運算電路做為輸入資料。i
為範圍在1到(N-1)間之一整數指標。
Description
本發明與人造神經網路(artificial neural network)相關,並且尤其與可執行深度學習的多層人造神經網路相關。
以人造神經網路進行機器學習的概念存在已久,但先前受限於處理器運算能力,相關研究始終無法順利推進。近十年來,隨著處理器運算速度、記憶體存取速度以及機器學習演算法等各方面技術的長足進步,能產出複雜判斷結果的人造神經網路逐漸成為可能,因而在自動駕駛、影像辨識、自然語言辨識、資料探勘等領域中重新受到高度重視。
現行的人造神經網路通常被設計為具有多層(multi-layer)結構。除了最前端的輸入層與最後端的輸出層,其他串接在輸入層與輸出層之間的稱為隱藏層(hidden layer)。輸入層係用以接收外部資料,不進行運算。隱藏層與輸出層則是各自接收前一層的輸出信號做為當層的輸入信號,且各自包含多個進行運算工作的神經元。若以神經元連接方式區分,每一個隱藏層與輸出層可以各自是一卷積層(convolutional layer)或一全連接層(fully-connected layer)。目前有多種人造神經網路架構,對於卷積層與全連接層的配置組合各有不同的規劃。以Alex Krizhevsky等學者於2012年提出的AlexNet架構為例,其中總共包含六十五萬個神經元,構成依序串接的五個卷積層以及三個全連接層。在需要進行較複雜的判斷時,人造神經網路可能包含高達二十九個運算層。
實務上,人造神經網路大多是利用一超級電腦或一單晶片系統來實現。在使用單晶片系統的情況下,目前的做法是令單晶片系統中的同一套電路在不同時間點分別扮演多層人造神經網路中不同的運算層。圖一呈現一個單晶片系統的功能方塊圖做為說明範例。時脈計數器11負責產生供控制器12與處理器13參考的時脈信號。在第一段工作週期內,處理器13首先扮演第一運算層的角色。控制器12會令記憶體14輸出應由第一運算層負責處理的輸入資料以及第一運算層中各神經元的可學習參數(learnable parameter),存入本地暫存器13A,供處理器13使用。在進行對應於第一運算層的運算期間,處理器13的運算結果會被暫存於本地暫存器13A。待處理器13完成所有對應於第一運算層的運算後,暫存於本地暫存器13A的運算結果會被轉存至記憶體14。隨後,在第二段工作週期內,處理器13改為扮演第二運算層的角色。因此,控制器12會令記憶體14改為輸出應由第二運算層負責處理的輸入資料以及第二運算層中各神經元的可學習參數,存入本地暫存器13A,供處理器13使用。依此類推,處理器13可逐步完成一多層人造神經網路中各個運算層的運算工作。
對於多層人造神經網路來說,各個運算層的輸入資料、可學習參數與運算結果的數量都非常可觀。因此,上述做法的缺點之一是本地暫存器13A與記憶體14之間必須有大量的資料轉移。此類大規模的記憶體存取相當耗時,人造神經網路的整體效能會因此受限。此外,由這個範例可看出,必須等到本地暫存器13A中的運算結果被轉移至記憶體14,且新的輸入資料與可學習參數自記憶體14被載入本地暫存器13A後,處理器13才能開始進行下一輪的運算工作。處理器13因此有許多時間花費在等待資料轉移,造成運算資源未被充分利用的問題。
為解決上述問題,本發明為多層人造神經網路提出一種新的硬體架構。
根據本發明之一具體實施例為一種多層人造神經網路,其中包含至少一高速通訊介面與N個運算層。N為大於1之整數。該N個運算層透過該至少一高速通訊介面串聯。每一個運算層各自包含一運算電路與一本地記憶體。該本地記憶體係用以儲存供該運算電路使用之輸入資料以及可學習參數。第i
個運算層中之該運算電路將其運算結果透過該至少一高速通訊介面提供至第(i
+1)個運算層中之該本地記憶體,供該第(i
+1)個運算層中之該運算電路做為輸入資料。i
為範圍在1到(N-1)間之一整數指標。
關於本發明的優點與精神可以藉由以下發明詳述及所附圖式得到進一步的瞭解。
請參閱圖二。根據本發明之一具體實施例為一種多層人造神經網路,其中包含(N-1)個高速通訊介面H1
至H(N-1)
與N個串聯的運算層L1
至LN
(N為大於1之整數)。以包含三個隱藏層的人造神經網路為例,電路設計者可令N等於四,並且令運算層L1
至L4
分別對應於其中的三個隱藏層與一個輸出層。實務上,N的大小可依多層人造神經網路200的應用場合來決定,不限於特定數值。
如圖二所示,兩個相鄰的運算層是透過高速通訊介面H串聯。舉例而言,高速通訊介面H可為但不限於一高速串列器-解串列器(high speed serializer-deserializer)或是一射頻介面(radio frequency interface, RFI)。須說明的是,高速通訊介面H的傳輸速率愈高,愈有助於縮短在兩運算層間傳遞資料的時間,但本發明的範疇不受限於高速通訊介面H的傳輸速率。
多層人造神經網路200中的運算層L1
至LN
各自具有獨立的硬體。更明確地說,每一個運算層各自包含一運算電路與一本地記憶體。圖三以其中的第i
個運算層L i
與第(i
+1)個運算層L(i
+1)
為例,呈現兩個相鄰運算層間的詳細連接方式(i
為範圍在1到(N-1)間的整數指標)。如圖三所示,第i
運算電路的輸入端係連接於第i
本地記憶體,而第i
運算電路的輸出端係透過高速通訊介面H i
連接至第(i
+1)本地記憶體。
第i
本地記憶體中儲存有供第i
運算電路使用的輸入資料以及可學習參數。若運算層L i
為多層人造神經網路200中最前端的隱藏層,第i
本地記憶體中儲存的輸入資料便是來自多層人造神經網路200的輸入層(未繪示)。若運算層L i
並非多層人造神經網路200中最前端的隱藏層,第i
本地記憶體中儲存的輸入資料便是來自第(i
-1)個運算層,也就是第(i
-1)運算電路產生的運算結果。另一方面,在訓練多層人造神經網路200的過程中,第i
本地記憶體中儲存的可學習參數可能會被持續地修改,直到訓練結果與理想結果的差異能收斂至低於一預設門檻值。隨後,於一般的運算程序中,第i
本地記憶體中儲存的可學習參數便是經訓練完成後固定的數值。
實務上,運算層L1
至LN
可利用串接多個完全相同的單位晶片來實現。使用相同之單位晶片的好處在於,多層人造神經網路200所包含的運算層數量有相當大的調整彈性。只要串接更多數量的單位晶片,多層人造神經網路200所包含的運算層之數量便可以無限延伸。須說明的是,該等單位晶片在實體上可被設置為處於同一積體電路晶片中、處於不同積體電路晶片但同一封裝中,或是處於不同封裝中。換句話說,相鄰的兩個運算層間可以是透過同一晶片內、跨越晶片、跨越封裝甚至是跨越電路板的高速通訊介面互相連接。
於一實施例中,運算層L1
至LN
係根據一管線式(pipeline)架構同時運作,以提高多層人造神經網路200的整體資料處理量。舉例而言,假設有多組資料依序通過運算層L1
至LN
;當運算層L1
在對第n組資料施以運算時,運算層L2
可對第(n-1)組資料施以運算,……,運算層LN
可對第1組資料施以運算。
配合管線式架構,各個運算層完成運算工作所需要的時間可被設計為大致相同。以下段落以兩個分別包含3*3個神經元的卷積層為例,介紹一種可配合管線式架構的資料處理方法。在這個範例中,運算層L i
、L(i
+1)
的取樣窗(window)大小皆為2*2,且跨幅(stride)皆為1。運算層L i
的輸入資料是一個3*3的資料矩陣,運算層L(i
+1)
的輸入資料則是一個2*2的資料矩陣。為了達到令各個運算層工作時間大致相同的效果,運算層L(i
+1)
的輸入資料被填入五筆假資料(例如數值0),使得運算層L(i
+1)
的輸入資料矩陣大小變為3*3,亦即與運算層L i
的輸入資料矩陣大小相同。第i
本地記憶體與第(i
+1)本地記憶體中儲存的輸入資料矩陣被圖像化呈現於圖四(A),其中的真實資料以實心圓點表示,假資料則以具有實線輪廓的空心圓點表示。
首先,如圖四(A)所示,在工作週期T1中,運算層L i
、L(i
+1)
的取樣窗各自涵蓋第i
本地記憶體與第(i
+1)本地記憶體中座標為(1, 1)、(2, 1)、(1, 2)、(2, 2)的四個位置。更明確地說,在工作週期T1中,第i
運算電路係針對儲存在第i
本地記憶體中位置座標為(1, 1)、(2, 1)、(1, 2)、(2, 2)的四筆資料進行運算,而第(i
+1)運算電路係針對儲存在第(i
+1)本地記憶體中位置座標為(1, 1)、(2, 1)、(1, 2)、(2, 2)的四筆資料進行運算。因處理的資料量相同,第i
運算電路和第(i
+1)運算電路會大致在同一時間完成運算。隨後,第i
運算電路將其運算結果R i _T1
存入第(i
+1)本地記憶體中座標為(1, 1)的位置,並以具有虛線輪廓的空心圓點表示。須說明的是,基於卷積層的運算特性,第(i
+1)本地記憶體中座標位置(1, 1)原本存放的資料之後不再被需要,以運算結果R i _T1
取代原本存放於該位置的資料不會有任何問題。相似地,第(i
+1)運算電路會其運算結果R(i
+1)_T1
存入第(i
+2)本地記憶體(未繪示)中座標為(1, 1)的位置,取代原本存放於該位置的資料。
接著,如圖四(B)所示,在工作週期T2中,運算層L i
、L(i
+1)
的取樣窗各自涵蓋第i
本地記憶體與第(i
+1)本地記憶體中的座標為(2, 1)、(2, 1)、(2, 2)、(3, 2)的四個位置。第i
運算電路會將本次的運算結果R i _T2
存入第(i
+1)本地記憶體中座標為(2, 1)的位置,取代原本存放於該位置的資料。相似地,第(i
+1)運算電路可其運算結果R(i
+1)_T2
存入第(i
+2)本地記憶體中座標為(2, 1)的位置。值得注意的是,運算結果R(i
+1)_T2
是根據一部份真實資料與一部份假資料所產生,因此是無效的運算結果,其處理方式容後詳述。
接著,如圖四(C)所示,在工作週期T3中,運算層L i
、L(i
+1)
的取樣窗各自涵蓋第i
本地記憶體與第(i
+1)本地記憶體中座標為(1, 2)、(2, 2)、(1, 3)、(2, 3)的四個位置。第i
運算電路會將本次的運算結果R i _T3
存入第(i
+1)本地記憶體中座標為(1, 2)的位置,取代原本存放於該位置的資料。第(i
+1)運算電路可其運算結果R(i
+1)_T3
存入第(i
+2)本地記憶體中座標為(1, 2)的位置。相似地,運算結果R(i
+1)_T3
是無效的運算結果。
接著,如圖四(D)所示,在工作週期T4中,運算層L i
、L(i
+1)
的取樣窗各自涵蓋第i
本地記憶體與第(i
+1)本地記憶體中座標為(2, 2)、(3, 2)、(2, 3)、(3, 3)的四個位置。第i
運算電路會將本次的運算結果R i _T4
存入第(i
+1)本地記憶體中座標為(2, 2)的位置,取代原本存放於該位置的資料。第(i
+1)運算電路可其運算結果R(i
+1)_T4
存入第(i
+2)本地記憶體中座標為(2, 2)的位置。相似地,運算結果R(i
+1)_T4
是無效的運算結果。
如圖五所示,多層人造神經網路200可進一步包含一控制器510,耦接至第i
運算電路與第(i
+1)運算電路。控制器510係用以作廢根據假資料產生的運算結果,並保留完全根據真實資料產生的運算結果。以圖四呈現的情況為例,控制器510會請求第(i
+1)運算電路作廢運算結果R(i
+1)_T2
、R(i
+1)_T3
、R(i
+1)_T4
,僅保留運算結果R(i
+1)_T1
。實務上,控制器510可請求第(i
+1)運算電路不實際進行產生運算結果R(i
+1)_T2
、R(i
+1)_T3
、R(i
+1)_T4
的運算,或是請求第(i
+1)運算電路不將運算結果R(i
+1)_T2
、R(i
+1)_T3
、R(i
+1)_T4
繼續向後傳遞至第(i
+2)本地記憶體。由於各運算層的輸入資料矩陣之實際尺寸皆為預先所知,控制器510可明確掌握應作廢哪些運算結果。實務上,控制器510可利用多種固定式或可程式化的邏輯電路實現,例如可程式化邏輯閘陣列、針對特定應用的積體電路、微記憶體、微處理器、數位信號處理器。此外,控制器510亦可被設計為透過執行一記憶體(未繪示)中所儲存之處理器指令來完成任務。
在圖四(A)至圖四(D)呈現的範例中,第i
運算電路在工作週期T1至T4依序產生四筆運算結果R i _T1
、R i _T2
、R i _T3
、R i _T4
。至工作週期T4結束時,運算層L i
需要針對圖四(A)中儲存於第i
本地記憶體內的輸入資料矩陣所進行的運算皆已完成。由圖四(E)可看出,在工作週期T5開始時,運算層L i
稍早產生的運算結果R i _T1
、R i _T2
、R i _T3
、R i _T4
,也就是運算層L(i
+1)
接下來所需要的新的輸入資料矩陣,皆已被儲存在第(i
+1)本地記憶體中座標為(1, 1)、(2, 1)、(1, 2)、(2, 2)的四個位置。另一方面,對應於運算層L(i
+1)
的可學習參數原本即已存放在第(i
+1)本地記憶體中。因此,第(i
+1)運算電路可以直接開始進行運算工作,幾乎或完全不需要等待資料轉移,其運算資源因此可被充分利用。
須說明的是,上述範例呈現的概念可以被應用在各種尺寸的輸入資料矩陣、各種尺寸的取樣窗,以及各種尺寸的取樣跨幅。於實際應用中,運算層L i
、L(i
+1)
實際上可能各自包含數萬個人造神經元。由於高速串列器-解串列器等高速通訊介面的傳輸速率可以達到每秒十吉赫位元以上,即使第i
運算電路同時產生數百或數千筆運算結果,運用圖四呈現之概念即時完成資料搬移仍是實際可行的。
須說明的是,前述「將運算結果R i _T1
存入第(i
+1)本地記憶體」的動作,也可改放在工作週期T2中進行,甚至與「第i
運算電路進行運算以產生運算結果R i _T2
」平行進行。更廣泛地說,假設第i
運算電路依序產生Q筆運算結果(Q為大於1之整數),在第i
運算電路將已產生的第(q
-1)筆運算結果存入第(i
+1)本地記憶體時,可同時開始進行運算、產生第q
筆運算結果(q
為範圍在2到Q間之一整數指標)。藉此,整個運算流程需要的時間可被進一步縮短。
如先前所述,運算層L1
至LN
可利用多個完全相同的單位晶片來實現。除了串聯之外,該等單位晶片也可以被並聯使用。假設每個單位晶片能接收的輸入資料最高數量為K、能產生的運算結果最高數量為J。如圖六所示,資料分離電路610將收到的2*K筆資料分為兩組K筆資料,並分別提供給單位晶片621、622進行處理。單位晶片621、622各自產生的J筆運算結果被向後傳遞,由資料結合電路630進行合併,並輸出總數量為2*J的運算結果。依此類推,令一個運算層包含M個單位晶片(M為一正整數),便可以平行產生數量為M倍的運算結果。
上述並聯單位晶片的概念可以用於卷積層,也可用於全連接層。圖七呈現一種利用並聯之P個單位晶片(P為一正整數)做為P個神經元以組成一全連接層的範例。單位晶片710_1至710_P的輸入端都是接收相同的K筆輸入資料,並且各自對該K筆輸入資料施以加權運算、加總運算以及激發函數(activation function)運算。每個單位晶片各自產生一個運算結果,P個單位晶片總共產生P個運算結果Out_1至Out_P。
實務上,多層人造神經網路200中的運算層L1
至LN
不一定要全部用單位晶片實現。以包含五個卷積層及三個全連接層的AlexNet為例,電路設計者可用前述單位晶片實現其中的五個卷積層,搭配以其他非單位晶片實現的三個全連接層。須說明的是,除了先前介紹的運算層L1
至LN
與控制器510外,根據本發明之人造神經網路可包含其他電路,例如但不限於連接在某些卷積層後的池化層(pooling layer)及負責產生時脈信號的振盪器。本發明所屬技術領域中具有通常知識者可理解,本發明的範疇不限於以某種特定組態或架構來實現。根據本發明之人造神經網路可實現但不限於以下幾種此領域中常被使用的網路架構:由Yann LeCun提出的LeNet、由Alex Krizhevsky等人提出的AlexNet、由Matthew Zeiler等人提出的ZF Net、由Szegedy等人提出的GoogLeNet、由Karen Simonyan等人提出的VGGNet,以及由Kaiming He等人提出的ResNet。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
11‧‧‧時脈計數器
12‧‧‧控制器
13‧‧‧處理器
13A‧‧‧本地暫存器
14‧‧‧記憶體
200‧‧‧多層人造神經網路
L1至LN‧‧‧運算層
H1至H(N-1)‧‧‧高速通訊介面
T1至T5‧‧‧工作週期
R i _T1至 R i _T4‧‧‧運算結果
510‧‧‧控制器
610‧‧‧資料分離電路
621、622‧‧‧單位晶片
630‧‧‧資料結合電路
710_1至710_P‧‧‧單位晶片
圖一呈現一單晶片系統的功能方塊圖做為先前技術的範例。 圖二呈現根據本發明之一實施例中的多層人造神經網路之功能方塊圖。 圖三呈現根據本發明之兩個相鄰運算層間的詳細連接方式。 圖四(A)至圖四(E)圖像化呈現儲存在兩個本地記憶體中的輸入資料矩陣。 圖五呈現根據本發明之控制器與兩運算層間的詳細連接方式。 圖六呈現並聯兩個單位晶片以提高資料處理量的概念。 圖七呈現並聯多個單位晶片以組成一全連接層的概念。 須說明的是,本發明的圖式包含呈現多種彼此關聯之功能性模組的功能方塊圖。該等圖式並非細部電路圖,且其中的連接線僅用以表示信號流。功能性元件及/或程序間的多種互動關係不一定要透過直接的電性連結始能達成。此外,個別元件的功能不一定要如圖式中繪示的方式分配,且分散式的區塊不一定要以分散式的電子元件實現。
Claims (8)
- 一種多層人造神經網路,包含:至少一高速通訊介面;N個運算層,透過該至少一高速通訊介面串聯,N為大於1之整數,其中每一個運算層各自包含一運算電路與一本地記憶體,該本地記憶體係用以儲存供該運算電路使用之輸入資料以及可學習參數,第i個運算層中之該運算電路將其運算結果透過該至少一高速通訊介面提供至第(i+1)個運算層中之該本地記憶體,供該第(i+1)個運算層中之該運算電路做為輸入資料,其中i為範圍在1到(N-1)間之一整數指標,其中該N個運算層當中的一預設的運算層之該運算電路被預設為根據複數筆真實資料與複數筆假資料進行運算;以及一控制器,耦接至該預設的運算層之該運算電路,用以作廢根據該複數筆假資料而產生的一筆或多筆運算結果,並保留完全根據該複數筆真實資料而產生的一筆或多筆運算結果。
- 如申請專利範圍第1項所述之多層人造神經網路,其中該N個運算層係利用至少N個完全相同之單位晶片來實現。
- 如申請專利範圍第2項所述之多層人造神經網路,其中該N個運算層包含一卷積層,且該卷積層包含並聯之M個該單位晶片,M為大於1之正整數。
- 如申請專利範圍第2項所述之多層人造神經網路,其中該N個運算層包含一全連接層,且該全連接層包含並聯之P個該單位晶片,做為P個神經元,P為大於1之正整數。
- 如申請專利範圍第1項所述之多層人造神經網路,其中第i個運算層中之該運算電路依序產生Q筆運算結果,Q為大於1之整數,在開始產生該Q筆運算結果中之第q筆運算結果時,該運算電路同時將已產生之第(q-1)筆運算結果透過該至少一高速通訊介面提供至第(i+1)個運算層中之該本地記憶體,其中q為範圍在2到Q間之一整數指標。
- 如申請專利範圍第1項所述之多層人造神經網路,其中該N個運算層係根據一管線式(pipeline)架構同時運作。
- 如申請專利範圍第1項所述之多層人造神經網路,其中該高速通訊介面包含一高速串列器-解串列器(serializer-deserializer,SerDes)或是一射頻介面(radio frequency interface,RFI)。
- 如申請專利範圍第1項所述之多層人造神經網路,其中第i個運算層與第(i+1)個運算層被設置為處於同一積體電路晶片中、處於不同積體電路晶片但同一封裝中,或是處於不同封裝中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/242,610 US10552732B2 (en) | 2016-08-22 | 2016-08-22 | Multi-layer neural network |
US15/242,610 | 2016-08-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201807622A TW201807622A (zh) | 2018-03-01 |
TWI634489B true TWI634489B (zh) | 2018-09-01 |
Family
ID=61191983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105131828A TWI634489B (zh) | 2016-08-22 | 2016-10-03 | 多層人造神經網路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10552732B2 (zh) |
CN (1) | CN107766935B (zh) |
TW (1) | TWI634489B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10779310B2 (en) * | 2017-11-16 | 2020-09-15 | Qualcomm Incorporated | Uplink control channel resource allocation for new radio (NR) |
US20190318226A1 (en) * | 2018-04-12 | 2019-10-17 | Gyrfalcon Technology Inc. | Deep Learning Image Processing Systems Using Modularly Connected CNN Based Integrated Circuits |
CN108647773B (zh) * | 2018-04-20 | 2021-07-23 | 复旦大学 | 一种可重构卷积神经网络的硬件互连系统 |
US11210447B2 (en) * | 2018-09-26 | 2021-12-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Reconfiguring layout and sizing for transistor components to simultaneously optimize logic devices and non-logic devices |
CN111199268B (zh) * | 2018-11-19 | 2023-04-07 | 深圳云天励飞技术股份有限公司 | 一种全连接层的实现方法、装置、电子设备及计算机可读存储介质 |
CN109685210A (zh) * | 2018-12-29 | 2019-04-26 | 百度在线网络技术(北京)有限公司 | 卷积神经网络处理方法、卷积神经网络装置 |
CN109858619A (zh) * | 2019-01-22 | 2019-06-07 | 杭州电子科技大学 | 基于自旋振荡器的神经脉冲发生电路 |
WO2021084717A1 (ja) * | 2019-10-31 | 2021-05-06 | 日本電気株式会社 | 情報処理回路および情報処理回路の設計方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8468109B2 (en) * | 2006-12-08 | 2013-06-18 | Medhat Moussa | Architecture, system and method for artificial neural network implementation |
TW201331855A (zh) * | 2012-01-19 | 2013-08-01 | Univ Nat Taipei Technology | 具自由回饋節點的高速硬體倒傳遞及回饋型類神經網路 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101685358B (zh) * | 2008-09-27 | 2011-08-31 | 迅宏科技股份有限公司 | 信号处理装置与信号处理方法 |
KR20130090147A (ko) * | 2012-02-03 | 2013-08-13 | 안병익 | 신경망 컴퓨팅 장치 및 시스템과 그 방법 |
US9627532B2 (en) * | 2014-06-18 | 2017-04-18 | Nuance Communications, Inc. | Methods and apparatus for training an artificial neural network for use in speech recognition |
US9209809B1 (en) * | 2014-12-17 | 2015-12-08 | Xilinx, Inc. | Circuits for and methods of controlling output swing in a current-mode logic circuit |
CN107247992B (zh) * | 2014-12-30 | 2019-08-30 | 合肥工业大学 | 一种基于列梅兹逼近算法的sigmoid函数拟合硬件电路 |
CN104715283B (zh) * | 2015-04-08 | 2018-09-11 | 兰州理工大学 | 一种模拟神经元互连系统及采用该系统的可编程神经元阵列芯片 |
CN105260776B (zh) * | 2015-09-10 | 2018-03-27 | 华为技术有限公司 | 神经网络处理器和卷积神经网络处理器 |
CN105760930B (zh) * | 2016-02-18 | 2018-06-05 | 天津大学 | 用于aer的多层脉冲神经网络识别系统 |
CN105844330B (zh) * | 2016-03-22 | 2019-06-28 | 华为技术有限公司 | 神经网络处理器的数据处理方法及神经网络处理器 |
-
2016
- 2016-08-22 US US15/242,610 patent/US10552732B2/en not_active Expired - Fee Related
- 2016-08-24 CN CN201610718701.8A patent/CN107766935B/zh active Active
- 2016-10-03 TW TW105131828A patent/TWI634489B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8468109B2 (en) * | 2006-12-08 | 2013-06-18 | Medhat Moussa | Architecture, system and method for artificial neural network implementation |
TW201331855A (zh) * | 2012-01-19 | 2013-08-01 | Univ Nat Taipei Technology | 具自由回饋節點的高速硬體倒傳遞及回饋型類神經網路 |
Also Published As
Publication number | Publication date |
---|---|
US10552732B2 (en) | 2020-02-04 |
CN107766935B (zh) | 2021-07-02 |
US20180053084A1 (en) | 2018-02-22 |
CN107766935A (zh) | 2018-03-06 |
TW201807622A (zh) | 2018-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI634489B (zh) | 多層人造神經網路 | |
US20230244485A1 (en) | Compute-in-memory systems and methods | |
WO2020134824A1 (zh) | 一种类脑计算系统 | |
WO2017181562A1 (zh) | 一种神经网络的处理方法、系统 | |
US10073802B2 (en) | Inter-cluster data communication network for a dynamic shared communication platform | |
TWI601078B (zh) | 多層人造神經網路及其控制方法 | |
US11080593B2 (en) | Electronic circuit, in particular capable of implementing a neural network, and neural system | |
CN109409510B (zh) | 神经元电路、芯片、系统及其方法、存储介质 | |
KR20130090147A (ko) | 신경망 컴퓨팅 장치 및 시스템과 그 방법 | |
CN109472356A (zh) | 一种可重构神经网络算法的加速装置及方法 | |
WO2021089009A1 (zh) | 数据流重构方法及可重构数据流处理器 | |
JP7150998B2 (ja) | 超伝導ニューロモルフィックコア | |
CN108320018A (zh) | 一种人工神经网络运算的装置及方法 | |
WO2020133463A1 (zh) | 神经网络系统及数据处理技术 | |
CN110580519A (zh) | 一种卷积运算结构及其方法 | |
CN112114942A (zh) | 一种基于众核处理器的流式数据处理方法及计算设备 | |
WO2021244045A1 (zh) | 一种神经网络的数据处理方法及装置 | |
CN109753319A (zh) | 一种释放动态链接库的装置及相关产品 | |
Lee et al. | Accelerating Deep Neural Networks Using FPGAs and ZYNQ | |
CN110457648A (zh) | 一种用于lu分解的脉动阵列结构的实现方法 | |
US20220058468A1 (en) | Field Programmable Neural Array | |
WO2020051918A1 (zh) | 神经元电路、芯片、系统及其方法、存储介质 | |
Tu et al. | Neural approximating architecture targeting multiple application domains | |
US11893477B2 (en) | Technology for lowering instantaneous power consumption of neural processing unit | |
Moreno et al. | Synchronous digital implementation of the AER communication scheme for emulating large-scale spiking neural networks models |