1. 程式人生 > >CNN學習之旅[2]之第一次加副標題的BP演算法理解

CNN學習之旅[2]之第一次加副標題的BP演算法理解

在訓練神經網路的演算法中,BP演算法可以說是經典中的經典。

這裡所有的啟用函式都用Sigmoid,該函式有一個性質

f(x)=f(x)(1f(x)) 這個性質等下會用到。
yˆ表示訓練樣例的標籤。
E表示損失,E=12(yˆy)2

從最基礎情況開始說明:
1
最底下一層為輸入層,上面一層是輸出層,輸出層的輸入為a,輸出為y, 偏移量為θ ,則

y=f(a+θ)
設輸入層神經元與輸出層的權值分別為w1,w2,w2,所以a=w1x1+w2x2+w3x3
BP演算法最重要的部分是求 Δw , 以 w1 為例,w1 先影響輸出層的輸入a,從而對輸出層輸出產生影響,最終影響 E,則可以得:
E
w1
=Eyyaaw1

Ey=yˆy
ya=y(1y)f(x)=f(x)(1f(x))(a+θ)a=1
aw1=x1
所以:
Ew1=(yˆy)y(1y)x1

然後是較為複雜的情況:
2
同樣以w11為例,w11先影響a1,再影響y1,得:

Ew11=Ey1y1a1a1w11 Ey1=y1ˆy1
y1a1=y1(1y1)
a1w11=x1
Ew11=(y1

相關推薦

CNN學習[2]第一副標題BP演算法理解

在訓練神經網路的演算法中,BP演算法可以說是經典中的經典。 這裡所有的啟用函式都用Sigmoid,該函式有一個性質 f′(x)=f(x)(1−f(x)) 這個性質等下會用到。 yˆ表示訓練樣例的標籤。 E表示損失,E=12∑(yˆ−y)2 從最基礎情

一、WCF學習-創建第一個服務

img image pub 頁面 添加服務 ets art idt null WCF基本介紹:http://baike.baidu.com/link?url=TGjLYt3HS4dt4-hIiGRknLy6udRsZ52QxJz9cmRKlR4NXbP9rCZDsKn2fD

java學習-2

通過 operator 表達 加減 class sta println 就是 方法 最近看了一些java的,可是很多都和C的一樣,比如++,--的前置和後置,簡單的四則運算(加減乗除)也沒什麽說的,還有三目(三元)運算符“?”的使用方法也是和C的用法一樣。不過在學習三目運算

python學習2(函式進階)

目錄  楔子  名稱空間和作用域  函式巢狀及作用域鏈  函式名的本質  閉包  本章小結 楔子 假如有一個函式,實現返回兩個數中的較大值: def my_max(x,y): m = x if x>y else y return mbigger

python學習2(函數進階)

tuple emp 作用 pen dba cell spl reat HERE 目錄  楔子  命名空間和作用域  函數嵌套及作用域鏈  函數名的本質  閉包  本章小結 楔子 假如有一個函數,實現返回兩個數中的較大值: def my_max(x,y): m

Html5學習(2)元素

元素 b元素:這是 <b>HTML5</b> 教程<br> strong元素:這是 <strong>HTML5</strong> 教程<br> wbr元素,這裡填充一下:Thisisa<wbr&g

大資料學習2——從零開始搭hadoop完全分散式叢集

前言        本文從零開始搭hadoop完全分散式叢集,大概花費了一天的時間邊搭邊寫部落格,一步一步完成完成叢集配置,相信大家按照本文一步一步來完全可以搭建成功。需要注意的是本文限於篇幅和時間的限制,也是為了突出重點,一些很基礎的操作就不再詳細

Linux學習筆記第三周第一課(2月5日)

etc col .com mark ueditor bin shell 信息 互傳 2.27linux和windows互傳文件用xshell軟件#yum install -y lrzszlinux傳到windows,命令為#sz a.txt 按提示保存到windowswin

iOS 判斷是否是第一開啟app

/** App判斷第一次啟動的方法 */ NSString *key = @"isFirst"; BOOL isFirst = [[NSUserDefaults standardUserDefaults] boolForKey:key]; if (!isFir

父與子的程式設計2——easygui

1、要用EasyGui顯示一個訊息框,可以使用msgbox(),如下:   easygui.msgbox("This is the answer!") 2、要用EasyGui得到一個字串輸入,要用enterbox,如下:   easygui = easygui.enterbox("What is you

Python從白雞到大佬(2)

本博文為系列性博文,如果是像我一樣的小白起步的話,強烈建議從0看起   Python物件型別及其運算     Python程式中儲存的所有資料都是圍繞物件這個概念展開的         程式中儲存的所有資料都是物件         每個物件都有一個身份,一個型別和一

菜鳥的微服務(2)---springBoot(上)

springboot是spring團隊推出的全新框架。相信有所耳聞的人都不陌生,那麼一些理論的定義介紹我就不再闡述了。本文主要從quick start和常用框架(redis,activeMQ,mybatis)整合共兩個部分來進行筆記記錄。 第一部分 Quick start

Python學習17--生成器2斐波拉契數列

def fib(count): n,before, after = 0,0,1 for i in range(count): before, after = after, before+after yield before#替代了print(befor

Shader2:四宮格畫面實現

書寫本文的初衷是為了自我反省記錄。如有表達不當,請批評指正 首先貼出shader程式碼。這段程式碼是實現相機拍攝畫面四宮格的實現。分別傳入不同的channel 0 1 2 3。然後將UV進行切割分為四塊填入四個channel uniform float selected_

Linux下PHP開發-2.開發環境相關設定探索

一.預設目錄在哪兒? 開始時面對該xampp整合開發環境的相關配置有點不知所錯,於是便先想著找httpd.conf,通過該檔案,對該整合環境的配置檔案關係有了大致瞭解,具體操作如下; cd /opt/lampp/etc vi httpd.conf 預設ServerName

WebView爬坑2--a標籤是target="_blank"時建立新視窗

如果網頁裡連結的a標籤是target=”_blank”,而碰巧你的WebView又沒有處理,那這個時候就會出現狂點連結/button頁面卻無動於衷的情況,給人想砸手機的感覺… 好了,解決方案其實也挺簡

PHP核心-2.SAPI中的Cli

PHP 核心之旅系列 一、SAPI是什麼? 1.1 理解SAPI (1)SAPI是PHP框架的介面層。有很多種伺服器的SAPI的實現,程式碼在sapi資料夾下。常見的介面抽象層實現有:cgi,apache2,cli,embed,fpm。 (2)各個伺服器遵循著相同的約定,每個伺服器的SAP

PDFium-PDF開源(2)——執行除錯pdfium自帶的測試程式

PDFium-PDF開源之旅(2) ——執行除錯PDFium自帶的測試程式 趁熱打鐵週末,總算有時間繼續啦。廢話少說,切入正題. 編譯執行pdfium_test.exe 下載程式碼之後,原想直接寫個Demo,認真看了工程,PDFium是有自帶一個測試程式的,叫pdfium_

Android直播開發(2):深度解析H.264編碼原理

 (碼字不易,轉載請申明出處:http://blog.csdn.net/andrexpert/article/details/71774230 ) 前 言     在學習H.264編碼之前,我們先了解一下在視訊直播的過程中,如果Camera採集的YUV影象不做任何處理

DotnetCore(2)---swagger的簡單使用

ati ice span dds host end read uil soft swagger swagger用於可視化api,並可實現對api格式化說明以及測試。 使用swagger 首先通過nuget引入Swashbuckle.AspNetCore(切記不是swa