文字是一个符号系统,要寻找这些符号之间的关系、符号不同顺序组合的规律,就必须将其用数学形式表示,进而使得文字可被计算
词袋模型(BOW, Bag-of-words)
本质是用数学形式来描述词汇的 出现情况,基本思想是根据训练内容将所有的词汇纳入一个词汇表,这样就可以用向量来表示文字序列:向量中每一维都对应词汇表的同位置词汇。缺点是没有将词汇之间的关联、词汇的顺序、词汇的语义信息表示出来。另一个棘手的问题是收录词汇较多时,短文本对应词汇太少取0过多,造成不必要的空间浪费和计算成本浪费
词袋模型根据维度上取值的不同可分为以下几种形式
One-Hot
对词汇 出现与否 进行数学建模:维度取值规则为出现计1否则为0
给定词汇表为 \scriptsize ["今天","你","是","人","我","喜欢"]
"我喜欢你"这句话可表示为向量 \scriptsize [0,1,0,0,1,1]
Frequency
对词汇的 出现次数 进行数学建模:维度取值为出现频数
给定词汇表为 \scriptsize ["今天","你","是","人","我","喜欢"]
"你知不知道你是我喜欢的人"可表示为 \scriptsize [0,2,1,1,1,1]
TF-IDF
对词汇的 重要程度 进行数学建模:维度取值为TF-IDF值
TF-IDF值通常用于衡量一个词汇对一篇文档的重要性:其基本思想是如果一个词汇在一类文章中的出现次数很高,而在其他文章中的出现次数很少,而这个词汇又在一篇文档中频繁出现,那么这个词汇对区分这篇文章和其他文章就有很大的贡献
\tiny
给定词汇w,一篇文档d,w出现过的文档集D_w,总文档集D\\
TF=\frac{wordCount(w)}{wordCount(d)},计算词汇w在一篇文档d中的出现频率\\
IDF=\log \frac{documentCount(D)}{documentCount(D_w)},计算词汇w对文档的区分度\\
TF-IDF = TF * IDF
N-Gram
本质是用数学形式来描述相邻词汇之间的联系
词向量
本质是用数学形式表示词汇所处语境中的语义信息