- 飛槳PaddlePaddle深度學(xué)習(xí)實(shí)戰(zhàn)
- 劉祥龍等編著
- 617字
- 2020-09-28 17:21:36
2.5.3 模型概覽
處理好數(shù)據(jù)后,就可以開始為模型設(shè)計(jì)假設(shè)函數(shù)和損失函數(shù)了。2.5.1節(jié)中已經(jīng)為大家介紹了假設(shè)函數(shù)、損失函數(shù)和優(yōu)化算法的基本概念。下面將在房?jī)r(jià)預(yù)測(cè)的例子中進(jìn)一步學(xué)習(xí)其設(shè)置規(guī)則,在房?jī)r(jià)數(shù)據(jù)集中,與房屋相關(guān)的值共有兩個(gè),一個(gè)用來描述房屋面積,即模型中的xi;另一個(gè)為我們要預(yù)測(cè)的該類房屋價(jià)格的中位數(shù),即模型中的yi。因此,我們模型的假設(shè)函數(shù)如式(2-4)所示:
其中,表示模型的預(yù)測(cè)結(jié)果,用來與真實(shí)值Y區(qū)分。模型要學(xué)習(xí)的參數(shù)即a和b。
建立模型后,我們需要給模型一個(gè)優(yōu)化目標(biāo),使得學(xué)到的參數(shù)能夠讓預(yù)測(cè)值盡可能地接近真實(shí)值Y。輸入任意一個(gè)數(shù)據(jù)樣本的目標(biāo)值Yi和模型給出的預(yù)測(cè)值
i,損失函數(shù)輸出一個(gè)非負(fù)的實(shí)值,這個(gè)實(shí)值通常用來反映模型誤差的大小。
對(duì)于線性回歸模型來講,最常見的損失函數(shù)就是均方誤差(Mean Squared Error,MSE),如式(2-5)所示:
即對(duì)于一個(gè)大小為n的測(cè)試集,MSE是n個(gè)數(shù)據(jù)預(yù)測(cè)結(jié)果誤差平方的均值。
定義好模型結(jié)構(gòu)之后,我們要通過以下幾個(gè)步驟進(jìn)行模型訓(xùn)練。
1)初始化參數(shù),其中包括權(quán)重a和偏置b,對(duì)其進(jìn)行初始化。
2)從當(dāng)前值開始計(jì)算模型輸出值和損失函數(shù)。
3)利用梯度下降的方法處理損失函數(shù),在尋找損失函數(shù)極小值的過程中依次更新模型中的參數(shù)。
4)重復(fù)步驟2~3,直至網(wǎng)絡(luò)訓(xùn)練誤差達(dá)到規(guī)定的程度或訓(xùn)練輪次達(dá)到設(shè)定值。
對(duì)于步驟3,若將損失函數(shù)定義為J(ωi),則梯度下降的函數(shù)表達(dá)式為
,“:=”是賦值符號(hào),α是每次迭代的學(xué)習(xí)率,通過設(shè)置學(xué)習(xí)率可以更改每次下降的步長(zhǎng),使結(jié)果收斂。
- The Android Game Developer's Handbook
- Spring Cloud Alibaba微服務(wù)架構(gòu)設(shè)計(jì)與開發(fā)實(shí)戰(zhàn)
- 程序設(shè)計(jì)與實(shí)踐(VB.NET)
- 神經(jīng)網(wǎng)絡(luò)編程實(shí)戰(zhàn):Java語言實(shí)現(xiàn)(原書第2版)
- SEO實(shí)戰(zhàn)密碼
- SAS數(shù)據(jù)統(tǒng)計(jì)分析與編程實(shí)踐
- SharePoint Development with the SharePoint Framework
- Mastering JavaScript High Performance
- Android程序設(shè)計(jì)基礎(chǔ)
- C# 8.0核心技術(shù)指南(原書第8版)
- PLC應(yīng)用技術(shù)(三菱FX2N系列)
- Visual Studio Code 權(quán)威指南
- UML2面向?qū)ο蠓治雠c設(shè)計(jì)(第2版)
- C++從入門到精通(第6版)
- Learning iOS Security