精华内容
下载资源
问答
  • 目前,知识图谱在学术界...笔者之前围绕事件关系三元组抽取,结合语言学背景,尝试了一些朴素方式下的事件关系三元组、事件主谓宾三元组抽取的工作。如: 顺承事件关系三元组抽取,地址: https://github.com/liuh

    目前,知识图谱在学术界如火如荼地进行,但受限于知识图谱各个环节中的性能问题,还尚未能够在工业界大规模运用。而与知识图谱中以实体为知识节点,实体关系为实体关系边对知识进行组织不同,以事件作为节点,事件关系作为节点关联的三元组信息的抽取和应用,当前也是大家在探索的一个方向(即事理图谱,先撇开其建模和应用现状不讲)。
    笔者之前围绕事件关系三元组抽取,结合语言学背景,尝试了一些朴素方式下的事件关系三元组、事件主谓宾三元组抽取的工作。如:
    顺承事件关系三元组抽取,地址:
    https://github.com/liuhuanyong/SequentialEventExtration
    因果事件关系三元组抽取,地址:
    https://github.com/liuhuanyong/CausalityEventExtraction
    复合事件关系三元组抽取,地址:
    https://github.com/liuhuanyong/ComplexEventExtraction
    事件主谓宾三元组抽取,地址:
    https://github.com/liuhuanyong/EventTriplesExtraction
    本文选择复合事件关系三元组抽取和事件主谓宾三元组抽取两个实践项目进行介绍。前者的输出可以作为后者的输入,通过识别出事件关系的两头事件实体,再通过主谓宾关系抽取,可以进一步得到事件的主体和客体,主体和客体可以进一步成为事件实体链接的桥梁,以实现与实体知识的联合建模。

    一、ComplexEventExtraction复合事件关系三元组抽取

    chinese compound event extraction,中文复合事件抽取,包括条件事件、因果事件、顺承事件、反转事件等事件抽取,并形成事件关系三元组。

    1、复合事件关系中事件的界定
    如果要做事件关系三元组抽取,那么就务必要回答其中的事件形态是什么,其边界在哪儿。基于框架体系FrameNet那套的ACE将事件表示成为一个个论元集合,CEC事件数据集、SemEval等数据集中将事件界定为一个动词。不同的事件界定方式,直接决定了后续技术的选择以及对应的技术难度下图总结了当前遇到的几种工业界事件表示方式:
    以因果事件为例, 已知句子:这几天非洲闹猪瘟,导致国内猪肉涨价。
    图片

    图1-复合事件关系的界定

    2、事件关系的几种类型
    坦白的说,对于事件关系的界定,当下有不同的标准。下表列举了当下的几个典型的事件关系类型。而通过结合语言学规则,利用显式的关系词和模式词进行触发、统计,可以发现,因果事件关系是最为明显的,最有规律可循的。
    图片

    图2-复合事件关系的类型

    3、事件关系抽取的实施
    当前朴素的事件关系抽取,还是以显式的关系触发词展开,可以针对因果关系【导致、造成、所以】、条件关系【如果、前提、要是】、反转关系【虽然、但是、尽管】、顺承关系【紧接着、然后、接下来】,构造对应的句法模式,将以该触发词为核心的主语和宾语部分抽取出来,即可以得到事件关系三元组。
    例如:
    1)转折关系三元组模板
    图片

    2)因果关系三元组模版
    图片

    4、事件关系抽取的效果
    通过对已有的非结构化文本如新闻报道等进行模板抽取,我们可以得到相应的关系三元组抽取效果,如下所示:
    1)因果事件三元组图谱可视化效果
    图片

    图2-美国攻打伊拉克因果事件关系三元组效果

    图片

    图3-寿光发生洪水因果事件关系三元组效果

    2)反转与条件事件关系三元组抽取数据表结果
    图片

    3)反转事件关系三元组抽取结果图谱可视化结果
    图片

    图4-反转事件关系可视化效果

    4)条件事件关系三元组抽取结果图谱可视化结果
    图片

    图5-条件事件关系可视化效果

    二、EventTriplesExtraction事件主谓宾三元组抽取

    基于依存句法与语义角色标注的事件三元组抽取,文本表示一直是个重要问题,如何以清晰,简介的方式对一个文本信息进行有效表示是个长远的任务,我尝试过使用关键词,实体之间的关联关系,并使用textgrapher的方式进行展示,但以词作为文本信息单元表示这种效果不是特别好,所以,本项目想尝试从事件三元组的方式出发,对文本进行表示。
    项目地址:
    https://github.com/liuhuanyong/EventTriplesExtraction

    1、基于依存句法分析和语义角色标注的事件三元组抽取
    当前开源的句法分析组件,包括LTP、hannlp、百度DDParse等为我们进行特定句子的依存分析和语义角色标注提供了快速调用的接口。通过对一个句子进行依存句法分析,可以得到一个句子的核心动词、与该动词直接依存的词,如SBV主语关系、VOB动宾关系、OBJ谓语关系集合。因此,我们可以在此基础上,以句子的动词为核心,先后找出其主语和谓语,并通过ATT修饰关系、COO并列关系等进行主语和宾语的扩展,形成三元组。

    1)抽取实施
    本项目分别使用LTP、百度DDParse作为句法分析器针对输入的文本进行抽取,先进行长句切分,然后进行依存句法分析,并设定扩展规则,可以快速得到三元组集合。
    图片

    2)抽取结果
    本项目的抽取结果如下,选取了“以色列对加沙地带进行轰炸”这一新闻快讯进行处理,得到svos等主谓宾集合。
    图片

    2、基于词性模板规则的事件三元组抽取
    基于依存句法的方式进行事件三元组抽取,其性能受限于依存句法性能的精度,但坦白的说,当前的依存句法分析器的性能并不是特别高,中文的精度在80%-85%之间。因此,我们可以有另一种方式来实现三元组抽取,即基于词性模板的方式,其思想在于,通过构造事件三元组的成词词性模板,如一个典型的IP短语、NP短语、VP短语等,就可以得到三元组结果:
    在这里插入图片描述

    1)抽取实施
    本项目分别使用开源jieba分词器作为分词和词性标注组件,针对输入的文本进行抽取,先进行长句切分,然后进行处理,并设定三元组词性模板,快速得到三元组集合。

    2)抽取结果
    同样的,本项目选取了“以色列对加沙地带进行轰炸”这一新闻快讯进行处理,得到svos等主谓宾集合。
    图片

    三、项目总结

    1、ComplexEventExtraction复合事件关系三元组抽取总结
    本项目对事件图谱的类型、表现形式进行了归纳,并结合复合事件模式与语料进行了实验。实验表明,反转事件,其实在某种程度上可以用来构造反义词词典,例如"不是A而是B"这种模式,可以得到很多反义的词或短语,这让我想到了我的一个反义词项目接口:(https://github.com/liuhuanyong/ChineseAntiword) ,我们可以用wordvector找相近词,可以靠这种方式收集反义词,对了,还可以加上情绪。
    实验表明,汉语显示标记其实在中文文本当中还是用的很普遍的,统计了以下,跑了1000W文本,有超过半数的文本中包含以上模式。因此,如果能够把显式的事件关系三元组做好,感觉用处还是很多的。本项目还有很多不足,比如模式上,比如对事件类型和事件表示的z总结上,而且,事件关系三元组还是限定在句子级别,这是一种讨巧的方式,因为放在篇章级上,实施的难度会更大。

    2、EventTriplesExtraction事件主谓宾三元组抽取总结
    本项目公开了基于ltp句法分析和语义角色标注、基于百度DDParser以及基于词法模式的事件三元组抽取方法,并给了实验示例。通过实验,我们发现
    LTP在DDParser之外,还提供了语义角色标注的功能,这个可以用于事件三元组抽取的有效补充,LTP速度比DDParser要快,但语义角色标注模块存在明显的内存泄漏问题。此外,基于词法模式的事件三元组抽取速度最快,但效果取决于分词、词性标注性能,基于词法模式,可以得到语义更长的三元组元素信息。

    关于作者

    刘焕勇,liuhuanyong,现任360人工智能研究院算法专家,前中科院软件所工程师,主要研究方向为知识图谱、事件图谱在实际业务中的落地应用。
    得语言者得天下,得语言资源者,分得天下,得语言逻辑者,争得天下。
    1、个人主页:https://liuhuanyong.github.io。
    2、个人博客:https://blog.csdn.net/lhy2014/。
    欢迎对自然语言处理、知识图谱、事件图谱理论技术、技术实践等落地应用的朋友一同交流。

    展开全文
  • 论文笔记整理:王中昊,天津大学。来源:ACL2020链接:https://arxiv.org/pdf/1909.03227.pdf摘要从非结构化文本中提取关系三元组是构建大规模知识图的关...

    论文笔记整理:王中昊,天津大学。


    来源:ACL2020

    链接:https://arxiv.org/pdf/1909.03227.pdf

    摘要

    从非结构化文本中提取关系三元组是构建大规模知识图的关键。然而,对于同一句子中的多个关系三元组共享同一个实体的重叠三元组问题,现有的研究很少。在这项工作中,我们引入了一个新的视角来重新审视关系三元组抽取任务,并从一个原则性的问题出发,提出了一个新的级联二进制标记框架(CASREL)。我们的新框架不再像以前的工作那样把关系看作是离散的标签,而是将关系建模为将句子中的主语映射到宾语的函数,这样就很自然地解决了重叠问题。实验表明,CASREL框架在编码模块使用随机初始化的BERT编码器时,其性能已经超过了最先进的方法,显示了新标签框架的强大功能。当使用预训练的BERT编码器时,它的性能得到了进一步的提升,在两个公共数据集NYT和WebNLG上,它分别比最强基线的F1分数提高了17.5和30.2个百分点。对重叠三元组的不同场景的深入分析表明,该方法在所有这些场景中提供了一致的性能增益。

    CASREL框架

    关系三元组抽取的目的是识别句子中所有可能的(主语、关系、宾语)三元组,其中一些三元组可能与主语或宾语共享相同的实体。为了实现这个目标,我们直接对三元组进行建模,并在三元组的层次上设计一个训练目标。这与以前的方法(Fu et al.,2019)不同,前者通过实体和关系来定义训练目标,而没有在三元组的层次上对他们进行明确的建模。

    形式上,给定训练集D中的注释语句xj和xj中一组潜在重叠的三元组Tj={(s,r,o)},我们的目标是使训练集D的数据可能性最大化:

          

    这里我们稍微滥用了符号Tj。s∈Tj表示出现在Tj三元组中的主语。Tj | s是Tj中主语s引导的三元组。(r,o)∈Tj | s是Tj中主语s引导的三元组中的(r,o)对。R是所有可能关系的集合。R\Tj | s表示除Tj中以s为首的所有关系。o表示“空”宾语(解释如下)。

    式(2)应用概率链式法则。式(3)利用了一个关键事实:对于给定的主语s,任何与s相关的关系(Tj | s中的关系)都会对应句子中相应的宾语,而所有其他关系在句子中必然没有宾语,即“空”宾语。

    这个公式有几个好处。首先,由于数据的似然性是从三元组层次开始的,优化这个似然性相当于在三元组层次上直接优化最终的评价标准。其次,通过不假设多个三元组如何共享一个句子中的实体,它通过设计来处理重叠的三元组问题。第三,式(3)中的分解启发了一种新的三元组抽取标记方案:我们学习一个主语标记符p(s | xj),它识别句子中的主语实体;对于每个关系r,我们学习一个宾语标记pr(o | s,xj),它识别给定主语的关系特定对象。通过这种方式,我们将每个关系建模为一个将主语映射到宾语的函数,而不是对(主语、宾语)对的关系进行分类。

    事实上,这种新颖的标记方案允许我们一次提取多个三元组:我们首先运行主语标记器来查找句子中所有可能的主语,然后针对找到的每个主语,应用关系特定的宾语标记器来查找所有相关关系和对应的宾语。

    上述通用框架中的关键组件,即主题标记器和特定于关系的对象标记器,可以通过多种方式实例化。在本文中,我们将它们实例化为深双向变压器BERT上的二进制标记器(Devlin等人,2019)。我们将在下面描述它的细节。

    BERT编码器

    编码器模块从句子xj中提取特征信息xj,并将其输入到后续的标记模块中。我们使用一个预先训练的BERT模型(Devlin等人,2019)来编码上下文信息。

    本文简要回顾了基于多层双向变换器的语言表示模型BERT。它的目的是通过共同调节每个单词的左右语境来学习深层表征,并且最近被证明在许多下游任务中非常有效(Zhong等人,2019)。具体地说,它由N个相同的转换器组组成。我们将转换器块表示为Trans(x),其中x代表输入向量。具体操作如下:

              

    式中,S是输入句子中子词索引的一个热点向量的矩阵,Ws是子词嵌入矩阵,Wp是位置嵌入矩阵,其中p代表输入序列中的位置索引,hα是隐藏状态向量,即。,输入句在α层的上下文表示,N是转换块的个数。注意,在我们的工作中,输入是单个文本句子而不是句子对,因此等式(4)中没有考虑原始BERT论文中描述的分段嵌入。有关变压器结构的更全面的描述,请参考(Vaswani等人,2017)。

    级联解码器

    现在,我们描述一个新的级联二进制标记方案的实例,这个方案是受前面的公式启发的。其基本思想是通过两个级联步骤提取三元组。首先,我们从输入句子中检测主语。然后对于每个候选主语,我们检查所有可能的关系,看一个关系是否能将句子中的宾语与该主语相关联。与这两个步骤相对应,级联解码器由两个模块组成,如图2所示:一个主题标记器;一组特定于关系的对象标记器。

    主题标记器  低层标记模块通过直接解码N层BERT编码器产生的编码向量hN来识别输入句子中所有可能的主语。更精确地说,它采用两个完全相同的二值分类器来分别检测对象的起始位置和结束位置,为每个标记分配一个二进制标记(0/1),该标记指示当前标记是否对应于主题的开始位置或结束位置。主题标记器对每个令牌的具体操作如下:

               

    其中pi start_s和pi end_s 分别表示将输入序列中的第i个单词标识为对象的开始位置和结束位置的概率。如果概率超过某个阈值,则相应的部分将被分配一个标签1,否则将被分配一个标签0。xi是输入序列中第i个单词的编码表示,即xi=hN[i],其中W(·)表示可训练的权重,b(·)是偏差,而α是sigmoid激活函数。

    主题标记器优化以下似然函数,以确定给定句子表示x的主语s范围:

          

    其中L是句子的长度。如果z为真,I{z}=1,否则为0。yi start_s是x中第i个单词的主语开始位置的二进制标记,yi end_s表示对象的结束位置。参数θ={Wstart,bstart,Wend,bend}。

    对于多目标检测,我们采用最近开始-结束对匹配原则,根据起始和结束位置标记器的结果来确定任何目标的跨度。例如,如图2所示,第一个开始标记“Jackie”最近的结束标记是“Brown”,因此第一个主题范围的检测结果将是“Jackie R.Brown”。值得注意的是,为了匹配给定开始令牌的结束令牌,我们不考虑其位置在给定单词位置之前的单词。这种匹配策略能够保持任何实体跨度的完整性,只要在给定句子中任何实体跨度的自然连续性,都能正确地检测到任何实体跨度的完整性。

    特定于关系的对象标记器  高级标记模块同时识别对象以及与较低级别获得的主题相关的相关关系。如图2所示,它由一组特定于关系的对象标记器组成,这些标记器的结构与底层模块中所有可能关系的主题标记器结构相同。所有对象标记器将同时为每个检测到的对象标识相应的对象时间。不同在主题标记器直接解码编码向量hN的基础上,关系特定对象标记器也考虑了主语特征。关系特定对象标记器对每个单词的详细操作如下:

                

    其中pi start_s和pi end_s 分别表示将输入序列中的第i个单词识别为对象的起始位置和结束位置的概率,vk sub表示在低级模块中检测到的第k个对象的编码表示向量。

    对于每个主题,我们迭代地对其应用相同的解码过程。注意,主体通常由多个令牌组成,为了使第9和等式(10)中的xi和vksub的添加成为可能,我们需要保持两个向量的维数一致。为此,我们将第k个主语的开始和结束标记之间的平均向量表示作为vksub

    关系r的宾语标记器优化以下似然函数,以确定给定句子表示x和主语s的宾语o的跨度:

            

    其中yi start_s是x中第i个单词的对象开始位置的二进制标记,yi end_s是第i个单词的对象结束位置的标记。对于“空”对象o∅,所有i的标记 yi start_o∅= yi end_o∅=0。参数φr={Wr start,br start,Wr end,br end}。

    注意,在高级标记模块中,关系也由对象标记器的输出决定。例如,在检测到的主体“Jackie R.Brown”和候选对象“Washington”之间的关系“Work in”就不成立了。因此,关系“Work in”的object tagger不会识别“Washington”的跨度,即起始位置和结束位置的输出都是零,如图2所示。相反,“出生地”的关系在“Jackie R.Brown”和“Washington”之间,因此相应的宾语标注器将输出候选对象“Washington”的跨度。在此设置中,高级模块能够同时识别关系以及与在低级模块中检测到的对象有关的对象。

    数据记录可能性目标

    通过式(3)的对数,目标J(Θ)为:

           

    其中参数Θ={θ,{φr}r∈R}。pθ(s | x)在式(8)中定义,pφr(o | s,x)在式(11)中定义。我们通过Adam随机梯度下降方法(Kingma和Ba,2014)在小批次中最大化J(Θ)来训练模型。

    实验

    比较方法 我们将我们的模型与几个强大的最先进模型进行比较,即NovelTagging(Zheng et al.,2017)、CopyR(Zeng et al.,2018)、GraphRel(Fu et al.,2019)和CopyRRL(Zeng et al.,2019)。上述基线的报告结果直接取自原始出版文献。

                 

    请注意,我们在预先训练的BERT模型上实例化CASREL框架,以结合所提出的新标记方案的能力和预先学习的先验知识,以获得更好的性能。为了评估引入基于转换器的BERT模型的影响,我们进行了一系列消融试验。CASRELrandom是一个框架,其中BERT的所有参数都被随机初始化;CASRELLSTM是在基于LSTM的结构上实例化的框架(Zheng et al.,2017),带有预先训练的手套嵌入(Pennington et al.,2014);CASREL是使用预训练的BERT权重的成熟框架。

    主要结果 表2显示了对两个数据集进行关系三元组抽取的不同基线的结果。在所有三个评估指标方面,CASREL模型在所有三个评估指标方面均优于所有基线,在纽约时报和WebNLG数据集上,F1分数分别比最先进方法(Zeng等人,2019年)提高了17.5%和30.2%。即使不利用预先训练的BERT,CASRELrandom和CASRELLSTM仍然与现有的最新模型相竞争。这验证了所提出的级联解码器的实用性,该解码器采用了一种新的二进制标记方案。从CASRELrandom到CASREL的性能改进突出了先验知识在预训练语言模型中的重要性。

    不同类型句子的详细结果  为了进一步研究CASREL框架提取重叠关系三元组的能力,我们对不同类型的句子进行了两次扩展实验,并与前人的工作进行了比较。

    图3显示了三种不同重叠模式的详细结果。可以看出,大多数基线在Normal、EPO和SEO上的性能都呈下降趋势,反映出从不同重叠模式的句子中提取关系三元组的难度越来越大。也就是说,在这三个重叠的模式中,普通类是最容易提取的模式,而EPO和SEO类则是比较难提取的基线模型。相比之下,所提出的CASREL模型在所有三个重叠模式上都获得了一致的强性能,特别是对于那些硬模式。我们也验证了CASREL在从不同三元组数的句子中提取关系三元组的能力。我们把句子分成五类,表3显示了结果。同样,CASREL模型在所有五个类中都取得了优异的性能。虽然发现大多数基线的性能随着句子中包含的关系三元组数量的增加而下降并不奇怪,但是从不同模型的性能变化中仍然可以观察到一些模式。与以往致力于解决关系三元组抽取中的重叠问题的工作相比,我们的模型对输入句子日益复杂的影响最小。尽管与最先进的方法CopyRRL(Zeng et al.,2019)相比,CASREL模型在所有五个类别上都获得了相当大的改进,但这两个数据集的F1得分的最大提高都来自最困难的类别(N≥5),这表明我们的模型比基线更适合复杂的场景。

    这两个实验验证了级联二元标记框架在从复杂句子中提取多个(可能重叠)关系三元组方面的优越性。以往的研究都需要明确地预测句子中可能包含的所有关系类型,这是一个相当具有挑战性的任务,因此在提取的结果中缺少许多关系。相比之下,我们的CASREL模型不考虑关系类型的预测,并且倾向于从给定的句子中提取尽可能多的关系三元组。我们将此归因于级联解码器的高级标记模块中的关系特定对象标记器同时考虑了所有关系类型。

    总结

    本文中,我们介绍了一个新的级联二进制标记框架(CASREL),它是从关系三元组抽取的一个原则性问题中派生出来的。我们没有将关系建模为实体对的离散标签,而是将关系建模为映射主语到宾语的函数,这为重新审视关系三元组抽取任务提供了一个新的视角。因此,我们的模型可以同时从句子中提取多个关系三元组,而不存在重叠问题。我们在两个广泛使用的数据集上进行了大量的实验,以验证所提出的CASREL框架的有效性。实验结果表明,在不同的场景下,我们的模型的性能远远优于最新的基线,尤其是在重叠关系三元组的提取上。


     

    OpenKG

    开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

    点击阅读原文,进入 OpenKG 博客。

    展开全文
  • ER模型转关系模式

    千次阅读 多人点赞 2015-10-25 12:11:28
    ER图中的主要成分为实体类型和联系类型,转换算法将实体类型和联系类型转换为关系模式。转化为关系模式,主要确定3部分内容,关系模式的名称,属性,码。 转换分为两个步骤:1.实体的转换。2.关系模式的转换; 1....

        ER图中的主要成分为实体类型和联系类型,转换算法将实体类型和联系类型转换为关系模式。转化为关系模式,主要确定3部分内容,关系模式的名称,属性,码。

    转换分为两个步骤:1.实体的转换。2.关系模式的转换;

    1.实体的转换

        将ER图中的实体逐一转换为一个关系模式

    关系模式

    实体

    名称              

    实体名                                         

    属性

    实体的属性                

    关系的码

    实体标识符


    2.联系的转换

        根据联系所连接的实体的个数划分:一元,二元,三元联系。

    2.1 二元联系

        1:1

    (1).联系-->独立的关系模式

    关系模式

    联系

    名称

    联系名称

    属性              

    该联系所关联的两个实体的码和联系的属性                  

    关系的码 

    取自任一方实体的码

    (2).将联系归并到关联的两个实体的任一方

    关系模式

    实体

    名称

    待归并一方实体名称

    属性              

    给待归并的一方实体属性集增加另一方实体的码和该联系的属性  

    关系的码

    归并后的实体码保持不变

        

        1:m

    (1).联系-->独立的关系模式。

    关系模式

    联系

    名称

    联系名

    属性              

    该联系所关联的两个实体的码及联系的属性                    

    关系的码

    多方实体的码

    (2).将联系归并到关联的两个实体的多方。

    关系模式

    实体

    名称

    多方实体名

    属性              

    给待归并的多方实体属性集中增加一方实体的码和该联系的属性  

    关系的码

    归并后的多方实体码保持不变

     

        m:n

    (1).只能转换成一个独立的关系模式

    关系模式

    联系

    名称              

    联系的名称

    属性

    关系模式的属性取该联系的两个多方实体的码及联系的属性     

    关系的码

    两个多方实体码构成的属性组;


    2.2 一元联系

        与二元联系转换类似

    2.3 三元联系

        三元联系实体间联系分为:1:1:1 , 1:1:N , 1:M:N , M:N:P.

        1:1:1:三个实体类型转换成的三个关系模式。在任一一个关系模式中加入另外两个关系模式的键(作为外键)和联系类型的属性。

        1:1:N:在多端实体类型转化的关系模式中,加入两个1端实体类型的键(作为外键)和联系的类型;


    联系转化为关系模式

        1:M:N:联系转化为关系模式,属性是两个多端实体类型的键(作为外键)和联系类型的属性。关键码是两个多端实体键的组合;

        M:N:P:联系转化为关系模式,属性为三端实体类型的键(作为外键)加上联系类型的属性。三端实体键的组合为关键码;


    3.总结

        ER图转关系模式主要还是确定实体类型和联系类型的转化,根据联系元数的不同,实体间联系的不同,有不同的转化方式。确定转化之后关系模式的名称,属性,主键和外键。


    展开全文
  • 首先要明白什么是关系模式,可以把它理解成一组具有某种联系的属性的集合。通常用一个三元组表示:R(U,F),其中R表示关系名,U表示一组属性,F表示属性组U上的一组数据依赖。(属性可以理解成一个表的各列名) 所谓...

     

    1. 首先要明白什么是关系模式,可以把它理解成一组具有某种联系的属性的集合。通常用一个三元组表示:R(U,F),其中R表示关系名,U表示一组属性,F表示属性组U上的一组数据依赖。(属性可以理解成一个表的各列名)
    2. 所谓数据依赖即一个关系内部属性与属性之间的一种约束关系,一般分为了函数依赖和多值依赖,对于函数依赖可以理解成y=f(x)的形式,比如有两个属性x、y,对于一个确定的x值,必然对应的属性y的值是确定的,例如学号和姓名,如果学号是确定的那么对应的这个人的名字也是确定的。
    3. 第一范式:关系模式的每一个分量都是不可分的数据项,即每一个属性都是不可再分的,反例:对于地区这一属性,如果它又可以再细分国家,国家又在分为省份、市等等,那么这一关系模式就不属于第一范式。
    4. 一个好的关系模式不应该发生数据冗余、更新异常、插入异常、删除异常。范式也并非是越高越好,实际生活中一般并不将关系模式分解到最高,而是分解到第三范式或者BCNF即可。
    5. 函数依赖的定义:(课本180-181)。重点理解完全依赖、部分依赖和传递依赖。对于完全依赖,比如有两个属性结合x,y,如果x-->y,并且x的任意真子集(即属性集x减少一个或多个属性)之后x-\->y,说明y对x完全依赖,如果存在x的一个真子集可以函数确定y,那么就是部分依赖。
    6. 如果关系模式的属性集U中存在一个属性或者属性集K,有K-->U,则K为关系模式的候选码,注意一个关系模式可以有一个或者多个候选码,但是只选择其中的一个候选码作为主码(即主键),对于包含主码中含有的所有属性的属性集称为超键(即在主码包含的属性的基础上再增加其他属性进去)。只要是属于候选码中的属性均称为主属性,(不管这个候选码是不是被作为主码),否则称为非主属性。
    7. 范式之间的关系:,方向是高范式到低范式(高范式属于低范式,可以理解成低范式的范围比较大,高范式是其中的一部分,如果一个范式是3NF,那么必然是2NF,反之不一定成立),低范式可以通过分解向高范式转换。
    8. 第二范式:其实质是消除非主属性对候选码的部分依赖,比如有一个关系模式R(A,B,C,D),其中(A,B)是候选码,如果满足第二范式,则不存在诸如A-->C,D或者B-->C,D的部分函数依赖,而只存在(A,B)-->C,D的函数依赖,即候选码的真子集不能函数决定非主属性。
    9. 第三范式:其实质是在第二范式的基础上增加了消除非主属性对候选码的传递依赖,比如有一个关系模式R(A,B,C,D),其中(A,B)是候选码,如果满足第三范式,则不存在诸如(A,B)-->C,而C-->D,导致(A,B)-传递->D的函数依赖。
    10. BCNF范式:其实质是在第三范式的基础上增加对主属性的约束,因为一个关系模式中如果有多个候选码,但是只有一个候选码被选中作为主码,BCNF要保证没有被选为主码的候选码中的主属性对主码也是完全依赖的,可以看一下课本185的例题8,对于关系模式STJ(S,T,J),其候选码可以是(S,J)或者是(S,T),因此三个属性都是主属性,所以是不可能存在部分依赖和传递依赖的(原因:部分依赖和传递依赖针对的是非主属性和主属性之间的依赖关系),所以必定属于第三范式,接下来判断是否是BCNF范式,由于存在函数依赖(S,J)-->T,(S,T)-->J,T-->J,我们可以看到主属性J对主码(S,T)是部分依赖的,因为T就可以函数决定J。
    11. 模式的分解就是使得关系模式中的函数依赖满足上述的定义。
    展开全文
  • 针对当前网络安全领域知识获取中所依赖的流水线模式存在实体识别错误的传播,未考虑实体识别与关系抽取任务间的联系,以及模型训练缺乏标签语料的问题,提出一种融合对抗主动学习的端到端网络安全知识三元组抽取方法...
  • 重点介绍了目前国内最大的开源中文知识图谱ownthink,如何将ownthink的三元组源数据制作成一个知识图谱供大家使用,希望大家站在巨人的肩膀之上,构建自己的知识图谱,同时贡献一份自己的力量。 ownthink知识图谱...
  • ER图转换关系模式

    万次阅读 多人点赞 2015-08-17 11:18:02
    1.一个实体型转换为一个关系模式。实体的属性就是关系的属性。实 体的码就是关系的码。 例如在我们的例子中,学生实体可以转换为如下关系模式,其中学号 为学生关系的码: 学生(学号,姓名,出生日期,所在系...
  • 三元组事件抽取与简单代码实现

    千次阅读 2021-06-25 12:26:00
    一个简单的示例代码,基于词性的三元组事件抽取。 本文代码大多来源于另一位作者的工贡献:,可直接从github获取代码。 篇博客主要是描述一下这个项目如何使用(比较多坑)和三个实验对比结果。
  • 中文三元组联合标注工具LAnn介绍摘要标注界面使用方法配置实体类型和关系类型导入文件开始标注快捷键辅助标注标注结果格式结语 摘要 目前,现有的领域三元组数据集并不多,为了更好地支持中文领域三元组数据集的构建...
  • 目录信息抽取实战:三元组抽取一、限定领域的三元组抽取比赛介绍数据分析序列标注模型关系分类模型三元组提取总结开放领域的三元组抽取标注平台文本分类新数据进行三元组抽取总结参考文献 一、限定领域的三元组抽取 ...
  • 在有向图中,从头实体到尾实体有许多真实存在的、通过一步或者多步可达的路径,这表明了头尾实体之间存在语义相关性和三元组之间蕴含的复杂推理模式,而这些可达路径将是判断三元组置信度的重要依据。 要利用可到达...
  • NLP(二十六)限定领域的三元组抽取的一次尝试

    千次阅读 热门讨论 2020-03-15 18:39:14
      本文将会介绍笔者在2019语言与智能技术竞赛的三元组抽取比赛方面的一次尝试。由于该比赛早已结束,笔者当时也没有参加这个比赛,因此没有测评成绩,我们也只能拿到训练集和验证集。但是,这并不耽误我们在这方面...
  • 关系模式分解

    千次阅读 2020-01-02 12:14:10
    模式分解 模式S-C-M (S 学号,C 班级,M 班主任) 该模式设计不好,存在数据冗余、插入异常、删除异常和更新异常 p1 = {S-C(学号,班级),C-M(班级,班主任)} p2 = {S-C(学号,班级),C-M(学号,班主任)} p3 = {S-...
  • 【知识图谱】知识图谱的基础概念与构建流程

    千次阅读 多人点赞 2019-11-09 18:46:49
    如下图1的知识图谱例子所示,中国是一个实体,北京是一个实体,中国-首都-北京 是一个(实体-关系-实体)的三元组样例北京是一个实体 ,人口是一种属性2069.3万是属性值。北京-人口-2069.3万构成一个(实体-属性-...
  • 1.关系模式通常被简化为一个三元组: R(U, F) R:关系名 U:组成该关系的属性名集合 F:属性间数据的依赖关系集合 2.不规范的关系模式可能会带来的问题 以下面这个模式为例 学生(学号,姓名,系名,系主任,课程...
  • ER图向关系模式转换

    万次阅读 多人点赞 2019-08-16 15:28:20
    ER图向关系模式转换涉及到两方面: ①实体的转换; ②实体间联系的转换。 实体的转换:在从ER图转换为关系模式时,一个实体就转换一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。 实体间...
  • 小甲鱼零基础入门学习python笔记

    万次阅读 多人点赞 2019-08-14 11:06:30
    ') 条件表达式(三元操作符) 有了这个三元操作符的条件表达式,你可以使用一条语句来完成以下的条件判断和赋值操作: x, y = 4, 5 if x  small = x else: small = y 例子可以改进为 small = x if x  #如果x小于y...
  • 数据库 - 关系模式函数依赖

    万次阅读 2015-05-07 09:09:45
    关系数据库逻辑设计 ...关系模式由五部分组成,即它是一个五元: R(U, D, DOM, F) R: 关系名 U: 组成该关系的属性名集合 D: 属性U中属性所来自的域 DOM: 属性向域的映象集合 F: 属性间数据的
  • 关系数据库模式->关系数据库管理 用户需求->概念模型(E/R Model)->逻辑模型(三层结构) 现实世界->信息世界->机器世界 概念设计工具E-R图 E-R图的组成元素:实体、属性、联系(而不是关系) ...
  • 1NF 2NF 3NF BCNF 模式分解
  • ER 和 数据库关系模式

    万次阅读 2018-09-20 14:30:16
    我们眼下所接触的数据库基本上是关系数据库,关系数据库中的关系模式是型,而关系是值。关系模式是对关系的描写叙述。 什么是关系?关系实质上是一张二维表,当中每一行是一个元组,每一列是一个属性,每一个元组是...
  • E-R图关系模式的转换

    千次阅读 热门讨论 2015-10-15 15:33:32
     E-R图关系模式的转换在大题中必要的考点。在《数据库系统原理》和《信息系统开发与管理》中有详细的讲解,但是对其关系转换还是没有一个全面的了解与认识。对此需要总结归纳一下,分享给大家。   我们都知道E...
  • 前端面试题

    万次阅读 多人点赞 2019-08-08 11:49:01
    前端面试题汇总 ... 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?...它和Standards模式有什么区别 21 div+css的布局较table布局有什么优点? 22 img的alt与title有何异同? strong与em的异同? 22 你能...
  • 三元联系简介

    2021-03-03 19:39:50
    在数据库设计中或者以后的软考中会遇到一个相对来说有点难度的题,那就是对于ER图中三元联系如何确定的问题,因此在这做一个简单的介绍: 一、确定关系 三元联系无非就是四中情况而已:(1:1:1);(1:1:N);(1:M:N);...
  • E-R图转换成关系模式

    千次阅读 2019-04-08 09:57:58
    第二种:总是将三元联系类型也转换成关系模式,其属性为三端实体类型的键(作为外键)加上联系类型的属性,而键为三端实体键的组合。 三元联系的ER图结构转换为关系模式  ①仓库( 仓库号 ,仓库名,地址...
  • (一)人脸识别技术之人脸识别过程及识别算法简介

    万次阅读 多人点赞 2018-11-04 23:19:40
    (4) 谷歌推出FaceNet方法,使用三元组损失函数替代了常用的softmax交叉熵损失函数,在一个超球空间进行优化类内距离更紧凑,类间距离更远,最后得到一个紧凑的128维人脸特征,网络使用GoogleNet的Inception模型,模型参数...
  • C#基础教程-c#实例教程,适合初学者

    万次阅读 多人点赞 2016-08-22 11:13:24
    C#基础教程-c#实例教程,适合初学者。 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序。...
  • JavaWeb

    千次阅读 多人点赞 2017-12-26 09:09:24
    2、装饰着模式:包装对象和被包装对象都要实现相同的接口;包装的对象中需要获得被包装对象的引用,缺点:如果接口的方法比较多,增强其中的某个方法,其他的功能方法需要原有调用如bufferedinputstream和...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,283
精华内容 5,713
关键字:

关系模式三元组