【发布时间】:2021-01-17 16:58:08
【问题描述】:
我正在处理二进制分类任务,并想尝试在 huggingface BERT 模型的最后一个隐藏层之上添加 lstm 层,但是我无法到达最后一个隐藏层。 BERT 可以和 LSTM 结合吗?
tokenizer = BertTokenizer.from_pretrained(model_path)
tain_inputs, train_labels, train_masks = data_prepare_BERT(
train_file, lab2ind, tokenizer, content_col, label_col,
max_seq_length)
validation_inputs, validation_labels, validation_masks = data_prepare_BERT(
dev_file, lab2ind, tokenizer, content_col, label_col,max_seq_length)
# Load BertForSequenceClassification, the pretrained BERT model with a single linear classification layer on top.
model = BertForSequenceClassification.from_pretrained(
model_path, num_labels=len(lab2ind))
【问题讨论】:
-
您需要提供更多代码和详细信息。
-
@Ruli 我刚刚编辑了它!
-
这里有一个可用的答案:stackoverflow.com/questions/65205582/…
-
@AshwinGeetD'Sa,谢谢!我已经尝试过了,但是我收到了这个错误
TypeError: __init__() got an unexpected keyword argument 'batch_first'for nn.Linear()! -
batch_first仅适用于 LSTM,不适用于线性。所以,请再次检查您的代码。
标签: nlp pytorch recurrent-neural-network bert-language-model huggingface-transformers