概述
从今天开始,我们将开启一段自然语言处理的流程,自然语言可以让来处理、理解以及运用人类的语言,实现机器语言和人类语言之间的沟通桥梁。
文本处理
我们正在进行文本处理的时候,经常会用到文本长度不一致的情况,遇到奇奇怪怪的符号问题,这时候,我们就需要特殊字符来帮助我们解决这些问题。
< P A D > <PAD> <PAD>可以帮助我们填充句子长度不同的部分,在我们的NLP训练过程中,我们会将输入按Batch输入,但是这些Batch必须拥有相同的长度。
<
U
N
K
>
<UNK>
<UNK>: ,可以帮助我们替换词汇表中不存在的字符,例如一些低频词或者低频字。或者特殊符号。
<
G
O
>
<GO>
<GO>:会放在句子的开头,用于告诉模型这是句子输入的开始,即第一个时间步长的输入。
<
E
O
S
>
<EOS>
<EOS>
会放在句子的结尾,用于告诉模型这是句子的输入结束。
在Bert等预训练模型的词汇表中,有
[
P
A
D
]
,
[
C
L
S
]
,
[
S
E
P
]
,
[
M
A
S
K
]
,
[
U
N
K
]
[PAD],[CLS],[SEP],[MASK],[UNK]
[PAD],[CLS],[SEP],[MASK],[UNK]这样几种token,它们代表的具体含义如下:
【PAD]: 要将句子处理为特定长度,就要将句子前或后补充[PAD]
[CLS]:这个标志放在句子的首位,表示句子的开始。
【SEP】:这个标志用于分开两个输入句子,例如输入句子A和B,后面增加[SEP]标志。
【MASK]:这个标志用于遮盖句子中的一些单词。
【UNK}:词典中没有词被标记为[UNK]