2.1 文本的表示
文本:在计算机内部的存储和计算问题。
用字符串表示:本质上是一个整数。
编辑距离等算法计算两个字符串之间的字面相似度。
但,
在使用字符串表示(也叫符号表示)计算文本的语义信息,往往需要使用基于规则的方法。
(基于规则的方法的问题:规则的归纳依赖专家的经验,规则的表达能力有限,规则之间可能存在矛盾和冲突的情况,导致最后无法做出决策)
针对基于规则的这些问题,
提出基于机器学习的自然语言处理技术,最本质的思想:将文本表示为向量,其中的每一维代表一个特征。-----文本向量表示。
还可以用于计算两个文本之间的相似度,即使用余弦函数等度量函数表示两个向量之间的相似度,并应用于信息检索等任务。
2.1.1 词的独热表示
即使用一个词表大小的向量表示一个词(假设词表为,则其大小为),然后将词表中的第个词表示为向量:
在该向量中,词表中第个词在第个维被设置为1,其余维均为0。---独热表示或独热编码。
(One-hot Encoding)
存在的问题:
1.两个词语语义相似,通过余弦函数来度量它们之间的相似度时值却为0。
2.数据稀疏(Data Sparsity)
针对问题2:缓解做法:除了词自身,再提取更多和词相关的泛化特征,如词性特征、词义特征和词聚类特征。
WordNet:语义词典
[1]Miller, George A . WordNet: a lexical database for English[J]. Communications of the Acm, 1995, 38(11):39--41.
在使用传统机器学习方法解决自然语言处理问题时,研究者的很大一部分精力都用在了挖掘有效的特征上。
2.1.2 词的分布式表示
特征的设计费时费力。
有没有什么办法自动提取特征并设置相应的特征值呢?
1.分布式语义假设
词的含义可由其上下文的分布进行表示。
一种语义建模思想。
具体到表示形式和上下文的选择,以及如何利用上下文的分布特征,都是需要解决的问题。