coursera上的公开课《https://www.coursera.org/course/textanalytics》系列,讲的很不错哦。

1、两种关系:Paradigmatic vs. Syntagmatic(聚合和组合)

• Paradigmatic:  A & B have paradigmatic relation if they can
be substituted for each other (i.e., A & B are in the same class) 

– E.g., “cat” and “dog”; “Monday” and “Tuesday” (聚合:同一类别的,high similar context)

• Syntagmatic: A & B have syntagmatic relation if they can be combined with each other (i.e., A & B are related semantically) 

– E.g., “cat” and “sit”;  “car” and “drive”(组合:常在一起出现的,high correlated occurrences  but relatively low individual occurrences)

2、挖掘Paradigmatic(聚合)关系:

2.1、怎样挖掘两个词(比如dog和cat)的聚合关系强不强?

由于聚合关系本质上反映的是context
similarity,所以我们能够首先获取全部文档中出现dog、cat的句子的context。dog左边一个词的context、dog右边一个词的context,比如:Left1(“cat”)
= {“my”, “his”, “big”, “a”, “the”,…}。Right1(“cat”) = {“eats”, “ate”, “is”, “has”, ….}。Window(“cat”)  =   {“my”, “his”, “big”,  “eats”,  “fish”, …};同理可获得Left1(“dog”)
、Right1(“dog”)、Window(“dog”)
的context;这样,我们就能够通过计算Sim(“Cat”,  “Dog”) = Sim(Left1(“cat”), Left1(“dog”)) + Sim(Right1(“cat”), Right1(“dog”)) +  … + Sim(Window(“cat”), Window(“dog”))的大小来表示这两个词之间的聚合关系的强弱了。。。。

2.2详细到计算。经常使用的办法是Bag
of Words,也就是Vector Space Model (VSM),须要解决两个问题:

1)怎样计算每个向量,即把Left1(“cat”)
= {“my”, “his”, “big”, “a”, “the”,…}转化为vectorLeft1 = {3, 5, 8, 2, 7, ...}等VSM可用的形式。

2)怎样计算Sim(x1,
x2)。

解决这两个问题的一般性办法:Expected
Overlap of Words in Context (EOWC):

d1=(x1,
…xN) ,当中xi =count(wi,d1)/|d1|
(从文档d1中随机选一个词,是wi的概率)

d2=(y1,
…yN) ,当中yi =count(wi,d2)/|d2| (从文档d2中随机选一个词,是wi的概率)

Sim(d1,d2)=d1.d2=
x1y1+...+xnyn(分别从d1、d2中随机选一个词。两个词一样的概率)

EOWC有两个主要问题:

– It
favors matching one frequent term very well over matching more distinct terms. 
——通过平滑TF实现

情况1,d1、d2中的w1都很频繁,其它wi却差点儿不匹配,此时Sim(d1,d2)=10*10+0*0+...+1*3=123;情况2,d1、d2中的每一个wi都不是很频繁,但差点儿都出现了几次,此时Sim(d1,d2)=5*5+4*3+...+2*6=111;对于这两种情况,EOWC是无法区分的,而我们更倾向于情况2代表的相似度!

– It treats every word equally (overlap on “the” isn’t as so meaningful as overlap on “eats”).
——通过IDF实现

通过平滑TF:BM25 Transformation

通过IDF:IDF Weighting

终于表达式:

-----

3、挖掘Syntagmatic(组合)关系:

參考下一篇博客:。

《textanalytics》课程简单总结(1):两种word relations——Paradigmatic vs. Syntagmatic的更多相关文章

  1. 简单介绍Git两种拉取代码的方式

    first: 1.通过git clone 命令克隆git库中的项目 注意:通过 git clone方式克隆的代码会在服务器上自动建一个与git库名相同的文件夹,所以有两种思路,第一种就是直接在wwwr ...

  2. QListWidget特别简单,但有两种添加item的方式

    虽然特别简单,但是对于小白来说,还是有必要过一下脑子和眼睛,当然还得过手(江湖传言:眼过千变,不如手过一遍),所以记录在此: #include "tablewidgetxxx.h" ...

  3. Python:读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误

    概述 Python 中可以读取 word 文件的库有 python-docx 和 pywin32. 下表比较了各自的优缺点.   优点 缺点 python-docx 跨平台 只能处理 .docx 格式 ...

  4. javascript-简单工厂两种实现方式

    简单工厂笔记 两种方式: 第一种:通过实例化对象创建 第二种:通过创建一个新对象然后包装增强其属性和功能来实现 差异性:前一种通过类创建的 对象,如果这些类继承同一个父类,他们父类原型上的方法是可以共 ...

  5. 两种应该掌握的排序方法--------1.shell Sort

    先了解下什么都有什么排序算法 https://en.wikipedia.org/wiki/Sorting_algorithm http://zh.wikipedia.org/zh/%E6%8E%92% ...

  6. activemq的两种基本通信方式的使用及总结

    简介 在前面一篇文章里讨论过几种应用系统集成的方式,发现实际上面向消息队列的集成方案算是一个总体比较合理的选择.这里,我们先针对具体的一个消息队列Activemq的基本通信方式进行探讨.activem ...

  7. java 实现websocket的两种方式

    简单说明 1.两种方式,一种使用tomcat的websocket实现,一种使用spring的websocket 2.tomcat的方式需要tomcat 7.x,JEE7的支持. 3.spring与we ...

  8. SAPUI5 freestyle vs SAP Fiori Elements —— 两种开发SAP UI5 Apps的方式对比

    概述 目前SAPUI5 SDK 提供了两种方式来开发一个SAPUI5 App.一种方式是传统的SAPUI5开发方式,一种是利用SAP Fiori Elements通过模板快速构建应用的方式. 本文简单 ...

  9. SpringBoot整合Servlet的两种方式

    SpringBoot整合Servlet有两种方式: 1.通过注解扫描完成Servlet组件的注册: 2.通过方法完成Servlet组件的注册: 现在简单记录一下两种方式的实现 1.通过注解扫描完成Se ...

随机推荐

  1. Angular JS (2)

    通过Angular JS的官方教学文档,了解 routeProvider 的用法, angular.module('aaa').config(['$locationProvider','$routeP ...

  2. Python学习日记之忽略删除字符串空白

    使用Python自带的函数strip可以剔除字符串开头.结尾.两端的空白 使用场景:用户输入验证 strip : 去除字符串两端的空白 rstrip : 去除字符串末尾(右端)的空白 lstrip : ...

  3. glassfish中新建数据源(创建数据库连接池)

    1.浏览器输入:http://localhost:4848 登录glassfish域管理控制台,默认的用户名和密码是amin和adminadmin.(也可以通过NetBeans的服务选项卡--服务器- ...

  4. Codeforces_779_D.String Game_(二分)

    D. String Game time limit per test 2 seconds memory limit per test 512 megabytes input standard inpu ...

  5. java byte

    项目中有段代码,一直让我疑惑不解,但我是个很会偷懒的人,只要拷贝来改改能用的代码,万万不会自己动手写,虽然一直有疑惑,也懒得搭理是怎么个原理. 直到今天,又要解析协议,又要动这个地方的代码,还是来盘他 ...

  6. netstat查看服务器连接数端口并发数

    简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Member ...

  7. CAD创建组(网页版)

    主要用到函数说明: _DMxDrawX::CreateGroup 创建组.如果组名已经存在,就把实体加入组中.详细说明如下: 参数 说明 BSTR pszName 组名.,如果为空,创建匿名组 IDi ...

  8. RabbitMQ系列(一)--消息中间件MQ如何去选择

    MQ在项目中的应用很普遍,本人所在项目组使用的是ActiveMQ,但是后面介绍的RabbitMQ... 一.应用场景 1.异步处理 2.流量削峰.秒杀 3.日志处理,推荐kafka 4.应用解耦 二. ...

  9. 深入理解DOM事件类型系列——剪贴板事件

    定义 剪贴板操作包括剪切(cut).复制(copy)和粘贴(paste)这三个操作,快捷键分别是ctrl+x.ctrl+c.ctrl+v.当然也可以使用鼠标右键菜单进行操作 对象事件 关于这3个操作共 ...

  10. css 实现垂直居中

    通用 代码: 1 2 3 4 <div id="parent"> <div id="floater"></div> < ...