為什么神經網絡在生命游戲中掙扎
2022年2月11日整理發布:生命游戲是一個基于網格的自動機,在有關科學、計算和人工智能的討論中非常流行。這是一個有趣的想法,它展示了非常簡單的規則如何產生非常復雜的結果。
然而,盡管生命游戲很簡單,但對人工神經網絡來說仍然是一個挑戰,斯沃斯莫爾學院和洛斯阿拉莫斯實驗室的人工智能研究人員在最近的一篇論文中表明。他們的研究標題為“神經網絡很難學習生命游戲”,調查了神經網絡如何探索生命游戲,以及為什么他們經常錯過找到正確的解決方案。
他們的發現突出了深度學習模型的一些關鍵問題,并為人工智能社區的下一個研究方向提供了一些有趣的提示。
什么是生命游戲?
數學家約翰康威在 1970 年發明了生命游戲。基本上,生命游戲跟蹤網格上一系列單元格跨時間步長的開啟或關閉狀態(生命)。在每個時間步長,以下簡單的規則定義了哪些細胞會復活或保持活力,哪些細胞會死亡或保持死亡:
如果一個活細胞的存活鄰居少于兩個,它就會死于人口不足。
如果一個活細胞有超過三個活的鄰居,它就會死于人口過剩。
如果一個活細胞恰好有兩個或三個活的鄰居,它就會存活下來。
如果一個死細胞有三個活著的鄰居,它就會復活。
基于這四個簡單的規則,您可以調整網格的初始狀態以創建有趣的穩定、振蕩和滑動模式。
例如,這就是所謂的滑翔機槍。
您還可以使用生命游戲來創建非常復雜的圖案,例如這個。
生命復雜模式的游戲
有趣的是,無論網格變得多么復雜,您都可以使用相同的規則預測下一個時間步中每個單元格的狀態。
由于神經網絡是非常好的預測機器,研究人員想了解深度學習模型是否可以學習生命游戲的基本規則。
人工神經網絡與生命游戲
生命游戲是神經網絡的一個有趣實驗有幾個原因。“我們已經知道一個解決方案,”斯沃斯莫爾學院計算機科學專業的學生、該論文的合著者 Jacob Springer 告訴TechTalks。“我們可以手寫一個實現生命游戲的神經網絡,因此我們可以將學習到的解決方案與我們手工制作的解決方案進行比較。情況并非如此。”
通過修改目標深度學習模型必須預測的未來時間步數,也很容易調整生命游戲中問題的靈活性。
此外,與計算機視覺或自然語言處理等領域不同,如果神經網絡學習了生命游戲的規則,它將達到 100% 的準確率。“沒有歧義。如果網絡甚至出現一次故障,那么它就沒有正確地學習規則,”斯普林格說。
在他們的工作中,研究人員首先創建了一個小型卷積神經網絡并手動調整其參數,以便能夠預測生命游戲網格單元的變化順序。這證明了有一個最小的神經網絡可以代表生命游戲的規則。
然后,他們試圖查看相同的神經網絡在從頭開始訓練時是否可以達到最佳設置。他們將參數初始化為隨機值,并在 100 萬個隨機生成的生命游戲示例上訓練神經網絡。神經網絡可以達到 100% 準確度的唯一方法是收斂于手工制作的參數值。這意味著人工智能模型已經成功地將生命游戲的規則參數化。
但在大多數情況下,經過訓練的神經網絡并沒有找到最優解,隨著步數的增加,網絡的性能甚至進一步下降。訓練神經網絡的結果很大程度上受所選的訓練樣本集以及初始參數的影響。
不幸的是,你永遠不知道神經網絡的初始權重應該是多少。最常見的做法是從正態分布中選擇隨機值,因此確定正確的初始權重是一種運氣游戲。至于訓練數據集,在許多情況下,不清楚哪些樣本是正確的,而在其他情況下,沒有太多選擇。
“對于很多問題,你在數據集中沒有太多選擇;你得到了可以收集的數據,所以如果你的數據集有問題,你可能無法訓練神經網絡,”Springer 說。