編碼原理是對編碼的屬性及其各自適用于具體應用的方法研究。編碼用于數(shù)據(jù)壓縮,加密,糾錯和網(wǎng)絡。編碼在各種科學學科(如信息理論,電氣工程,數(shù)學,語言學和計算機科學)都有研究 -旨在設計高效可靠的數(shù)據(jù)傳輸方法。這通常涉及去除冗余以及發(fā)送數(shù)據(jù)中的錯誤的校正或檢測。實現(xiàn)編碼的具體方法和電路很多,方法有低速編碼和高速編碼、線性編碼和非線性編碼;電路有逐次比較型、級聯(lián)型和混合型編碼。 編碼原理按照應用來分可以分為算術(shù)編碼原理,音頻編碼原理、圖像編碼原理、字符編碼原理等。

編碼原理造價信息

市場價 信息價 詢價
材料名稱 規(guī)格/型號 市場價
(除稅)
工程建議價
(除稅)
行情 品牌 單位 稅率 供應商 報價日期
絕對值編碼 BVS58N-011AVR0NN-0013 查看價格 查看價格

倍加福

13% 上海百策自控技術(shù)有限公司
增量式編碼 RVP510 查看價格 查看價格

易福門

13% 易福門電子(上海)有限公司
公園簡介及地圖 公園簡介及地圖(戶外高清噴涂 廣告畫) 有專業(yè)公司制作及安裝 具體內(nèi)容有業(yè)主確定 查看價格 查看價格

m2 13% 佛山市南海區(qū)美錦廣告有限公司
公園簡介及地圖 公園簡介及地圖(戶外高清噴涂 廣告畫) 有專業(yè)公司制作及安裝 具體內(nèi)容有業(yè)主確定 查看價格 查看價格

m2 13% 佛山市銘策廣告工藝有限公司
編碼 HZ830 查看價格 查看價格

13% 上海鴻真電子有限公司(湖州市廠商期刊)
編碼 PGM8000 查看價格 查看價格

依愛

13% 蚌埠依愛消防電子有限責任公司(湖州市廠商期刊)
手持編碼 TX6930 查看價格 查看價格

13% 深圳市泰和安科技有限公司
人文社科科學系簡介更換內(nèi)容 2400mm×1200mm,室外高精度寫真畫面,帶背膠 查看價格 查看價格

m2 13% 成都市眾之藝展覽展示有限公司
材料名稱 規(guī)格/型號 除稅
信息價
含稅
信息價
行情 品牌 單位 稅率 地區(qū)/時間
防爆編碼接口 LD-8340(EX) 查看價格 查看價格

湛江市2005年1月信息價
防爆編碼接口 LD-8340(EX) 查看價格 查看價格

湛江市2005年2月信息價
防爆編碼接口 LD-8340(EX) 查看價格 查看價格

湛江市2005年1月信息價
防爆編碼接口 LD-8340(EX) 查看價格 查看價格

湛江市2005年2月信息價
編碼中斷器 GST-LD-8319 查看價格 查看價格

茂名市2009年8月信息價
編碼中斷器 GST-LD-8319 查看價格 查看價格

茂名市2009年6月信息價
編碼中斷器 GST-LD-8319 查看價格 查看價格

茂名市2009年5月信息價
編碼中繼器 GST-LD-8319 查看價格 查看價格

茂名市2008年11月信息價
材料名稱 規(guī)格/需求量 報價數(shù) 最新報價
(元)
供應商 報價地區(qū) 最新報價時間
公園簡介及地圖 公園簡介及地圖(戶外高清噴涂 廣告畫) 有專業(yè)公司制作及安裝 具體內(nèi)容有業(yè)主確定|6.4m2 3 查看價格 佛山市金鴻源展示制品有限公司    2015-11-19
人物簡介 1.內(nèi)容:方形人物簡介2.方形尺寸與個數(shù):360×180mm×10個3.底板材質(zhì):10mm厚亞克力板雕刻成型4.表面加工:噴漆后UV噴印,上光油5.黏結(jié)方式:玻璃膠粘貼6.安裝方式:機具、人工、制作安裝|10個 2 查看價格 四川甲骨文標識制作有限責任公司 四川   2019-12-18
數(shù)學原理 制作原型轉(zhuǎn)盤,轉(zhuǎn)盤內(nèi)按照數(shù)學定理設計不同形狀液體容器和管道,觀眾旋轉(zhuǎn)轉(zhuǎn)盤,通過觀察其中定量液體形態(tài)及珠子走向形態(tài)等變化,了解勾股定理、圓錐與圓柱以及概率的數(shù)學原理|1項 1 查看價格 鴻瑞工美(深圳)實業(yè)有限公司 全國   2022-10-24
數(shù)學原理 制作原型轉(zhuǎn)盤,轉(zhuǎn)盤內(nèi)按照數(shù)學定理設計不同形狀液體容器和管道,觀眾旋轉(zhuǎn)轉(zhuǎn)盤,通過觀察其中定量液體形態(tài)及珠子走向形態(tài)等變化,了解勾股定理、圓錐與圓柱以及概率的數(shù)學原理|1項 1 查看價格 安徽東一特電子技術(shù)有限公司 全國   2022-09-16
數(shù)學原理 制作原型轉(zhuǎn)盤,轉(zhuǎn)盤內(nèi)按照數(shù)學定理設計不同形狀液體容器和管道,觀眾旋轉(zhuǎn)轉(zhuǎn)盤,通過觀察其中定量液體形態(tài)及珠子走向形態(tài)等變化,了解勾股定理、圓錐與圓柱以及概率的數(shù)學原理|1項 1 查看價格 安徽盛鴻展覽工程有限公司 全國   2022-08-15
四級標題字(簡介) 1、材料品種、規(guī)格、顏色:專業(yè)定制四級標題字(簡介)|1套 1 查看價格 四川省新元素藍宇廣告有限公司 四川  成都市 2016-07-19
四級標題字(簡介) 1、材料品種、規(guī)格、顏色:專業(yè)定制四級標題字(簡介)|1套 1 查看價格 四川省新元素藍宇廣告有限公司 四川  成都市 2016-07-19
喬木品種簡介 1、喬木品種簡介牌 鍍鋅鋼2、規(guī)格:長200,高100,厚53、大樣及其他要求:詳圖紙|20個 3 查看價格 廣州冠慶廣告有限公司 廣東  佛山市 2022-07-01

這里主要介紹線性編碼有關內(nèi)容

線性編碼

術(shù)語代數(shù)編碼理論表示編碼原理的子領域,其編碼性質(zhì)以代數(shù)術(shù)語表示,然后進一步研究 。

代數(shù)編碼理論基本上分為兩大類代碼:

線性分組碼

卷積碼

它分析一個編碼的以下三個特性-主要是:

碼字長度

有效代碼字總數(shù)

兩個有效代碼字之間的最小距離,主要使用漢明距離,有時也使用其他距離像Lee距離。

線性分組碼

線性分組碼具有的特性的線性度,即,任何兩個碼字的總和也是一個編碼字,并且它們被應用到組的源比特中,因此稱為線性分組碼。有分組碼不是線性的,但是很難證明編碼是沒有這個屬性的編碼。

線性分組碼由其符號字母(例如,二進制或三元)和參數(shù)(n,m,

)組成,其中

n是碼字的長度,以符號表示,

m是將一次用于編碼的源符號的數(shù)量,

是編碼的最小漢明距離。

有許多類型的線性分組碼,如循環(huán)碼(如漢明碼)、重復代碼、奇偶校驗碼、多項式編碼(例如BCH碼)、里德 - 所羅門編碼、代數(shù)幾何編碼、里德 - 穆勒編碼、完美編碼。

編碼原理使用N維球體模型。例如,可以在桌面上或三維中將多少便士包裝成圓圈,可以將多少個彈珠包裝在一個球面上。其他注意事項輸入編碼的選擇。例如,六邊形包裝成矩形框的約束將在角落留下空的空間。隨著尺寸越來越大,空白空間的百分比越來越小。但是在某些維度上,包裝使用所有空間,這些代碼是所謂的“完美”代碼。唯一非常重要和有用的完美編碼是距離為3漢明碼,其參數(shù)滿足(2 r - 1,2 r - 1 - r,3)和[23,12,7]二進制和[11,6,5 ]三重Golay碼。

另一個編碼屬性是單個碼字可能具有的鄰居的數(shù)量。再次,以便士為例。首先我們把便士打包成矩形網(wǎng)格。每一分錢將有4個鄰近的鄰居(在距離更遠的角落有4個)。在六邊形,每一分錢將有6個近鄰。當我們增加尺寸時,近鄰的數(shù)量增加非???。結(jié)果是使接收端選擇鄰居(因此錯誤)的噪聲的方式也增加。這是分組碼以及所有編碼的基本限制??赡芨y對單個鄰居造成錯誤,但鄰居數(shù)量可能足夠大,因此總錯誤概率實際上會受到影響。

線性分組碼的屬性可以應用于很多應用。例如,線性分組碼的校正子集合唯一性被用網(wǎng)格成形,是最有名的形狀碼之一。傳感器網(wǎng)絡中使用相同的屬性進行分布式源代碼編碼。

卷積碼

如果特定的一致監(jiān)督關系不是在一個碼字中實現(xiàn),而是在個碼字中實現(xiàn),這種碼稱為卷積碼。卷積碼可用移位寄存器來實現(xiàn),這種卷積編碼器的輸出可看作是輸入信息碼元序列與編碼器響應函數(shù)的卷積。能糾正突發(fā)錯誤的哈格伯爾格碼也是一種卷積碼。在平穩(wěn)高斯噪聲干擾的信道上采用序貫譯碼方法的卷積碼有很好的性能,能用于衛(wèi)星通信和深空通信。

UTF-8 編碼原理

為了統(tǒng)一全世界各國語言文字和專業(yè)領域符號(例如數(shù)學符號、樂譜符號)的編碼,ISO制定了ISO 10646標準,也稱為UCS(Universal Character Set)。UCS編碼的長度是31位,可以表示231個字符。如果兩個字符編碼的高位相同,只有低16位不同,則它們屬于一個平面(Plane),所以一個平面由216個字符組成。目前常用的大部分字符都位于第一個平面(編碼范圍是U-00000000~U-0000FFFD),稱為BMP(Basic Multilingual Plane)或Plane 0,為了向后兼容,其中編號為0~256的字符和Latin-1相同。UCS編碼通常用U-xxxxxxxx這種形式表示,而BMP的編碼通常用 U xxxx這種形式表示,其中x是十六進制數(shù)字。在ISO制定UCS的同時,另一個由廠商聯(lián)合組織也在著手制定這樣的編碼,稱為Unicode,后來兩家聯(lián)手制定統(tǒng)一的編碼,但各自發(fā)布各自的標準文檔,所以UCS編碼和Unicode碼是相同的。

有了字符編碼,另一個問題就是這樣的編碼在計算機中怎么表示?,F(xiàn)在已經(jīng)不可能用一個字節(jié)表示一個字符了,最直接的想法就是用四個字節(jié)表示一個字符,這種表示方法稱為UCS-4或UTF- 32,UTF是Unicode Transformation Format的縮寫。一方面這樣比較浪費存儲空間,由于常用字符都集中在BMP,高位的兩個字節(jié)通常是0,如果只用ASCII碼或Latin-1,高位的三個字節(jié)都是0。另一種比較節(jié)省存儲空間的辦法是用兩個字節(jié)表示一個字符,稱為UCS-2或UTF-16,這樣只能表示BMP中的字符,但BMP中有一些擴展字符,可以用兩個這樣的擴展字符表示其它平面的字符,稱為Surrogate Pair。無論是UTF-32還是UTF-16都有一個更嚴重的問題是和C語言不兼容,在C語言中0字節(jié)表示字符串結(jié)尾,庫函數(shù)strlen、 strcpy等等都依賴于這一點,如果字符串用UTF-32存儲,其中有很多0字節(jié)并不表示字符串結(jié)尾,這就亂套了。

UNIX之父Ken Thompson提出的UTF-8編碼很好地解決了這些問題,現(xiàn)在得到廣泛應用。UTF-8具有以下性質(zhì):

* 編碼為U 0000~U 007F的字符只占一個字節(jié),就是0x00~0x7F,和ASCII碼兼容。

* 編碼大于U 007F的字符用2~6個字節(jié)表示,每個字節(jié)的最高位都是1,而ASCII碼的最高位都是0,因此非ASCII碼字符的表示中不會出現(xiàn)ASCII碼字節(jié)(也就不會出現(xiàn)0字節(jié))。

* 用于表示非ASCII碼字符的多字節(jié)序列中,第一個字節(jié)的取值范圍是0xC0~0xFD,根據(jù)它可以判斷后面有多少個字節(jié)也屬于當前字符的編碼。后面每個字節(jié)的取值范圍都是0x80~0xBF,見下面的詳細說明。

* UCS定義的所有231個字符都可以用UTF-8編碼表示出來。

* UTF-8編碼最長6個字節(jié),BMP字符的UTF-8編碼最長三個字節(jié)。

* 0xFE和0xFF這兩個字節(jié)在UTF-8編碼中不會出現(xiàn)。

具體來說,UTF-8編碼有以下幾種格式:

U-00000000 – U-0000007F: 0xxxxxxx

U-00000080 – U-000007FF: 110xxxxx 10xxxxxx

U-00000800 – U-0000FFFF: 1110xxxx 10xxxxxx10xxxxxx

U-00010000 – U-001FFFFF: 11110xxx 10xxxxxx10xxxxxx 10xxxxxx

U-00200000 – U-03FFFFFF: 111110xx 10xxxxxx10xxxxxx 10xxxxxx 10xxxxxx

U-04000000 – U-7FFFFFFF: 1111110x 10xxxxxx10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx

第一個字節(jié)要么最高位是0(ASCII字節(jié)),要么最高兩位都是1,最高位之后1的個數(shù)決定后面有多少個字節(jié)也屬于當前字符編碼,例如111110xx,最高位之后還有四個1,表示后面有四個字節(jié)也屬于當前字符的編碼。后面每個字節(jié)的最高兩位都是10,可以和第一個字節(jié)區(qū)分開。這樣的設計有利于誤碼同步,例如在網(wǎng)絡傳輸過程中丟失了幾個字節(jié),很容易判斷當前字符是不完整的,也很容易找到下一個字符從哪里開始,結(jié)果頂多丟掉一兩個字符,而不會導致后面的編碼解釋全部混亂了。上面的格式中標為x的位就是UCS編碼,最后一種6字節(jié)的格式中x位有31個,可以表示31位的UCS編碼,UTF-8就像一列火車,第一個字節(jié)是車頭,后面每個字節(jié)是車廂,其中承載的貨物是UCS編碼。UTF-8規(guī)定承載的UCS編碼以大端表示,也就是說第一個字節(jié)中的x是UCS編碼的高位,后面字節(jié)中的x是UCS編碼的低位。

例如U 00A9(?字符)的二進制是10101001,編碼成UTF-8是11000010 10101001(0xC2 0xA9),但不能編碼成11100000 10000010 10101001,UTF-8規(guī)定每個字符只能用盡可能少的字節(jié)來編碼。

編碼原理簡介常見問題

  • 編碼器接線及原理

    一、接線方法:編碼器有5條引線,其中3條是脈沖輸出線,1條是COM端線,1條是電源線(OC門輸出型)。編碼器的電源可以是外接電源,也可直接使用PLC的DC24V電源。電源“-”端要與編碼器的COM端連...

  • 旋轉(zhuǎn)編碼開關的原理是什么

    旋轉(zhuǎn)編碼器是用來測量轉(zhuǎn)速的裝置,光電式旋轉(zhuǎn)編碼器通過光電轉(zhuǎn)換,可將輸出軸的角位移、角速度等機械量轉(zhuǎn)換成相應的電脈沖以數(shù)字量輸出(REP)。它分為單路輸出和雙路輸出兩種。技術(shù)參數(shù)主要有每轉(zhuǎn)脈沖數(shù)(幾十個...

  • 編碼器工作原理

    http://wenku.baidu.com/view/ce0d0b1fb7360b4c2e3f64fc.html 一、光電編碼器,是一種通過光電轉(zhuǎn)換將輸出軸上的機械幾何位移量轉(zhuǎn)換成脈沖或數(shù)字量的傳感...

編碼原理簡介文獻

光電編碼器電路原理分析 光電編碼器電路原理分析

格式:pdf

大?。?span id="xrudh89" class="single-tag-height">281KB

頁數(shù): 2頁

評分: 4.4

本文以光電編碼器為例介紹了數(shù)控檢測系統(tǒng)的種類,詳細分析了光電編碼器的結(jié)構(gòu)原理。分析SZLF-102.4BM-C05L光電脈沖編碼器電路原理,把機械轉(zhuǎn)角通過光電轉(zhuǎn)換元件將變化的光信號轉(zhuǎn)換成近似正弦波的電信號,然后由放大電路、整形電路、經(jīng)頻率---電壓變換器變成正比于頻率的電壓,作為速度反饋信號,供給速度控制單元,進行速度調(diào)節(jié)。

立即下載
歐司朗編碼 歐司朗編碼

格式:pdf

大?。?span id="qj9l83b" class="single-tag-height">281KB

頁數(shù): 2頁

評分: 4.7

序號 物料編碼 型號規(guī)格 1 3225040084179578 熒光管 /歐司朗DULUXSTAR CL/7W 2 3225080084179570 金屬鹵化物燈 /歐司朗HQI-E/涂粉70W 3 3225040082797872 熒光管 /OSRAM DULUXSTAR/TWIST 23W 4 3225040084513150 熒光管 /歐司朗YZ15T8 15W 5 3225040084179582 熒光管 /歐司朗 電子節(jié)能燈 DULUXSTAR 32W 6 3225990084534074 節(jié)能燈 /歐司朗 24W 7 3213100084566170 日光燈具 歐司朗LMY-36W 8 3213100084179573 日光燈具 歐司朗LMY-2*36W 9 3229990083704157 應急日光燈具 歐司朗LMYyj-1*36W 10 3213100084566

立即下載

卷積碼擁有良好的糾錯性能,是一種被廣泛應用于移動通信的信道編碼系統(tǒng)。一個(n,k,m)卷積碼編碼器由k個輸入,具有m階存儲的n個輸出的線形時序電路實現(xiàn)。通常, nk是較小的整數(shù),且

,但m比較大。當
時,信息序列不再分成小塊,以便可以連續(xù)處理。卷積碼(n,k,m)表示碼率
,編碼器級數(shù)
,其中s是碼約束長度。

反向CDMA信道使用(3,1,8)卷積碼,碼率

,約束長度為9,由于
,
,則該卷積編碼器包含單個輸入端,一個8級移位寄存器,三個模2加法器和一個3向編碼器輸出的連續(xù)轉(zhuǎn)向器。編碼器每輸入一位信息比特將產(chǎn)生三位編碼輸出。這些編碼符號中,第一個輸出符號
是生成序列
編碼產(chǎn)生的符號,第二個輸出符號
是由生成序列
編碼產(chǎn)生的符號,最后一個輸出符號
是由生成序列
編碼產(chǎn)生的符號,如圖1所示。

該電路由一個八位寄存器、三個碼生成邏輯、一個時隙發(fā)生器和一個四選一復用器構(gòu)成。mux的輸入為

,碼選擇信號C[1:0]和clk1由時隙發(fā)生器產(chǎn)生,輸出信號即為整個電路的輸出
。

卷積編碼器的初始狀態(tài)用rst異步清零信號置為0,

時,電路清零。 卷積編碼器的初始狀態(tài)全為0,初始狀態(tài)之后輸出的第一個編碼符號由生成序列
編碼產(chǎn)生。這里,三個生成序列分別為

即三個生成多項式分別為:

OMRON編碼器工作原理

由一個中心有軸的光電碼盤,其上有環(huán)形通、暗的刻線,有光電發(fā)射和接收器件讀取,獲得四組正弦波信號組合成A、B、C、D,每個正弦波相差90度相位差(相對于一個周波為360度),將C、D信號反向,疊加在A、B兩相上,可增強穩(wěn)定信號;另每轉(zhuǎn)輸出一個Z相脈沖以代表零位參考位。 由于A、B兩相相差90度,可通過比較A相在前還是B相在前,以判別編碼器的正轉(zhuǎn)與反轉(zhuǎn),通過零位脈沖,可獲得編碼器的零位參考位。 編碼器碼盤的材料有玻璃、金屬、塑料,玻璃碼盤是在玻璃上沉積很薄的刻線,其熱穩(wěn)定性好,精度高,金屬碼盤直接以通和不通刻線,不易碎,但由于金屬有一定的厚度,精度就有限制,其熱穩(wěn)定性就要比玻璃的差一個數(shù)量級,塑料碼盤是經(jīng)濟型的,其成本低,但精度、熱穩(wěn)定性、壽命均要差一些。 分辨率-編碼器以每旋轉(zhuǎn)360度提供多少的通或暗刻線稱為分辨率,也稱解析分度、或直接稱多少線,一般在每轉(zhuǎn)分度5~10000線。

假設我們只有一個沒有帶類別標簽的訓練樣本集合

,其中
。自編碼神經(jīng)網(wǎng)絡是一種無監(jiān)督學習算法,它使用了反向傳播算法,并讓目標值等于輸入值,比如
。下圖是一個自編碼神經(jīng)網(wǎng)絡(圖一)的示例。

自編碼神經(jīng)網(wǎng)絡嘗試學習一個

的函數(shù)。換句話說,它嘗試逼近一個恒等函數(shù),從而使得輸出
接近于輸入
。恒等函數(shù)雖然看上去不太有學習的意義,但是當我們?yōu)樽跃幋a神經(jīng)網(wǎng)絡加入某些限制,比如限定隱藏神經(jīng)元的數(shù)量,我們就可以從輸入數(shù)據(jù)中發(fā)現(xiàn)一些有趣的結(jié)構(gòu)。舉例來說,假設某個自編碼神經(jīng)網(wǎng)絡的輸入
是一張
圖像(共100個像素)的像素灰度值,于是
,其隱藏層
中有50個隱藏神經(jīng)元。注意,輸出也是100維的
。由于只有50個隱藏神經(jīng)元,我們迫使自編碼神經(jīng)網(wǎng)絡去學習輸入數(shù)據(jù)的'''壓縮'''表示,也就是說,它必須從50維的隱藏神經(jīng)元激活度向量
中'''重構(gòu)'''出100維的像素灰度值輸入
。如果網(wǎng)絡的輸入數(shù)據(jù)是完全隨機的,比如每一個輸入
都是一個跟其它特征完全無關的獨立同分布高斯隨機變量,那么這一壓縮表示將會非常難學習。但是如果輸入數(shù)據(jù)中隱含著一些特定的結(jié)構(gòu),比如某些輸入特征是彼此相關的,那么這一算法就可以發(fā)現(xiàn)輸入數(shù)據(jù)中的這些相關性。事實上,這一簡單的自編碼神經(jīng)網(wǎng)絡通??梢詫W習出一個跟主元分析(PCA)結(jié)果非常相似的輸入數(shù)據(jù)的低維表示。

我們剛才的論述是基于隱藏神經(jīng)元數(shù)量較小的假設。但是即使隱藏神經(jīng)元的數(shù)量較大(可能比輸入像素的個數(shù)還要多),我們?nèi)匀煌ㄟ^給自編碼神經(jīng)網(wǎng)絡施加一些其他的限制條件來發(fā)現(xiàn)輸入數(shù)據(jù)中的結(jié)構(gòu)。具體來說,如果我們給隱藏神經(jīng)元加入稀疏性限制,那么自編碼神經(jīng)網(wǎng)絡即使在隱藏神經(jīng)元數(shù)量較多的情況下仍然可以發(fā)現(xiàn)輸入數(shù)據(jù)中一些有趣的結(jié)構(gòu)。

稀疏性可以被簡單地解釋如下。如果當神經(jīng)元的輸出接近于1的時候我們認為它被激活,而輸出接近于0的時候認為它被抑制,那么使得神經(jīng)元大部分的時間都是被抑制的限制則被稱作稀疏性限制。這里我們假設的神經(jīng)元的激活函數(shù)是sigmoid函數(shù)。如果你使用tanh作為激活函數(shù)的話,當神經(jīng)元輸出為-1的時候,我們認為神經(jīng)元是被抑制的。

注意到

表示隱藏神經(jīng)元
的激活度,但是這一表示方法中并未明確指出哪一個輸入
帶來了這一激活度。所以我們將使用
來表示在給定輸入為
情況下,自編碼神經(jīng)網(wǎng)絡隱藏神經(jīng)元
的激活度。

進一步,讓

表示隱藏神經(jīng)元

的平均活躍度(在訓練集上取平均)。我們可以近似的加入一條限制

其中,

是'''稀疏性參數(shù)''',通常是一個接近于0的較小的值(比如
)。換句話說,我們想要讓隱藏神經(jīng)元
的平均活躍度接近0.05。為了滿足這一條件,隱藏神經(jīng)元的活躍度必須接近于0。

為了實現(xiàn)這一限制,我們將會在我們的優(yōu)化目標函數(shù)中加入一個額外的懲罰因子,而這一懲罰因子將懲罰那些

有顯著不同的情況從而使得隱藏神經(jīng)元的平均活躍度保持在較小范圍內(nèi)。懲罰因子的具體形式有很多種合理的選擇,我們將會選擇以下這一種:

這里,

是隱藏層中隱藏神經(jīng)元的數(shù)量,而索引
依次代表隱藏層中的每一個神經(jīng)元。如果你對相對熵(KL divergence)比較熟悉,這一懲罰因子實際上是基于它的。于是懲罰因子也可以被表示為

其中

是一個以
為均值和一個以
為均值的兩個伯努利隨機變量之間的相對熵。相對熵是一種標準的用來測量兩個分布之間差異的方法。(如果你沒有見過相對熵,不用擔心,所有你需要知道的內(nèi)容都會被包含在這份筆記之中。)

這一懲罰因子有如下性質(zhì),當

,并且隨著
之間的差異增大而單調(diào)遞增。舉例來說,在圖二中,我們設定
并且畫出了相對熵值
隨著
變化的變化(圖二)。

我們可以看出,相對熵在

時達到它的最小值0,而當
靠近0或者1的時候,相對熵則變得非常大(其實是趨向于
)。所以,最小化這一懲罰因子具有使得
靠近
的效果。

我們的總體代價函數(shù)可以表示為

其中

如之前所定義,而
控制稀疏性懲罰因子的權(quán)重。
項則也(間接地)取決于
,因為它是隱藏神經(jīng)元
的平均激活度,而隱藏層神經(jīng)元的激活度取決于
。

為了對相對熵進行導數(shù)計算,我們可以使用一個易于實現(xiàn)的技巧,這只需要在你的程序中稍作改動即可。具體來說,前面在后向傳播算法中計算第二層(

)更新的時候我們已經(jīng)計算了

我們將其換成

就可以了。

有一個需要注意的地方就是我們需要知道

來計算這一項更新。所以在計算任何神經(jīng)元的后向傳播之前,你需要對所有的訓練樣本計算一遍前向傳播,從而獲取平均激活度。如果你的訓練樣本可以小到被整個存到內(nèi)存之中(對于編程作業(yè)來說,通常如此),你可以方便地在你所有的樣本上計算前向傳播并將得到的激活度存入內(nèi)存并且計算平均激活度 。然后你就可以使用事先計算好的激活度來對所有的訓練樣本進行后向傳播的計算。如果你的數(shù)據(jù)量太大,無法全部存入內(nèi)存,你就可以掃過你的訓練樣本并計算一次前向傳播,然后將獲得的結(jié)果累積起來并計算平均激活度
(當某一個前向傳播的結(jié)果中的激活度
被用于計算平均激活度
之后就可以將此結(jié)果刪除)。然后當你完成平均激活度
的計算之后,你需要重新對每一個訓練樣本做一次前向傳播從而可以對其進行后向傳播的計算。對于后一種情況,你對每一個訓練樣本需要計算兩次前向傳播,所以在計算上的效率會稍低一些。

證明上面算法能達到梯度下降效果的完整推導過程不再本教程的范圍之內(nèi)。不過如果你想要使用經(jīng)過以上修改的后向傳播來實現(xiàn)自編碼神經(jīng)網(wǎng)絡,那么你就會對目標函數(shù)

做梯度下降。使用梯度驗證方法,你可以自己來驗證梯度下降算法是否正確。

編碼原理相關推薦
  • 相關百科
  • 相關知識
  • 相關專欄