旅行商問題[1] 是優(yōu)化算法的試金石。 可以使用多種方法進行求解。比如下面是Will Campbell ?利用遺傳算法求解美國各州首府旅行商問題[2] 的動態(tài)過程。利用神經網絡中的自組織映射網絡(SOFM),連續(xù)Hopfield網絡也可以進行求解。
▲ 使用遺傳算法求解旅行商問題
下面是利用自組織特征映射(SOFM)用于求解十個地點中間的旅行商問題的過程。在SOFM網絡的競爭層采用首尾相連的一維拓撲結構,學習速率從0.3線性降低到0, 學習半徑從2線性減小到0。200步訓練過程網絡對應的位置的演變過程如下圖所示:
在上述搜索過程中,對于每個搜索節(jié)點增加了隨機噪聲和定向游動,提高了網絡搜索的能力。
前面使用SOFM網絡進行優(yōu)化,應用的是自組織特征映射網絡的“保序特性”,也就是網絡的競爭層的神經元相互之間的拓撲結構與對應訓練樣本在數據空間中的分布上保持有相似的關系。
比如下面使用來自于三角形內均勻分布的數據點訓練一維拓撲結構的SOFM,隨著訓練過程的收斂競爭網絡中的神經元逐步擴展到數據所在的三角形。
下面顯示的是二維拓撲結構的SOFM網絡在來自于 區(qū)間隨機采樣的數據訓練下的收斂情況。
下面是一次訓練扭曲的分布結果:
上面的自組織特征映射網絡是來自于對競爭算法(WTA:勝者為王)的改進。下面顯示的是兩個節(jié)點的競爭網絡節(jié)點位置(紅點)在五個訓練樣本(藍點)作用下競爭的結果。
簡單的使用競爭算法,可以完成對于數據內部規(guī)律的學習。
比如下面是三個神經網絡初始的位置。
使用下面帶有噪聲的C,I,T字符進行訓練。三個神經元便可以分別演化到C,I,T的平均結果。
經過100次競爭學習之后他們最終演變的形狀。
在競爭的結果上,再增加一層映射,便可以去逼近函數。下面顯示的是單相對偶傳播網絡(CPN)逼近Hermit函數的演變過程。
增加競爭神經元節(jié)點的個數,使用雙向CPN可以進一步提高逼近函數的效果。
對于神經網絡,如果只是依靠競爭(無導師訓練)所能夠達到的精度會受到數據量和分布的影響。對于只有少數數據量的場景,只有競爭往往是無法達到很好的效果的,除非是一個天才。
適當引入導師信號可以在小樣本下提高學習的效果。這就是學習矢量量化網絡(LVQ)優(yōu)勢。下面是一個極端的例子,可以看到LVQ網絡對于小樣本下的學習能力是非常強的。
對于復雜的非線性映射,最有效的方式就是通過淺層網絡的隨機梯度下降,來獲得較為可靠的訓練結果。
下面是MATLAB中的Peaks二維函數。
采集到一些離散的數據,對于有隱層網絡進行訓練。如果數據采集的足夠多,分布的足夠合理,可以很快獲得其中的映射關系。
下圖顯示了一個網絡在訓練過程中對應的輸入輸出關系演變過程。
公眾號留言
卓大大,這周末規(guī)則值得我們擁有嗎?
免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!