TWI812404B - 即時生理訊號的情緒辨識系統 - Google Patents
即時生理訊號的情緒辨識系統 Download PDFInfo
- Publication number
- TWI812404B TWI812404B TW111130744A TW111130744A TWI812404B TW I812404 B TWI812404 B TW I812404B TW 111130744 A TW111130744 A TW 111130744A TW 111130744 A TW111130744 A TW 111130744A TW I812404 B TWI812404 B TW I812404B
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- convolution
- data
- classification
- neural network
- Prior art date
Links
- 230000008909 emotion recognition Effects 0.000 title claims abstract description 34
- 238000011176 pooling Methods 0.000 claims abstract description 42
- 238000013528 artificial neural network Methods 0.000 claims abstract description 37
- 238000013500 data storage Methods 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 12
- 230000008451 emotion Effects 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 16
- 230000009471 action Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 11
- 238000013135 deep learning Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000002996 emotional effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 208000019901 Anxiety disease Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000036506 anxiety Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006996 mental state Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000029058 respiratory gaseous exchange Effects 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 210000004243 sweat Anatomy 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Abstract
本發明係一種即時生理訊號的情緒辨識系統,包括控制模組、神經網路模組及資料儲存模組,且控制模組、神經網路模組及資料儲存模組係由硬體電路設計而成晶片型態,其中控制模組係接收至少一種生理訊號,並將各生理訊號傳送到神經網路模組,且控制神經網路模組及資料儲存模組,神經網路模組則是將生理訊號進行權重設定、卷積、池化和遞歸運算,藉以完成辨識結果或辨識訓練,資料儲存模組則是儲存在完成辨識結果或辨識訓練過程中的運算資料。
Description
本發明係有關於情緒辨識系統,尤指一種利用電路設計成晶片型態的即時生理訊號的情緒辨識系統。
近年來,人工智慧技術的提升,越來越多利用機器學習、深度學習等技術進行物體、圖像辨識,再加上穿戴式設備的快速發展,人工智慧深度學習技術已經廣泛用於各種情緒辨識應用中,目前的情緒辨識主要用臉部表情訊號、語音訊號或生理訊號等作為辨識來源,其中生理訊號包括有心跳、呼吸、流汗、溫度、脈搏、皮膚狀況或腦波活動等,其中利用脈搏係由光學心率感測儀量測取得,脈搏跳動快代表壓力或焦慮等,使用皮膚狀況係由皮膚電阻感測器量測皮膚電阻感應取得,用來分析心理狀態是緊張或放鬆狀態,使用腦波感測機測量腦波,分析腦波變化所代表的情緒意義,也有一些利用多種生理訊號以多模態整合方式來進行情緒辨識,甚至更進一步結合臉部表情訊號、語音訊號。
而深度學習需要進行資料收集、資料標記、資料輸入、機器學習、辨識輸出等工作階段,這些工作階段有大量的資料要進行處理,而且通常很龐大也很複雜,因此需要使用到硬體加速或特殊的計算,最常見的硬體加速裝置就是
每台電腦都有的圖形處理器(Graphic Process Unit,GPU),一般而言使用圖形處理器加速深度學習的訓練及預測可以達到比傳統多核處理器(CPU)快10到100倍以上的加速效果。
其原因在於一個傳統處理器可能包含四~數十個運算核心,但一個圖形處理器可能包含數百到數千個處理核心,圖形處理器的高密度的處理核心,讓圖形處理器可以用來進行高度平行化運算,而深度學習所需的大量資料和動輒數十層的類神經網路架構,要在合理時間內開發出有效的深度學習模型,勢必只有使用圖形處理器的加速功能才能為為深度學習帶來助益,使訓練和執行這些深度學習得以實現。
但是,由於計算能力和收斂等待時間的限制,即使以電腦或伺服機的圖形處理器進行計算,也很難即時完成情緒辨識。往往都需要使用圖形處理器進行長時間的運算才能得到較好的辨識結果,但在醫療方面,使用者的情緒往往都是一瞬間,但等到圖形處理器的情緒結果判斷出來可能已經是幾分鐘後了。
此外,在所有情緒辨識方法中,以生理訊號作為辨識情緒的資料來源最為客觀,其他如以人臉與聲音分析的情緒辨識方法,容易因為受測者隱藏真實的情緒而使結果產生偏差。為了找出在不同生理訊號中潛藏的情緒特徵,處理的資料量勢必更為龐大,故在此即時性的規格限制下,如何在不變動運算內容的前提下,實現減少硬體面積及功耗,並降低硬體複雜度設計,以其能即時完成情緒辨識,乃是一件亟待解決的問題。
有鑑於先前技術的問題,本發明之目的係在不使用電腦或伺服器等的圖形處理器之前提下,使用晶片型態的情緒辨識系統,加快資料處理速度,而且此一晶片型的情緒辨識系統,其硬體複雜度低、硬體面積小,功耗也能減少,期能應用在即時的醫療輔助、居家照護或教學,甚至於其他需要辨識情緒的各種領域上。
根據本發明之目的,係提供一種即時生理訊號的情緒辨識系統,包括控制模組、神經網路模組及資料儲存模組,其中控制模組係接收至少一種生理訊號,並將各生理訊號傳送到神經網路模組,且控制神經網路模組及資料儲存模組,神經網路模組則是將生理訊號進行權重設定、卷積、池化和遞歸運算,藉以完成辨識結果或辨識訓練,資料儲存模組則是儲存在完成辨識結果或辨識訓練過程中的運算資料。
其中,控制模組包括模式設定單元、資料輸入單元、核心單元、計數單元,模式設定單元則是設定神經網路模組為訓練模式或辨識模式,並在訓練模式下進一步設定需要多少情緒辨識分類、學習率(learning rate)及動量(momentum)來更新權重,而在辨識模式下則會直接將輸入的生理訊號依照最高的可能性的情緒分類輸出,資料輸入單元係接收各生理訊號,而核心單元則是控制神經網路模組在不同狀態下的運算模式及資料儲存模組的資料儲存方式,同時,所有輸入/輸出數據也通過核心單元進行內部/外部通信控制。計數單元係設定神經網路的迭代(iteration)次數,期數單元係設定神經網路的期數(epoch)次數。
其中,核心單元係可為有限狀態機,計數單元包括第一計數器、第二計數器,其中第一計數器係記錄執行每次迭代時進行到哪一個生理訊號的批量(batch),第二計數器係紀錄執行迭代次數(timestep)。
其中,神經網路模組包括前推運算單元及回推運算單元,前推運算單元將設定所有初始權重進入資料儲存模組後,開始接收生理訊號進行神經網路的前推運算,用以根據各情緒分類輸出可能性的情緒分類。回推運算單元將依照所有生理訊號的批量(batch)、迭代次數(timestep)及期數次數(epoch)反覆訓練後,將負責將前推運算單元所計算出的情緒分類誤差,根據時間關係計算各次迭代的誤差貢獻度,並進行權重資料更新的動作,使下一迭代的情緒分類收斂誤差,最後透過完成所有期數次數的訓練後輸出各分類的情緒辨識結果高低來決定最後訓練出的模型收斂與否。
其中,前推運算單元包括複數個前推卷積部、複數個前推池化部、前推遞歸部、全連接部及分類優化部,前推卷積部係將輸入的生理訊號以管線處理進行卷積運算提取信號特徵產生前推卷積資料,前推池化部係對前推卷積資料進行池化處理降低運算量產生前推池化資料,前推遞歸部對池化資料進行遞歸處理擷取時間特徵產生前推遞歸資料,全連接部與前推遞歸部做線性組合,將所有輸出展開並進行最後輸出的收斂,將多個值彼此相連乘加後產生的初步分類結果,分類優化部將初步分類結果相對較大的數更接近1,較小的數更接近0,讓最後的辨識結果比較有明顯的區別,使得分類優化部完成情緒分類。
其中,回推運算單元包括複數個回推卷積部、回推遞歸部及回推分類部,各回推卷積部的結構與各前推卷積部的結構相同,並使用相同的硬體結構,且各回推卷積部的將前推卷積部於每次迭代計算的分類誤差計算出卷積誤差貢獻度,回推遞歸部的將前推遞歸部於每次迭代計算的分類誤差計算出遞歸誤差貢獻度,回推分類部係分類部完成分類動作計算分類誤差。
其中,資料儲存模組包括第一儲存單元及第二儲存單元,第一儲存單元係儲存前推卷積資料、卷積誤差貢獻度與前推遞歸資料,第二儲存單元係儲存卷積誤差貢獻度、遞歸誤差貢獻度與分類誤差。
綜上所述,本發明前推運算單元使用管線處理以及前推運算單元與回推運算單元使用相同的硬體電路,可以減少使用的硬體面積,提高硬體的使用率,另外使用第一儲存單元及第二儲存單元分別儲存不同的資料係可優化運算速度,回推遞歸部與前推遞歸部在速度與硬體面積上達到平行。
1:控制模組
10:模式設定單元
12:資料輸入單元
14:核心單元
16:計數單元
160:第一計數器
162:第二計數器
164:第三計數器
2:神經網路模組
20:前推運算單元
200:前推卷積部
202:複數個前推池化部
204:前推遞歸部
206:歸一化指數加權運算器
208:全連接部
22:回推運算單元
220:回推卷積部
222:複數個回推池化部
224:回推遞歸部
226:回推分類部
3:資料儲存模組
30:第一儲存單元
32:第二儲存單元
圖1係本發明之系統架構示意圖;圖2係本發明之控制模組的架構示意圖;圖3A係本發明之前推運算單元的架構示意圖;圖3B係本發明之指數函式單元的架構示意圖;圖4係本發明之前推卷積部的架構示意圖;圖5係本發明之池化部的架構示意圖;圖6係本發明之前推遞歸部的流程示意圖;圖7係本發明之前推遞歸部的電路方塊示意圖;圖8係本發明之全連接部的架構示意圖;圖9係本發明之之前推運算單元的電路架構示意圖;圖10係本發明之回推運算模組更新參數的狀態示意圖;圖11係本發明之回推運算單元的電路架構示意圖;
圖12係本發明之資料儲存模組的架構示意圖;圖13係本發明之回推遞歸部的電路方塊示意圖;圖14係本發明之前推運算單元的電路架構示意圖;圖15係本發明之回推運算單元的電路架構示意圖;圖16係本發明之前推卷積部。與前推池化部架構示意圖;圖17係本發明之前推卷積部與前推池化部的輸入值與輸出值的示意圖。
為了使本發明的目的、技術方案及優點更加清楚明白,下面結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,但並不用於限定本發明。
請參閱圖1所示,本發明係一種即時生理訊號的情緒辨識系統,包括控制模組1、神經網路模組2及資料儲存模組3,其中控制模組1係接收至少一種生理訊號,並將各生理訊號傳送到神經網路模組2,且控制神經網路模組2及資料儲存模組3,神經網路模組2則是將生理訊號進行權重設定、卷積、池化和遞歸運算,藉以完成辨識結果或辨識訓練,資料儲存模組3則是儲存在完成辨識結果或辨識訓練過程中的運算資料。
請參閱圖2所示,在本發明中,控制模組1包括模式設定單元10、資料輸入單元12、核心單元14、計數單元16,模式設定單元10則是設定神經網路模組2為訓練模式或辨識模式,並在訓練模式下進一步設定需要多少情緒辨識分類、學習率(learning rate)及動量(momentum)來更新權重,而在辨識模式下則會直接將輸入的生理訊號依照最高的可能性的情緒分類輸出,資料輸入單元12係接
收各生理訊號,而核心單元14則是控制神經網路模組2在不同狀態下的運算模式及資料儲存模組3的資料儲存方式,同時,所有輸入/輸出數據也通過核心單元14進行內部/外部通信控制。計數單元16係記錄神經網路的迭代(iteration)次數、期數(epoch)次數、情緒辨識分類數、學習率(learning rate)及動量(momentum)等。
在本發明中,核心單元14係可為有限狀態機(Finite State Machine,FSM),計數單元16包括第一計數器160、第二計數器162及第三計數器164,其中第一計數器160係記錄執行每次迭代時進行到哪一個生理訊號的批量(batch),第二計數器162係紀錄執行迭代次數(timestep),第三計數器164紀錄情緒辨識分類數、學習率(learning rate)及動量(momentum)。
復請參閱圖1所示,在本發明中,神經網路模組2包括前推運算單元20及回推運算單元22,前推運算單元20將設定所有初始權重進入資料儲存模組3後,開始接收生理訊號進行神經網路的前推運算,並依照所有生理訊號的批量(batch)、迭代次數(timestep)及期數次數(epoch)反覆訓練後,根據各情緒分類輸出可能性的情緒分類。回推運算單元22將前推運算單元20所計算出的情緒分類誤差,根據時間關係計算各次迭代的誤差貢獻度,再依照回推運算的迭代次數(timestep)及期數次數(epoch)反覆訓練,實現權重資料更新的動作,使下一迭代的情緒分類收斂誤差,最後透過完成所有期數次數的訓練後輸出各分類的情緒辨識結果高低來決定最後訓練出的模型收斂與否。
請參閱圖3A及圖3B所示,前推運算單元20包括複數個前推卷積部200、複數個前推池化部202、前推遞歸部204、歸一化指數加權運算器206及全連接部208,前推卷積部200係將輸入的生理訊號以管線處理進行卷積運算提取信號特徵產生前推卷積資料,前推池化部202係對前推卷積資料進行池化處理降低
運算量產生前推池化資料,前推遞歸部204對池化資料進行遞歸處理擷取時間特徵產生前推遞歸資料,歸一化指數加權運算器206與前推遞歸部204做線性組合,將所有輸出展開並進行最後輸出的收斂,將多個值彼此相連乘加後產生的初步分類結果,全連接部208將初步分類結果相對較大的數更接近1,較小的數更接近0,讓最後的辨識結果比較有明顯的區別,使得全連接部208完成情緒分類,其原因是一般分類結果通常以機率表示,並且以機率最大者作為最終的分類結果。Threshold閾值:透過設定的閾值來判斷經由歸一化指數加權運算器206(softmax)運算後的情緒分類可能性(probability)是否大於設定閾值(至少>0.5),若大於則代表此結果已具有分別度,不需再經由後續的學習階段(learning process)去參與回推流程,因此會在回推時將此值歸0(類似drop out的概念)。此外乘法器Mult只有一個,為Xi *log2e,此為206歸一化指數加權運算器softmax硬體加速乘法,將歸一化指數加權運算器softmax的自然函數指數運算特化成以2為底的指數運算,並透過數位的2位元運算特性,將輸出值分為小數(fraction part)和整數(integer part),在整數部分只需左右位移bit數即可(因為以2為底的整數在2位元當中即為左移或右移),在小數部分,則可以透過8位元對照表(look up table)查找相近值,最後透過位移單元(shift unit)將2部分整合在一起成該筆輸出的206歸一化指數加權運算器softmax值。
加法器adder:只有一個,將所有計算過後的206歸一化指數加權運算器softmax值總和起來,成為最後要除的分母。Counter:計數器,計算運算到第幾筆輸出,因為分類數可能會有2-4分類,因此需要此計數器確認當前運算是否到達此次分類所需的數目。分類結果比較器(Comparator),將所有經過206歸一化
指數加權運算器層的結果(此結果即為該情緒分類的可能性大小)進行比較,最大值的分類即為此情緒辨識結果。計算公式及方法如下列:
請參閱圖4所示,整體元件(20):捲積神經網路運算器,D1-D304:第幾筆輸入資料,整體稱做輸入資料陣列,W1-W24:第幾筆運算權重,整體稱作權重資料陣列。本發明的生理訊號係經過前處理,前處理包含基礎正規化(Baseline Normalize)以及短時傅立葉轉換,轉換完後的格式為38*8包含時間、頻率資訊的矩陣資料,以及權重初始參數。又本發明並非等所有資料點都輸入後才開始運算,為了快速完成卷積運算,並節省硬體面積,於此我們使用管線處理(pipeline)來加強運算。
例如,在本發明中係以三個卷積部(Convolution Layer)、三個池化部(Relu& average Pooling Layer),第一個的convolution有6個3*1的過濾器(filter),因此這裡讓144個不同的權重,固定與矩陣資料中24個數據做乘加,並以位移矩陣資料中數據的方式來完成卷積運算,能在最有效的時間內得到輸出。
請參閱圖16及17所示,假若第一個卷積部的輸入值為38*8*10(其中38*8是每筆資料的大小*10表示10筆數值),第一個卷積部的輸出值為36*1*6*10(其中36*1*6是每筆資料的大小*10表示10筆數值),第一個池化部的輸入值為36*1*6*10(其中36*1*6是每筆資料的大小*10表示10筆數值),第一個池化部的輸出值為18*1*6*10(其中18*1*6是每筆資料的大小*10表示10筆數值)。
再者,第二個卷積部的輸入值為18*1*6*10(其中18*1*6是每筆資料的大小*10表示10筆數值),第二個卷積部的輸出值為16*1*8*10(其中16*1*8是每筆資料的大小*10表示10筆數值),第二個池化部的輸入值為16*1*8*10(其中16*1*8是每筆資料的大小*10表示10筆數值),第二個池化部的輸出值為8*1*8*10(其中8*1*8是每筆資料的大小*10表示10筆數值)。
又,第三個卷積部的輸入值為8*1*8*10(其中8*1*8是每筆資料的大小*10表示10筆數值),第三個卷積部的輸出值為6*1*10*10(其中6*1*10是每筆資料的大小*10表示10筆數值),第三個池化部的輸入值為6*1*10*10(其中6*1*10是每筆資料的大小*10表示10筆數值),第三個池化部的輸出值為3*1*10*10(其中3*1*10是每筆資料的大小*10表示10筆數值)。
前推遞歸部204的輸入值為3*1*10*10(其中3*1*10*是每筆資料的大小*10表示10筆數值),輸出值為10*10(其中10是每筆資料的大小*10表示10筆數值)。透過三個卷積部(Convolution Layer)、三個池化部(Relu& average Pooling Layer)的計算轉換過程加快分類速度。
請參閱圖5所示,池化部採用平均池化(average pooling)而非一般常用的最大池化(max pooling),因為在本發明中,兩者效果差距甚小,但平均池化在回推運算單元22中的運算相對簡單,例如:用簡單的位移器就可以完成其運算。
請參閱圖6及7所示,前推遞歸部204係為長短記憶網路(Long Short Term Memory Network,LSTM)的前推運算流程,承接自池化部的管線處理(pipeline)的輸入,每次輸入10筆數值,總共輸入3次共30筆數值才算完全輸入,在此一樣在一開始輸入時即開始作乘積累加運算(Multiply Accumulate,MAC)
以節省時間和面積,而在接收到輸入之前我們先將卷積部的隱藏層的輸入(hidden_input)的內積給做完可節省約100循環(cycles),之後每10筆進來我們就會先做內積,並將結果跟後續運算做累加,如此可再節省約120循環(cycles),使得前推運算速度提升2.3倍。
長短記憶網路(LSTM)普遍以S型(sigmoid)函數和雙曲正切曲(tanh)函數來當作激活函數,為了符合閘(gate)的概念,這兩個函數皆需要使用到指數(exponential)函數,故需要龐大的硬體需求,對於sigmoid函數之實現,只需以乘法器及加法器即可完成sigmoid函數,對於硬體負擔來講較微小。
請參閱圖8所示,X1-X10:長短時記憶體(LSTM)之10個時間段落(time-step)輸出,y1-y4:各情緒分類可能值(probability),P1-P4:函數加權結果,於前推資料處理的最後一級和回推處理的第一級也同時是測試模式時運用全連接部208。歸一化指數函數進行類別機率比較大小後,決定最終類別答案判斷的模組。全連接部208可調整以符合不同類別的分類架構,透過將沒用到之運算單元權重歸零,實現一個可調式的分類器,目前可提供二至四分類,並進行神經網路的訓練。
請參閱圖9所示,回推運算單元22包括複數個回推卷積部220、複數個回推池化部222、回推遞歸部224及回推分類部226,各回推卷積部220的結構與各前推卷積部200的結構相同,並使用相同的硬體結構,且各回推卷積部220的將前推卷積部200於每次迭代計算的分類誤差計算出卷積誤差貢獻度,各回推池化部222將前推池化部202於每次迭代計算的分類誤差計算出池化誤差貢獻度。回推運算單元22(如圖15所示的結構與前推運算單元20(如圖14所示)的結構相似,兩者的差異在於,前推運算單元20是將同一個前推卷積部200的輸出送到同
一個前推池化部200,而回推運算單元22,而回推運算單元22是將回推池化部222接收來自不同回推卷積部220的輸出,因此回推運算單元22只要使用簡單的切換電路設計,即使用前推運算單元20的相同電路設計,又前推遞歸部204於每次迭代計算的分類誤差計算出遞歸誤差貢獻度,回推分類部226係分類部完成分類動作計算分類誤差。
請參閱圖4及10所示,為了減少面積成本,我們將前推卷積部200與回推卷積部220共用,將原本使用在前推卷積部200的乘法器繼續使用於回推卷積部220中,降低約2倍的硬體使用面積,同時也運用管線處理(pipeline)的機制,每當一組回推訊號輸入時,只要使用一個加法器便可依次同時算出回推的輸出訊號,提升約9倍運算速度,也幫助回推運算單元22的硬體可同時繼續運算。
請參閱圖11所示,本發明中,核心單元14將回推運算單元22和更新參數的狀態分開,藉此可以在批量(batch)的回推完成後,才更新內部參數,既可省略每次更新權重所需的時間,達到快速運算回推的效果,同時也能保留每次回推所需更新的權重變動值,使權重更新的方向較能保持一致,更好達到訓練的收斂。
請參閱圖12所示,資料儲存模組3包括第一儲存單元30及第二儲存單元32,第一儲存單元30係儲存前推卷積資料、卷積誤差貢獻度與前推遞歸資料,第二儲存單元32係儲存卷積誤差貢獻度、遞歸誤差貢獻度與分類誤差。進一步而言,第一儲存單元30係為1-port SRAM,第二儲存單元32係為2-port RF SRAM。
請參閱圖13所示,為了減少面積成本,我們將前推模組和後推模組的大部分硬體資源共享,降低約2倍的硬體成本,並使用第一儲存單元30中的
一個464*251的儲存空間來儲存迭代資料、四個416*19的儲存空間來儲存權重(WR)、四個416*19的儲存空間儲存更新權重的參數(velocity),第二儲存單元32的四個416*25的儲存空間儲存權重微分值(Delta_WR),共13個記憶體儲存空間。
其中第二儲存單元32使用2-port RF,是為了讓同一個時間點可以讀取並寫入權重微分值(Delta_WR),因為權重微分值(Delta_WR)必須一直累加直到128個批量大小(batch size)結束,如此一來可將速度提升兩倍,面積也不會有太大的折中(trade off)。在前推運算單元20的前推的過程時,將10個迭代(timestep)的特定值以第一儲存單元30的一個464*25保存下來,當下一層給入微分值後即進行後推運算,首先會計算出給上一層的方便差(delta)值,讓上一層可以快速接收到值以進行運算,再來計算隱藏層的輸出值(hidden_output)的微分值以計算下一個迭代(timestep)的回推,同時算出權重的微分值並累加,在第128個批量(batch)時才更新權重。
為了進一步證實本發明確實能更以晶片型態進行情緒辨識,發明人將此設計下線於台積電16奈米晶片製程,並進行LRCNSoC設計與穿戴式的生理感測器結合而成的情緒辨識整合平台。此情緒辨識整合平台包含了可攜式的前端感測器,特徵擷取處理器,和本發明及可監控情緒的使用者圖形介面(GUI)。本發明在Agilent93000的晶片測試儀下,可達最高操作頻率為8800萬赫茲,平均功耗為24.9毫瓦(mW),情緒辨識整合平台在本發明進行訓練模型訓練的速度和測試情緒結果的速度分別為5.5微秒/每樣本數和1.9微秒/每樣本數。情緒辨識整合平台可在350毫秒內顯示情緒計算的分類結果及所擷取出的生理訊號特徵在使用者圖形介面上,進行實時情緒與生理訊號監測。
綜上所述,本發明可以在減少硬體體積及成本的前提下,達到進行情緒辨識的目的,解決傳統無法及時辨識情緒的問題。
上列詳細說明係針對本發明的可行實施例之具體說明,惟前述的實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。
1:控制模組
10:模式設定單元
12:資料輸入單元
14:核心單元
16:計數單元
2:神經網路模組
20:前推運算單元
22:回推運算單元
3:資料儲存模組
30:第一儲存單元
32:第二儲存單元
Claims (3)
- 一種即時生理訊號的情緒辨識系統,包括:一神經網路模組,係由硬體電路設計而成,並將所接收的至少一生理訊號進行權重設定、卷積、池化和遞歸運算,藉以完成一辨識結果或一辨識訓練,該神經網路模組包括:一前推運算單元,設定所有初始權重進入該資料儲存模組後,開始接收生理訊號進行神經網路的前推運算,用以根據各情緒分類輸出可能性的情緒分類,該前推運算單元包括:複數個前推卷積部,係將輸入的生理訊號以管線處理進行卷積運算提取信號特徵產生一前推卷積資料;複數個前推池化部,係對該前推卷積資料進行池化處理降低運算量產生前推池化資料;一前推遞歸部,係對池化資料進行遞歸處理擷取時間特徵產生一前推遞歸資料;一歸一化指數加權運算器,該歸一化指數加權運算器與該前推遞歸部做線性組合,將所有輸出展開並進行最後輸出的收斂,將多個值彼此相連乘加後產生的一初步分類結果;及一全連接部,係將該初步分類結果相對較大的數更接近1,較小的數更接近0,讓最後的辨識結果比較有明顯的區別,使得該全連接部完成情緒分類;一回推運算單元,依照所有生理訊號的批量(batch)、迭代次數(timestep)及期數次數(epoch)反覆訓練後,將負責將該前推運算單元所計算出的情緒分類誤差,根據時間關係計算各次迭代的誤差貢獻度,並進 行權重資料更新的動作,使下一迭代的情緒分類收斂誤差,最後透過完成所有期數次數的訓練後輸出各分類的情緒辨識結果高低來決定最後訓練出的模型收斂與否;一資料儲存模組,亦由硬體電路設計而成,則是儲存在完成該辨識結果或該辨識訓練過程中的運算資料;一控制模組,也由硬體電路設計而成,係接收各該生理訊號,並將各該生理訊號傳送到該神經網路模組,且控制該神經網路模組及該資料儲存模組的運作,該控制模組包括:一資料輸入單元,係接收各該生理訊號;一核心單元,控制該神經網路模組在不同狀態下的運算模式及該資料儲存模組的資料儲存方式,同時,所有輸入/輸出數據也通過該核心單元進行內部/外部通信控制,該核心單元係可為有限狀態機;一模式設定單元,係設定該神經網路模組為一訓練模式或一辨識模式,並在該訓練模式下進一步設定需要多少情緒辨識分類、學習率(learning rate)及動量(momentum)來更新權重,而在該辨識模式下則會直接將輸入的生理訊號依照最高的可能性的情緒分類輸出;一計數單元係設定神經網路的迭代(iteration)次數,期數單元係設定神經網路的期數(epoch)次數,該計數單元包括:一第一計數器,該第一計數器係記錄執行每次迭代時進行到哪一個生理訊號的批量;及一第二計數器,該第二計數器係紀錄執行迭代次數。
- 如請求項1所述的即時生理訊號的情緒辨識系統,其中該回推運算單元包括: 複數個回推卷積部,各該回推卷積部的結構與各該前推卷積部的結構相同,並使用相同的硬體結構,且各回推卷積部的將前推卷積部於每次迭代計算的分類誤差計算出卷積誤差貢獻度;回推遞歸部,係將前推遞歸部於每次迭代計算的分類誤差計算出遞歸誤差貢獻度;及回推分類部,回推分類部係分類部完成分類動作計算分類誤差。
- 如請求項1所述的即時生理訊號的情緒辨識系統,其中資料儲存模組包括一第一儲存單元及一第二儲存單元,該第一儲存單元係儲存該前推卷積資料、卷積誤差貢獻度與該前推遞歸資料,該第二儲存單元係儲存卷積誤差貢獻度、遞歸誤差貢獻度與分類誤差。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111130744A TWI812404B (zh) | 2022-08-16 | 2022-08-16 | 即時生理訊號的情緒辨識系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111130744A TWI812404B (zh) | 2022-08-16 | 2022-08-16 | 即時生理訊號的情緒辨識系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI812404B true TWI812404B (zh) | 2023-08-11 |
TW202409911A TW202409911A (zh) | 2024-03-01 |
Family
ID=88585949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111130744A TWI812404B (zh) | 2022-08-16 | 2022-08-16 | 即時生理訊號的情緒辨識系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI812404B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200522913A (en) * | 2004-01-06 | 2005-07-16 | Univ Nat Taiwan Science Tech | Human pulse recognition apparatus and method |
TW202025173A (zh) * | 2018-08-24 | 2020-07-01 | 范豪益 | 生理數據智能處理方法與系統 |
TW202145254A (zh) * | 2020-05-28 | 2021-12-01 | 長庚醫療財團法人林口長庚紀念醫院 | 一種資訊處理系統及其方法 |
TWI759218B (zh) * | 2021-06-02 | 2022-03-21 | 國立陽明交通大學 | 非接觸式心律類別監測系統及方法 |
-
2022
- 2022-08-16 TW TW111130744A patent/TWI812404B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200522913A (en) * | 2004-01-06 | 2005-07-16 | Univ Nat Taiwan Science Tech | Human pulse recognition apparatus and method |
TW202025173A (zh) * | 2018-08-24 | 2020-07-01 | 范豪益 | 生理數據智能處理方法與系統 |
TW202145254A (zh) * | 2020-05-28 | 2021-12-01 | 長庚醫療財團法人林口長庚紀念醫院 | 一種資訊處理系統及其方法 |
TWI759218B (zh) * | 2021-06-02 | 2022-03-21 | 國立陽明交通大學 | 非接觸式心律類別監測系統及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108510012B (zh) | 一种基于多尺度特征图的目标快速检测方法 | |
CN110619322A (zh) | 一种基于多流态卷积循环神经网络的多导联心电异常信号识别方法及系统 | |
Rocha et al. | Binary CorNET: Accelerator for HR estimation from wrist-PPG | |
Liu et al. | FPGA-NHAP: A general FPGA-based neuromorphic hardware acceleration platform with high speed and low power | |
Huang et al. | End-to-end continuous emotion recognition from video using 3D ConvLSTM networks | |
CN110383300A (zh) | 一种计算装置及方法 | |
Lu et al. | Efficient hardware architecture of convolutional neural network for ECG classification in wearable healthcare device | |
Manjunath et al. | A low-power lstm processor for multi-channel brain eeg artifact detection | |
WO2022077888A1 (zh) | 一种光体积描计信号的散点图分类方法和装置 | |
Rashid et al. | CoughNet: A flexible low power CNN-LSTM processor for cough sound detection | |
Gu et al. | A lightweight convolutional neural network hardware implementation for wearable heart rate anomaly detection | |
Feng et al. | An efficient EEGNet processor design for portable EEG-Based BCIs | |
Chen et al. | SE-ECGNet: multi-scale SE-Net for multi-lead ECG data | |
Hernandez-Ruiz et al. | Motor-imagery eegnet-based processing on a low-spec soc hardware | |
CN114925320B (zh) | 一种数据处理方法及相关装置 | |
Ren et al. | End-to-end scalable and low power multi-modal CNN for respiratory-related symptoms detection | |
Parmar et al. | Design of DNN-based low-power VLSI architecture to classify atrial fibrillation for wearable devices | |
TWI812404B (zh) | 即時生理訊號的情緒辨識系統 | |
Lu et al. | Deep learning solutions for motor imagery classification: A Comparison Study | |
Inadagbo et al. | Exploiting FPGA capabilities for accelerated biomedical computing | |
Feng et al. | An Efficient Model-Compressed EEGNet Accelerator for Generalized Brain-Computer Interfaces With Near Sensor Intelligence | |
Semmad et al. | Scalable serial hardware architecture of multilayer perceptron neural network for automatic wheezing detection | |
TW202409911A (zh) | 即時生理訊號的情緒辨識系統 | |
CN114869249A (zh) | 脉搏波特征参数的获取方法、装置、电子设备及介质 | |
Zhang et al. | MSDN: A multi-stage deep network for heart-rate estimation from facial videos |