sql – 我可以使用哪种算法来查找常见的相邻单词/模式识别?

栏目: 数据库 · 发布时间: 5年前

内容简介:翻译自:https://stackoverflow.com/questions/8069531/which-algorithm-i-can-use-to-find-common-adjacent-words-pattern-recognition

我的数据库中有一个大表,文本顺序中有很多来自各种文本的单词.我想找到一些单词一起出现的次数/频率.

示例:假设我在许多文本中都有这4个单词:United |国家|的美国.我会得到结果:

美国:50

美国:45

美利坚合众国:40

(这只是一个包含4个单词的示例,但可以使用少于4个单词).

有一些算法可以做到这一点或类似于此?

编辑:欢迎使用一些显示如何操作的R或 SQL 代码.我需要一个我需要做的实际例子.

表结构

我有两个表:具有id和文本的令牌.文本是独一无二的,此表中的每个入口代表一个不同的单词.

TextBlockHasToken是保持文本顺序的表.每行代表文本中的一个单词.

它有textblockid,它是令牌所属文本的块.作为令牌的句子的句子,作为句子内的令牌位置的位置,以及作为令牌表引用的tokenid.

它被称为N-gram;在你的情况下一个4克.它确实可以作为马尔可夫链的副产品获得,但您也可以使用滑动窗口(大小4)来遍历(线性)文本,同时更新4维“直方图”.

更新2011-11-22:

在给定当前状态的情况下,马尔可夫链是一种模拟切换到新状态的概率的方法.这是“状态机”的随机等价物.在自然语言的情况下,“状态”由“前N个单词”组成,这意味着您将先验概率(在前N个单词之前)视为equal_to_one.计算机人员很可能会在NLP案例中使用树来实现马尔可夫链. “状态”只是从根到当前节点的路径,而words_to_follow的概率是当前节点的后代的概率.但是每次我们选择一个新的子节点时,我们实际上都会向下移动树,并“忘记”根节点,窗口只有N个字宽,这将转换为深入树中的N个级别.

你可以很容易地看到,如果你像这样走马尔科夫链/树,在第一个单词之前的概率是1,第一个单词之后的概率是P(w1),在第二个单词= P(w2)之后||因此,在处理语料库时,您构建马尔可夫树(:=更新节点中的频率),在骑行结束时,您可以通过频率(单词)/ SUM估计给定单词选择的概率(FREQ(兄弟姐妹)).对于在树中5深的单词,这是单词的概率,给定前4个单词.如果你想要N-gram概率,你需要从根到最后一个单词的路径中所有概率的乘积.

翻译自:https://stackoverflow.com/questions/8069531/which-algorithm-i-can-use-to-find-common-adjacent-words-pattern-recognition


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据资本时代

数据资本时代

Viktor Mayer-Schnberger / 李晓霞、周涛 / 中信出版集团股份有限公司 / 2018-11-1 / CNY 58.00

【编辑推荐】 大数据除了能对我们的生活、工作、思维产生重大变革外,还能够做什么?畅销书《大数据时代》作者舍恩伯格在新书《数据资本时代》中,展示了大数据将如何从根本上改变经济——这并不是因为数据是一种新型石油,而是因为数据是一种新型润滑脂,它将给市场带来巨大能量,给公司带来巨大压力,使金融资本的作用大大削弱。赢家是市场,而并非资本。 这本书在当下国内出版,可以说恰逢其时。时下,中国经济正......一起来看看 《数据资本时代》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具