什麼是神經網路

2021-09-30 18:15:00 字數 1602 閱讀 5482

在高中我們學習過線性回歸,假設有一堆樣本,包含了六棟房子的資訊,包括房屋面積和房屋**,想用房屋面積估計房屋**,也就是說想建立乙個房屋**y和房屋面積x之間的函式。

高中的時候怎麼做的?因為只有x和y兩個變數,先畫個xoy座標系,把樣本點(x,y)畫上去,最後觀察這些點是否在一條直線的附近。如果在的話,那麼我們可以進行線性回歸;不在那就不能直接用線性回歸了。

話說a同學就是沒觀察出來咋整?有個理論可以幫助你x和y適不適合建立關係,這個理論叫pearson相關係分析,它可以根據樣本資料幫你計算出自變數和因變數之間相關性程度。

假設我們x和y符合線性回歸的條件,那麼把y和x的函式關係求出來的過程就是回歸,或者叫擬合。

但是,我們假設的是符合線性回歸,那麼不符合的呢?咋辦?我們知道,數學裡最簡單的函式是線性函式和多項式函式,如果不滿足線性回歸,可以通過數學手段轉換成線性回歸。比如y和x的散點圖有點像y = x * x這種圖,我們可以進行兩端取對數,即 logy = 2 * logx,可以先把(logx,logy)進行散點圖,就會近似在一條直線上,那麼對(logx,logy)進行線性回歸,從而對(x,y) 進行擬合。

說道神經網路必須要提到神經元,因為神經網路就是由神經元組成的。神經元說成大白話就是乙個線性累加器。基本結構如下。

在圖中,a1、a2、a3作為神經的輸入,w1、w2、w3作為a1、a2、a3的權重,z節點代表累加操作。即z = w1x1 + w2x2 + w3x3 。這是最簡單的神經元,也是最簡單的神經網路,三個輸入,乙個輸出。

當然神經網路可以有多個輸入多個輸出,但是都是乙個數學模型,比如下面這個圖:

在圖中,a1、a2、a3作為神經的輸入,輸出有兩個z1、z2,權重已經在圖中標出。值得注意的是,權重的第乙個下標表示第幾個輸出,第二個下標表示第幾個輸入。

向上圖這種每兩層之間的神經元兩兩相連,稱之為全連線神經網路。

此外我們可以看出,以上的神經網路只是乙個多元線性模型,而且僅僅是線性模型,並不是所有的模型都是線性模型,也並不是所有的問題都能用線性模型來解決。為了解決非線性問題,引入了啟用函式。

現代神經網路對上述說的那些神經網路增加了非線性函式的功能,如下圖所示:

我們稱非線性函式為啟用函式,用於把線性資料轉變為非線性資料的函式。其中有三種常用的啟用函式,分別是sigmod函式、tanh函式和relu函式,函式影象如下圖所示:

通過啟用函式讓神經網路可以處理非線性問題,當然啟用函式的選擇還有有門路的。

注意:我們經常在輸入的時候會加乙個偏置項b,那麼神經網路模型一般是z = w1x1 + w2x2 + w3x3 + b;當然也可以寫成矩陣形式z = aw+b,如果新增了啟用函式f,那麼z = f(aw+b)

說了半天,神經網路是什麼鬼,是乙個數學模型。

什麼是神經網路?

神經網路是一種計算機模型或者數學模型,是存在於計算機的神經系統,由大量的神經元相連線並進行計算,在外界資訊的基礎上,改變內部的結構,常用來對輸入和輸出之間複雜的關係進行建模。下面這張圖就是乙個神經網路系統,它由很多層組成。輸入層負責接收資訊,比如乙隻貓的。輸出層是計算機對這個輸入資訊的判斷結果,它是...

什麼是神經網路?

它從資訊處理角度對人腦神經元網路進行抽象,模擬生物神經網路建立某種簡單模型,按不同的連線方式組成不同的網路。人工神經網路與生物神經網路不同的是它的神經元網路是初始存在的。它分為輸入層,輸出層 當然這期間也有隱藏層 輸入層是獲取相關資料資訊,輸出層進行資訊整合進而輸出結果。那麼神經網路是怎麼工作的呢?...

什麼是迴圈神經網路

在這篇文章中,我們會聊一聊語言分析,序列化資料中穿梭自如的迴圈神經網路。那麼首先第乙個問題,rnn是幹什麼的呢?他和普通的神經網路有什麼不同呢?我們接下來會一一進行 首先我們來想一下賈伯斯,現在給你一張賈伯斯的 不出意外,你應該會脫口而出他的名字,因為你很有可能就正在使用他的一款產品。那麼現在先拋開...