為什么bert是雙向transformer

BERT 是雙向 Transformer,這是它的一個核心創新點。下面我從 技術原理、與傳統 Transformer 的區別、以及雙向性的實際意義 來詳細解釋為什么 BERT 被稱為“雙向 Transformer”。


一、什么是 BERT 的“雙向”?

在 BERT 的論文中,雙向的原文是 "Bidirectional", 更準確地說,BERT 是“深度雙向(deeply bidirectional)”的 Transformer 編碼器

這個“雙向”指的是:

在每一層 Transformer 中,每個詞(token)的表示都能同時看到其左邊和右邊的上下文。

也就是說,BERT 在預訓練階段對句子的處理是 同時從左往右和從右往左都考慮上下文信息的


二、對比:BERT vs GPT

模型基于結構上下文類型是否雙向
GPTTransformer Decoder單向(從左到右)
BERTTransformer Encoder雙向(同時看左右)

  • GPT 采用左到右的自回歸(AutoRegressive)語言建模方式,預測當前詞時,只依賴其左邊的詞。

  • BERT 使用 Masked Language Model(MLM)來隨機遮住輸入中的一部分詞,然后預測被遮住的詞,它需要依賴左右兩側的詞語來推理出被遮住的詞。


三、為什么 BERT 是雙向 Transformer?

1. BERT 的預訓練任務:Masked Language Modeling(MLM)

BERT 用的是 Masked Language Model,即在輸入中隨機掩蓋一部分 token(如 [MASK]),訓練模型去預測這些被遮蓋的詞:

  • 舉例:

    • 輸入:The man went to the [MASK]

    • 目標:預測 [MASK]storepark

此時,模型 必須利用 [MASK] 左右兩側的信息 來做預測。因此,它在每一層都需要看到整個句子(不是單向的)。

這一點和 GPT 的左到右建模完全不同。


2. Transformer 本身結構支持雙向

Transformer 編碼器(Encoder)中使用的是 自注意力機制(Self-Attention),它允許每個 token 與輸入序列中的所有 token 建立聯系

  • 在 BERT 中,沒有添加任何掩碼(mask)來阻止右邊的信息參與注意力,因此它是自然的雙向結構。

  • GPT(Decoder)則添加了下三角 mask,阻止模型看見未來的信息,使得它只能看到左邊。


四、BERT 的雙向性優勢

  1. 上下文更完整

    • 傳統語言模型(如 GPT)只能從一個方向理解上下文,而 BERT 可以同時考慮前后信息,對句子理解更深。

    • 這對于命名實體識別、問答、自然語言推理等任務效果更好。

  2. 更強的表示能力

    • 每一個 token 的 embedding 編碼,融合了整句話的語義信息,有利于更復雜的語義建模。

  3. 對稱建模句子結構

    • 適用于文本蘊含、句子對匹配等需要對稱理解的任務。


五、總結

  • BERT 是雙向 Transformer,因為它在預訓練階段使用 MLM 任務,在每一層 Transformer 編碼器中都能同時訪問 token 的左右上下文。

  • 雙向性的實現依賴于 Transformer 編碼器 的自注意力機制,不加入方向性掩碼。

  • 相比傳統的單向語言模型(如 GPT),BERT 的雙向特性使得它在多種自然語言理解任務中表現更強。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/93780.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/93780.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/93780.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue中使用Canvas繪制波形圖和頻譜圖(支持.pcm)

實現方式一&#xff1a; vue中使用wavesurfer.js繪制波形圖和頻譜圖 安裝colorMap&#xff1a; npm install --save colormap1、單個頻譜圖 效果&#xff1a; 源碼&#xff1a; <template><div class"spectrogram-container"><canvas ref"ca…

【Python系列】Flask 應用中的主動垃圾回收

博客目錄一、Python 內存管理基礎二、Flask 中手動觸發 GC 的基本方法三、高級 GC 策略實現1. 使用裝飾器進行請求級別的 GC2. 定期 GC 的實現四、Flask 特有的 GC 集成方式1. 使用 teardown_request 鉤子2. 結合應用上下文管理五、智能 GC 策略六、注意事項與最佳實踐七、替代…

Linux和shell

最快入門的方式是使用蘋果系統。此外&#xff0c;累計補充學習&#xff1a;一、目錄結構/bin&#xff0c;二進制文件 /boot&#xff0c;啟動文件 /dev&#xff0c;設備文件 /home&#xff0c;主目錄&#xff0c;一般外接包、安裝包放在這里 /lib&#xff0c;庫文件 /opt&#x…

告別內存泄漏:你的Rust語言30天征服計劃

歡迎踏上Rust學習之旅&#xff01;第一周&#xff1a;奠定基礎 (Week 1: Laying the Foundation)第1天&#xff1a;環境搭建與 “Hello, World!”核心概念: 安裝Rust工具鏈 (rustup)&#xff0c;它包含了編譯器rustc和包管理器Cargo。Cargo是你的好朋友&#xff0c;用于創建項目…

亂刪文件,電腦不能開機,怎么辦

相信不少朋友在清理電腦、釋放空間時&#xff0c;都做過一件“后悔一整年”的事——亂刪系統文件。本來只是想讓電腦快點、干凈點&#xff0c;結果第二天一開機&#xff1a;黑屏了、藍屏了、無限重啟了&#xff0c;甚至連桌面都見不到了&#xff01;很多用戶在刪文件時&#xf…

ICODE SLIX2有密鑰保護的物流跟蹤、圖書館管理ISO15693標簽讀寫Delphi源碼

本示例使用設備&#xff1a;https://item.taobao.com/item.htm?spma21dvs.23580594.0.0.6781645eXF3tm5&ftt&id959258149468 一、密鑰認證 procedure TForm1.Button21Click(Sender: TObject); varctrlword:byte;passwordid:byte; //密鑰類型status:byte; //存…

核環境特種機器人設備的抗輻照芯片選型方案

摘要&#xff1a;核能作為國家能源安全的重要組成部分&#xff0c;對工業自動化設備的穩定性和可靠性提出了極高的要求。機器人設備在涉核環境下的日常巡檢、設備維護、應急響應等任務中發揮著不可替代的作用。然而&#xff0c;涉核環境&#xff0c;尤其是高能粒子的輻照效應&a…

Linux權限系統完全指南:從本質到安全實踐

一、權限的本質&#xff1a;Linux安全的核心邏輯在Linux的多用戶環境中&#xff0c;權限系統通過三個關鍵維度實現資源隔離&#xff1a;用戶標識 (UID)&#xff1a;系統通過數字ID識別用戶&#xff0c;root用戶的UID固定為0組標識 (GID)&#xff1a;用戶組機制實現批量權限管理…

養老院跌倒漏報率↓78%!陌訊多模態算法在智慧照護中的邊緣計算優化

?摘要??&#xff1a; 針對養老場景中復雜光照與遮擋導致的跌倒漏報問題&#xff0c;陌訊視覺算法通過多模態融合與邊緣計算優化&#xff0c;實測顯示在RK3588 NPU硬件上實現??mAP0.5達89.3%??&#xff0c;較基線模型提升28.5%&#xff0c;功耗降低至7.2W。本文解析其動態…

老年護理實訓室建設方案:打造安全、規范、高效的實踐教學核心平臺

在老齡化社會加速發展的背景下&#xff0c;培養高素質、技能過硬的老年護理專業人才迫在眉睫。一個設計科學、功能完備的老年護理實訓室&#xff0c;正是院校提升實踐教學質量&#xff0c;對接行業需求的核心平臺。本方案旨在構建一個安全、規范、高效的現代化實訓環境。點擊獲…

OpenCv中的 KNN 算法實現手寫數字的識別

目錄 一.案例&#xff1a;手寫數字的識別 1.安裝opencv-python庫 2.將大圖分割成10050個小圖&#xff0c;每份對應一個手寫數字樣品 3.訓練集和測試集 4.為訓練集和測試集準備結果標簽 5.模型訓練與預測 6.計算準確率 7.完整代碼實現 一.案例&#xff1a;手寫數字的識別…

TCP/IP 傳輸層詳解

TCP/IP 傳輸層詳解 傳輸層&#xff08;Transport Layer&#xff09;是 TCP/IP 模型的第四層&#xff08;對應 OSI 模型的傳輸層&#xff09;&#xff0c;核心功能是實現 端到端&#xff08;進程到進程&#xff09;的可靠通信。主要協議包括&#xff1a; TCP&#xff08;傳輸控制…

深度學習筆記:Overview

本文根據吳恩達老師的深度學習課程整理而來&#xff0c;在此表示感知。 文章目錄1.課程筆記2.編程作業1.課程筆記 1&#xff09;深度學習筆記&#xff08;1&#xff09;&#xff1a;神經網絡基礎 2&#xff09;深度學習筆記&#xff08;2&#xff09;&#xff1a;淺層神經網絡…

LLM之RAG理論(十八)| ChatGPT DeepResearch 深度研究功能全面技術分析報告

一、背景與行業環境1.1 DeepResearch 的誕生與戰略意義ChatGPT DeepResearch&#xff08;深度研究&#xff09;是 OpenAI 于 2025 年 2 月 3 日正式發布的全新 AI 智能體產品&#xff0c;是繼 o3-mini 模型發布后&#xff0c;OpenAI 在 AI 研究領域的又一重大突破。這一功能的推…

數據庫學習--------數據庫日志類型及其與事務特性的關系

在數據庫系統中&#xff0c;日志是保證數據可靠性和一致性的重要組成部分&#xff0c;尤其與事務的特性緊密相連。無論是事務的原子性、一致性&#xff0c;還是持久性&#xff0c;都離不開日志的支持。數據庫日志&#xff08;Database Log&#xff09;是數據庫系統記錄自身操作…

如何在 Ubuntu 24.04 或 22.04 LTS 上安裝 OpenShot 視頻編輯器

OpenShot 視頻編輯器是一款輕量級工具,不需要高性能硬件即可編輯視頻。它最初是一個愛好項目,后來成為一款擁有簡單干凈用戶界面的流行免費編輯工具。這款直觀的視頻編輯器可以剪輯影片,并添加額外的視頻和音頻素材。最終,您可以將作品導出為您選擇的格式。本教程將向您展示…

SpringMVC核心原理與實戰指南

什么是MVC&#xff1f; MVC英文是Model View Controller&#xff0c;是模型(model)&#xff0d;視圖(view)&#xff0d;控制器(controller)的縮寫&#xff0c;一種軟件設計規范。 MVC是用一種業務邏輯、數據、界面顯示分離的方法&#xff0c;將業務邏輯聚集到一個部件里面&am…

【JavaEE】(7) 網絡原理 TCP/IP 協議

一、應用層 應用層是程序員最關心的一層&#xff0c;需要自定義數據傳輸的格式&#xff0c;即前&#xff08;客戶端&#xff09;后&#xff08;服務器&#xff09;端交互的接口&#xff0c;然后調用傳輸層的 socket api 來實現網絡通信。 自定義數據傳輸的協議&#xff0c;主要…

深入理解 Slab / Buddy 分配器與 MMU 映射機制

&#x1f4d6; 推薦閱讀&#xff1a;《Yocto項目實戰教程:高效定制嵌入式Linux系統》 &#x1f3a5; 更多學習視頻請關注 B 站&#xff1a;嵌入式Jerry 深入理解 Slab / Buddy 分配器與 MMU 映射機制 在現代 Linux 內核中&#xff0c;物理內存的管理和虛擬地址的映射是系統性能…