词向量和语言模型
深度学习其实最成功的应用是在图像上,有了 CNN 可以很好地提取图像上的特征,这些特征经过几层的神经网络结构可以很好地组合成比较抽象的特征。
NLP 常见任务
- 自动摘要:媒体需要的头条通过 NLP 自动提取
- 机器翻译
- 主题识别
- 文本分类(主题分类、情感分类、按照你的需求分类)
- 问答系统
- 聊天机器人:NLP 的终极任务
NLP 处理方法
传统:基于规则(去学习语言之间的语法规则,总结出一套系统,可拓展性不强)
现代:基于统计机器学习
- HMM CRF SVM LDA RNN LSTM CNN
- ”规则“隐含在模型参数里
词向量
词向量:在计算机中用一个向量去表示一个词,一段文本,这样可以更高效地进行数学操作
1. 最初:
上位词、同义词 (猫和动物、宠物) ()
2. 离散表示:(Bag of Words 词袋模型)
2.1 文档通过词频的方式来表示
单词的 one-hot 表示:[1,0,0,0,0,0,0,0,0]
单词到 index,再到 one-hot ,单词的 one-hot 只能表示单独的一个词,不能体现出彼此之间的关系
文档向量的表示:[1,2,1,1,1,0,0,1,1]
- 这种表示的每一列指的是一个特征,很重要的一点,放到分类模型如 LR NB SVM 中去学习,完成分类
- 文档向量可以直接将各词的词向量表示加和
缺点:稀疏向量、语序、语义鸿沟(否定词起到的作用不大)、词权重
- 词在文档中的顺序没有被考虑
- 每个词表示的权重相同,有些词属于停用词不重要,有些词表达了文本的主题,所以需要考虑每个词在文本中的重要度
2.2 文档通过权重的方式来表示
词权重指的是每个词在其对应文本的重要度,表示形式如下:
- TF-IDF:TF-IDF详细介绍
- Binary weighting 短文本相似性,Berboulli Naive Bayes,只考虑出现没出现
2.3 Bi-gram 和 N-gram 解决了词序的关系
优点:考虑了词的顺序
缺点:词表的膨胀
词编码需要保证词的相似性
向量空间分布的相似性:英语和西班牙语
向量空间子结构:国王 - 女王 + 妇女 = 男人
最终目标:词向量表示作为机器学习、特别是深度学习的输入和表示空间