Alternative to Receptive field in Transformers and what factors impact it

題意:Transformer中感受野的替代概念及其影響因素

問題背景:

I have two transformer networks. One with 3 heads per attention and 15 layers in total and second one with 5 heads per layer and 30 layers in total. Given an arbitrary set of documents (2048 tokens per each), how to find out, which network is going to be better to use and is less prone to overfitting?

我有兩個Transformer網絡。一個網絡每層的注意力有3個頭,總共有15層;另一個網絡每層的注意力有5個頭,總共有30層。給定一組任意的文檔(每篇文檔包含2048個標記),要如何確定哪個網絡更適合使用,并且更不容易過擬合?

In computer vision we have concept called: "receptive field", that allows us to understand how big or small network we need to use. For instance, if we have CNN with 120 layers and CNN with 70 layers, we can calculate their receptive fields and understand which one is going to perform better on a particular dataset of images.

在計算機視覺中,我們有一個概念叫做“感受野(Receptive Field)”,它幫助我們理解需要使用多大或多小的網絡。例如,如果我們有一個120層的卷積神經網絡(CNN)和一個70層的CNN,我們可以計算它們的感受野,并了解哪一個在特定的圖像數據集上表現會更好。

Do you guys have something similar in NLP? How do you understand whether one architecture is more optimal to use versus another,having a set of text documents with unique properties?

在自然語言處理(NLP)中,我們是否有類似“感受野”的概念呢?當我們有一組具有獨特屬性的文本文檔時,如何判斷哪種架構比另一種更優?

問題解決:

How do you understand whether one architecture is more optimal to use versus another, having a set of text documents with unique properties?

在擁有一組具有獨特屬性的文本文檔時,您如何判斷哪種架構比另一種更優?

For modern?Transformer-based?Language Models (LMs), there are some empirical "scaling laws," such as the?Chinchilla scaling laws?(Wikipedia), that essentially say that larger (deeper) models with more layers, i.e., with more parameters tend to perform better. So far, most LMs seem to roughly follow Chinchilla scaling. There is another kind of scaling, which is closer to a "receptive field", that I talk about below.

對于現代的基于Transformer的語言模型(LMs),存在一些經驗性的“擴展定律”,如Chinchilla擴展定律(Wikipedia上可查),這些定律本質上表明,具有更多層(即更深)和更多參數的大型模型往往表現更好。到目前為止,大多數語言模型似乎都大致遵循Chinchilla擴展定律。不過,還有一種擴展類型,它更接近于我下面要討論的“感受野”概念。

Do you guys have something similar in NLP?

在自然語言處理(NLP)中,你們有沒有類似的概念或機制

Kind of. Transformer-based LMs can be thought to have a "receptive field" similar to CNN layers, as the attention mechanism in the Transformer operates on a pre-defined "context window" or "context length", which is the maximum number of tokens the layer can look at ("attend to") at any given time, similar to a CNN kernel. However, with the introduction of new positional encoding (PE) approaches, such as?Rotary Positional Encoding (RoPE), and modified attention architectures, like?Sliding Window Attention (SWA), this is not strictly accurate.

在某種程度上,可以認為基于Transformer的語言模型(LMs)具有類似于卷積神經網絡(CNN)層的“感受野”。因為Transformer中的注意力機制是在一個預定義的“上下文窗口”或“上下文長度”上操作的,這個長度是該層在任何給定時間可以查看(或“注意”)的最大標記(token)數,這類似于CNN中的卷積核。然而,隨著新的位置編碼(PE)方法(如旋轉位置編碼Rotary Positional Encoding,RoPE)和修改后的注意力架構(如滑動窗口注意力Sliding Window Attention,SWA)的引入,這一說法并不完全準確。

Scaling in terms of "context length" is of much interest, but usually, it is very difficult to scale Transformers this way, because of attention being a ($\mathcal{O}(N^2)$) (O(N^2)) operation. So, usually, researchers go towards deeper architectures with more parameters ("over-parameterization") that can allow the model to "memorize" as much of the large training corpus as it can ("overfitting"), so that it can perform reasonably well, when fine-tuned for most down-stream tasks (that have at least some representative examples in the training corpus).

在“上下文長度”方面的擴展是非常有吸引力的,但通常,由于注意力機制是(O(N2))操作,因此很難以這種方式擴展Transformer。因此,研究人員通常會選擇更深的架構,增加更多的參數(“過參數化”),這樣模型就可以“記憶”盡可能多的大型訓練語料庫中的內容(“過擬合”),以便在大多數下游任務(這些任務在訓練語料庫中至少有一些代表性示例)上進行微調時,能夠表現出合理的性能。

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

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

相關文章

什么是數據模型?數據模型與數據治理有什么關系?

在企業數據治理的廣闊領域中,首要且關鍵的一步是明確溝通數據治理的需求。這包括對企業所持有的數據種類、數據存儲位置、以及當前數據管理的具體情況有一個清晰的了解和記錄。了解企業的數據資產是制定有效數據治理策略的基礎。企業需要識別和盤點所有類型的數據資…

AIGC產品經理學習路徑

基礎篇(課時 2 ) AIGC 行業視角 AIGC 的行業發展演進:傳統模型/深度學習/大模型 AIGC 的產品設計演進:AI Embedded / AI Copilot / AI Agen AIGC 的行業產業全景圖 AIGC 的產品應用全景圖 AIGC 職業視角 AI 產品經理/ AIGC…

2974.最小數字游戲

1.題目描述 你有一個下標從 0 開始、長度為 偶數 的整數數組 nums ,同時還有一個空數組 arr 。Alice 和 Bob 決定玩一個游戲,游戲中每一輪 Alice 和 Bob 都會各自執行一次操作。游戲規則如下: 每一輪,Alice 先從 nums 中移除一個 …

Spring MVC 全面指南:從入門到精通的詳細解析

引言: Spring MVC,作為Spring框架的一個重要模塊,為構建Web應用提供了強大的功能和靈活性。無論是初學者還是有一定經驗的開發者,掌握Spring MVC都將顯著提升你的Web開發技能。本文旨在為初學者提供一個全面且易于理解的學習路徑…

數據建設實踐之大數據平臺(五)安裝hive

安裝hive 上傳安裝包到/opt/software目錄并解壓 [bigdata@node101 software]$ tar -zxvf hive-3.1.3-with-spark-3.3.1.tar.gz -C /opt/services [bigdata@node101 services]$ mv apache-hive-3.1.3-bin apache-hive-3.1.3 配置環境變量 export JAVA_HOME=/opt/services…

Debezium系列之:驗證mysql、mariadb等兼容mysql協議數據庫賬號權限

Debezium系列之:驗證mysql、mariadb等兼容mysql協議數據庫賬號權限 一、數據庫需要開啟binlog二、創建賬號和賬號需要賦予的權限三、賬號具有權限查看日志信息四、驗證賬號權限五、驗證賬號能否執行show master status六、驗證數據庫是否開啟binlog一、數據庫需要開啟binlog …

實驗9 存儲過程與函數的創建管理實驗

一、實驗目的: 理解存儲過程和函數的概念。掌握創建存儲過程和函數的方法。掌握執行存儲過程和函數的方法。掌握游標的定義、使用方法。 二、實驗內容 1.某超市的食品管理的數據庫的Food表,Food表的定義如表所示, Food表的定義…

【進階篇-Day8:JAVA中遞歸、異常的介紹】

目錄 1、遞歸的介紹和使用1.1 遞歸的介紹1.2 案例案例一:案例二:案例三:案例四: 1.3 總結 2、異常的介紹和使用2.1 異常的介紹:(1)能夠看懂異常(2)異常的體系接口和分類&…

Go語言map并發安全,互斥鎖和讀寫鎖誰更優?

并發編程是 Go 語言的一大特色,合理地使用鎖對于保證數據一致性和提高程序性能至關重要。 在處理并發控制時,sync.Mutex(互斥鎖)和 sync.RWMutex(讀寫鎖)是兩個常用的工具。理解它們各自的優劣及擅長的場景…

蘋果入局,AI手機或將實現“真智能”?

【潮汐商業評論/原創】 “AI應用智能手機不就是現在的AI手機。” 當被問到現階段對AI手機的看法時,John如是說。“術業有專攻,那么多APP在做AI功能,下載用就是了,也用不著現在換個AI手機啊。” 對于AI手機,或許大多…

上海市計算機學會競賽平臺2023年1月月賽丙組積木染色(二)

題目描述 𝑛n 塊積木排成一排,需要給每塊積木染色,顏色有 𝑚m 種。請問有多少種方法,從第二塊積木開始統計,恰有 𝑝p 塊積木與前一塊積木顏色不同? 輸入格式 三個整數分別表示 &a…

Windows安裝和使用Doccano標注工具

簡介 開源鏈接:GitHub - doccano/doccano: Open source annotation tool for machine learning practitioners. Open source annotation tool for machine learning practitioners. Doccano是一款開源的文本標注工具,由人工智能公司Hironsan開發并在G…

【算法】代碼隨想錄之數組

文章目錄 前言 一、二分查找法(LeetCode--704) 二、移除元素(LeetCode--27) 三、有序數組的平方(LeetCode--977) 四、長度最小的子數組(LeetCode--209) 五、螺旋矩陣II&#x…

花幾千上萬學習Java,真沒必要!(二)

1、注釋: java代碼注釋分3種: 單行注釋://注釋信息 多行注釋: /*注釋信息*/ 文檔注釋:/**注釋信息*/ public class TestComments {// 這是單行注釋,用于注釋單行代碼或解釋代碼功能/* 這是多行注釋,用于注釋多行代碼…

Kotlin runCatching try-catch耗時比較

Kotlin runCatching try-catch耗時比較 fun main(args: Array<String>) {val lists arrayListOf("z")val idx 10/***納秒統計** ns&#xff08;nanosecond&#xff09;&#xff1a;納秒。一秒的10億分之一&#xff0c;10的-9次方秒。*   1納秒0.000001 毫秒…

基于實現Runnable接口的java多線程

Java多線程通常可以通過繼承Thread類或者實現Runnable接口實現。本文主要介紹實現Runnable接口的java多線程的方法, 并通過ThreadPoolTaskExecutor調用執行&#xff0c;以及應用場景。 一、應用場景 異步、并行、子任務、磁盤讀寫、數據庫查詢、網絡請求等耗時操作等。 以下…

筆記:在Entity Framework Core中如何處理多線程操作DbContext

一、目的&#xff1a; 在使用Entity Framework Core (EF Core) 進行多線程操作時&#xff0c;需要特別注意&#xff0c;因為DbContext類并不是線程安全的。這意味著&#xff0c;你不能從多個線程同時使用同一個DbContext實例進行操作。嘗試這樣做可能會導致數據損壞、異常或不可…

C語言排序之快速排序

快速排序是一種高效的排序算法。它采用了分治的策略&#xff0c;通過選擇一個基準元素&#xff0c;將待排序的序列劃分為兩部分&#xff0c;一部分的元素都比基準元素小&#xff0c;另一部分的元素都比基準元素大&#xff0c;然后對這兩部分分別進行快速排序&#xff0c;從而實…

前端開發工具

Lodash 有普通的 CommonJS 版本&#xff08;通常稱為 lodash&#xff09;和 ES6 模塊版本&#xff08;稱為 lodash-es&#xff09;。它們的主要區別包括&#xff1a; 模塊化&#xff1a;lodash 是傳統的 CommonJS 模塊&#xff0c;可使用 require 或 import 引入&#xff1b;lo…

2024年,搞AI就別卷模型了

你好&#xff0c;我是三橋君 2022年11月30日&#xff0c;OpenAI發布了一款全新的對話式通用人工智能工具——ChatGPT。 該工具發布后&#xff0c;僅用5天時間就吸引了100萬活躍用戶&#xff0c;而在短短2個月內&#xff0c;其活躍用戶數更是飆升至1億&#xff0c;成為歷史上增…