日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

《Neural Networks for Machine Learning》学习二

發布時間:2023/12/13 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《Neural Networks for Machine Learning》学习二 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

課程地址:https://www.coursera.org/learn/neural-networks/home/week/1‘’
【Lecture 2】百度云下載地址:鏈接:http://pan.baidu.com/s/1nvMynhR 密碼:ru3y

神經網絡架構概覽

前饋神經網絡(Feed-Forward neural network)

在實際應用中最為常見

——第一層是輸入,最后一層是輸出

——如果隱單元多于一層,我們稱為“深度”神經網絡

它們計算了一系列的轉換(參數),可改變樣本之間的相似度

——每一層的活躍神經元是其下層(below)活躍神經元的非線性函數


循環神經網絡(Recurrent Network)

連接圖中具有有向環

——意味著沿著箭頭,可能回到了最初的出發點

可以有復雜的動態特性,這使得它們很難訓練

——尋找有效率的訓練方法是當前比較熱門的一個研究

它們更具有生物學真實性(biologically realistic)


循環神經網絡具有多個隱藏層,而且是具有隱單元->隱單元(hidden->hidden)連接丟失的一個特殊的案例

為序列建模的循環神經網絡

循環神經網絡是為序列數據建模比較自然(nature)的一種方法

——等價于每一個時間片就具有一個隱藏層的非常深的網絡

——除了在每一個時間片使用相同的權重外,還在每個時間片接受輸入

在隱藏層具有為長時間序列記憶信息的能力

——就是使用這個潛力(potential)去訓練網絡比較難


循環神經網絡所能做的一個實例

※IIya Sutskever(2011)訓練了一個特殊的循環神經網絡,可以預測一個序列的下一個字符

※使用來自英文的維基百科中具有五億(half a billion)字符的一個字符串訓練了很久,就可以生成新的text文檔

——生成的方法是預測下一個字符的概率分布,然后從這個分布中采樣一個字符出來

——下面介紹它生成的一個text文檔。請注意它到底知道多少事情

※IIya Sutskever的循環神經網絡生成的文檔(每個時間點生成一個字符)


對稱連接神經網絡(Symmetrically connected network)

與循環神經網絡類似,但是單元之間的連接是對稱的(每個方向具有相同的權重)

——John Hopfield(和其他人)認識到對稱神經網絡比分析一個循環神經網絡更簡單

——對于他們所能做的也有很多限制,因為違背了能量函數(energy function)

※比如它們不能模擬循環

具有對稱連接的神經網絡稱為“Hopfield nets”

具有隱層的對稱連接神經網絡

這些稱為“玻爾茲曼機(Boltzmann Machine)”【終于Hinton老爺子在第二節課忍不住把成名作拿出來了】

——比Hopfield nets更具有能力
——比循環神經網絡差點

——具有非常“漂亮”的簡單地學習方法(難道是吉布斯采樣?對比散度?)

第一代神經網絡

統計模式識別的標準范例

1.將原始輸入向量轉換為激活特征向量

——手寫案例中使用常識或者經驗來定義特征

2.學習如何為激活特征加權重,去獲取單獨的梯度量(single scalar quantity)

3.如果這個量超過某個閾值,就可以決定輸入向量是目標類別的一個正向激勵樣本,感覺就是說如果大于閾值,就說這個樣本是屬于這個類別的。

標準感知器結構



感知器歷史

在20世紀60年代早期(1960's)被Frank Roseblatt 變換形式(popularised)

——開始具有好的(powerful)學習算法

——有大量的聲明稱他們可以學習去干什么

在1969年,Minsky和Papert出版了一本書叫做“Perceptrons”,分析它們能做什么以及他們的限制

——很多人認為這些限制是所有神經網絡模型共有的

感知學習過程在如今依舊被廣泛使用,即使是那些具有數以百萬計特征的巨大特征向量的任務中

二值閾值神經元(決策單位)

McCulloch-Pitts(1943)

——第一次從其他神經元計算輸入的加權和(加上一個偏置)【應該就是所謂的wx+b】

——如果加權和超出0,就輸出一個1


如何像學習權重一樣使用相同的規則去學習偏置

一個閾值等價于具有一個負的偏置(negative bias)【自我感覺訓練的時候這個負不負無所謂吧,反正都是自動學習的,不管你怎么初始化】

我們可以通過使用一個小技巧去避免必須為偏置指定一個單獨的學習規則

—— 一個偏置完全等價于在輸入行的一個額外的激活值為1對應的一個權重【比較拗口,我的理解就是,這樣wx就等于wx+b了】

——這樣我們就可以學習一個偏置,這時候這個偏置就像一個權重了


感知器收斂過程:訓練二值輸出神經元作為分類器的情況

在每一個輸入向量的尾部增加一個額外值1,“偏置”權重在這個成分上的閾值是負(minus)的,現在我們可以忘掉這個閾值。

可以使用任何策略去保證每一個訓練樣本都會被丟到網絡中訓練

——如果輸出單元是正確的,就單獨留下權重

——如果輸出單元是錯誤的,且輸出為0,就將輸入向量加到權重向量

——如果輸出單元是錯誤的,且輸出為1,就將輸入向量從權重向量中減去

這保證了尋找到一組權重,能夠為所有的訓練樣本得到正確的答案(如果有這樣的集合存在的話)

感知器的幾何角度觀點

注意

如果是非數學專業的,這一部分可能比前面難點

——你需要使用很長時間去學習接下來的兩部分

如果你沒有嘗試過在高維空間中思考超平面(hyper-planes),那么現在就是學習的時機。

在14維空間中處理超平面,可視化3D空間以及大聲對自己說“十四”,每個人都做~~~【這是鬧哪出?o(╯□╰)o】

※記住從13維到14維會比從2維到三維有額外的復雜度。

權重空間

這個空間中對于每一個權重都是一維

空間中的每一個點就是由所有權重合起來代表

假如我們去掉了閾值,那么每一個訓練案例就可以被一個通過原點(origin)的超平面所表示

——權重必須在超平面的一側,以獲取正確答案

每一個訓練樣本都定義了一個平面,比如下圖的黑線

——平面過原點,并且垂直于輸入向量

——平面的一側是錯誤的,因為權重與輸入向量向量的內積(數量積scalar product)具有錯誤的跡象(sign)


可行解(feasible solutions)錐(cone)

【PS】cone應該是翻譯成錐吧,看網上dual cone翻譯成數學名詞“對偶錐”

為了讓訓練案例都得到正確解,我們需要找到位于所有平面的正確側的一個點

——可能根本沒有這樣的點

如果有任何權重對于所有的案例都有正確解,那么它們將位于一個超錐,且頂點在原點

——所以兩個好的權重向量的平均也是好的權重向量

※這是一個凸問題(convex)



為什么學習會有效

為什么學習過程會有效?——第一個嘗試

思考可行權重向量(feasible weight vector)和當前權重向量(current weight vector)的平方距離

——有用的要求:每次感知器發生錯誤的時候,學習算法就將當前權重向量朝所有的可行權重向量移動

可能也會有問題:下圖的黃點就是可能不會被接近的可行向量


考慮到由一個邊緣(margin)規定的可行區域的“豐富的可行(generously feasible)”權重向量至少與定義每一個約束平面(constraint plane)的輸入向量長度一樣大。

——感知器每一次發生錯誤,到所有豐富的可行權重向量間平方距離經常減少了至少更新向量的長度(貼一下這句話的原話:?the squared distance to all of these generously feasible weight vectors is always decreased by at least the squared length of the update vector)


非正式的收斂證明示意

※感知器每次出錯,當前權重向量就會朝著與“豐富可行”區域的每一個權重向量平方距離減少的方向移動

※平方距離減小了至少輸入向量的平方長度(原話:The squared distance decreases by at least the squared length of the input vector)

※所以當經過有限(finite)出錯以后,權重向量應該會穩定在可行區域(如果這個區域存在的話)

感知器不能做什么

感知器的限制

如果允許手動選擇特征并且假設你使用了足夠的特征,你幾乎可以做任何事情。

——對于二值輸入向量,我們可以為每一個指數級的二值向量有一個單獨的特征單元,因此我們可以在二值輸入向量上做任意的可能的判別工作。

※這種類型的查找表(table look-up)不會發生

一旦手工編碼特征被決定,感知器的學習能力將會受到極大限制

二值閾值不能做什么

二值閾值輸出單元不能指出兩個由一位編碼(single bit)的特征相同!

正樣本(相同):(1,1)->1;(0,0)->1

負樣本(不同):(1,0)->0;(0,1)->0

四個輸入輸出對給定了四個不平等的(inequalities)推斷,是不可能被同時滿足的




二值閾值神經元無法做的事情的幾何視角

想想一下由一個輸入向量組成坐標軸的“數據空間(data-space)”

——每個輸入向量是空間中的一個點

——權重向量在數據空間中定義了一個超平面

——權重平面是垂直于權重向量的,是不過原點的,與原點的距離就是閾值的大小


判別循環(wrap-around)變化(translation)的簡單模式

※假設我們使用像素作為特征

※一個二值閾值單元是否能判別具有相同像素點數目的不同模式?

——如果模式不循環轉變!


關于二值決策無法判別具有相同像素數的模式的證明草圖(假設循環轉換)

對于模式A,使用所有可能轉換的訓練案例

——模式A中每個像素會被4種不同的轉換所激活

——因此所有的被這些模式的決策單元接受的輸入是所有權重總和的四倍

對于模式B,使用所有可能轉換的訓練案例

——模式B中每個像素被4中不同的轉移所激活

——因此所有的被這些模式的決策單元接受的輸入是所有權重總和的四倍

但是為了正確判別,模式A的每一個單獨案例必須為決策單元提供比模式B的每個案例更多的輸入。

——如果樣例數目總和是相同的,那么上述情況就不太可能了。

為什么感知器的這種結果是災難性的(devastating)

模式識別的關鍵在于識別模式,不論是何種轉變(despite transformations like translation)

Mnisky和Papert's 的“組不變性定理(group invariance theorem)”指出在轉變形成一個組的時候,感知器學習不能很好學習的(原文:the part of a Perceptron that learns cannot learn to do this if the transformations form a group)。

——具有循環特性的轉換就能形成一個組

為了處理這種轉換,感知器就需要使用多個特征單元去識別信息子模式(informative sub-patterns)的轉變

——所以模式識別比較“狡猾(tricky)”的部分必須使用手動編碼特征探測器的方法去解決,而非使用學習過程

具有隱藏單元的學習

沒有隱單元的神經網絡非常受限于他們所能學習到的模型的輸入-輸出映射

——更多的線性單元層根本沒啥用,因為依舊是線性的

——修正輸出為非線性(non-linerities)的并不足以彌補

我們需要多層具有自適應能力和非線性的隱單元。但是我們如何去訓練這種網路呢?

——我們需要一種有效率的方法去調整(adapt)所有權重,并僅僅關注最后一個單元層。這很難。

——學習連接到隱單元的權重等價于學習特征。

——這還是比較難的,比因為沒有人直截了當地告訴我們隱單元應該干啥



總結

以上是生活随笔為你收集整理的《Neural Networks for Machine Learning》学习二的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。