🌨️ deepfm算法

DeepFM 的思想就是充分利用 FM 在一阶和二阶特征的简洁高效和深度学习在高阶特征交互上的优势,同时通过共享 FM 和 DNN 的 Embedding 来减少参数量和共享信息,从而得到更好的模型。

🚏 pytorch损失函数之nn.CrossEntropyLoss()

nn.CrossEntropyLoss()是nn.logSoftmax()和nn.NLLLoss()的整合,可以直接使用它来替换网络中的这两个操作。

💼 pytorch_lightning模型训练

pytorch-lightning 是建立在pytorch之上的高层次模型接口。pytorch-lightning 之于 pytorch,就如同keras之于 tensorflow.pytorch-lightning

📔 batchnorm原理与源码

BN 就是通过一定的规范化手段,把每层神经网络任意神经元这个输入值的分布强行拉回到均值为 0 方差为 1 的标准正太分布而不是正态分布,其实就是把越来越偏的分布强制拉回比较标准的分布,这样使得激活输入值落在非线性函数对输入比较敏感的区域,这样输入的小变化就会导致损失函数较大的变化,意思是这样让梯度变大,避免梯度消失问题产生,而且梯度变大意味着学习收敛速度快,能大大加快训练速度。

🌛 Teacher forcing

训练迭代过程早期的RNN预测能力非常弱,几乎不能给出好的生成结果。Teacher forcing直接使用训练数据的标准答案(ground truth)作为输入。

🦯 来自Transformers的双向编码器表示(BERT)

BERT进一步改进了11种自然语言处理任务的技术水平,这些任务分为以下几个大类:(1)单一文本分类(如情感分析)、(2)文本对分类(如自然语言推断)、(3)问答、(4)文本标记(如命名实体识别)。从上下文敏感的ELMo到任务不可知的GPT和BERT,它们都是在2018年提出的。概念上简单但经验上强大的自然语言深度表示预训练已经彻底改变了各种自然语言处理任务的解决方案。

🕛 基于Transformers库的BERT模型分类任务

BERT模型本质是一种词嵌入模型,也是句子嵌入模型,输入的最大长度是512BERT模型把离散的单词变成了空间中连续的向量,即把一个单词变成向量

🚈 huggingface中的Tokenizer详解

tokenizer首先将给定的文本拆分为通常称为tokens的单词(或单词的一部分,标点符号等,在中文里可能就是词或字,根据模型的不同拆分算法也不同)。然后tokenizer能够将tokens转换为数字,以便能够构建张量并输入到模型中。