用通俗易懂的方式讲解:灵魂 20 问帮你彻底搞定Transformer

本文主要是介绍用通俗易懂的方式讲解:灵魂 20 问帮你彻底搞定Transformer,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,今天总结一下史上最全 Transformer 面试题

  1. Transformer为何使用多头注意力机制?(为什么不使用一个头)
  2. Transformer为什么Q和K使用不同的权重矩阵生成,为何不能使用同一个值进行自身的点乘?
    (注意和第一个问题的区别)
  3. Transformer计算attention的时候为何选择点乘而不是加法?两者计算复杂度和效果上有什么区别?
  4. 为什么在进行softmax之前需要对attention进行scaled(为什么除以dk的平方根),并使用公式推导进行讲解
  5. 在计算attention score的时候如何对padding做mask操作?
  6. 为什么在进行多头注意力的时候需要对每个head进行降维?(可以参考上面一个问题)
  7. 大概讲一下Transformer的Encoder模块?
  8. 为何在获取输入词向量之后需要对矩阵乘以embedding size的开方?意义是什么?
  9. 简单介绍一下Transformer的位置编码?有什么意义和优缺点?
  10. 你还了解哪些关于位置编码的技术,各自的优缺点是什么?
  11. 简单讲一下Transformer中的残差结构以及意义。
  12. 为什么transformer块使用LayerNorm而不是BatchNorm?LayerNorm 在Transformer的位置是哪里?
  13. 简答讲一下BatchNorm技术,以及它的优缺点。
  14. 简单描述一下Transformer中的前馈神经网络?使用了什么激活函数?相关优缺点?
  15. Encoder端和Decoder端是如何进行交互的?(在这里可以问一下关于seq2seq的attention知识)
  16. Decoder阶段的多头自注意力和encoder的多头自注意力有什么区别?(为什么需要decoder自注意力需要进行 sequence mask)
  17. Transformer的并行化提现在哪个地方?Decoder端可以做并行化吗?
  18. 简单描述一下wordpiece model 和 byte pair encoding,有实际应用过吗?
  19. Transformer训练的时候学习率是如何设定的?Dropout是如何设定的,位置在哪里?Dropout 在测试的需要有什么需要注意的吗?
  20. 引申一个关于bert问题,bert的mask为何不学习transformer在attention处进行屏蔽score的技巧?

答案解析

其实这20个问题不是让大家背答案,而是为了帮助大家梳理 transformer的相关知识点,所以你注意看会发现我的问题也是有某种顺序的。

问题基本上都可以在网上找到答案,所以大家可以先去搜一搜,自己理解一下。如果想要梳理好的完整答案,也可以进我们交流群获取

技术交流群

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

我们建了NLP面试与技术交流群, 想要进交流群、需要本文源码、提升技术的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

方式①、添加微信号:mlc2060,备注:面试资料
方式②、微信搜索公众号:机器学习社区,后台回复:面试资料

文章精选

  • 深度学习&大模型

用通俗易懂的方式讲解:吴恩达倾情推荐28张图,全解深度学习知识!

用通俗易懂的方式讲解:LSTM原理及生成藏头诗(Python)

用通俗易懂的方式讲解:超详细!大模型面经指南(附答案)

  • NLP方向

用通俗易懂的方式讲解:自然语言处理初学者指南

用通俗易懂的方式讲解:一文讲透NLP算法(Python)

用通俗易懂的方式讲解:NLP 方向最全面试题库

用通俗易懂的方式讲解:NLP 这样学习才是正确路线

用通俗易懂的方式讲解:TF-IDF算法介绍及实现

用通俗易懂的方式讲解:总结NLTK使用方法

用通俗易懂的方式讲解:针对中文的自然语言预处理方法汇总

用通俗易懂的方式讲解:NLP常见语言模型及数据增强方法总结

用通俗易懂的方式讲解:TextRank 算法介绍及实现

用通俗易懂的方式讲解:关键词提取方法总结及实现

用通俗易懂的方式讲解:实体关系抽取入门教程

这篇关于用通俗易懂的方式讲解:灵魂 20 问帮你彻底搞定Transformer的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/577823

相关文章

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

C# foreach 循环中获取索引的实现方式

《C#foreach循环中获取索引的实现方式》:本文主要介绍C#foreach循环中获取索引的实现方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、手动维护索引变量二、LINQ Select + 元组解构三、扩展方法封装索引四、使用 for 循环替代

将Java程序打包成EXE文件的实现方式

《将Java程序打包成EXE文件的实现方式》:本文主要介绍将Java程序打包成EXE文件的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录如何将Java程序编程打包成EXE文件1.准备Java程序2.生成JAR包3.选择并安装打包工具4.配置Launch4