原文地址:https://www.jianshu.com/p/c1e4f42b78d7

一、基于知识的表征

参见图1.1,WordNet中包含同义词集(synonym sets)和上位词(hypernyms, is a关系)。
其存在的问题为:

  • 作为资源来说是好的,但是它失去了词间的细微差别;
    比如说"good"和"full"同义是需要在一定的上下文中才能成立的。
  • 易错过词的新义,基本不可能时时保持up-to-date;
  • 是人为分的,所以是主观的结果;
  • 需要花费很多的人力去创建和调整;
  • 很难计算出准确的词间相似度。

二、基于数据库的表征

(一)词本身

参见图2.1,0-1表征中,向量维度为数据库中总词汇数,每个词向量在其对应词处取值为1,其余处为0。
其存在的问题为:

  • 因为不同词间相互正交,所以很难计算词间相似度。

(二)结合上下文

基本思想:相似的词有相似的上下文。

1、共现矩阵

1)基于整个文档

词-文档共现矩阵\(\in R^{|V|*M}\),其中,\(|V|\)为词汇量大小,\(M\)为文档数量。
常给出文档的主题信息。

2)基于上下文窗口

词-词共现矩阵\(\in R^{|V|*|V|}\),其中,\(|V|\)为词汇量大小。
窗口大小常取5~10,通常对称、不分左右。
常捕获语法、语义信息。

图2.2中红框部分为基于窗口大小为1、不区分左右形成的"love"、"enjoy"对应的高维稀疏词向量。
其存在的问题为:

  • 共现矩阵的大小随着词汇量的增多而变大;
  • 维度高;
  • 数据稀疏带来的鲁棒性差。

2、低维稠密词向量

1)基于SVD进行降维

通过对共现矩阵进行SVD,得\(X=USV^T\)。选择\(U\)的前\(k\)列得到\(k\)维词向量。
通过计算\(\frac{\sum_{i=1}^{k}s_i}{\sum_{j=1}^{|V|}s_j}\)得到前\(k\)维捕获到的信息比例。
其优势为:

  • 有效地利用了统计信息。

其存在的问题为:

  • 难以加入新词,每次来个新词,都得更新共现矩阵,然后重新SVD;
  • 由于大多数词不共现,导致矩阵十分稀疏;
  • 矩阵维度通常很高(\(\approx 10^6*10^6\));
  • 计算代价高,对于\(n*m\)的矩阵为\(O(nm^2)\);
  • 需要对共现矩阵进行处理来面对词频上的极端不平衡现象。

其常用的解决办法为:

  • 忽视"the"、"he"、"has"等功能词或者限制其次数不超过某个值(常100);
  • 基于文档中词间距离对共现矩阵中的count进行加权处理,常窗口中离中心词越近的词分配给其的权重越大;
  • 使用Pearson相关系数(\(C(X,Y)=\frac{cov(X,Y)}{\sigma(X)*\sigma(Y)}\))来代替原本的count,负数置0。

词表征 1:WordNet、0-1表征、共现矩阵、SVD的更多相关文章

  1. 词向量:part 1 WordNet、SoW、BoW、TF-IDF、Hash Trick、共现矩阵、SVD

    1.基于知识的表征 如WordNet(图1-1),包含同义词集(synonym sets)和上位词(hypernyms,is a关系). 存在的问题: 作为资源来说是好的,但是它失去了词间的细微差别, ...

  2. (转) 基于MapReduce的ItemBase推荐算法的共现矩阵实现(一)

    转自:http://zengzhaozheng.blog.51cto.com/8219051/1557054 一.概述 这2个月为公司数据挖掘系统做一些根据用户标签情况对用户的相似度进行评估,其中涉及 ...

  3. 深度学习——无监督,自动编码器——尽管自动编码器与 PCA 很相似,but自动编码器既能表征线性变换,也能表征非线性变换;而 PCA 只能执行线性变换

    自动编码器是一种有三层的神经网络:输入层.隐藏层(编码层)和解码层.该网络的目的是重构其输入,使其隐藏层学习到该输入的良好表征. 自动编码器神经网络是一种无监督机器学习算法,其应用了反向传播,可将目标 ...

  4. Python基于共现提取《釜山行》人物关系

    Python基于共现提取<釜山行>人物关系 一.课程介绍 1. 内容简介 <釜山行>是一部丧尸灾难片,其人物少.关系简单,非常适合我们学习文本处理.这个项目将介绍共现在关系中的 ...

  5. #161: 给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。 你的任务就是检测矩阵是否符合条件

    试题描述 给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件. 你的任务就是检测矩阵是否符合条件,或者在仅改变一个矩阵元素的情况下能否符合条件. "改变 ...

  6. 数码管显示“0~F”的共阳共阴数码管编码表

    嵌入式设备中数码管显示“0~F”的方式是:定义了一个数组,里面含有16个元素,分别代表0~F,这样可以方便以后的调用.共阳极数码管编码表:unsigned char table[]={0xc0,0xf ...

  7. CDH5.10.0 离线安装(共3节点) 转

    1.安装方式 CDH的离线部署安装,即Parcel包(推荐) 2.角色规划 三个节点对应的角色: 3.基本环境配置(在每个节点上都要配置) (1)关闭防火墙 #/etc/init.d/iptables ...

  8. 计算区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9) 共出现了多少次?

    #include<iostream> using namespace std; int main() { long long start, end , i, check, b, c, cn ...

  9. R语言多重共现性的检测

    1.kappa值 2. library(car)vif(lm.sol) 得到各个系数的方差膨胀因子,当0<VIF<10的时候,不存在多重共线性,当10<=VIF<100,存在较 ...

随机推荐

  1. OAccflow集成sql

    SELECT * FROM PORT_EMP WHERE NO='18336309966'SELECT * FROM PORT_DEPT WHERE no='42DBAF50712C4046B09BC ...

  2. jmeter 不同线程组之间传递变量3

    jemter编写脚本要点: 1.切记:BeanShell PostProcessor写在关联函数 Regular Expression Extractor的后面 2.header  HTTP Head ...

  3. Clairewd's message /// 字符串hash

    题目大意: 给定字符串s 是26个字母对应的密文字母 给定字符串c1 是 密文+部分原文 原文可能缺损 要求将原文补全输出 利用s得到密文字母对应的原字母rs 利用rs翻译c1得到 原文+部分密文c2 ...

  4. zabbix--自带模板监控MySQL服务

    zabbix有内置的模板,不过需要修改下配置,配置文件路径在: [root@localhost ~]# cd /etc/zabbix/ [root@localhost zabbix]# ls web ...

  5. 在我的Mint上安装网易云音乐

    首先到网易官网下载Ubuntu版本的安装包,哪个版本多少位没多大所谓啦 然而会出现类似如下的依赖错误: dpkg: 依赖关系问题使得 netease-cloud-music 的配置工作不能继续: ne ...

  6. 自定义vant ui steps组件效果实现

    记录个问题,当作笔记吧:因为vue项目的移动端vant ui 的step组件跟ui设计图有差别,研究了半天还是没法使用step组件,只能手动设置一个 先上效果图和代码: (1)HTML部分 <d ...

  7. 使用vscode搭建本地的websocket

    首先在服务器方面,网上都有不同的对websocket支持的服务器: php - http://code.google.com/p/phpwebsocket/ jetty - http://jetty. ...

  8. 如何通过cmd命令远程重启或远程关闭Windows服务器

    一.想要远程控制服务器,前提条件是远程服务器需要开启IPC$ ,且本地能访问远程服务器445端口 1.开启ipc$ net share IPC$ 2.如果只指定管理员才有执行ipc$的权限 net s ...

  9. shell 的正则表达式 grep

    以上例子的目的在于,正则表达式只能用grep -n 命令中才有作用.在ls中,他的意义是不同的,例如*符号. grep命令的解析 其中,几个特殊的正则表达式: [[:alpha:]] 代表 字母[[: ...

  10. Centos6安装破解JIRA7.3.8

    jira是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪(bug管理).客户服务.需求收集.流程审批.任务跟踪.项目跟踪和敏捷管理等工作领域. 好了言归正传: 安装jira之前我 ...