牛津大學xDeepMind 自然語言處理(3)

條件語言模型
  1. 無條件語言模型

    1. 概率計算:通過鏈式法則分解為預測下一詞概率(將語言建模問題簡化為建模給定前面詞語歷史的下一個詞的概率)
    2. 基于循環神經網絡的無條件語言模型:根據歷史詞語預測下一個詞的概率
  2. 條件語言模型

    1. 定義:在給定某些條件上下文xxx的情況下為詞序列w=(w1,w2,...,wl)w=(w_1,w_2,...,w_l)w=(w1?,w2?,...,wl?)分配概率:p(w∣x)=∏t=1lp(wt∣x,w1,w2,...,wt?1)p(w|x) = ∏_{t=1}^lp(w_t|x,w_1,w_2,...,w_{t-1})p(wx)=t=1l?p(wt?x,w1?,w2?,...,wt?1?)
    2. 訓練數據:需成對樣本{(xi,wi)}i=1N\{(x_i,w_i)\}^N_{i=1}{(xi?,wi?)}i=1N?,部分任務數據充足,相對大量的數據用于翻譯、摘要、標題生成、語音識別
    3. 算法挑戰:最優輸出難尋,需近似方法
    4. 評估:交叉熵困惑度等、特定任務指標、人類評估
  3. 編碼器-解碼器模型

    1. 概述:該模型學習一個函數,將xxx映射到一個固定大小的向量c,然后使用語言模型將該向量“解碼”為詞序列www

    2. kalchbrenner和Blunsom 2013:卷積句子模型(CSM)編碼器,循環解碼器

      優點:卷積學習局部上下文中特征之間的相互作用;通過堆疊卷積,可以學習更長范圍的依賴關系;深度卷積網絡具有類似于樹的分支結構,但不需要解析器。

      缺點:句子有不同的長度,需要不同深度的樹;卷積網絡通常不是這樣動態的

    3. Stuskever等人2014:LSTM編解碼

      優點:循環神經網絡自然地處理各種長度的序列;長短期記憶網絡原則上可以傳播長距離的梯度;架構非常簡單!

      缺點:隱藏狀態必須記住大量信息!

      1. 技巧
        1. 反向讀取輸入序列
        2. 使用JJJ個獨立訓練的模型集合
        3. 使用波束搜索
  4. 解碼方法

    1. 困難:尋找最可能輸出不易
    2. 近似方法:貪婪搜索、波束搜索
  5. 圖像標題生成

    1. 圖像標題生成:神經網絡非常適合處理多模態——一切都是向量!圖像標題生成可以使用類似翻譯的技術,需預訓練
    2. Kiros等人2013:前饋n元模型可以在條件模型中替代RNN,乘法模型助于交互學習
帶注意力機制的條件語言模型
  1. 向量條件處理的問題

    1. 信息壓縮不足:難以承載整句含義
    2. 梯度問題:傳播距離長
    3. 記憶問題:長短期記憶網絡易遺忘
  2. 帶注意力機制的機器翻譯

    1. 解決向量問題:用矩陣表示源語句,從矩陣生成目標語句,可解決容量和梯度流動問題
    2. 三種構建矩陣方式:
      1. 拼接:將單詞向量拼接
      2. 卷積網絡:應用卷積網絡來轉換原始的拼接矩陣,以獲得依賴于語境的矩陣
      3. 雙向循環神經網絡:雙向循環神經網絡(門控循環單元或長短期記憶網絡)從左到右和從右到左讀取 f(|f|=列數),拼接表示
  3. 從矩陣生成內容與注意力計算

    1. 生成方法:用循環神經網絡逐詞生成輸出句子,結合嵌入和矩陣視圖向量
    2. 注意力計算:(簡略概述 詳細需搜索)
      1. 簡化版:循環神經網絡隱藏狀態等一系列計算
      2. 非線性注意力 - 能量模型:用多層感知機替換點積
  4. 機器翻譯中注意力

    1. 在序列到序列翻譯中添加注意力效果:添加注意力提升11BLEU

    2. 模型變體:早期綁定和晚期綁定及優勢比較

      早期綁定(Early Binding)和晚期綁定(Late Binding)是編程語言中兩種不同的方法調用機制。

      1. 早期綁定(Early Binding)

        早期綁定在編譯時或程序啟動時確定方法或變量的具體實現,通常與靜態類型語言(如Java、C#)或編譯型語言相關。

        優勢:

        性能更高 類型安全 代碼可讀性強 更好的IDE支持

      2. 晚期綁定(Late Binding)

        晚期綁定在運行時動態確定方法或變量的具體實現,通常與動態類型語言(如Python、JavaScript)或反射機制相關。

        優勢:靈活性更高 代碼更簡潔 支持動態語言特性 更好的擴展性

      • 早期綁定更適合需要高性能、類型安全和代碼可維護性的場景。
      • 晚期綁定更適合需要靈活性和動態擴展的場景。
  5. 注意力總結與梯度

    1. 注意力與池化:密切相關
    2. 巴赫達瑙模型:關注內容,可添加結構偏向等
    3. 梯度:并行反向傳播
    4. 與人類翻譯:翻譯者會反復參考輸入
  6. 帶注意力的圖像標題生成

    1. 卷積網絡區域:含注釋向量

    2. 注意力計算:軟、硬注意力(確定性軟注意力和隨機性硬注意力)

    3. 軟注意力學習:確定性軟注意力是一種連續的、可微分的注意力機制,它通過某種函數(如softmax)對輸入的權重進行平滑處理,生成注意力分布。這個分布是確定性的,不涉及隨機性。

    4. 硬注意力學習:隨機性硬注意力是一種離散的注意力機制,它通過采樣(如從概率分布中采樣)來選擇特定的輸入特征或區域。由于其采樣過程是隨機的,因此具有不確定性。

      (基于詹森不等式等)

    5. 效果:軟注意力+2BLEU,硬注意力+4BLEU

  7. 整體總結:

    1. 性能改進:優于向量編碼等
    2. 其他優勢:模型可解釋性、更好的梯度流動、更好的容量等

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

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

相關文章

Vue2.x核心技術與實戰(一)

目錄 一、Vue2.x:快速上手+插值表達式+指令上 1.1 Vue快速上手 1.1.1 Vue概念 1.1.2 創建實例 1.1.3 插值表達式 { { }} 1.1.4 響應式特性 1.1.5 開發者工具 1.2 Vue指令 1.2.1 v-html 1.2.3 v-show / v-if v-show v-if 1.2.4 v-else / v-else-if 1.2.5 v-on v…

SCAU學習筆記 - 自科三面前端方向實戰演示

本來是準備寫完二面直接開始寫算法三面的,maimai那個封面圖我都做好了。但是可惡的出題人說要等我出完解析再針對性避開出題,所以swan決定把那個先擱置,本文我們先以2023年的自科三面前端方向題為例帶各位快速入門前端三件套(因為…

前后端聯合實現文件上傳,實現 SQL Server image 類型文件上傳

1、前端 Vue3QualityFileInfoDialog.vue<script setup lang"ts" name"QualityFile"> ...... // 上傳&#xff0c;防抖 const onUploadClick debounce(() > {// 模擬點擊元素if (fileInputRef.value) {// 重置以允許重復選擇相同文件fileInputRef…

使用安卓平板,通過USB數據線(而不是Wi-Fi)來控制電腦(版本1)

這是一個對延遲和穩定性要求很高的場景。 核心原理是&#xff1a;利用USB數據線&#xff0c;在手機和電腦之間創建一個高速的“虛擬網絡連接”&#xff0c;然后在這個穩定的網絡通道上運行遠程控制軟件。 方案1&#xff1a; 在完全沒有無線網絡&#xff08;Wi-Fi&#xff09;和…

linux報permission denied問題

linux報permission denied問題 一般是沒有可執行權限&#xff0c;需要先添加執行權限 1. 確認文件權限 在你的項目目錄下執行&#xff1a; ls -l ./folder你可能會看到類似&#xff1a; -rw-r--r-- 1 user user 1234 Aug 18 12:00 script.sh注意&#xff1a;這里缺少 x&#xf…

Vue深入組件:組件事件詳解2

聲明觸發的事件 為了讓組件的用法更清晰(作為文檔),同時讓 Vue 能區分事件與透傳 attribute,推薦顯式聲明組件要觸發的事件。根據組件是否使用 <script setup>,聲明方式有所不同。 使用 <script setup> 時:defineEmits() 宏 在 <script setup> 中,…

FLASK項目快速構建

Flask 項目構建 exts.py # flask_sqlalchemy from flask_sqlalchemy import SQLAlchemy from flask_mail import Mail from flask_caching import Cache from flask_wtf import CSRFProtect from flask_avatars import Avatars from flask_jwt_extended import JWTManager from…

數據結構--2:ArrayList與順序表

1.順序表的創建 2.常見操作 3.遍歷 4.擴容機制 5.例子1.順序表的創建在集合框架中&#xff0c;ArrayList是?個普通的類&#xff0c;實現了List接口&#xff0c;具體框架圖如下&#xff1a;2.常見操作代碼…

【Kubesphere】K8s容器無法訪問內網xx網絡問題

問題遇到的現象和發生背景 Kubesphere中運行的一個容器&#xff0c;可以ping通我們公司內網網段172.16.XX.XX&#xff0c;但是在容器內無法ping通192.168.5.XX&#xff0c;但是我在宿主機是可以ping通192.168.5.XX&#xff0c;這個192.168.5.XX是通過xx設備接進來的&#xff0c…

【開發語言】Groovy語言:Java生態中的動態力量

博客目錄一、Groovy 的誕生與發展二、核心特性深度解析1. 與 Java 的無縫集成2. 動態類型與可選靜態類型3. 強大的集合操作三、Groovy 在實際開發中的應用場景1. 構建自動化&#xff08;Gradle&#xff09;2. 測試開發&#xff08;Spock 框架&#xff09;3. 腳本任務自動化四、…

Obsidian 1.9.10升級

概述 Obsidian發布了更新版本1.9.10&#xff0c;是一次比較大的升級&#xff0c;尤其是增加了一些以前沒有的核心插件&#xff0c;尤其是重磅的數據庫功能。雖然可能還是比較初期&#xff0c;但是這意味著OB還是往更好的方向進化了。 本文以一些目前的視頻教程加自己的實際上手…

內容審計技術

一、 內容審計需求背景1.網絡安全法要求明確責任人&#xff1a;制定內部安全管理制度和操作規程&#xff0c;落實安全保護責任。監測、記錄并保留日志&#xff1a;采取監測、記錄網絡運行狀態、網絡安全事件的技術措施&#xff0c;并按照規定留存相關網絡日志不少于六個月。采取…

反序列化漏洞

php反序列化 1.什么是序列化和反序列化 office word是程序 doc/docx是數據 保存word文件&#xff1a;程序--保存(序列化)-->數據文件 打開word文件&#xff1a;程序--加載數據文件-->還原(反序列化) 游戲存檔&#xff1a;角色等級&#xff0c;任務&#xff0c;人物坐…

Lecture 4 Mixture of experts課程筆記

什么是MoE?用&#xff08;多個&#xff09;大型前饋網絡和一個選擇器層取代大型前饋網絡。你可以在不影響浮點運算次數的情況下增加專家數量。 MoE受歡迎的原因 相同的浮點運算次數&#xff0c;更多的參數表現更好訓練混合專家模型&#xff08;MoEs&#xff09;速度更快訓練混…

微服務架構的演進:從 Spring Cloud Netflix 到云原生新生態

過去十年,Spring Cloud 憑借 Netflix 全家桶(Eureka、Ribbon、Hystrix、Zuul 等)幾乎成為 Java 微服務的事實標準。但隨著這些核心組件逐步停止更新或進入維護模式,微服務架構正經歷一場深刻的演進。新的微服務架構更加注重 云原生兼容性、社區活躍度、企業級穩定性和低運維…

網絡流量分析——基礎知識

文章目錄所需技能和知識TCP/IP 堆棧和 OSI 模型基本網絡概念常用端口和協議IP 數據包和子層的概念協議傳輸封裝環境與設備常見的流量分析工具BPF 語法執行網絡流量分析NTA工作流程NTA工作流程網絡 - 第 1-4 層OSI / TCP-IP 模型尋址機制MAC地址IP 尋址IPv4IPv6IPv6 尋址類型IPv…

ansible playbook 實戰案例roles | 實現基于 IHS 的 AWStats 訪問監控系統

文章目錄一、核心功能描述二、roles內容2.1 文件結構2.2 主配置文件2.3 tasks文件內容三、files文件內容四、關鍵價值免費個人運維知識庫&#xff0c;歡迎您的訂閱&#xff1a;literator_ray.flowus.cn 一、核心功能描述 這個 Ansible Role 的核心功能是&#xff1a;?實現 ?…

DELL服務器 R系列 IPMI的配置

1、iDRAC功能默認都是關閉&#xff0c;需要在BIOS面啟用&#xff0c;首先重啟計算機&#xff0c;按F2然后進入BIOS&#xff0c;選擇iDRAC Setting進行iDRAC配置 2、重置一下idrac卡-重置才能恢復默認密碼 3、進入iDRAC Setting之后&#xff0c;選擇設置網絡Network 4、啟用iDRA…

模式組合應用-橋接模式(一)

寫在前面Hello&#xff0c;我是易元&#xff0c;這篇文章是我學習設計模式時的筆記和心得體會。如果其中有錯誤&#xff0c;歡迎大家留言指正&#xff01;文章為設計模式間的組合使用&#xff0c;涉及代碼較多&#xff0c;個人覺得熟能生巧&#xff0c;希望自己能從中學習到新的…

【clion】visual studio的sln轉cmakelist并使用clion構建32位

我想在linux上運行,所以先轉為cmake工程 例如可以把exe mfc 部分不構建,這樣ubuntu就不用移植。 先轉cmakelist,而后clion完成win32的構建,與vs構建對比,驗證腳本正確性。 Vcxproj2CMake https://github.com/gns333/Vcxproj2CMake cmakeconverter https://github.com/pave…