如何使用 RoBERTa 执行多输出回归?

How to perform Multi output regression using RoBERTa?

我有一个问题陈述,我想使用文本输入来预测多个连续输出。我尝试使用 HuggingFace 库中的 'robertaforsequenceclassification'。但是文档指出,当最后一层的输出数量超过 1 时,会自动使用交叉熵损失,如此处所述:https://huggingface.co/transformers/v2.2.0/model_doc/bert.html#transformers.BertForSequenceClassification。 但我想在回归设置中使用 RMSE 损失,最后一层有两个 类。如何修改它?

BertForSequenceClassification 是包裹 BERTModel.

的小包装器

它调用模型,获取池化输出(输出元组的第二个成员),并对其应用 classifier。代码在这里https://github.com/huggingface/transformers/blob/master/src/transformers/modeling_bert.py#L1168

最简单的解决方案是编写您自己的简单包装器 class(基于 BertForSequenceClassification class)帽子将进行回归,该回归将以您喜欢的损失进行回归。