1.向量空间模型(Vector Space Models)
1.1 基本概念
定义:向量空间模型将单词或文本用向量表示,通过上下文来获取其语义信息
功能:识别两文本/两类文档间的相似度和独立性
例:
单词基本相同的两句话可能有不同含义;而单词完全不同的两句话可能有相同含义
1.2 应用
信息提取
机器翻译
聊天机器人
2.构建向量空间
2.1 单词统计(Word by Word)
定义:统计指定窗口大小下,两词共同出现的次数
例子:当窗口大小k=2时,对于"data"为中心词,与其共同出现的词为:"like","simple","simple","raw"
由此构建出向量data=[2,1,1,0]
2.2 文本统计(Word by Doc)
定义:统计单词在不同类别文档中出现的次数
例子:如下图,data在娱乐领域文本中共出现500次、在经济领域文本中共出现6620次,在机器学习领域文本中共出现9320次
由此构建向量data=[500,6620,9320]
2.3 应用
衡量相似度
定义:通过在向量空间中进行一系列计算,可判断两向量间的相似度等
例:
3.相似度衡量方法
3.1 欧氏距离(Euclidean Distance)
定义:衡量空间中两点间距离
缺点:当语料库大小不同时,使用欧氏距离比较会产生误差
计算方法:
(1)二维情况:
公式:
例:
(2)n维情况:
公式:
例:
python实现:
3.2 余弦相似度(Cosine Similarity)
定义:衡量两向量间的夹角,即相似程度
优点:在比较不同大小语料间相似度时,余弦相似度更加准确
计算方法:
公式:
例:
评估:
余弦相似度越小(接近0),表示相似度越低;越大(接近1),表示相似度越高
3.3 应用
首都预测
已知USA的首都是Washington,想得到Russia的首都,则可通过以下计算:
4.主成分分析 (PCA)
4.1 基本概念
定义:在尽可能不损失信息的情况,将高维向量投影至低维空间
功能:降维,从而使信息便于理解
4.2 PCA原理
概述:计算出各不相关特征的方向,然后在该方向上进行投影
特征值与特征向量:
特征向量:数据中的不相关特征;包含了不相关特征的方向
特征值:每个特征中包含的信息;包含了新特征值的方差
PCA算法流程:
(1)均值归一化数据:对每一个数据进行均值归一化
(2)计算协方差矩阵
(3)进行奇异值分析SVD,得到U、S、V三个矩阵
(4)通过点乘运算X'=XU,将不相关的特征数据投影至k维度
(5)计算保留方差的百分比
4.3 应用
数据可视化
定义:通过PCA将高维向量投影至三维以下,然后绘制出图形
功能:直观判断词向量效果,是否准确体现相关性
5.编程实战
作业/编程实战:使用词向量预测国家
代码:https://github.com/Ogmx/Natural-Language-Processing-Specialization
内容汇总:https://blog.csdn.net/weixin_43093481/article/details/114989382
可将代码与数据下载至本地,使用jupyter notebook打开