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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

05.序列模型 W3.序列模型和注意力机制

發布時間:2024/7/5 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 05.序列模型 W3.序列模型和注意力机制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 1. 基礎模型
    • 2. 選擇最可能的句子
    • 3. 集束搜索(Beam Search)
    • 4. 改進集束搜索
    • 5. 集束搜索的誤差分析
    • 6. Bleu 得分
    • 7. 注意力模型直觀理解
    • 8. 注意力模型
    • 9. 語音識別(Speech recognition)
    • 10. 觸發字檢測(Trigger Word Detection)
    • 作業

參考:
吳恩達視頻課
深度學習筆記

序列模型和注意力機制(Sequence models & Attention mechanism)

1. 基礎模型

  • seq2seq : 語言翻譯
  • image to sequence:圖片描述

2. 選擇最可能的句子


條件語言模型 和之前的 語言模型 一個主要的區別

  • 語言模型 隨機地生成句子
  • 條件語言模型,你要找到最有可能的英語句子,但是句子組合數量過于巨大,需要一種合適的搜索算法,集束搜索(Beam Search)

3. 集束搜索(Beam Search)



在 集束寬為3時,集束搜索一次只考慮3個可能結果

如果集束寬等于1,就變成了貪心搜索算法
同時考慮多個可能的結果比如3個,10個或者其他的個數,集束搜索通常比貪婪搜索更好

4. 改進集束搜索

上節講到 集束搜索 要選出條件概率最高的前 B 個,公式如下:
arg?max?y∏t=1TyP(y<t>∣x,y<1>,…,y<t?1>)\arg \max _{y} \prod_{t=1}^{T_{y}} P\left(y^{<t>} \mid x, y^{<1>}, \ldots, y^{<t-1>}\right)argymax?t=1Ty??P(y<t>x,y<1>,,y<t?1>)
展開就是下面的式子:
P(y<2>∣X,y<1>)P(y<3>∣X,y<1>,y<2>)…P(y<Ty>∣X,y<1>,y<2>…y<Ty?1>)P\left(y^{<2>} \mid X, y^{<1>}\right) P\left(y^{<3>} \mid X, y^{<1>}, y^{<2>}\right) \ldots P\left(y^{<T_{y}>} \mid X, y^{<1>}, y^{<2>} \ldots y^{<T_{y}-1>}\right)P(y<2>X,y<1>)P(y<3>X,y<1>,y<2>)P(y<Ty?>X,y<1>,y<2>y<Ty??1>)

上式缺點:

  • 概率越乘越小,向下溢出
  • 式子傾向于給出更短的句子(概率相乘,沒有那么小)

采用取 log 的式子

arg?max?y∑y=1Tylog?P(y<t>∣x,y<1>,…,y<t?1>)\arg \max _{y} \sum_{y=1}^{T_{y}} \log P\left(y^{<t>} \mid x, y^{<1>}, \ldots, y^{<t-1>}\right)argymax?y=1Ty??logP(y<t>x,y<1>,,y<t?1>)

再對長度進行歸一化:乘以系數

arg?max?y1Tyα∑y=1Tylog?P(y<t>∣x,y<1>,…,y<t?1>)\arg \max _{y} \frac{1}{T_y^{\alpha}}\sum_{y=1}^{T_{y}} \log P\left(y^{<t>} \mid x, y^{<1>}, \ldots, y^{<t-1>}\right)argymax?Tyα?1?y=1Ty??logP(y<t>x,y<1>,,y<t?1>)

超參數 α=0.7\alpha = 0.7α=0.7 常用,0 沒有歸一化,1 完全由長度來歸一化

注意:集束搜索 不一定搜到的是最優解,是一種啟發式搜索算法,達到較好的效果


如何選擇束寬 B

  • B 越大,輸出句子越好,計算代價也大,內存占用大
  • B 較小,輸出效果沒那么好,計算快些,內存占用小,產品中常見 B = 10,科研看情況可以取大些,效果好,好發文章

5. 集束搜索的誤差分析

怎樣才能發現是 Beam搜索 算法出現了問題,還是你的 RNN模型 出了問題?


分析哪種錯誤更多:

  • Beam搜索 算法造成了大部分錯誤時,才值得花費努力增大集束寬度
  • RNN模型 出了更多錯,可以進行更深層次的分析,來決定是需要增加正則化還是獲取更多的訓練數據,抑或是嘗試一個不同的網絡結構,或是其他方案。(見第三門課)

6. Bleu 得分

機器翻譯(machine translation)的一大難題是一個法語句子可以有多種英文翻譯而且都同樣好,所以當有多個同樣好的答案時,怎樣評估一個機器翻譯系統呢?

BLEU得分背后的理念:觀察機器生成的翻譯,然后看生成的詞是否出現在 至少一個人工翻譯參考之中

短的語句更容易有 更高的Bleu 得分(較大的概率:語句中的詞語都在 參考語句中),為了平衡這種情況,使用 “簡短懲罰”( brevity penalty)

BLEU得分 是一個有用的單一實數評估指標,用于評估生成文本的算法,判斷輸出的結果是否與人工寫出的參考文本的含義相似。

常用于 機器翻譯,圖像描述, Bleu 有很多開源實現,可以直接下載來用

7. 注意力模型直觀理解


注意力權重,a<t,t>a^{<t,t>}a<t,t> 告訴你,當你嘗試生成第 ttt 個英文詞,它應該花多少注意力在第 ttt 個法語詞上面。

當生成一個特定的英文詞時,這允許它在每個時間步去看周圍詞距內的法語詞要花多少注意力。

8. 注意力模型

注意力模型如何讓一個神經網絡只注意到一部分的輸入句子。當它在生成句子的時候,更像人類翻譯

9. 語音識別(Speech recognition)


10. 觸發字檢測(Trigger Word Detection)

設備喚醒:手機助理,汽車中控喚醒等

作業

作業:機器翻譯+觸發詞檢測


本文地址:https://michael.blog.csdn.net/article/details/108908470

我的CSDN博客地址 https://michael.blog.csdn.net/

長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!

總結

以上是生活随笔為你收集整理的05.序列模型 W3.序列模型和注意力机制的全部內容,希望文章能夠幫你解決所遇到的問題。

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