我目前正在使用TensorFlow的通用句子编码器(https://arxiv.org/pdf/1803.11175.pdf)进行我的本科论文研究,研究提取式摘要技术。在大多数用于此任务的技术中(如https://www.aaai.org/ocs/index.php/IJCAI/IJCAI15/paper/view/11225/10855),句子通常会先进行标准化处理(小写化、停用词删除、词形还原),但我没有找到任何提示说明输入到通用句子编码器的句子是否也需要先进行标准化处理。情况是否如此?这重要吗?
回答:
选择是否标准化主要取决于设计的应用需求。
关于停用词删除和词形还原:这些操作通常会从文本中移除一些内容,因此可能会丢失信息。然而,如果这些操作对结果没有影响,那么你可以进行删除。(最好总是尝试两种方法。一般来说,性能差异不会太大)。
小写化取决于你使用的预训练模型(例如,在BERT中,你有bert-base-uncased
和bert-base-cased
)以及应用的选择。一个简单的验证方法是,将一段文本输入到通用句子编码器中,获取其句子嵌入,然后将相同的输入文本小写化,再次获取其句子嵌入。如果嵌入相同,说明你的模型不区分大小写。然而,如果嵌入不同,则说明模型区分大小写。(通过运行此处提供的程序,似乎通用句子编码器是区分大小写的)。小写化的选择再次取决于具体应用。