简单的说:就是将文本转化成向量,由字符转化成向量。怎么将文本转化成向量就是文本表示的核心。
优点:
1、方便计算机对文本进行处理。
2、方便进行机器学习,传统的机器学习和深度学习都需要。
3、良好的文本表示形式可以极大地提高算法效率。
文本表示:
1、基于粒度分类:
长文本表示
短文本表示(句子)
词表示
2、基于表示方法分类:
- 离散表示
one-hot《向量长度非常大,有明显的稀疏性问题》
Multi-hot - 分布式 基于矩阵类
降维
聚类 - 分布式 基于神经网络
CBOW
Skip-gram
离散表示
缺点:
无法衡量词向量之间的关系
词表维度随语料库增长膨胀
矩阵稀疏性严重
离散表示: 词袋子模型
顾名思义,就是一个装满词的袋子,无顺序,随意摆放
通过两个词袋子的相似程度、重合的词以及相关分布进行判断
优点:
简单、方便、快捷
语料充足的情况下,对于简单的自然语言处理任务效果不错。
缺点:
准确率较低,不能体现不同词在一句话中不同的重要性
无法关注词的顺序问题(例如:武松打虎,虎打武松)
离散表示: TF-IDF
通过逆文档频率,得出词的权重,具体这里不细说了(没有考虑词在文档中的顺序)
离散表示: Bi-Gram、N-Gram
优点:
考虑了词顺序
缺点:
词表膨胀
这里描述了N-Gram