深度學習這個字指的是訓練神經網路。深代表著非常大的神經網路。那麼神經網路到底是什麼呢?看了這篇文章後你就會有很直觀的認識了。本文主要介紹了簡單了解什麼是神經網絡,具有一定借鏡價值,需要的朋友可以參考下。
我們從房價預測的範例開始吧。因為現在房價太他媽貴了,早8年前我父母說幫我在北京買個房,我覺得不能靠家裡人,所以拒絕了,現在想想,我就是個傻逼,那時候買了,我現在就不用寫部落格了~~
據說房價都是國人自己炒的,但除了炒作,還是有些真實因素影響著房價的,透過對這些因素進行分析,我們就可以預測房價。假設你有一個資料集(六個房屋的面積和價格)。你想要找到一個方法(即建立一個函數)來透過面積預測價格。如果你熟悉線性迴歸(不熟悉也沒關係,你就把它看作是一個數學理論),那麼可以根據這個理論在實際數據附近畫出一條直線,如上圖中紅色的線,它附近的藍色的小圓圈代表六個房子的面積與房價對應的點,即根據這條線(這個函數)來找某一個面積對應的房價,那麼除了些誤差外,基本上是準的。另外我們知道價格永遠不會是負的,除非你是黑社會,佔了別人的房子還要讓別人給你錢。所以,當面積為零,價格也是零,所以上面的直線要拐個彎。你可以把上面這個根據面積來預測價格的函數看成一個非常簡單的神經元網路(這幾乎是最簡單的神經元網路)。如右邊的圖,黃色的圈為一個神經元,房子的大小為x,它作為輸入進入這個神經元,然後神經元輸出房價y。
在神經網路相關文獻中,你會經常看到這個函數(上面紅色的線)。這個函數在一定時間內為0,然後突然起飛飆升。它被稱為線性單元函數(ReLU ,全稱為rectified linear unit)。現在不懂沒有關係,後面慢慢就懂了!
上面用面積預測房價的例子是一個單神經元的小得不能再小的神經網絡,透過將多個這樣的神經元堆疊在一起就可以形成更大的神經網絡。你可以認為一個神經元就像一個積木塊,你可以透過將許多這樣的積木塊堆疊在一起來獲得一個更大的神經網路。就房價的例子來說,如上圖,影響房價的因素不只面積,還有例如臥室的數量。除了面積,臥室的數量也決定了房子是否適合你的家庭,例如家裡有3個人或5個人。另一個因素是郵遞區號。郵遞區號在這裡代表了地理位置,地理位置繁華,那么生活會方便一些。然後還有一個因素是學校品質等級,在中國素有學區房一說。這些因素,我們也稱之為特徵。根據面積以及臥室的數量,可以推算是否滿足家庭大小。根據郵遞區號,可以估算生活便利性,包括去學校的便利性。最後學校等級可以評估教育品質。人們在買房子時會考慮這四個因素,即它們決定了房價,還有他媽的炒作,這裡我們暫時忽略炒作這個因素吧。所以在這個例子中,x是代表了這4個輸入,y是要預測的價格。上面左圖是我們人為分析的過程,我們分析出哪些輸入會影響家庭大小的匹配度、生活便利性、教育質量,進而得出心中的價格。神經網路之所以神奇的一點是,我們只需要提供輸入x(面積,臥室數量…)以及想要得到的結果y(房價),以及用於訓練的真實數據(上面六個房子的面積,臥室數量…以及價格),那麼中間部分的家庭大小匹配度、生活便利性、教育品質都會由神經網路自己根據實際資料訓練而得出,如右圖。當你再次輸入第7個房子的特徵(面積,郵編…)後,這個神經網路會根據之前訓練好的中間部分給出你最終的房價。即神經網路的內部過程取代了人類的分析過程。再舉一個例子,例如當我們教小孩子認識貓時,我們拿來一些白貓,告訴他這是貓,再拿來一些黑貓,告訴他這也是貓,然後拿來一些狗,告訴他這不是貓,最後拿來一些花貓,問他,他會告訴你這是貓,但他是怎麼知道的?這個中間的判斷過程是怎麼樣的呢?我們不知道。這就是為什麼說神經網路很恐怖的原因——它的工作原理太像人類了——我們都不知道它內部具體是如何運作的,即我們不知道它是怎麼想的,就像我們不知道小孩具體是如何分辨貓和狗的。馬斯克說人工智慧很危險,可能毀滅人類也不無道理。
上面所說的中間部分的神經元稱為隱藏神經元。可能你注意到了,右圖的神經網路中,每一個隱藏神經元都獲取了所有特徵輸入。左圖中,是我們人的分析過程,我們分析出面積和臥室數這兩個特徵與家庭大小有關,而在右圖中,我們把所有特徵都提供給每個隱藏神經元,讓神經網路自己來分析哪些特徵會從哪些方面影響房價。說不定神經網路的分析比人類更有效率更全面,之前看過一個新聞,Facebook的神經網路自己發明了一種溝通方式,因為它覺得用人類的語言溝通起來效率太低~~
#相關推薦:
以上是什麼是神經網路?的詳細內容。更多資訊請關注PHP中文網其他相關文章!