transformer-让你从底层知原理

433 阅读11分钟

第6章: BERT Pre-training模型源码完整实现、测试、调试及可视化分析

1,词典Vocabulary库构建多层级源码实现及测试

2,Dataset加载及数据处理源码完整实现及测试和调试

3,Next Sentence Prediction机制源码完整实现及测试

4,Masked Language Model机制中80%词汇Masking源码实现

5,Masked Language Model机制中10%词汇随机替换和10%词汇保持不变源码实现

6,Masked Language Model机制下的Output Label操作源码实现

7,加入CLS、SEP 等Tokens

8,Segment Embeddings源码实现

9,Padding源码实现及测试

10,使用DataLoader实现Batch加载

11,BERT的初始化init及forward方法源码实现

12,PositionalEmbeddings源码实现详解

13,TokenEmbeddings源码

14,SegmentEmbeddings源码

15,BERTEmbeddings层源码实现及调试

16,基于Embeddings之多Linear Transformation操作

17,Queries、Keys、Values操作源码

18,Attention机制源码实现

19,Multi-head Attention源码实现

20,Layer Normalization数学原理及源码实现

21,Sublayer Connection源码实现

22,Position-wise Feedforward层源码实现

23,Dropout数学机制及源码实现

24,基于Embeddings之上的Linear Transformation及其不同源码实现方式

25,TransformerBlock源码完整实现及测试

26,BERT模型训练时候多二分类和多分类别任务数学原理和实现机制

26,BERT Training Task之MLM源码完整实现及测试

27,BERT Training Task之NSP源码完整实现及测试

28,Negative Sampling数学原理及实现源码

29,MLM和NSP的Loss计算源码实现

30,BERT模型的训练源码实现及测试

31,使用小文本训练BERT模型源码、测试和调试

32,使用特定领域的(例如医疗、金融等)来对BERT进行Pre-training最佳实践

33,BERT加速训练技巧:动态调整Attention的Token能够Attending的长度

34,BERT可视化分析

第7章: BERT Fine-tuning源码完整实现、调试及案例实战

1,数据预处理训练集、测试集源码

2,文本中的Token、Mask、Padding的预处理源码

3,数据的Batch处理实现源码及测试

4,加载Pre-training模型的BertModel及BertTokenizer

5,模型Config配置

6,Model源码实现、测试、调试

7,BERT Model微调的数学原理及工程实践

8,BERT Model参数Frozen数学原理及工程实践

9,BertAdam数学原理及源码剖析

10,训练train方法源码详解

11,fully-connected neural network层源码详解及调试

12,采用Cross-Entropy Loss Function数学原理及代码实现

13,Evaluation 指标解析及源码实现

14,Classification任务下的Token设置及计算技巧

15,适配特定任务的Tokenization解析

16,BERT + ESIM(Enhanced Sequential Inference Model)强化BERT模型

17,使用BERT + LSTM整合强化BERT 模型

18,基于Movie数据的BERT Fine-tuning案例完整代码实现、测试及调试

第8章: 轻量级ALBERT模型剖析及BERT变种中常见模型优化方式详解

1,从数学原理和工程实践的角度阐述BERT中应该设置Hidden Layer的维度高于(甚至是高几个数量级)Word Embeddings的维度背后的原因

2,从数学的角度剖析Neural Networks参数共享的内幕机制及物理意义

3,从数学的角度剖析Neural Networks进行Factorization的机制及物理意义

4,使用Inter-sentence coherence任务进行模型训练的的数学原理剖析

5,上下文相关的Hidden Layer Embeddings

6,上下午无关或不完全相关的Word Embeddings

7,ALBERT中的Factorized embedding parameterization剖析

8,ALBERT中的Cross-Layer parameter sharing机制:只共享Attention参数

9,ALBERT中的Cross-Layer parameter sharing机制:只共享FFN参数

10,ALBERT中的Cross-Layer parameter sharing机制:共享所有的参数

11,ALBERT不同Layers的Input和Output相似度分析

12,训练Task的复杂度:分离主题预测和连贯性预测的数学原因及工程实践

13,ALBERT中的不同于BERT的 Sentence Negative Sampling

14,句子关系预测的有效行分析及问题的底层根源

15,ALBERT的SOP(Sentence Order Prediction)实现分析及工程实践

16,ALBERT采用比BERT更长的注意力长度进行实际的训练

17,N-gram Masking LM数学原理和ALERT对其实现分析

18,采用Quantization优化技术的Q8BERT模型架构解析

19,采用Truncation优化技术的“Are Sixteen Heads Really Better than One?”模型架构解析

20,采用Knowledge Distillation优化技术的distillBERT模型架构解析

21,采用多层Loss计算+知识蒸馏技术的TinyBERT模型架构解析

22,由轻量级BERT带来的关于Transformer网络架构及实现的7点启示

第9章: ALBERT Pre-training模型及Fine-tuning源码完整实现、案例及调试

1,Corpus数据分析

2,Pre-training参数设置分析

3,BasicTokenizer源码实现

4,WordpieceTokenizer源码实现

5,ALBERT的Tokenization完整实现源码

6,加入特殊Tokens CLS和SEP

7,采用N-gram的Masking机制源码完整实现及测试

8,Padding操作源码

9,Sentence-Pair数据预处理源码实现

10,动态Token Length实现源码

11,SOP正负样本源码实现

12,采用了Factorization的Embeddings源码实现

13,共享参数Attention源码实现

14,共享参数Multi-head Attention源码实现

15,LayerNorm源码实现

16,共享参数Position-wise FFN源码实现

17,采用GELU作为激活函数分析

18,Transformer源码完整实现

19,Output端Classification和N-gram Masking机制的Loss计算源码

20,使用Adam进行优化源码实现

21,训练器Trainer完整源码实现及调试

22,Fine-tuning参数设置、模型加载

23,基于IMDB影视数据的预处理源码

24,Fine-tuning阶段Input Embeddings实现源码

25,ALBERT Sequence Classification参数结构总结

26,Fine-tuning 训练代码完整实现及调试

27,Evaluation代码实现

28,对Movie数据的分类测试及调试

\

第10章: 明星级轻量级高效Transformer模型ELECTRA: 采用Generator-Discriminator的Text Encoders解析及ELECTRA模型源码完整实现

1,GAN:Generative Model和Discriminative Model架构解析

2,为什么说ELECTRA是NLP领域轻量级训练模型明星级别的Model?

3,使用replaced token detection机制规避BERT中的MLM的众多问题解析

4,以Generator-Discriminator实现的ELECTRA预训练架构解析

5,ELECTRTA和GAN的在数据处理、梯度传播等五大区别

6,ELECTRA数据训练全生命周期数据流

7,以Discriminator实现Fine-tuning架构解析

8,ELECTRA的Generator数学机制及内部实现详解

9,Generator的Loss数学机制及实现详解

10,Discriminator的Loss数学机制及实现详解

11,Generator和Discriminator共享Embeddings数据原理解析

12,Discriminator网络要大于Generator网络数学原理及工程架构

13,Two-Stage Training和GAN-style Training实验及效果比较

14,ELECTRA数据预处理源码实现及测试

15,Tokenization源码完整实现及测试

16,Embeddings源码实现

17,Attention源码实现

18,借助Bert Model实现Transformer通用部分源码完整实现

19,ELECTRA Generator源码实现

20,ELECTRA Discriminator源码实现

21,Generator和Discriminator相结合源码实现及测试

22,pre-training训练过程源码完整实现

23,pre-training数据全流程调试分析

24,聚集于Discriminator的ELECTRA的fine-tuning源码完整实现

25,fine-tuning数据流调试解析

26,ELECTRA引发Streaming Computations在Transformer中的应用思考

第11章: 挑战BERT地位的Autoregressive语言模型XLNet剖析及源码完整实现

1,作为Autoregressive语言模型的XLNet何以能够在发布时在20个语言任务上都能够正面挑战作为Autoencoding与训练领域霸主地位的BERT?

2,XLNet背后Permutation LM及Two-stream self-attention数学原理解析

3,Autoregressive LM和Autoencoding LM数学原理及架构对比

4,Denoising autoencoding机制的数学原理及架构设计

5,对Permutation进行Sampling来高性价比的提供双向信息数学原理

6,XLNet的Permutation实现架构和运行流程:content stream、query stream

7,XLNet中的缓存Memory记录前面Segment的信息

8,XLNet中content stream attention计算

9,XLNet中query stream attention计算

10,使用Mask Matrices来实现Two-stream Self-attention

11,借助Transformer-XL 来编码relative positional 信息

12,XLNet源码实现之数据分析及预处理

13,XLNet源码实现之参数设定

14,Embeddings源码实现

15,使用Mask实现causal attention

16,Relative shift数学原理剖析及源码实现

17,XLNet Relative attention源码完整实现

18,content stream源码完整实现

19,queery stream源码完整实现

20,Masked Two-stream attention源码完整实现

21,处理长文件的Fixed Segment with No Grad和New Segment

22,使用einsum进行矩阵操作

23,XLNetLayer源码实现

24,Cached Memory设置

25,Head masking源码

26,Relative-position encoding源码实现

27,Permutation实现完整源码

28,XLNet FFN源码完整实现

29,XLNet源码实现之Loss操作详解

30,XLNet源码实现之training过程详解

31,从特定的checkpoint对XLNet进行re-training操作

32,Fine-tuning源码完整实现

33,Training Evaluation分析

34,使用XLNet进行Movies情感分类案例源码、测试及调试

第12章:NLP比赛的明星模型RoBERTa架构剖析及完整源码实现

1,为什么说BERT模型本身的训练是不充分甚至是不科学的?

2,RoBERTa去掉NSP任务的数学原理分析

3,抛弃了token_type_ids的RoBERTa

4,更大的mini-batches在面对海量的数据训练时是有效的数学原理解析

5,为何更大的Learning rates在大规模数据上会更有效?

6,由RoBERTa对hyperparameters调优的数学依据

7,RoBERTa下的byte-level BPE数学原理及工程实践

6,RobertaTokenizer源码完整实现详解

7,RoBERTa的Embeddings源码完整实现

8,RoBERTa的Attention源码完整实现

9,RoBERTa的Self-Attention源码完整实现

10,RoBERTa的Intermediate源码完整实现

11,RobertLayer源码完整实现

12,RobertEncoder源码完整实现

13,RoBERTa的Pooling机制源码完整实现

14,RoBERTa的Output层源码完整实现

15,RoBERTa Pre-trained model源码完整实现

16,RobertaModel源码完整实现详解

17,实现Causal LM完整源码讲解

18,RoBERTa中实现Masked LM完整源码详解

19,RobertLMHead源码完整实现

20,RoBERTa实现Sequence Classification完整源码详解

21,RoBERTa实现Token Classification完整源码详解

22,RoBERTa实现Multiple Choice完整源码详解

23,RoBERTa实现Question Answering完整源码详解

\

第13章:DistilBERT:smaller, faster, cheaper and lighter的轻量级BERT架构剖析及完整源码实现

1,基于pretraining阶段的Knowledge distillation

2,Distillation loss数学原理详解

3,综合使用MLM loss、distillation loss、cosine embedding loss

4,BERT Student architecture解析及工程实践

5,抛弃了BERT的token_type_ids的DistilBERT

6,Embeddings源码完整实现

7,Multi-head Self Attention源码完整实现

8,Feedforward Networks源码完整实现

9,TransformerBlock源码完整实现

10,Transformer源码完整实现

11,继承PreTrainedModel的DistilBertPreTrainedModel源码完整实现

13,DistilBERT Model源码完整实现

14,DistilBertForMaskedLM源码完整实现

15,DistilBert对Sequence Classification源码完整实现

第14章: Transformers动手案例系列

1,动手案例之使用Transformers实现情感分析案例代码、测试及调试

2,动手案例之使用Transformers实现NER代码、测试及调试

3,动手案例之使用Transformers实现闲聊系统代码、测试及调试

4,动手案例之使用Transformers实现Summarization代码、测试及调试

5,动手案例之使用Transformers实现Answer Span Extraction代码、测试及调试

6,动手案例之使用Transformers实现Toxic Language Detection Multi-label Classification代码、测试及调试

7,动手案例之使用Transformers实现Zero-shot learning代码、测试及调试

8,动手案例之使用Transformers实现Text Clustering代码、测试及调试

9,动手案例之使用Transformers实现semantics search代码、测试及调试

10,动手案例之使用Transformers实现IMDB分析代码、测试及调试

11,动手案例之使用Transformers实现cross-lingual text similarity代码、测试及调试

企业微信截图_bbe84355-7912-4e6e-854c-542b055421e4.png