10得票3回答
使用训练有素的BERT模型和数据预处理

当使用从pytorch中预训练的BERT嵌入(然后进行微调)时,模型输入的文本数据是否应像任何标准NLP任务一样进行预处理? 例如,应该执行词干提取、去除低频词、去大写等处理吗?还是应该将原始文本直接传递给`transformers.BertTokenizer'?

10得票1回答
特殊标记有什么特别之处?

什么是“标记(token)”和“特殊标记(special token)”之间的区别? 我了解以下内容: 什么是典型的标记 什么是典型的特殊标记:MASK、UNK、SEP等 何时添加标记(当您想扩展词汇表时) 我不明白的是,在什么情况下会想要创建一个新的特殊标记,有没有任何需要它的示例...

10得票2回答
如何向分词器中添加新的特殊标记?

我想建立一个多类分类模型,其中输入为Bert模型的对话数据(使用bert-base-uncased)。 除此之外,我还有两个输入。我在想是否应该在对话中加入特殊标记,以便使其对BERT模型更有意义,比如: [CLS]QUERY: 我想问一个问题。 [EOT] ANSWER: 当然,请问。 ...

10得票4回答
使用Spacy、Bert进行文本分类时,是否需要进行停用词去除、词干提取/词形还原?

在使用Spacy、Bert或其他先进的NLP模型获取文本向量嵌入时,停用词去除、词干提取和词形还原是否必要进行文本分类? text = "婚礼上提供的食物非常美味" 1.由于Spacy、Bert是在大量原始数据集上进行训练的,因此在使用bert/spacy进行文本分类任务之...

10得票1回答
如何在HuggingFace Transformers库中获取预训练BERT模型的中间层输出?

我正在跟随this PyTorch教程学习BERT词嵌入,在教程中作者正在访问BERT模型的中间层。 在TensorFlow2中,使用HuggingFace的Transformers库,我想要访问BERT模型单个输入标记的最后四层。因为每层都会输出一个长度为768的向量,所以最后4层的形状将...

10得票3回答
使用dropout设置的Transformer预训练模型

我想使用transformer的huggingface预训练模型bert-base-uncased,但是我想增加dropout。在from_pretrained方法中没有提到这一点,但是colab运行下面的对象实例化没有任何问题。我在classtransformers.BertConfig文档...

10得票3回答
BertTokenizer - 编码和解码序列时出现额外空格

当我使用HuggingFace的Transformers时,我遇到了编码和解码方法的问题。 我有以下字符串: test_string = 'text with percentage%' 我正在运行以下代码: import torch from transformers import ...

9得票1回答
BERT模型为什么要保持10%的MASK token不变?

我正在阅读BERT模型的论文。在BERT模型的预训练中的遮蔽语言模型任务中,论文中提到模型会随机选择15%的令牌。在所选择的令牌(Ti)中,80%将被替换为[MASK]标记,10% Ti保持不变,另外10% Ti将被替换为另一个单词。我认为模型只需要用[MASK]或另一个单词来替换就足够了。为...

9得票1回答
"self-attention mechanism" 和 "full-connection" layer 有什么区别?

我对这两种结构感到困惑。理论上,它们的输出都连接到它们的输入。是什么魔力让“自注意机制”比全连接层更强大?

9得票1回答
Python中的从句提取/长句分割

我目前正在处理有关句子向量的项目(使用RoBERTa预训练模型)。当句子很长时,这些向量质量较低,而我的语料库中包含许多具有从句的长句子。 我一直在寻找从句抽取/长句子分割的方法,但我惊讶地发现,没有一个主要的NLP包(例如spacy或stanza)可以这样做。 我认为这可以通过使用spa...