我正在学习命名实体识别,并且我看到训练脚本使用了一个名为vocab
的变量,它看起来像这样
vocab = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\'-/\t \n\r\x0b\x0c:"
我的猜测是,它应该学习文本中存在的所有这些字符,例如abcd ...等,我不明白的是像/n /t
这样的char的用法这些char的用途是什么?通常是这个变量?
先谢谢了。
答案 0 :(得分:1)
此字符串是词汇。在NLP中,词汇表是训练集中使用的所有单词或字符的列表。在您的示例中,词汇表是一个字符列表。具体来说,\n
是换行符,\t
是制表符。
对于NER和其他nlp任务,我们通常使用词汇表为每个令牌(单词或字符)生成嵌入,并将这些嵌入馈送到机器学习模型(如今,使用LSTM等神经网络架构来获取最好的结果)。基于字符的嵌入相对于基于单词的OOV(词汇量外)单词的嵌入具有优势,即,未出现在训练集中但在推理过程中遇到的单词。