色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Transformer模型結構,訓練過程

新機器視覺 ? 來源:哈工大SCIR ? 作者:Alexander Rush ? 2022-06-20 14:26 ? 次閱讀

導讀

本文分享一篇來自哈佛大學關于Transformer的文章,作者為此文章寫了篇注解文檔,詳細介紹了模型結構,訓練過程并給出了可實現的Transformer的代碼。本文僅作為研究人員和開發(fā)者的入門版教程

下面分享一篇實驗室翻譯的來自哈佛大學一篇關于Transformer的詳細博文。

e88aea92-efd1-11ec-ba43-dac502259ad0.jpg

"Attention is All You Need"[1] 一文中提出的Transformer網絡結構最近引起了很多人的關注。Transformer不僅能夠明顯地提升翻譯質量,還為許多NLP任務提供了新的結構。雖然原文寫得很清楚,但實際上大家普遍反映很難正確地實現。

所以我們?yōu)榇宋恼聦懥似⒔馕臋n,并給出了一行行實現的Transformer的代碼。本文檔刪除了原文的一些章節(jié)并進行了重新排序,并在整個文章中加入了相應的注解。此外,本文檔以Jupyter notebook的形式完成,本身就是直接可以運行的代碼實現,總共有400行庫代碼,在4個GPU上每秒可以處理27,000個tokens。

想要運行此工作,首先需要安裝PyTorch[2]。這篇文檔完整的notebook文件及依賴可在github[3] 或 Google Colab[4]上找到。

需要注意的是,此注解文檔和代碼僅作為研究人員和開發(fā)者的入門版教程。這里提供的代碼主要依賴OpenNMT[5]實現,想了解更多關于此模型的其他實現版本可以查看Tensor2Tensor[6] (tensorflow版本) 和 Sockeye[7](mxnet版本)

  • Alexander Rush (@harvardnlp[8] or srush@seas.harvard.edu)

0.準備工作

# !pip install http://download.pytorch.org/whl/cu80/torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl numpy matplotlib spacy torchtext seaborn
e89735fe-efd1-11ec-ba43-dac502259ad0.png

內容目錄

準備工作

背景

模型結構

- Encoder和Decoder

- Encoder

- Decoder

- Attention

- Attention在模型中的應用

- Position-wise前饋網絡

- Embedding和Softmax

- 位置編碼

- 完整模型

(由于原文篇幅過長,其余部分在下篇)

訓練

- 批和掩碼

- 訓練循環(huán)

- 訓練數據和批處理

- 硬件和訓練進度

- 優(yōu)化器

- 正則化

- 標簽平滑

第一個例子

- 數據生成

- 損失計算

- 貪心解碼

真實示例

- 數據加載

- 迭代器

- 多GPU訓練

- 訓練系統(tǒng)附加組件:BPE,搜索,平均

結果

- 注意力可視化

結論

本文注解部分都是以引用的形式給出的,主要內容都是來自原文。

1.背景

減少序列處理任務的計算量是一個很重要的問題,也是Extended Neural GPU、ByteNet和ConvS2S等網絡的動機。上面提到的這些網絡都以CNN為基礎,并行計算所有輸入和輸出位置的隱藏表示。

在這些模型中,關聯來自兩個任意輸入或輸出位置的信號所需的操作數隨位置間的距離增長而增長,比如ConvS2S呈線性增長,ByteNet呈現以對數形式增長,這會使學習較遠距離的兩個位置之間的依賴關系變得更加困難。而在Transformer中,操作次數則被減少到了常數級別。

Self-attention有時候也被稱為Intra-attention,是在單個句子不同位置上做的Attention,并得到序列的一個表示。它能夠很好地應用到很多任務中,包括閱讀理解、摘要、文本蘊涵,以及獨立于任務的句子表示。端到端的網絡一般都是基于循環(huán)注意力機制而不是序列對齊循環(huán),并且已經有證據表明在簡單語言問答和語言建模任務上表現很好。

據我們所知,Transformer是第一個完全依靠Self-attention而不使用序列對齊的RNN或卷積的方式來計算輸入輸出表示的轉換模型。

2.模型結構

目前大部分比較熱門的神經序列轉換模型都有Encoder-Decoder結構[9]。Encoder將輸入序列映射到一個連續(xù)表示序列。

對于編碼得到的z,Decoder每次解碼生成一個符號,直到生成完整的輸出序列:。對于每一步解碼,模型都是自回歸的[10],即在生成下一個符號時將先前生成的符號作為附加輸入。

e8aa504e-efd1-11ec-ba43-dac502259ad0.jpg

Transformer的整體結構如下圖所示,在Encoder和Decoder中都使用了Self-attention, Point-wise和全連接層。Encoder和decoder的大致結構分別如下圖的左半部分和右半部分所示。

e8b8348e-efd1-11ec-ba43-dac502259ad0.jpg

2.Encoder和Decoder

Encoder

Encoder由N=6個相同的層組成。

e8c927c6-efd1-11ec-ba43-dac502259ad0.jpg

我們在每兩個子層之間都使用了殘差連接(Residual Connection) [11]和歸一化 [12]。

e8da3818-efd1-11ec-ba43-dac502259ad0.pnge8f4e65e-efd1-11ec-ba43-dac502259ad0.jpge905b722-efd1-11ec-ba43-dac502259ad0.jpg

每層都有兩個子層組成。第一個子層實現了“多頭”的 Self-attention,第二個子層則是一個簡單的Position-wise的全連接前饋網絡。

e90f83ec-efd1-11ec-ba43-dac502259ad0.jpg

Dncoder

Decoder也是由N=6個相同層組成。

e918170a-efd1-11ec-ba43-dac502259ad0.jpg

除了每個編碼器層中的兩個子層之外,解碼器還插入了第三種子層對編碼器棧的輸出實行“多頭”的Attention。與編碼器類似,我們在每個子層兩端使用殘差連接進行短路,然后進行層的規(guī)范化處理。

e92985d0-efd1-11ec-ba43-dac502259ad0.jpge938dfbc-efd1-11ec-ba43-dac502259ad0.jpge9450a62-efd1-11ec-ba43-dac502259ad0.jpg

3.Attention

e9545bb6-efd1-11ec-ba43-dac502259ad0.jpge9684de2-efd1-11ec-ba43-dac502259ad0.jpge97583cc-efd1-11ec-ba43-dac502259ad0.jpg

“多頭”機制能讓模型考慮到不同位置的Attention,另外“多頭”Attention可以在不同的子空間表示不一樣的關聯關系,使用單個Head的Attention一般達不到這種效果。

e98bf5d0-efd1-11ec-ba43-dac502259ad0.jpge998afaa-efd1-11ec-ba43-dac502259ad0.jpge9a2f74e-efd1-11ec-ba43-dac502259ad0.jpg

4.Attention在模型中的應用

Transformer中以三種不同的方式使用了“多頭”Attention:

1) 在"Encoder-Decoder Attention"層,Query來自先前的解碼器層,并且Key和Value來自Encoder的輸出。Decoder中的每個位置Attend輸入序列中的所有位置,這與Seq2Seq模型中的經典的Encoder-Decoder Attention機制[15]一致。

2) Encoder中的Self-attention層。在Self-attention層中,所有的Key、Value和Query都來同一個地方,這里都是來自Encoder中前一層的輸出。Encoder中當前層的每個位置都能Attend到前一層的所有位置。

3) 類似的,解碼器中的Self-attention層允許解碼器中的每個位置Attend當前解碼位置和它前面的所有位置。這里需要屏蔽解碼器中向左的信息流以保持自回歸屬性。具體的實現方式是在縮放后的點積Attention中,屏蔽(設為負無窮)Softmax的輸入中所有對應著非法連接的Value。

5.Position-wise前饋網絡

e9b135d4-efd1-11ec-ba43-dac502259ad0.jpg

6.Embedding和Softmax

e9c15568-efd1-11ec-ba43-dac502259ad0.jpg

7.位置編碼

e9cf8e58-efd1-11ec-ba43-dac502259ad0.jpge9d868c0-efd1-11ec-ba43-dac502259ad0.jpge9e8b4fa-efd1-11ec-ba43-dac502259ad0.jpg

我們也嘗試了使用預學習的位置Embedding,但是發(fā)現這兩個版本的結果基本是一樣的。我們選擇正弦曲線版本的實現,因為使用此版本能讓模型能夠處理大于訓練語料中最大序了使用列長度的序列。

8.完整模型

下面定義了連接完整模型并設置超參的函數。

e9fda4b4-efd1-11ec-ba43-dac502259ad0.jpg

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4886

    瀏覽量

    70229
  • Transformer
    +關注

    關注

    0

    文章

    148

    瀏覽量

    6382
  • pytorch
    +關注

    關注

    2

    文章

    809

    瀏覽量

    13754

原文標題:搞懂Transformer結構,看這篇PyTorch實現就夠了

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    數據標注服務—奠定大模型訓練的數據基石

    數據標注是大模型訓練過程中不可或缺的基礎環(huán)節(jié),其質量直接影響著模型的性能表現。在大模型訓練中,數據標注承擔著將原始數據轉化為機器可理解、可學
    的頭像 發(fā)表于 03-21 10:30 ?431次閱讀

    騰訊公布大語言模型訓練新專利

    大語言模型訓練過程中引入第一摘要文本和第二摘要文本,為模型提供了更為豐富的學習信息。這兩個摘要文本在信息量上存在差異,且第一摘要文本中既包含正確語句也包含錯誤語句。這一設計使得模型
    的頭像 發(fā)表于 02-10 09:37 ?334次閱讀

    GPU是如何訓練AI大模型

    在AI模型訓練過程中,大量的計算工作集中在矩陣乘法、向量加法和激活函數等運算上。這些運算正是GPU所擅長的。接下來,AI部落小編帶您了解GPU是如何訓練AI大模型的。
    的頭像 發(fā)表于 12-19 17:54 ?610次閱讀

    如何訓練ai大模型

    訓練AI大模型是一個復雜且耗時的過程,涉及多個關鍵步驟和細致的考量。 一、數據準備 1. 數據收集 確定數據類型 :根據模型的應用場景,確定需要收集的數據類型,如文本、圖像、音頻等。
    的頭像 發(fā)表于 10-17 18:17 ?2413次閱讀

    FP8模型訓練中Debug優(yōu)化思路

    目前,市場上許多公司都積極開展基于 FP8 的大模型訓練,以提高計算效率和性能。在此,我們整理并總結了客戶及 NVIDIA 技術團隊在 FP8 模型訓練過程中的 debug 思路和方法
    的頭像 發(fā)表于 09-06 14:36 ?741次閱讀
    FP8<b class='flag-5'>模型</b><b class='flag-5'>訓練</b>中Debug優(yōu)化思路

    【《大語言模型應用指南》閱讀體驗】+ 基礎知識學習

    收集海量的文本數據作為訓練材料。這些數據集不僅包括語法結構的學習,還包括對語言的深層次理解,如文化背景、語境含義和情感色彩等。 自監(jiān)督學習:模型采用自監(jiān)督學習策略,在大量無標簽文本數據上學
    發(fā)表于 08-02 11:03

    BP神經網絡的基本結構訓練過程

    網絡結構,通過誤差反向傳播算法(Error Backpropagation Algorithm)來訓練網絡,實現對復雜問題的學習和解決。以下將詳細闡述BP神經網絡的工作方式,涵蓋其基本原理、訓練過程、應用實例以及優(yōu)缺點等多個方面
    的頭像 發(fā)表于 07-10 15:07 ?7343次閱讀
    BP神經網絡的基本<b class='flag-5'>結構</b>和<b class='flag-5'>訓練過程</b>

    Transformer語言模型簡介與實現過程

    任務,隨后迅速擴展到其他NLP任務中,如文本生成、語言理解、問答系統(tǒng)等。本文將詳細介紹Transformer語言模型的原理、特點、優(yōu)勢以及實現過程
    的頭像 發(fā)表于 07-10 11:48 ?2804次閱讀

    解讀PyTorch模型訓練過程

    PyTorch作為一個開源的機器學習庫,以其動態(tài)計算圖、易于使用的API和強大的靈活性,在深度學習領域得到了廣泛的應用。本文將深入解讀PyTorch模型訓練的全過程,包括數據準備、模型
    的頭像 發(fā)表于 07-03 16:07 ?1684次閱讀

    深度學習的典型模型訓練過程

    深度學習作為人工智能領域的一個重要分支,近年來在圖像識別、語音識別、自然語言處理等多個領域取得了顯著進展。其核心在于通過構建復雜的神經網絡模型,從大規(guī)模數據中自動學習并提取特征,進而實現高效準確的預測和分類。本文將深入解讀深度學習中的典型模型及其
    的頭像 發(fā)表于 07-03 16:06 ?2643次閱讀

    卷積神經網絡的基本結構訓練過程

    處理具有空間層次結構的數據時表現出色。本文將從卷積神經網絡的歷史背景、基本原理、網絡結構訓練過程以及應用領域等方面進行詳細闡述,以期全面解析這一重要算法。
    的頭像 發(fā)表于 07-02 18:27 ?1579次閱讀

    CNN模型的基本原理、結構訓練過程及應用領域

    CNN模型的基本原理、結構訓練過程以及應用領域。 卷積神經網絡的基本原理 1.1 卷積運算 卷積運算是CNN模型的核心,它是一種數學運算
    的頭像 發(fā)表于 07-02 15:26 ?5439次閱讀

    卷積神經網絡的基本原理、結構訓練過程

    訓練過程以及應用場景。 一、卷積神經網絡的基本原理 卷積運算 卷積運算是卷積神經網絡的核心,它是一種數學運算,用于提取圖像中的局部特征。卷積運算的過程如下: (1)定義卷積核:卷積核是一個小的矩陣,用于在輸入圖像上滑動,提取局部特征。 (2)滑動窗口:將
    的頭像 發(fā)表于 07-02 14:21 ?4085次閱讀

    使用PyTorch搭建Transformer模型

    Transformer模型自其問世以來,在自然語言處理(NLP)領域取得了巨大的成功,并成為了許多先進模型(如BERT、GPT等)的基礎。本文將深入解讀如何使用PyTorch框架搭建Trans
    的頭像 發(fā)表于 07-02 11:41 ?2423次閱讀

    深度學習模型訓練過程詳解

    詳細介紹深度學習模型訓練的全過程,包括數據預處理、模型構建、損失函數定義、優(yōu)化算法選擇、訓練過程以及模型
    的頭像 發(fā)表于 07-01 16:13 ?2367次閱讀
    主站蜘蛛池模板: 国内精品偷拍在线观看 | 年轻夫妇韩剧中文版免费观看 | 18禁无遮遮挡羞漫画免费阅读 | 国产精品18久久久久久白浆. | 久久亚洲伊人中字综合精品 | 中文字幕 日韩 无码 在线 | 成人久久欧美日韩一区二区三区 | 日本阿v片在线播放免费 | 亚洲精品成人在线 | 免费三级网址 | 调教美丽的白丝袜麻麻视频 | 嗯好舒服嗯好大好猛好爽 | 黄色片中文 | 涩涩网站在线看 | 国产ZZJJZZJJ视频全免费 | 国产电影午夜成年免费视频 | 欧美丝袜女同 | 动漫美女被到爽了流漫画 | 啊…嗯啊好深男男小黄文 | 一二三四在线观看高清电视剧 | 韩国免费啪啪漫画无遮拦健身教练 | 亚洲国产日韩制服在线观看 | 女人高潮时一吸一夹 | 狠狠色综合7777久夜色撩人 | 久久综合久久鬼 | 小箩莉奶水四溅小说 | 亚洲精品无码葡京AV天堂 | 快播电影网站大全 | 久久青青草原精品国产软件 | 蜜柚影院在线观看免费高清中文 | 欧美日韩精品久久久免费观看 | 久久人妻少妇嫩草AV蜜桃35I | 国产高潮国产高潮久久久久久 | 国产在线AV一区二区香蕉 | 美国z0069| 色小姐.com| 亚洲热在线视频 | 和尚扒开双腿蹂躏 | 漂亮的保姆5电影免费观看完整版中文 | 国产乱子影视频上线免费观看 | 亚洲 日本 中文字幕 制服 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品