在這個演算法中,每次學習不再針對所有的訓練集,而是從訓練集中隨機選擇一部分來計算C(w,b,下一次學習再從剩下的訓練集中隨機選擇一部分來計算,直到把整個訓練集用光。然後再不斷重複這一過程。
深度神經網路(具有多個ayer)比淺層神經網路有更多結構上的優勢,它有能力從多個層次上進行抽象。
從上個世紀八九十年代開始,研究人員們不斷嘗試將隨機梯度下降演算法應用於深度神經網路的訓練,但卻碰到了梯度消失(vanisoding gradient的問題,導致學習過程異常緩慢,深度神經網路基本不可用。
然而,從2006年開始,人們開始使用一些新的技術來訓練深度網路,不斷取得了突破。這些技術包括但不限於:
採用卷積網路(convolutional networks;
Regularization dropout;
Rectified linear units;
利用GPU獲得更強的計算能力等。
深度學習的優點顯而易見:這是一種全新的程式設計方式,它不需要我們直接為要解決的問題設計演算法和程式設計,而是針對訓練過程程式設計。
網路在訓練過程中就能自己學習到解決問題的正確方法,這使得我們可以用簡單的演算法來解決複雜的問題,而且在很多領域勝過了傳統方法。
而訓練資料在這個過程發揮了更重要的作用:簡單的演算法加上覆雜的資料,可能遠勝於複雜的演算法加上簡單的資料。
深度網路往往包含大量的引數,這從哲學原則上不符合奧卡姆剃刀原則,通常人們要在調整這些引數上面花費巨大的精力;
訓練深度網路需要大量的計算力和計算時間;
過擬合(Overfitting問題始終伴隨著神經網路的訓練過程,學習過慢的問題始終困擾著人們,這容易讓人們產生一種失控的恐懼,同時也對這項技術在一些重要場合的進一步應用製造了障礙。
而BetaCat的故事,所講的就是一個人工智慧程式,透過自我學習,最終逐漸統治世界的故事。
那麼,現在的人工智慧技術的發展,會導致這種情況發生嗎?這恐怕還不太可能。一般人認為,大概有兩個重要因素:
第一,以現在的人工智慧來說,它的自我學習還是限定在人們指定的方式,只能學習解決特定的問題,仍然不是通用的智慧。
第二,現在對於人工智慧的訓練過程,需要人們為其輸入規整化的訓練資料,系統的輸入輸出仍然對於資料的格式要求很嚴格,這也意味著,即使把人工智慧程式連到網上,它也不能像BetaCat那樣對於網際網路上海量的非結構化資料進行學習。
然而這僅僅是對普通的人工智慧,但是對起源這樣真正的網路智慧生命來說,以上兩點要求它完全都能夠做到。