本研究旨在根據生物電阻抗理論和模式識別算法, 對不同的人進行生物電阻抗的測量并進行身份識別。本文利用AD5933芯片設計阻抗采集電路來采集不同人手掌處的生物電阻抗, 獲得1~100 kHz頻率激勵下的阻抗譜信息, 計算阻抗曲線的分段頻率值作為特征參數。為了提高識別率和防止過度擬合, 將被測人員分成訓練集和測試集, 設計了一個3層的向后傳播(BP)神經網絡模型, 對樣本進行訓練和預測。研究結果表明, BP神經網絡對測試樣本能進行有效識別, 訓練集的準確率達到97.62%, 驗證集的準確率達到88.79%, 測試集的準確率達到86.34%, 綜合的識別準確率為94.22%。該網絡可以很好地識別出已存在于訓練網絡中的人和不屬于訓練網絡的陌生人, 驗證了基于生物電阻抗的模式識別方法對身份進行辨識的可行性與可靠性, 為身份識別提供了一個簡單有效的補充性技術。
引用本文: 何想, 覃元元, 蘇明亮, 江宇寧, 王新安. 生物阻抗身份識別研究. 生物醫學工程學雜志, 2016, 33(4): 609-615. doi: 10.7507/1001-5515.20160102 復制
引言
生物電阻抗(bioelectrical impedance)是一種電信號通過生物機體時反映出的阻抗特征。生物組織包括細胞內液、細胞外液和細胞膜,當低頻電信號施加于生物體時,電信號將以任意一種可能的方式繞過細胞,主要流經細胞外液;當施加于生物組織電信號的頻率增加時,一部分電流將穿過細胞膜流經細胞內液。人體組織的電學特性可由生物電阻抗模型描述。它是反映生物整個機體或其構成部分,即活體生物組織、器官、細胞或整個生物體電學性質的物理量[1]。生物電阻抗的測量是利用生物組織與器官的電特性,提取與人體生理相關信息的一種無損傷檢測技術。該方法具有無創、廉價、安全、操作簡單和信息豐富等特點,因此在醫學界受到眾多專家學者的重視,有著廣泛的應用前景[2]。
目前生物電阻抗的研究主要集中在醫療健康領域的細胞或組織的識別,通過不同健康狀況的細胞或組織的生物電阻抗特性來進行病變與否的辨識,而利用生物電阻抗技術來進行身份識別的研究目前還比較少。陳曉艷等[3]利用阻抗頻譜理論,對手術中切除的惡性腫瘤組織及非腫瘤組織進行阻抗測量并進行肺癌辨識,識別結果與病理切片分析結果吻合。杜大莉[2]重點研究乳腺癌組織與正常組織(腺體和脂肪組織)電特性差異,從組織頻阻特性曲線中尋找特征參數,對乳腺組織進行識別。趙舒等[4]采用生物電阻抗技術從人體上腹部體表提取電阻抗信號,對20名糜爛性胃炎患者的胃阻抗和胃電信號進行研究,經一周治療后,采用以小波能量熵為特征向量的向后傳播(back propagation, BP)神經網絡對治療前后的識別正確率為80%。哈佛醫學院的Rutkove[5]指出了生物電阻抗技術來進行身份識別的可能性。
本文利用人體手掌的生物電阻抗特征進行身份的識別,研究了生物電阻抗的采集系統,對識別算法進行了探究。
1 特征參數和模式識別
1.1 特征參數
生物體的阻抗特征是隨著激勵電流頻率的變化而變化的,常見的生物體電阻抗模型為三元件模型[5], 如圖 1所示。

當激勵電流頻率較低時,電流流過細胞外液,阻抗較大;當電流頻率提高時,電流穿透細胞膜,阻抗變小。為了利用生物電阻抗信息對身份進行識別,需要從生物電阻抗頻譜中提取出特征參數。林新等[6]利用Cole經驗公式來得到直流時的阻抗、頻率無窮大時的阻抗值、散射系數(dispersion parameter)、組織的特征頻率等特征參數。杜大莉[2]采用生物電阻抗曲線在特殊頻段內的斜率值和多個連續頻段內的斜率值作為特征參數。本文選取8~16 kHz、 16~32 kHz、32~64 kHz三個頻率段所對應的斜率作為3個特征參數,如圖 2所示,圖中橫坐標是刺激電流的頻率,縱坐標是測得的阻抗。

1.2 模式識別
神經網絡理論(neural network)是在現代神經科學的基礎上提出和發展起來的,它反映的是人腦結構及功能的一種抽象數學模型[7]。它能夠應用于無法用規律描述的分類情景,在模式識別中有很強的生命力。由于電阻抗譜的非線性特性,并且人體組織內部影響阻抗因素較為復雜,本文選擇BP神經網絡算法來對人的身份進行識別。
BP神經網絡一般由輸入層、隱含層和輸出層組成,一個3層的BP網絡可以完成任意n維到m維的映射[8],可以完成較為復雜的模式識別功能,一個典型的神經網絡結構如圖 3所示。

圖中:xj表示輸入層第j個節點的輸入;j=1, …, M;wij表示隱含層第i個節點到輸入層第j個節點之間的權值;θi表示隱含層第i個節點的閾值;Φ(x)表示隱含層的激勵函數;wki表示輸出層第k個節點到隱含層第i個節點之間的權值,i=1, …, q;ak表示輸出層第k個節點的閾值, k=1, …, L;ψ(x)表示輸出層的激勵函數; Ok表示輸出層第k個節點的輸出。
分類器的功能就是依據由某個X產生的輸出O來判斷X屬于哪一類,而BP神經網絡分類器的功能是將具有n維特征的樣本分類為m維模式中的某一類。將樣本分為訓練集和驗證集,首先利用BP神經網絡對訓練樣本進行學習,計算實際輸出與期望輸出的匹配度;再將實際輸出與期望輸出的差異反饋,以調整網絡的權重,即對BP神經網絡進行訓練,訓練后的網絡就可用于對輸入的測試樣本進行分類[4]。
所謂誤差的反向傳播,即首先由輸出層開始逐層計算各層神經元的輸出誤差,然后根據誤差梯度下降法來調節各層的權值和閾值,使修改后的網絡的最終輸出能接近期望值。
對于每一個樣本p的二次型誤差準則函數為Ep:
$ {E_p} = \frac{1}{2}\sum\limits_{k = 1}^L {{{\left( {{T_k} - {o_k}} \right)}^2}} $ |
式中Tk為理想輸出。系統對P個訓練樣本的總誤差準則函數為:
$ E = \frac{1}{2}\sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {{{\left( {T_k^p - o_k^p} \right)}^2}} } $ |
根據誤差梯度下降法依次修正輸出層權值的修正量Δwk1,輸出層閾值的修正量Δak,隱含層權值的修正量Δwij,以及隱含層閾值的修正量Δθi。
$ \Delta {w_{ki}} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {y_i} $ |
$ \Delta {a_k} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) $ |
$ \Delta {w_{ij}} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {w_{ki}} \bullet \Phi '\left( {ne{t_i}} \right) \bullet {x_j} $ |
$ \Delta {\theta _i} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {w_{ki}} \bullet \Phi '\left( {ne{t_i}} \right) $ |
本文采用BP神經網絡模型,具有簡單、易行、計算量小、并行性強等優點,目前是神經網絡訓練采用最多也是最成熟的訓練算法之一。
2 阻抗采集系統與識別結果
2.1 阻抗采集系統
常用的生物電阻抗采集系統包括二電極法和四電極法,本文利用AD5933芯片設計了一個二電極生物電阻抗采集系統,具有準確、測量簡單、低成本的特點。該系統包括輸入模擬端、濾波采樣、阻抗變換、DDS波形產生、恒流源模擬輸出端,如圖 4(a)所示。圖 4(b)所示是手掌電阻抗檢測具體部位示意圖,為了進行身份識別,類似于指紋識別,需要手的觸摸來采集信號,所以本文采取手掌處的阻抗值作為識別的依據,符合實際使用場景。因為電阻抗采集的是電流流經細胞的特性,反映的是組織內部的特性,并且選取了8~16 kHz、16~32 kHz、32~64 kHz三個頻率段所對應阻抗值的斜率作為3個特征參數,都是相對參數,因此消除了手掌紋路、手掌干濕程度、手掌接觸方法等因素的影響。同時,雖然二電極法測量過程中存在接觸阻抗,但是本文采取的識別指標是三個斜率,求取斜率的過程中要相減,因此消除了接觸阻抗的影響;接觸阻抗的不同會使得阻抗譜曲線沿著Y軸平移,但是三段頻率處的斜率不會改變。

(a)生物電阻抗采集電路圖;(b)手掌電阻抗檢測示意圖
Figure4. Bioelectrical impedance data collection system(a) circuit diagram of bioelectrical impedance data collection; (b) schematic diagram of palm bioelectrical impedance test
利用STM32與AD5933芯片進行配合,控制ADC的采樣精度以及DDS輸出信號的頻率,產生1~100 kHz頻率的激勵信號;電流流過皮膚之后,由于不同人手掌處的生物信息不一樣,所以得到的響應也不一樣,可以讀取芯片的阻抗轉換信息并進行計算。圖 5即為一個生物電阻抗采集的電路實例圖。

2.2 識別結果
實驗開始之前,告知測試者測量過程不會對身體產生傷害,獲得了測試者的知情同意。利用上述采集系統,對18名測試者(10名男生,8名女生)進行了手掌處生物電阻抗的測量;每天上午10點測量一次,每次測3組數據取平均值,連續測量5 d;激勵電流頻率從1 kHz開始,按1 kHz的步進變化到100 kHz,得到18個人的5組生物電阻抗譜數據,如圖 6所示。

由于生物組織對50 kHz左右的激勵電流的響應最好,根據本實驗的實測情況,選取8~16 kHz、16~32 kHz、32~64 kHz三個頻率段所對應的斜率作為3個特征參數,得到18個人的特征參數(取正值)K1、K2、K3,如表 1所示。

將該特征參數歸一化到[-1, 1]之間作為識別指標,網絡層數設為3層,輸入節點數設為3(即特征值數),輸出層節點數為18,即為18種不同身份的人;由經驗公式(式中m為中間層節點數,n為輸入層節點數,l為輸出層節點數),中間層節點數初設為7,根據實際訓練結果進行修改;隱含層、輸出層采用S型的對數函數(logsig),該函數可以輸出任意設定結果。對于網絡的訓練參數,學習速率初值定為0.01,訓練過程中會變化,防止波動太大,也利于快速收斂;目標函數誤差設為1×10-10。為了克服網絡的學習和記憶具有不穩定性,在訓練好算法后,把網絡的參數值固定下來;并且考慮到網絡產生一個局部最小值的情況不可避免,為了減小其可能性,采取了交叉驗證的方法,多次訓練和驗證,得到較優解。
首先將18組均作為訓練集進行測試,得到的結果如表 2所示。

表 2中,表格中間矩陣表明第i個人經過訓練好的神經網絡之后識別為第j個人的概率。例如,第一列的向量[0.97,0.00,0.00,0.00,0.00,0.00,0.02,0.00,0.00,0.00,0.00,0.00,0.00,0.02,0.00,0.00,0.00,0.00]的含義是,第1個人識別為第1個人的概率為0.97,識別為第7個人的概率為0.02,識別為第14個人的概率為0.02,識別為其他人的概率是0,所以綜合結果是成功識別出第一個人。結果表明,18個人均得到識別,準確率達到100%。
上述結果表明,利用生物電阻抗可以識別出經過BP神經網絡訓練的人,但是實際應用過程中,會有陌生人進入系統,那么,識別算法還應該識別出未曾經過BP神經網絡訓練的人。將18組數據分為訓練集(12組)和測試集(6組),建立BP神經網絡模型,通過訓練集對網絡進行訓練,通過測試集來驗證網絡的準確性,這里的測試集對應于陌生人。引入四個指標:“正檢數-訓練集”表示訓練集中分辨出來的個數;“誤檢數-訓練集”作為訓練集中未分辨出的個數;“正檢數-測試集”作為測試集中檢驗正確的個數,即本來不是系統中的人識別為系統中不存在該人;“誤檢數-測試集”作為測試集中檢驗錯誤的個數,即本來不是該系統中的人反而識別為該人存在于系統中。多次訓練BP神經網絡得到的結果如表 3所示。

第1次訓練結果中,訓練集的識別率較低(9人識別正確,3人識別錯誤),測試集識別率較高(5人識別正確,1人識別錯誤);第2次訓練結果中,訓練集的識別率較高(11人識別正確,1人識別錯誤),測試集識別率較低(1人識別正確,5人識別錯誤)。上述結果表明,當原網絡(訓練集12組)訓練得很精確時,BP神經網絡出現了過擬合現象,陌生人(測試集6組)進入該網絡時誤檢率將會提高,這就需要在原網絡準確性和測試網絡識別率之間進行權衡。
為了進行權衡,采用交叉驗證的方法,將12組樣本作為訓練集,將6組樣本作為測試集,每組樣本包括5份數據,分別代表一個人5天的生物電阻抗的測量值,不斷更換訓練集和測試集,用這些模型最終的驗證集分類準確率的平均數作為分類器的性能,得到結果如圖 7所示。

圖 7是神經網絡交叉驗證之后的各個集合的訓練準確率。以左上角的小圖為例,橫坐標是目標輸出值Target,設定為0.1和0.9,分別對應目標值0和1, 選取0.1和0.9作為目標輸出比0和1模型更容易收斂,計算速度快,縱坐標為實際輸出值Output;函數Output≈0.95*Target+0.007 2描述了目標輸出與實際輸出之間的關系;從圖中可以看出,目標輸出為0.1的點最后實際輸出集中在0.1附近,目標輸出為0.9的點最后實際輸出集中在0.9附近,說明了識別有較高的準確性。圖中左上角為訓練集(Training)的準確率,它是指訓練集的綜合準確率,達到97.62%;右上角為驗證集(Validation)的準確率,它是指驗證集的綜合準確率,達到88.79%;左下角為測試集(Test)的準確率,它是指通過前面的訓練和驗證之后,選取其中最好的一組結果參數,將模型固定下來之后的測試準確率,達到86.34%(此時的訓練集識別率很高);右下圖是指綜合(All)的識別準確率為94.22%。也就是說,對于參加實驗的18個人識別的平均準確率為97.62%,對于一個陌生人,該模型能夠識別出他是一個陌生人的平均概率為88.79%;當選取最好的一組訓練和驗證的參數之后,對于一個陌生人,該模型能夠識別出他是一個陌生人的概率為86.34%。總之,整體的識別準確率為94.22%。
3 討論與結論
生物電阻抗反映了生物體內部的生理特征,利用生物電阻抗特征進行身份識別有以下幾大特點:①普遍性:生物電阻抗反映的是每個活體個體的身體內部生物特征信息;②唯一性:個體生物電阻抗之間的差異主要受年齡、體重、性別、健康狀況、皮膚血流量、溫度等影響,不同人的生物電阻抗信息具有唯一性,保證了生物電阻抗信息可以用來進行身份識別;③穩定性:個體成年后,身體結構等基本定型,只要沒有發生病變,生物電阻抗特性也基本保持穩定;④可測量性:生物電阻抗采集設備逐步向微型化、便攜化和高精度方向發展,特別是生物電阻抗專用芯片的使用,使得生物電阻抗的采集和測量更為方便。
本文利用AD5933芯片設計二電極阻抗采樣電路,采集生物阻抗頻譜,選取8~16 kHz、16~32 kHz、 32~64 kHz三個頻率段所對應的斜率作為3個特征參數。如果增加特征參數,可以預計準確率會進一步提高,但是由于更多的特征參數也可能會提高運算的復雜度,提高硬件的運算時間,識別時間將會大大延長。另外,本文后期會進行實驗驗證一些新特征參數,如利用Cole模型來提取生物電阻抗譜的特征參數,以期進一步提高識別率。
目前進行身份識別研究最多的生物特征是指紋、虹膜、人臉、聲音等,利用生物電阻抗進行身份識別的研究很少。本文將18個樣本分為訓練集和測試集進行交叉驗證,結果顯示利用人體手掌的生物電阻抗特征進行身份識別的準確率為94.22%。
本文為了提高識別速度,選取了斜率作為特征值,計算量大大減小,識別速度得以提高。同時,利用斜率的特性可以減少直接使用阻抗值帶來的環境變化的影響,提高算法的魯棒性。利用阻抗識別技術被欺騙的程度較難,因為阻抗反映的是生物體組織的特性,不易復制,差異性大。當然,應用到成千上萬個人的識別的時候,可能會出現識別誤差,需要繼續研究如何從阻抗譜中提出更多特征參數來進一步提高識別率。
本文利用阻抗進行識別的方法為身份識別提供了一個簡單有效的補充技術。未來隨著識別率的提高,還可以用來設計生物阻抗身份識別芯片,通過觸摸即可進行身份的識別。
引言
生物電阻抗(bioelectrical impedance)是一種電信號通過生物機體時反映出的阻抗特征。生物組織包括細胞內液、細胞外液和細胞膜,當低頻電信號施加于生物體時,電信號將以任意一種可能的方式繞過細胞,主要流經細胞外液;當施加于生物組織電信號的頻率增加時,一部分電流將穿過細胞膜流經細胞內液。人體組織的電學特性可由生物電阻抗模型描述。它是反映生物整個機體或其構成部分,即活體生物組織、器官、細胞或整個生物體電學性質的物理量[1]。生物電阻抗的測量是利用生物組織與器官的電特性,提取與人體生理相關信息的一種無損傷檢測技術。該方法具有無創、廉價、安全、操作簡單和信息豐富等特點,因此在醫學界受到眾多專家學者的重視,有著廣泛的應用前景[2]。
目前生物電阻抗的研究主要集中在醫療健康領域的細胞或組織的識別,通過不同健康狀況的細胞或組織的生物電阻抗特性來進行病變與否的辨識,而利用生物電阻抗技術來進行身份識別的研究目前還比較少。陳曉艷等[3]利用阻抗頻譜理論,對手術中切除的惡性腫瘤組織及非腫瘤組織進行阻抗測量并進行肺癌辨識,識別結果與病理切片分析結果吻合。杜大莉[2]重點研究乳腺癌組織與正常組織(腺體和脂肪組織)電特性差異,從組織頻阻特性曲線中尋找特征參數,對乳腺組織進行識別。趙舒等[4]采用生物電阻抗技術從人體上腹部體表提取電阻抗信號,對20名糜爛性胃炎患者的胃阻抗和胃電信號進行研究,經一周治療后,采用以小波能量熵為特征向量的向后傳播(back propagation, BP)神經網絡對治療前后的識別正確率為80%。哈佛醫學院的Rutkove[5]指出了生物電阻抗技術來進行身份識別的可能性。
本文利用人體手掌的生物電阻抗特征進行身份的識別,研究了生物電阻抗的采集系統,對識別算法進行了探究。
1 特征參數和模式識別
1.1 特征參數
生物體的阻抗特征是隨著激勵電流頻率的變化而變化的,常見的生物體電阻抗模型為三元件模型[5], 如圖 1所示。

當激勵電流頻率較低時,電流流過細胞外液,阻抗較大;當電流頻率提高時,電流穿透細胞膜,阻抗變小。為了利用生物電阻抗信息對身份進行識別,需要從生物電阻抗頻譜中提取出特征參數。林新等[6]利用Cole經驗公式來得到直流時的阻抗、頻率無窮大時的阻抗值、散射系數(dispersion parameter)、組織的特征頻率等特征參數。杜大莉[2]采用生物電阻抗曲線在特殊頻段內的斜率值和多個連續頻段內的斜率值作為特征參數。本文選取8~16 kHz、 16~32 kHz、32~64 kHz三個頻率段所對應的斜率作為3個特征參數,如圖 2所示,圖中橫坐標是刺激電流的頻率,縱坐標是測得的阻抗。

1.2 模式識別
神經網絡理論(neural network)是在現代神經科學的基礎上提出和發展起來的,它反映的是人腦結構及功能的一種抽象數學模型[7]。它能夠應用于無法用規律描述的分類情景,在模式識別中有很強的生命力。由于電阻抗譜的非線性特性,并且人體組織內部影響阻抗因素較為復雜,本文選擇BP神經網絡算法來對人的身份進行識別。
BP神經網絡一般由輸入層、隱含層和輸出層組成,一個3層的BP網絡可以完成任意n維到m維的映射[8],可以完成較為復雜的模式識別功能,一個典型的神經網絡結構如圖 3所示。

圖中:xj表示輸入層第j個節點的輸入;j=1, …, M;wij表示隱含層第i個節點到輸入層第j個節點之間的權值;θi表示隱含層第i個節點的閾值;Φ(x)表示隱含層的激勵函數;wki表示輸出層第k個節點到隱含層第i個節點之間的權值,i=1, …, q;ak表示輸出層第k個節點的閾值, k=1, …, L;ψ(x)表示輸出層的激勵函數; Ok表示輸出層第k個節點的輸出。
分類器的功能就是依據由某個X產生的輸出O來判斷X屬于哪一類,而BP神經網絡分類器的功能是將具有n維特征的樣本分類為m維模式中的某一類。將樣本分為訓練集和驗證集,首先利用BP神經網絡對訓練樣本進行學習,計算實際輸出與期望輸出的匹配度;再將實際輸出與期望輸出的差異反饋,以調整網絡的權重,即對BP神經網絡進行訓練,訓練后的網絡就可用于對輸入的測試樣本進行分類[4]。
所謂誤差的反向傳播,即首先由輸出層開始逐層計算各層神經元的輸出誤差,然后根據誤差梯度下降法來調節各層的權值和閾值,使修改后的網絡的最終輸出能接近期望值。
對于每一個樣本p的二次型誤差準則函數為Ep:
$ {E_p} = \frac{1}{2}\sum\limits_{k = 1}^L {{{\left( {{T_k} - {o_k}} \right)}^2}} $ |
式中Tk為理想輸出。系統對P個訓練樣本的總誤差準則函數為:
$ E = \frac{1}{2}\sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {{{\left( {T_k^p - o_k^p} \right)}^2}} } $ |
根據誤差梯度下降法依次修正輸出層權值的修正量Δwk1,輸出層閾值的修正量Δak,隱含層權值的修正量Δwij,以及隱含層閾值的修正量Δθi。
$ \Delta {w_{ki}} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {y_i} $ |
$ \Delta {a_k} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) $ |
$ \Delta {w_{ij}} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {w_{ki}} \bullet \Phi '\left( {ne{t_i}} \right) \bullet {x_j} $ |
$ \Delta {\theta _i} = \eta \sum\limits_{p = 1}^P {\sum\limits_{k = 1}^L {\left( {T_k^p - o_k^p} \right)} } \bullet \psi '\left( {ne{t_k}} \right) \bullet {w_{ki}} \bullet \Phi '\left( {ne{t_i}} \right) $ |
本文采用BP神經網絡模型,具有簡單、易行、計算量小、并行性強等優點,目前是神經網絡訓練采用最多也是最成熟的訓練算法之一。
2 阻抗采集系統與識別結果
2.1 阻抗采集系統
常用的生物電阻抗采集系統包括二電極法和四電極法,本文利用AD5933芯片設計了一個二電極生物電阻抗采集系統,具有準確、測量簡單、低成本的特點。該系統包括輸入模擬端、濾波采樣、阻抗變換、DDS波形產生、恒流源模擬輸出端,如圖 4(a)所示。圖 4(b)所示是手掌電阻抗檢測具體部位示意圖,為了進行身份識別,類似于指紋識別,需要手的觸摸來采集信號,所以本文采取手掌處的阻抗值作為識別的依據,符合實際使用場景。因為電阻抗采集的是電流流經細胞的特性,反映的是組織內部的特性,并且選取了8~16 kHz、16~32 kHz、32~64 kHz三個頻率段所對應阻抗值的斜率作為3個特征參數,都是相對參數,因此消除了手掌紋路、手掌干濕程度、手掌接觸方法等因素的影響。同時,雖然二電極法測量過程中存在接觸阻抗,但是本文采取的識別指標是三個斜率,求取斜率的過程中要相減,因此消除了接觸阻抗的影響;接觸阻抗的不同會使得阻抗譜曲線沿著Y軸平移,但是三段頻率處的斜率不會改變。

(a)生物電阻抗采集電路圖;(b)手掌電阻抗檢測示意圖
Figure4. Bioelectrical impedance data collection system(a) circuit diagram of bioelectrical impedance data collection; (b) schematic diagram of palm bioelectrical impedance test
利用STM32與AD5933芯片進行配合,控制ADC的采樣精度以及DDS輸出信號的頻率,產生1~100 kHz頻率的激勵信號;電流流過皮膚之后,由于不同人手掌處的生物信息不一樣,所以得到的響應也不一樣,可以讀取芯片的阻抗轉換信息并進行計算。圖 5即為一個生物電阻抗采集的電路實例圖。

2.2 識別結果
實驗開始之前,告知測試者測量過程不會對身體產生傷害,獲得了測試者的知情同意。利用上述采集系統,對18名測試者(10名男生,8名女生)進行了手掌處生物電阻抗的測量;每天上午10點測量一次,每次測3組數據取平均值,連續測量5 d;激勵電流頻率從1 kHz開始,按1 kHz的步進變化到100 kHz,得到18個人的5組生物電阻抗譜數據,如圖 6所示。

由于生物組織對50 kHz左右的激勵電流的響應最好,根據本實驗的實測情況,選取8~16 kHz、16~32 kHz、32~64 kHz三個頻率段所對應的斜率作為3個特征參數,得到18個人的特征參數(取正值)K1、K2、K3,如表 1所示。

將該特征參數歸一化到[-1, 1]之間作為識別指標,網絡層數設為3層,輸入節點數設為3(即特征值數),輸出層節點數為18,即為18種不同身份的人;由經驗公式(式中m為中間層節點數,n為輸入層節點數,l為輸出層節點數),中間層節點數初設為7,根據實際訓練結果進行修改;隱含層、輸出層采用S型的對數函數(logsig),該函數可以輸出任意設定結果。對于網絡的訓練參數,學習速率初值定為0.01,訓練過程中會變化,防止波動太大,也利于快速收斂;目標函數誤差設為1×10-10。為了克服網絡的學習和記憶具有不穩定性,在訓練好算法后,把網絡的參數值固定下來;并且考慮到網絡產生一個局部最小值的情況不可避免,為了減小其可能性,采取了交叉驗證的方法,多次訓練和驗證,得到較優解。
首先將18組均作為訓練集進行測試,得到的結果如表 2所示。

表 2中,表格中間矩陣表明第i個人經過訓練好的神經網絡之后識別為第j個人的概率。例如,第一列的向量[0.97,0.00,0.00,0.00,0.00,0.00,0.02,0.00,0.00,0.00,0.00,0.00,0.00,0.02,0.00,0.00,0.00,0.00]的含義是,第1個人識別為第1個人的概率為0.97,識別為第7個人的概率為0.02,識別為第14個人的概率為0.02,識別為其他人的概率是0,所以綜合結果是成功識別出第一個人。結果表明,18個人均得到識別,準確率達到100%。
上述結果表明,利用生物電阻抗可以識別出經過BP神經網絡訓練的人,但是實際應用過程中,會有陌生人進入系統,那么,識別算法還應該識別出未曾經過BP神經網絡訓練的人。將18組數據分為訓練集(12組)和測試集(6組),建立BP神經網絡模型,通過訓練集對網絡進行訓練,通過測試集來驗證網絡的準確性,這里的測試集對應于陌生人。引入四個指標:“正檢數-訓練集”表示訓練集中分辨出來的個數;“誤檢數-訓練集”作為訓練集中未分辨出的個數;“正檢數-測試集”作為測試集中檢驗正確的個數,即本來不是系統中的人識別為系統中不存在該人;“誤檢數-測試集”作為測試集中檢驗錯誤的個數,即本來不是該系統中的人反而識別為該人存在于系統中。多次訓練BP神經網絡得到的結果如表 3所示。

第1次訓練結果中,訓練集的識別率較低(9人識別正確,3人識別錯誤),測試集識別率較高(5人識別正確,1人識別錯誤);第2次訓練結果中,訓練集的識別率較高(11人識別正確,1人識別錯誤),測試集識別率較低(1人識別正確,5人識別錯誤)。上述結果表明,當原網絡(訓練集12組)訓練得很精確時,BP神經網絡出現了過擬合現象,陌生人(測試集6組)進入該網絡時誤檢率將會提高,這就需要在原網絡準確性和測試網絡識別率之間進行權衡。
為了進行權衡,采用交叉驗證的方法,將12組樣本作為訓練集,將6組樣本作為測試集,每組樣本包括5份數據,分別代表一個人5天的生物電阻抗的測量值,不斷更換訓練集和測試集,用這些模型最終的驗證集分類準確率的平均數作為分類器的性能,得到結果如圖 7所示。

圖 7是神經網絡交叉驗證之后的各個集合的訓練準確率。以左上角的小圖為例,橫坐標是目標輸出值Target,設定為0.1和0.9,分別對應目標值0和1, 選取0.1和0.9作為目標輸出比0和1模型更容易收斂,計算速度快,縱坐標為實際輸出值Output;函數Output≈0.95*Target+0.007 2描述了目標輸出與實際輸出之間的關系;從圖中可以看出,目標輸出為0.1的點最后實際輸出集中在0.1附近,目標輸出為0.9的點最后實際輸出集中在0.9附近,說明了識別有較高的準確性。圖中左上角為訓練集(Training)的準確率,它是指訓練集的綜合準確率,達到97.62%;右上角為驗證集(Validation)的準確率,它是指驗證集的綜合準確率,達到88.79%;左下角為測試集(Test)的準確率,它是指通過前面的訓練和驗證之后,選取其中最好的一組結果參數,將模型固定下來之后的測試準確率,達到86.34%(此時的訓練集識別率很高);右下圖是指綜合(All)的識別準確率為94.22%。也就是說,對于參加實驗的18個人識別的平均準確率為97.62%,對于一個陌生人,該模型能夠識別出他是一個陌生人的平均概率為88.79%;當選取最好的一組訓練和驗證的參數之后,對于一個陌生人,該模型能夠識別出他是一個陌生人的概率為86.34%。總之,整體的識別準確率為94.22%。
3 討論與結論
生物電阻抗反映了生物體內部的生理特征,利用生物電阻抗特征進行身份識別有以下幾大特點:①普遍性:生物電阻抗反映的是每個活體個體的身體內部生物特征信息;②唯一性:個體生物電阻抗之間的差異主要受年齡、體重、性別、健康狀況、皮膚血流量、溫度等影響,不同人的生物電阻抗信息具有唯一性,保證了生物電阻抗信息可以用來進行身份識別;③穩定性:個體成年后,身體結構等基本定型,只要沒有發生病變,生物電阻抗特性也基本保持穩定;④可測量性:生物電阻抗采集設備逐步向微型化、便攜化和高精度方向發展,特別是生物電阻抗專用芯片的使用,使得生物電阻抗的采集和測量更為方便。
本文利用AD5933芯片設計二電極阻抗采樣電路,采集生物阻抗頻譜,選取8~16 kHz、16~32 kHz、 32~64 kHz三個頻率段所對應的斜率作為3個特征參數。如果增加特征參數,可以預計準確率會進一步提高,但是由于更多的特征參數也可能會提高運算的復雜度,提高硬件的運算時間,識別時間將會大大延長。另外,本文后期會進行實驗驗證一些新特征參數,如利用Cole模型來提取生物電阻抗譜的特征參數,以期進一步提高識別率。
目前進行身份識別研究最多的生物特征是指紋、虹膜、人臉、聲音等,利用生物電阻抗進行身份識別的研究很少。本文將18個樣本分為訓練集和測試集進行交叉驗證,結果顯示利用人體手掌的生物電阻抗特征進行身份識別的準確率為94.22%。
本文為了提高識別速度,選取了斜率作為特征值,計算量大大減小,識別速度得以提高。同時,利用斜率的特性可以減少直接使用阻抗值帶來的環境變化的影響,提高算法的魯棒性。利用阻抗識別技術被欺騙的程度較難,因為阻抗反映的是生物體組織的特性,不易復制,差異性大。當然,應用到成千上萬個人的識別的時候,可能會出現識別誤差,需要繼續研究如何從阻抗譜中提出更多特征參數來進一步提高識別率。
本文利用阻抗進行識別的方法為身份識別提供了一個簡單有效的補充技術。未來隨著識別率的提高,還可以用來設計生物阻抗身份識別芯片,通過觸摸即可進行身份的識別。