盧曉建, 張曉康, 王 賓, 張 強, 魏小鵬
(1.大連大學 軟件工程學院, 遼寧 大連 116622; 2.大連理工大學 計算機科學與技術學院, 遼寧 大連 116024)
DNA計算是用DNA分子求解復雜問題的新型計算方法,具有超強的并行處理能力及可編程性[1-2].1994年Adleman[3]首次利用DNA堿基互補配對原則建立了一個DNA計算模型,并利用該模型成功求解了七點旅行商問題.這是第一次利用DNA進行特定目的的計算,但當時技術水平有限,計算結果往往需要幾十個小時來讀取,而且合成DNA的成本非常高.盡管當時條件受限,DNA計算仍引起越來越多學者的興趣,同時越來越多的學者投入到DNA計算的領域之中.各種所謂的DNA計算器等器件被構建出來[4],但這些計算器只是一種特異性的器件,不具備太多的通用性.20世紀初左右,DNA計算逐漸成型,進入發展階段,學者開始利用DNA構建基礎的邏輯門,并將不同級邏輯門級聯構建復雜的邏輯電路[5],最終實現較為通用的DNA計算.但在這個階段,學者們面臨很多棘手的問題,例如,DNA反應形成的產物穩定,很難進行信號的傳遞;邏輯門是否能建立成功;邏輯門運行結果如何檢測等.為了解決這些問題,人們利用各種金屬離子、酶等非DNA物質對邏輯門進行處理[6],但效果都不是很好,沒能從根本上解決這些問題.自2006年以來,DNA計算走向通用化計算階段.2006年,Seelig等[7]提出“立足點介導-鏈置換”的反應體系,這種反應體系不僅會輸出雙鏈結構,還能輸出一條單鏈用于信號傳遞.利用這種DNA鏈置換技術構建的AND邏輯系統以及更加復雜的邏輯門電路,成功地將立足點、分支遷移和鏈置換理論結合在一起,為構建模擬或混合電路提供了技術性支持.DNA鏈置換作為一種動態DNA納米技術,可以實現生化反應的級聯以及納米尺度的運動或能量轉換,基于此,學者們對DNA鏈置換的研究也越來越多.DNA鏈置換技術被廣泛應用于生化邏輯電路[8]、生物醫療[9]和DNA納米機器人[10]等多個領域.2011年Qian等[11]利用DNA鏈置換建立了集成門、扇出門和閾值門等多種Seesaw門,并延伸出各種復雜的DNA生化系統[12-13].DNA計算發展至今已經取得了很多突破性的進展,大大促進了生物計算的發展與應用,是人類不可多得的寶貴財富.
人工神經網絡是模擬大腦神經元構建的某種簡化模型,具有聯想存儲、自學習、高速尋找優化解等很多優點.到目前為止,已經提出上百種人工神經網絡模型,在自動控制、信號處理、模式識別、故障檢測、醫學和經濟等領域展現出強大的適用性,并成功解決了許多實際生活中的難題[14],具有廣闊的發展前景.目前,關于DNA計算的研究已經涉及許多方面,其中將DNA計算與人工神經網絡相結合,實現DNA分子的“智能”計算是一個重要研究方向.2011年Winfree研究組以DNA鏈置換為基礎,用112種不同的DNA鏈級聯組成含有4個完全連接神經元的霍普菲爾德神經網絡,可以通過生化反應實現“猜心術”的游戲[15].這是第一次用DNA分子在試管中構造出人工神經網絡,為DNA計算的發展提供了新的研究思路.然而霍普菲爾德神經網絡在實現“猜心術”游戲時,網絡規模較大.之后,Genot等[16]利用DNA分子搭建了一個競爭神經網絡,可以實現類似霍普菲爾德神經網絡的功能,即用較少的DNA鏈實現了“猜心術”游戲.2018年,Cherry等[17]用Seesaw門搭建了winner-take-all神經網絡,該神經網絡可以解決一個經典的機器學習問題:識別手寫數字.這標志著DNA計算在通往人工智能的道路上邁出了重要一步.上述神經網絡只是用DNA生化反應實現了神經網絡的工作過程,其學習訓練過程是由電子計算機完成的,并非一個完整的人工神經網絡.所以,現在也有很多學者嘗試用DNA分子實現神經網絡權值的動態調整,即開發適應動態環境的DNA生化系統[18-19].
DNA分子神經網絡是DNA計算與人工智能的結合體,既有DNA計算強大的并行處理能力,也有人工智能的“推理思考”能力,所以利用DNA分子搭建各種神經網絡是實現智能DNA生物計算機的一項重要工作.這種具有人工智能的DNA生化系統可以在化學檢測、醫療診斷等領域發揮不可估量的作用.在未來,或許也可以創造出完全有機的人體機器人.本文旨在將DNA鏈置換技術與雙向聯想記憶(BAM)神經網絡[20]結合起來,利用Seesaw門搭建雙向聯想記憶神經網絡,從而在納米尺度上實現雙向聯想記憶功能,展現DNA分子的“自主聯想記憶”能力.在本文中,每個神經元由兩個不同Seesaw門級聯組成,然后不同的神經元繼續級聯組成完整的神經網絡.對于訓練完成的BAM神經網絡,如果給予足夠的信息,經過DNA生化反應可以準確地聯想到其他相關信息.本文用Seesaw門構建了兩個BAM神經網絡.第一個是根據三原色的加減色原理搭建了一個含有6神經元的BAM神經網絡.第二個BAM神經網絡含有18個神經元,該網絡可以在3*3節點中實現簡單的字符聯想記憶.
神經網絡的一個重要分支是聯想記憶網絡,BAM神經網絡是應用較為廣泛的一種聯想記憶神經網絡模型,它的最大特點是可以實現雙向異聯想.該網絡是一種雙層雙向的神經網絡,有離散型、連續型和自適應型等多種形式.本文采用的是離散型BAM神經網絡,網絡兩層的狀態向量可取單極性二進制1或0,也可以取雙極性離散值1或-1.BAM神經網絡的信息傳播是雙向的,沒有明確的輸入層或輸出層,通過從動態到穩態的過程來實現雙向聯想功能.當向其中一層加入輸入信號時,另一層可以得到輸出信號.將其中的一層稱為X層,另一層稱為Y層.X層到Y層的權值矩陣與Y層到X層的權值矩陣互為轉置矩陣.對已建立權值矩陣的BAM神經網絡,在X層輸入樣本XP后,經過雙向往返過程,一直進行到兩層神經元的狀態均不再發生變化為止,此時的網絡狀態稱為穩態,對應的Y層輸出向量YP便是模式XP經雙向聯想后所得的結果.同理,如果從Y層輸入樣本YP,經過上述的雙向聯想過程,X層將輸出聯想結果XP.BAM神經網絡采用灌輸式的學習方式,特別之處在于網絡的權值一旦設計好就不再變動,其學習是一次性的,而不是一個反復訓練的過程.所以,可以先設計一個訓練完成的BAM神經網絡,然后再根據設計好的權值矩陣,用Seesaw門級聯組成完整的DNA神經網絡,進而實現DNA分子的智能雙向聯想記憶.
以DNA鏈置換反應為基礎的Seesaw門主要有扇出門、集成門、閾值門和放大門等.在Seesaw門的左右兩端可以進行信號鏈的輸入和輸出.不同的Seesaw門可以相互級聯,搭建成各種不同的邏輯電路.本文BAM網絡中的每一個神經元前半部分為一個集成門,后半部分為一個帶閾值的扇出門,如圖1所示.每個神經元的輸入和輸出個數可以根據需要靈活組合,神經元前半部分集成門的輸出鏈作為后半部分扇出門的輸入鏈繼續反應,而且只有當集成門的輸出值大于扇出門的閾值時,扇出門才會有輸出.


圖1 Seesaw門搭建神經元示意圖Fig.1 Seesaw gates building neuron schematic

本文在設計BAM神經網絡時,一個棘手的問題就是設計神經網絡的權值矩陣.在設計權值矩陣時,首先根據需記憶的樣本模式利用外積和法求解出帶負值的權值矩陣,然后再將帶負值的權值矩陣轉換為雙軌制的非負權值,進而根據雙軌制的非負權值設計Seesaw門反應電路.
Visual DSD是一款設計、分析DNA鏈置換反應的重要軟件,本文所有的DNA生化反應都是在Visual DSD中仿真實現的.筆者在設計BAM神經網絡時采用的反應參數如下:3個堿基長度toehold的結合速率常數為5×10-5nM-1S-1,解離速率常數為26 S-1;其他toehold的結合速率常數為 2×10-3nM-1S-1,解離速率常數為1.3 S-1;泄漏反應速率常數為1×10-8nM-1S-1,1個單位濃度為25 nM.
三原色有多種劃分標準,常用的有色光三原色和顏料三原色.其中,色光三原色是指紅、綠、藍三色,顏料三原色是指青、品紅、黃三色.色光三原色符合加色法原理,其中任意兩種顏色按一定比例混合就可以呈現出青、品紅、黃三色中的某種顏色.顏料三原色符合減色法原理,其中任意兩種顏色按一定比例混合就可以呈現出紅、綠、藍三色中的某種顏色.配色表如表1所示,配色圖見圖2.

表1 色光三原色和顏料三原色的加減色配色表

圖2 三原色配色圖Fig.2 Three primary color scheme
色光三原色的加色法原理與顏料三原色的減色法原理可以巧妙地利用雙向聯想功能來實現,本文用Seesaw門設計了一個含有6神經元的BAM神經網絡,并以此展示DNA分子實現雙向異聯想的能力.
在設計BAM神經網絡時,將網絡分為X層和Y層(圖3),每層包括三個神經元,X層的三個神經元x1、x2和x3分別代表紅、綠和藍三色,Y層的三個神經元y1、y2和y3分別代表青、品紅和黃三色.比如,當在X層輸入紅色和綠色時,根據加色法原理,會在Y層輸出黃色;當在X層只輸入紅色時,根據減色法原理,會在Y層輸出品紅色和黃色.同樣的,在Y層輸入青色和品紅色時,在X層可以輸出藍色;在Y層只輸入青色時,在X層可以輸出藍色和綠色.

圖3 三原色BAM神經網絡簡化結構圖
圖4為該BAM神經網絡的Seesaw門反應電路圖.

圖4 三原色BAM神經網絡Seesaw門反應電路圖Fig.4 Seesaw gates response circuit diagram with three primary color BAM neural network


表2 三原色BAM網絡加減色原理真值表

表3 代表每種顏色興奮、抑制狀態的DNA鏈編號
在用此BAM神經網絡實現三原色加減色原理時,紅色、綠色和藍色混合形成白色與青色、品紅色和黃色混合形成黑色的功能暫時無法實現.本文利用Visual DSD軟件對其余12種可能情形進行仿真實驗,仿真結果見圖5和圖6.從圖中結果可以看出,每次實驗都有6條有效輸出鏈和6條無效輸出鏈,結果符合三原色的加減色原理.

圖5 在X層輸入信號時的仿真結果Fig.5 Simulation results when inputting at the X layer

圖6 在Y層輸入信號時的仿真結果Fig.6 Simulation results when inputting at the Y layer
BAM神經網絡的一個重要應用就是字符的識別及聯想,字符識別及聯想在日常工作生活中應用很廣.本文用Seesaw門設計了一個可以實現字符聯想的BAM神經網絡,如圖7所示.

圖7 3*3節點儲存的兩對聯想字符

本文設計了兩種BAM網絡來實現字符的聯想記憶,第一種是將兩個網格按列劃分,X層的第一列和Y層的第一列對應設計一個含有6神經元的BAM神經網絡,每層包含3個神經元.以此類推,總共設計了3個6神經元的BAM神經網絡,這3個BAM網絡組成一個整體,實現字符之間的聯想記憶功能.第二種是設計一個18神經元的BAM神經網絡,每層包含9個神經元,分別代表每個網格中的9個節點.相應的Seesaw門反應電路圖分別見圖8和圖9(封二).這兩種字符聯想實現方式的真值表分別見表4和表5.

圖9 18神經元BAM神經網絡的Seesaw門反應電路圖Fig.9 Seesaw gate response circuit diagram of the 18-neuron BAM neural network

表4 3個6神經元字符聯想BAM神經網絡真值表

表5 18神經元字符聯想BAM神經網絡真值表

圖8 3個6神經元BAM神經網絡的Seesaw門反應電路圖


圖10 3個6神經元字符聯想BAM神經網絡仿真結果Fig.10 Three 6-neuron character association BAM neural network simulation results

圖11 18神經元字符聯想BAM神經網絡仿真結果Fig.11 18-neuron character association BAM neural network simulation results
本文用Seesaw門級聯組成單個神經元,再將多個神經元構建為完整的神經網絡. Seesaw門的獨特反應機制,可以實現反饋型神經網絡,完成一個由動態到穩態的過程.本文最復雜的BAM神經網絡一共有18個神經元,如果將雙軌運算中的神經元也算入其中,那就是36個神經元組成的龐大神經網絡,其中包含大約240條DNA鏈.就仿真結果而言,即使最復雜的BAM神經網絡,得到的結果依然準確、穩定,展現出DNA分子強大的運行能力,同時也反應出DNA分子在組建智能生物計算機中的巨大潛力.然而本文實現BAM神經網絡的過程并非是用DNA分子獨立實現的.神經網絡的運行一般分為學習訓練和工作兩個階段,本文中BAM神經網絡采用灌輸式學習方式,可以通俗地理解為“死記硬背”,其學習過程是一次性的.學習訓練過程并非由DNA生化反應完成,只是通過DNA分子實現了神經網絡的工作過程.為了使DNA分子更加智能化,未來工作的重點是用DNA生化反應實現神經網絡的學習訓練過程,繼而實現完整的DNA分子神經網絡.另外,本文在設計BAM神經網絡時,采用雙軌運算的方式彌補DNA計算負值運算的不足,復雜度較常規神經網絡大,所以,在未來工作中希望找到代替雙軌運算的方法,以減小神經網絡的復雜度.