Nlp 定制huggingface-bert模型中的编码模块

Nlp 定制huggingface-bert模型中的编码模块,nlp,text-classification,huggingface-transformers,bert-language-model,Nlp,Text Classification,Huggingface Transformers,Bert Language Model,我正在使用一个文本分类项目。encode_plus功能为用户提供了生成输入ID、注意掩码、令牌类型ID等的方便方法。例如: from transformers import BertTokenizer pretrained_model_name = 'bert-base-cased' bert_base_tokenizer = BertTokenizer.from_pretrained(pretrained_model_name) sample_text = 'Bamboo poles, ‍

我正在使用一个文本分类项目。encode_plus功能为用户提供了生成输入ID、注意掩码、令牌类型ID等的方便方法。例如:

from transformers import BertTokenizer

pretrained_model_name = 'bert-base-cased'
bert_base_tokenizer = BertTokenizer.from_pretrained(pretrained_model_name)

sample_text = 'Bamboo poles, ‍installation by an unknown building constructor #discoverhongkong #hongkonginsta'

encoding = bert_base_tokenizer.encode_plus(
        cleaned_tweet, hashtag_string,
        max_length=70,
        add_special_tokens=True,  # Add '[CLS]' and '[SEP]'
        return_token_type_ids=True,
        pad_to_max_length=True,
        return_attention_mask=True,
        return_tensors='pt',  # Return PyTorch tensors
    )

print('*'*20)
print(encoding['input_ids'])
print(encoding['attention_mask'])
print(encoding['token_type_ids'])
print('*'*20)
但是,我当前的项目要求我为给定的文本生成自定义ID。例如,对于单词列表
[HK,US,UK]
,我希望为这些单词生成ID,并将此列表中不存在的其他单词的ID设为零。这些ID用于查找另一个自定义嵌入矩阵中的嵌入,而不是来自预训练的bert模块


如何实现这种定制编码器?欢迎提出任何建议和解决方案!谢谢~

我认为您可以使用BERT vocab中的
标记,并在那里添加自定义标记。因此,现在您可以使用有效的令牌ID轻松地引用它们。

请记住,stackoverflow不是代码编写服务。你面临什么问题?