機器學習與神經網路概念學習

2021-10-06 20:41:15 字數 1391 閱讀 4565

神經網路是進行機器學習的方式之一,也是目前使用最廣泛的方式。

機器學習的目的是根據已有的資料來**未知的結果。

通過已有的資料建立模型,在模型下進行**,模型的可靠性決定**結果的準確率。

如何建立更優的模型,是機器學習主要關注的問題。

神經網路模擬人腦處理資料的過程,將資料作為輸入,每一層對資料的處理模擬為神經元之間資訊的加工傳遞。

當使用機器學習來解決具體任務時,機器並不了解原始資料的哪幾項特徵對於**有效。一般需要對資料預處理,將干擾資訊除去;提取有效特徵;對特徵進行再加工,降維或公升維。

對於不同特徵,它對於結果的影響有大有小,用權重w表示。

對於一組特徵值的輸入,其結果是否有效,需要乙個統一標準來衡量;舉個例子:a認為70分是優秀,而b認為70分是良好,需要統一標準來衡量判斷標準70分。這在神經網路中用偏差值b來表示,反應了閾值高低。

**結果與真實值存在差異,差異的大小用損失函式來進行計算。基本的損失函式有0-1函式(即非黑即白);也有平方損失函式,對兩者差值進行計算。無論何種損失函式,其目的都是用來衡量模型與真實值的差異。

引數:引數是模型定義的變數,體現為模型使用的標準。比如,引數規定幾個資料分為一組;規定迭代次數;規定每次移動的步長等等。

超引數:可以理解為引數的引數,控制模型引數分布的引數。

通過機器學習獲得的模型,是在訓練資料中最優解的一組解。在尋找最優解的過程中,有許多演算法。比如基於貪心的梯度下降法(每次向最快下降的方向移動)

偏差:是指乙個模型總體和最優的差異。(大方向準不准)

方差: 是指不同訓練集間的差異,可以用來衡量乙個模型是否容易過擬合(小部隊齊不齊)

當偏差較大時,是模型出了問題,可以增加特徵,提高複雜度修改模型

當方差較大時,是擬合出了問題,可以降低模型複雜度

機器學習演算法:

監督式學習:

每個樣本都有標籤,說明了特徵與結果的關係

無監督學習:

沒有標籤,自動學習有效資訊

強化學習:

互動式進行學習,不需要對輸入輸出明顯規定

啟用函式:

不使用啟用下,比如y=aw+b 其結果是線性的,在二維表示中為一條直線

啟用函式對於輸出結果進行處理。

對於線性計算的結果,通過啟用函式將其對映到對應點,在二維中表示為一條曲線。可以理解為將直線進行扭曲。

梯度與方向導數:

方向導數:函式沿某一方向的變化快慢

梯度:乙個向量,其方向上的方向導數最大,某一點梯度的模等於該點的最大方向導數

正向模式與反向模式:

優化演算法中,尋求最優解需要計算梯度,一般採用鏈式求導法則進行計算,

正向傳播自下向上進行計算,即先計算第一層再計算第二層,再計算第三層,最後得到結果。

反向模式:先通過正向遍歷計算圖求出每個節點的值,然後通過反向遍歷整個圖,計算出每個節點的偏導

機器學習 神經網路

神經網路中最基本的成分是 神經元 模型,在生物神經網路中,每個神經元與其他神經元相連,當他 興奮 時,就會向相連的神經元傳送化學物質,從而改變這些神經元類的電位 如果某神經元的電位超過乙個 閾值 那麼他就會被啟用。將上述描述當成乙個數學模型 m p神經元模型,神經元接收來自n個神經元傳遞過來的輸入訊...

機器學習 神經網路

序列模型屬於通用模型的一種,因為很常見,所以這裡單獨列出來進行介紹,這種模型各層之間是依次順序的線性關係,在第k層合第k 1層之間可以加上各種元素來構造神經網路這些元素可以通過乙個列表來制定,然後作為引數傳遞給序列模型來生成相應的模型。01 keras model sequential.py fro...

機器學習 神經網路

人工神經網路被用於處理大量輸入以及非線性問題。與回歸方法不同,回歸方法只能處理未知數組成的多項式構成的線性問題,即只能處理簡單的關於未知數多項式的非線性問題。而神經網路利用多層網路這一優勢,能夠處理複雜的非線性問題。theta 的維數為s times s j 1 如上圖所示,分類問題分為兩種 對於這...