CN110399392B - 语义关系数据库运算 - Google Patents

语义关系数据库运算 Download PDF

Info

Publication number
CN110399392B
CN110399392B CN201910332737.6A CN201910332737A CN110399392B CN 110399392 B CN110399392 B CN 110399392B CN 201910332737 A CN201910332737 A CN 201910332737A CN 110399392 B CN110399392 B CN 110399392B
Authority
CN
China
Prior art keywords
vector
database
query
computer
space model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910332737.6A
Other languages
English (en)
Other versions
CN110399392A (zh
Inventor
R.博尔达韦卡
O.什穆利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN110399392A publication Critical patent/CN110399392A/zh
Application granted granted Critical
Publication of CN110399392B publication Critical patent/CN110399392B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24537Query rewriting; Transformation of operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2468Fuzzy queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了一种方法、计算机程序产品和/或系统。根据本发明的一个方面,一个或多个处理器接收第一数据库的查询,其中该查询包括:(i)操作数,和(ii)指示基于距离的相似性度量的运算符。一个或多个处理器还基于所述查询确定结果集,其中所述结果集包括多个记录,并且其中基于(i)对应于所述操作数的第一向量,和(ii)对应于记录的第二向量之间的向量最近邻计算,将记录包括在所述结果集中,其中第二向量包括在基于第一数据库的文本表示的向量空间模型中。

Description

语义关系数据库运算
技术领域
本发明总体上涉及数据库领域,更具体地,涉及在数据库查询语言中引入语义关系运算。
背景技术
本发明总体上涉及数据库领域,更具体地,涉及在数据库查询语言中引入语义关系运算。
单词嵌入是指用于将单词或短语表示为实数向量的语言建模和特征学习技术。这些单词嵌入允许使用机器学习算法计算文本语料库的相似性。
发明内容
根据本发明的一方面,存在一种方法、计算机程序产品和/或系统,其执行以下操作(不必按照以下顺序):(a)接收对第一数据库的查询,其中该查询包括:(i)操作数,和(ii)指示基于距离的相似性度量的运算符;以及(b)基于该查询确定结果集,其中该结果集包括多个记录,并且其中基于(i)对应于操作数的第一向量和(ii)对应于记录的第二向量之间的向量最近邻计算将记录包括在该结果集中,其中第二向量包括在基于第一数据库的文本表示的向量空间模型中。
附图说明
图1是根据本发明的系统的第一实施例的框图;
图2是示出至少部分由第一实施例系统执行的第一实施例方法的流程图;
图3是示出第一实施例系统的机器逻辑(例如,软件)部分的框图;
图4A是根据示例性实施例的数据库表的框图视图;
图4B是根据示例性实施例的向量空间模型的框图视图;和
图4C是根据示例性实施例的结果集的框图视图。
具体实施方式
关系数据库是结构化为基于关系模型识别存储的信息项之间的关系的数据库,其中数据被组织成列和行的一个或多个表。关系模型中的每一行也可以称为记录或元组。在这种情况下,关系表示不同表之间的连接,并建立在这些表之间的交互(或公共数据)的基础上。通常,这些关系通过为表中的每一行提供唯一的键(例如主键)来表示。通过引用链接行的唯一键(例如外键(foreign key)),来将表中的行与其他表中的行进行相关。
在关系数据库中,运算符是能够操纵单个值并返回结果的编程构造。这些单个值称为操作数或实参(argument)。常见的运算符包括操纵数字操作数的算术运算符(例如,加法、减法、除法和乘法等)、组合由SQL查询返回的行集的集合运算符(例如,并集、交集、补集等)、操纵条件的结果的逻辑运算符(例如,和、或、否等),以及在比较一个表达式与另一个表达式的条件中使用的比较运算符(例如,相等、不相等、小于、大于、在……之内、不在……之内、在……之间、类似等)。
本发明的一些实施例识别当前的数据库运算符仅支持基于值的匹配。例如,表达式“主题(Topic)=‘checkpointing’”评估字段Topic的值是否恰好等于字符串checkpointing,而不考虑字段Topic的值和单词checkpointing的语义接近度。为了克服一个或多个缺点,本发明的实施例引入了基于结构化的数据库中语义关系的新型关系运算符。这种方法使得关系系统能够通过实现核心关系运算符(例如,选择、投射、联接、分组等),根据实体的语义来匹配实体,其中实体的语义由实体的上下文决定。为了实现这个目标,核心关系运算在向量空间中使用由神经网络生成的基于向量的表示来执行。
本具体实施方式部分分为以下几个子部分:(i)硬件和软件环境;(ii)示例实施例;(iii)进一步的评论和/或实施例;(iv)定义。
I.硬件和软件环境
本发明可以是装置、系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(单数)或介质(复数),用于使处理器执行本发明的各方面。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的示例(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如互联网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用互联网服务提供商来通过互联网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
现在将参照附图详细描述根据本发明的软件和/或方法的可能硬件和软件环境的实施例。图1是示出联网计算机系统100的各个部分的功能框图,包括:子系统102;客户端子系统104、106、108、110、112;网络114;计算机200;通信单元202;处理器集204;输入/输出(I/O)接口集206;存储器设备208;持久存储设备210;显示设备212;外部设备集214;随机存取存储器(RAM)设备230;高速缓冲存储器设备232;和程序300。
子系统102在许多方面是本发明中的各种(多个)计算机子系统的表示。因此,现在将在以下段落中讨论子系统102的几个部分。
子系统102可以是膝上型计算机、平板计算机、上网本计算机、个人计算机(PC)、台式计算机、个人数字助理(PDA)、智能电话或能够经由网络114与客户端子系统通信的任何可编程电子设备。程序300是用于创建、管理和控制某些软件功能的机器可读指令和/或数据的集合,这些软件功能将在下文具体实施方式章节的示例实施例子章节中详细讨论。
子系统102能够经由网络114与其他计算机子系统通信。网络114可以是例如局域网(LAN)、诸如互联网的广域网(WAN)或两者的组合,并且可以包括有线、无线或光纤连接。通常,网络114可以是将支持服务器和客户端子系统之间通信的连接和协议的任意组合。
子系统102被示为具有许多双箭头的框图。这些双箭头(没有单独的附图标号)表示提供子系统102的各种组件之间的通信的通信结构。这种通信结构可以用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备以及系统内的任何其他硬件组件之间传递数据和/或控制信息的任何架构来实现。例如,通信结构可以至少部分地用一个或多个总线来实现。
处理器集204可以包括被包括在一个或多个集成电路芯片中的电子电路的组合(例如,半导体结构(诸如晶体管、电阻器、电容器等)的组合,其中半导体结构被组织成被配置为执行在图1-图3的讨论中描述的一个或多个过程的电子电路)。这样,一个或多个集成电路芯片被配置成执行在图1-图3的讨论中描述的过程的至少部分。集成电路芯片可以被并入作为计算系统的部分,其中该计算系统被配置为执行在图1-图3的讨论中描述的过程的至少部分。
存储器设备208和持久存储设备210是计算机可读存储介质。通常,存储器设备208可以包括任何合适的易失性或非易失性计算机可读存储介质。还应注意,现在和/或在不久的将来:(i)(多个)外部设备214能够为子系统102提供部分或全部存储器;和/或(ii)子系统102外部的设备能够为子系统102提供存储器。
程序300存储在持久存储设备210中,用于由一个或多个相应的处理器集204访问和/或执行,通常通过存储器设备208的一个或多个存储器。持久存储设备210:(i)至少比传输中的信号更持久;(ii)将程序(包括其软逻辑和/或数据)存储在有形介质(诸如磁畴或光畴)上;和(iii)比永久存储的持久性低得多。或者,数据存储(storage)可以比持久存储设备210提供的存储的类型更持久和/或永久。
程序300可以包括机器可读和可执行指令和/或实质性数据(即存储在数据库中的数据类型)。在该特定实施例中,持久存储设备210包括磁性硬盘驱动器。举例来说,持久存储设备210可以包括固态硬盘驱动器、半导体存储设备、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪存或能够存储程序指令或数字信息的任何其他计算机可读存储介质。
持久存储设备210使用的介质也可以是可移动的。例如,可移动硬盘驱动器可以用于持久存储设备210。其他示例包括光盘和磁盘、拇指驱动器和智能卡,它们被插入驱动器中,以传送到也是持久存储设备210的部分的另一计算机可读存储介质上。
在这些示例中,通信单元202提供与子系统102外部的其他数据处理系统或设备的通信。在这些示例中,通信单元202包括一个或多个网络接口卡。通信单元202可以通过使用物理和无线通信链路之一或两者来提供通信。这里讨论的任何软件模块可以通过通信单元(诸如通信单元202)下载到持久存储设备(诸如持久存储设备210)。
I/O接口集206允许与其他设备输入和输出数据,其中该其他设备可以与计算机200本地连接以进行数据通信。例如,I/O接口集206提供到外部设备集214的连接。外部设备集214通常将包括诸如键盘、小键盘、触摸屏和/或一些其他合适的输入设备的设备。外部设备集214还可以包括便携式计算机可读存储介质,诸如例如拇指驱动器、便携式光盘或磁盘以及存储器卡。用于实践本发明实施例的软件和数据,例如程序300,可以存储在这种便携式计算机可读存储介质上。在这些实施例中,相关软件可以(或可以不)经由I/O接口集206全部或部分加载到持久存储设备210上。I/O接口集206还与显示设备212连接以进行数据通信。
显示设备212提供向用户显示数据的机制,并且可以是例如计算机监视器或智能电话显示屏。
这里描述的程序是基于在本发明的特定实施例中实现它们的应用来识别的。然而,应该理解,这里使用的任何特定程序命名法仅仅是为了方便,因此本发明不应该限制于仅在由这种命名法识别和/或暗示的任何特定应用中使用。
本发明的各种实施例的描述为了说明的目的而已经呈现,但并不旨在穷举或限制于所公开的实施例。在不脱离所述实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。选择这里使用的术语是为了最好地解释实施例的原理、实际应用或对市场上发现的技术的技术改进,或者使本领域普通技术人员能够理解这里公开的实施例。
II.示例实施例
图2示出了描述根据本发明的方法的流程图250。图3示出了用于执行流程图250的至少一些方法操作的程序300。现在将在以下段落中广泛参考图2(对于方法操作方框)和图3(对于软件方框)来讨论这些方法和相关组件。
参考流程图250(见图2),处理开始于操作S255,其中映射模块(“mod”)305(见图3)生成数据库的文本表示。在本发明的一些实施例中,数据库的文本表示是通过连结(concatenation)数据库中的所有关系获得的。在一些实施例中,通过连结由外键进行相关的多个表来扩展文本表示。在一些实施例中,为文本表示中的每个记录获得语言符号(token)。在一些实施例中,语言符号是没有中间空格的字符序列。在一些实施例中,语言符号表示文本实体。
在示例性实施例中(如图4A所示),数据库的数据库表EMP 405包括以下列:(i)名称,(ii)主题,(iii)论坛,和(iv)PNum。在该示例性实施例中,映射模块305通过连结每个记录的每个字段来生成数据库的文本表示。在一些实施例中,每个记录作为新的行被包括在文本表示中(即,文本表示的每一行对应于数据库中的一记录,如图4A所示)。
处理继续到操作S260(见图2),其中向量模块310(见图3)基于数据库的文本表示生成训练输入数据集。在本发明的一些实施例中,为了生成训练输入数据集,映射模块305预处理文本表示以获得一致的评估和训练数据。在一些实施例中,预处理文本表示可以包括小写化(lowercasing)、词形还原(lemmatization)、单词分组(word groupings)和词汇切分(tokenization)等。本领域技术人员将认识到预处理根据文本表示的性质而变化。例如,预处理技术可以根据文本表示是否属于特定领域(例如,健康、遗传学、社交网络数据等)而变化。预处理技术也可以根据查询的特定应用而变化。例如,情感分析可能要求与健康应用的预处理不同的文本表示的预处理。
处理进行到操作S265(见图2),其中向量模块310(见图3)基于训练输入数据集(例如,连续单词袋(bag-of-words)模型或跳跃元语法(skip-gram)模型)来训练向量空间模型。在本发明的一些实施例中,向量空间模型是用于表示文本文档的代数模型。在一些实施例中,向量空间模型支持基于向量最近邻计算,其中两个或更多个实体可以基于它们的相关性或相似性进行匹配(例如,与精确匹配相反)。在一些实施例中,向量空间模型使用word2vec或类似的模型组来训练,以生成单词嵌入。在一些实施例中,使用基于矩阵和优化的方法来训练向量空间模型,以生成文本的单词向量,诸如Glove。在一些实施例中,针对训练输入中的每个语言符号来训练向量空间模型。在一些实施例中,向量空间模型可以根据局部敏感散列(locality sensitive hashing,LSH)方法来确定。本发明的这些方面将在下面该具体实施方式的进一步的评论和/或实施例子章节中更详细地讨论。
继续示例性实施例,向量模块310训练向量空间模型,如图4B所示。
处理进行到操作S270(见图2),其中查询模块315(见图3)接收包括对基于以距离为基础的相似性度量的运算的请求的查询。在一些实施例中,运算包括改进的运算符,在此也称为认知关系运算符,如下所述,该认知关系运算符基于使用以距离为基础的相似性度量的运算来匹配查询。在这些实施例中,记录基于向量空间模型中至少一个语言符号的向量最近邻计算来匹配查询。在一些实施例中,这些认知关系运算符包括:联接、半联接、外联接、投射、选择、排序和分组等运算符。然而,这些示例并不意味着是限制性的,并且运算可以包括本领域中已知的(或尚未已知的)任何这样的关系运算符
在示例性实施例中,查询模块315基于使用基于距离的相似性度量的运算接收以下选择查询:
从EMP中选择主题=‘checkpointing’的*
(SELECT*FROM EMP WHERE Topic=‘checkpointing’)
处理继续到操作S275(见图2),查询模块315(见图3)通过使用基于距离的计算来执行查询的认知关系运算符从而确定查询的结果集。在本发明的一些实施例中,结果集包括基于向量最近邻计算的至少一个结果。
在一些实施例中,提供了用于执行认知关系运算符的基于向量最近邻计算来。在一些实施例中,包括用于比较两个语言符号集的多个替代方案。在一些实施例中,比较两个语言符号集term1和term2包括比较term1中的语言符号和term2中的语言符号之间的平均距离(例如,avg(term1,term2)>=0.5)。在这些和其他实施例中,比较两个语言符号集可以包括比较最大距离(例如,max(term1,term2)>=0.5)、差异距离(例如,abs(term1,term2)>=0.5)、普通距离(例如,term1>=0.5),或者这些运算或用于比较向量的任何其他类似运算的组合。
继续示例性实施例,成功执行后返回的结果集包括两行,如图4C所示。在该示例性实施例中,结果集的两行都包括主题列中的结果,其中术语checkpointing和“主题”列的内容的余弦距离大于预定阈值0.5。参考图4B,向量空间模型410包括表检查点415、表架构420、表联接425和表相似性430。这些表将项(term)相对于多个语言符号中每一个语言符号的余弦距离联系起来。例如,表检查点415与项checkpointing和语言符号checkpoint、rollback、logging和recovery之间的余弦距离相关。这些余弦距离用于确定结果集,如下所示。
根据表检查点415,项checkpointing和在记录40中出现的语言符号checkpoint之间的余弦距离是0.648436。因此,记录40被包括在结果集435中(见图4C)。类似地,根据表检查点415,checkpointing和在记录42中出现的术语语言符号recovery之间的余弦距离是0.561662。因此,记录42被包括在结果集435中。相反,记录44中发现的语言符号similarity和joins不出现在表检查点415中。因此,记录44不包括在结果集435中。
III.进一步的评论和/或实施例
在本发明的一些实施例中,诸如SQL的查询语言可以通过文本实体能力来增强。在一些实施例中,每个数据库记录r被映射成文本表示(例如,通过多个字段的连结)。在一些实施例中,每个关系R被映射到关系R中所有记录r的文本表示。在一些实施例中,每个数据库D被映射到数据库D中所有关系R的文本表示。
在一些实施例中,非文本字段也被映射到替换文本中。在本发明的一些实施例中,通过将非文本字段转换成字符串,可以将非文本字段映射成文本表示。在一些实施例中,非文本字段由相似实体的聚类的集合来表示。在一些实施例中,非文本字段可以表示一个或多个类别(例如,出于分类目的)。
在本发明的一些实施例中,通过使用外键来扩展文本表示。例如,考虑关系数据库D,以及D中的关系R1和R2。让f1成为R1中的列,f2成为R2中的列,其中列f1是进入到键字段是f2的R2的外键。考虑f1=f2上R1和R2的联接中的元组t(即外键值)等于键值。转换文本(t)(text(t))并添加到语料库(即,连结到从数据库生成的序列)允许由外键来对其进行相关的记录的嵌入。这可以扩展到多列外键。
在一些实施例中,可以通过以下方法训练用于匹配实体的神经网络:(i)在至少部分地从数据库中导出的文本实体序列上,(ii)在至少部分地从多个数据库中导出的文本实体序列上;(iii)至少部分地在不同于在其上可能期望查询的数据库的数据源(例如,外部域数据集,诸如计算机科学文献dblp或其他数据源)上导出的序列;或者(iv)上述的任何组合。在一些实施例中,训练可以是连续的和增量的。这种神经网络的一个示例是word2vec使用的网络。这些网络以两种基本方式之一进行训练:SKIPGRAM和CBOW。这些网络也可以采用被称为负采样的优化。
在本发明的一些实施例中,语言符号是没有中间空格的字符序列。在一些实施例中,每个语言符号定义文本实体。文本实体与其他文本实体有关系。这些关系可以数字地表示(例如cos(e1,e2)>0.5)。在一些实施例中,该关系可以用尺度(例如,非常_强,强,中等,弱,非常_弱(very_strong,strong,moderate,weak,very_weak))来口头表达,以使得能够单独定义数值(例如,非常_强=0.95)。
在本发明的一些实施例中,获得数据库D的文本表示(例如,通过映射模块305)。在一些实施例中,低维(例如,200)向量表示被分配给每个数据库语言符号。在一些实施例中,共同出现的语言符号被分配给具有高余弦距离的向量。在一些实施例中,这些向量也用于使用向量加法检查类比。这些向量可通过基于神经网络的技术来计算,诸如Word2Vec,其中使用文本表示作为输入来构建神经网络模型。神经网络模型捕获语言符号之间的语义关系,并返回捕获这些关系的向量。
在本发明的一些实施例中,为查询语言(例如,SQL)提供文本向量相关构造(例如,通过在查询优化器中扩展核心关系运算符或通过用户定义的函数),以提供基于不依赖于深度模式知识的关系来查询数据库的能力。例如,查询“R.列包含实体(R.column containsentity)”可以匹配元组字段中实体的显现(appearance)。类似地,查询“R.*包含实体(R.*contains entity)”可以匹配元组中实体的显现,而查询“R.包含实体(R containsentity)”可以匹配关系中实体的显现。其他示例包括“R.列包含多于50次实体的出现(R.column contains more than 50 occurrences of entity)”或“R.列包含少于10次实体的出现(R.column contains less than 10 occurrences of entity)”,其中元组字段中文本实体的显现强度被加权或大于预定阈值。在又一示例中,可以以类似于传统数据库查询中的键的方式使用实体,如下所示:
关系S;文本实体e1,e2;
选择EMP.名称,EMP.薪资,S.列?
EMP.*包含e1并且S.列?包含e2并且cos(e1,e2)>0.75
(Relation S;Text Entity e1,e2;
Select EMP.Name,EMP.Salary,S.column?
EMP.*contains e1 AND S.column?contains e2 AND cos(e1,e2)>0.75)
在前面的示例中,检索来自表EMP的字段“名称”和“薪资”以及来自未知关系S的相关字段,使得文本实体e1和e2的靠近度(closeness)有效地链接EMP和S中的记录。
在本发明的一些实施例中,可以以与上述相同的方式查询跨数据库关系。例如,考虑两个数据库D1和D2。考虑包含与文本(D2)连结的文本(D1)的语料库C。通过在语料库C上训练向量,可以编写同时访问D1和D2两者的查询。或者,向量可以在第三数据或文本源上训练,或者与第三数据或文本源一起训练。在一些实施例中,数据库D1的关系R1可以用于以与上述类似的方式使用实体来导航D2中的字段(例如,见图4B)。如果D1和D2单独训练,可以使用类比技术找到D1和D2中的相似实体。这可以扩展到多个数据库。
在本发明的一些实施例中,非关系数据库(例如,XML、RDF等)可以以与上述相同或相似的方式表示。考虑非关系数据库D。数据库D被转换成文本(例如,通过转换成文本的功能)。类似地,可以扩展非关系数据库的查询语言(例如XQuery、Xpath、SPARQL),以提供基于不依赖于深度模式知识的关系来查询数据库的能力。例如,可以通过从由ID和IDREF链接的两个元素中创建文本,来在XML数据上实现使用外键形成元组。
在本发明的一些实施例中,聚类指的是无监督学习技术,包括基于语言符号的特征对语言符号集进行分组。在一些实施例中,聚类可以由与相同聚类中的其他语言符号相似的语言符号组成(即,类内(intra-class)相似性)。在一些实施例中,聚类可以由与其他聚类中的语言符号不相似的语言符号组成(即,类间不相似性)。在本发明的一些实施例中,聚类通过各种方法执行:(i)划分方法,(ii)分级方法,(iii)基于密度的方法,(iv)基于网格的方法和/或(v)基于模型的方法。在一些实施例中,用于聚类的算法包括:诸如K均值的算法。
聚类允许查询子关系和计算聚合,以及其他运算。在一些实施例中,源自一个以上关系的元组也可以被聚类。聚类使得具有相似意义的语言符号的元组能够被分组在一起。在本发明的一些实施例中,每个字段或元组可以与一向量相关联,该向量是显现在每个字段或元组中的实体的总和,且归一化为长度1。这允许将关系基于字段划分为子关系,每个子关系都与一个类相关联,这是通过将相关向量聚类到类中来暗示的。
在本发明的一些实施例中,局部敏感散列(LSH)是一种方法,在该方法中,在给定向量V的情况下,使用数据结构来确定与V具有高接近度的向量。在这种情况下,高接近度指欧几里德距离和/或余弦距离。在一些实施例中,LSH是扫描整个候选向量集合的替代方案,同时为一小的候选向量集提供高度的置信度。有许多方法可以实现LSH。所有方法的核心功能包括存储(矢量、项目(vector,item))对。给定查询(向量1)(query(vector1)),定位与向量1“最近”的存储的向量,并返回它们的相关联的项目以及向量。这个想法用于在不扫描所有或大部分存储的向量的情况下快速检测接近度。
在本发明的一些实施例中,基本特征是将固定长度m的比特向量与每个向量相关联。这也被称为将向量“散列”到键。向量散列被设计成使得相同方向的向量具有相同的键,而指向稍微不同方向的向量具有“相似”的键。技术上,以角度差
Figure BDA0002038195150000121
来指向的向量的键在k比特的键的几个位置中可能具有不同的比特。然而,不同比特的预期数量(也称为汉明距离)与/>
Figure BDA0002038195150000122
成比例,因此,如果角度/>
Figure BDA0002038195150000123
小,汉明距离也将小。尽管预期的汉明距离小,但根据所使用的特定方法,方差可能大。可以通过特定的方法(诸如超级比特LSH(Super-Bit LSH))获得低方差方案。
在本发明的一些实施例中,LSH方法用于在关系数据库中实现认知关系运算符(cognitive relational operator,CRO)。然后,这些运算符进一步扩展到基于查询的语言,诸如SQL。
在本发明的一些实施例中,LSH实现如下。给定语义选择运算符σ。考虑关系R(A,B)。在方程σexp(R)中,exp现在可以包含以下形式的原子:(i)avgCosine(arg1,arg2),(ii)maxCosine(arg1,arg2)和/或(iii)ordCosine(arg1,arg2),其中arg1,arg2可以是A、B或字符串常量(例如,“Mercury Pluto Mars”)。
实参arg1和arg2被转变成单词向量,并返回余弦距离,如下所示。对于avgCosine,计算每对向量之间的余弦距离,其中每对向量由arg1中的一个单词和arg2中的一个单词组成,并计算这些向量之间的余弦距离,然后返回余弦距离的平均值。对于maxCosine,计算每对向量之间的余弦距离,其中一个向量表示arg1中的单词,一个向量表示arg2中的单词,并返回最大值。对于ordCosine,像maxCosine一样执行成对计算,根据两个实参之间的位置距离对它们进行加权,并返回平均值。例如:σavgCosine(A,“Mercury Pluto Mars”)>0.4(R)。
LSH结构可以用来有效地实现这种语义选择运算。首先,对于每一列C,构造包含了R的列C中所有条目的LSH结构。给定如上所述的选择运算,“Mercury Pluto Mars”被转换成单词向量V。通常V是“Mercury”、“Pluto”和“Mars”的向量的平均值,但是其他方案也是可能的(例如,根据列出的顺序进行加权,等等)。随后针对所有列A、向量W(和相关联的值)而查询LSH服务,其中V和W的余弦距离大于0.4。LSH服务可以通过操纵散列键、查看更大的汉明距离来扩大搜索,如下所述。
如上所述,LSH具有固定长度为m的散列键K。以下方法可用于确保返回所有相关结果的高概率。假设K=010110(即k=6)。在检索散列键为K的所有相关记录之后,还考虑散列键为距K的汉明距离=1的记录,即K1=010111、K2=010100、K3=010010、K4=011110、K5=000110和K6=110110。如果所选散列键中没有一个满足与V的余弦距离大于0.4的条件,则执行停止(这是一个可以细化的启发式规则,比如如果找到的数字小于参数M)。否则,考虑在距K的汉明距离=2内的键。汉明距离在这种情况下的一个理想属性是,当在检查了高达j的距离之后考虑高达j+1的距离时,将不再重复在考虑j时已经生成的键的生成。在最坏的情况下,将考虑所有记录(散列表中针对A存储的向量)。如果通过该比特操纵方案扫描超过u%(一个参数)是必要的,可能的优化是切换到对所有记录(列A的向量)的线性扫描。另一种可能的优化是随机选择汉明距离=u键的部分(为了更高的效率,用精确度来交换)。
笛卡尔乘积运算符和语义选择的结合产生了一个新的语义联接运算符。θ-联接(θ-join)变化很简单。自然联接是基于来自相同命名的列中的实参的相等性。新的语义自然联接具有形式R|X|sen S,其中sen是距离敏感的,这意味着如果任何列(例如A)中的条目的相关联的向量之间的余弦距离大于sen,则考虑它们(语义上)相等。在一些实施例中,语义接近度取代了传统的句法相等性。类似地,语义半联接(sen)和不同版本的外部联接取代了传统的句法相等性。换句话说,采用余弦相似向量比较的认知SQL查询可以被编译成语义关系运算符。
实现语义联接的一种方式如下。假设R和S只有A列相同。首先,循环通过关系中的一个关系(例如R)的列A的条目。每个条目E形成向量V,在S的列A(即S.A)的LSH结构中执行对该向量V的搜索。找到的与V的余弦距离大于或等于sen的向量的所有S.A条目,对于与A条目的联接是合格的。在S.A中可以存在使用相同的语义选择的比特操纵技术可以找到的额外条目。可能的变化包括确定sen,j,其中j表示可以考虑的汉明距离有多大。如同在选择的情况下,如果比特操纵没有产生结果,则不尝试进一步操纵更大的汉明距离。虽然这是一种合理的启发,但它不能保证有额外合格的条目,而且这种条目的概率相对较低,特别是对于使用多个散列表的常见实践。另一种可能的变化是sen,j,p,其中p是当考虑汉明距离j时用于探测的随机选择的键的百分比。
考虑R(A,B,C)和S(A,B,D)。两个感兴趣的列是A和B。假设这些列先用A排序,然后用B排序。在计算出A的语义接近度之后,用于处理B的相关元组是已知的(即,只有其A条目对于列A是合格的那些元组)。因此,在考虑列B时,可以通过仅考虑其A条目是合格的那些元组来执行循环通过S.B。这种技术可以有效地扫描多列。另一种可能性是在多核环境或GPU环境中运行。在这种情况下,对列A和列B的运算可以单独地并且并行地执行,并且结果是交叉的。这种技术很容易扩展到两列以上。
这些语义关系运算符实际上很重要,因为它们使得能够从更高级的语言(诸如用用户定义函数(User Defined Function,UDF)扩展的SQL)翻译成最小的运算符集,其中这些运算符适用于查询优化,并可用于执行查询运算。
在本发明的一些实施例中,用于有效实现语义关系运算符的系统、计算机程序产品和方法执行以下操作:(i)使关系查询优化器能够使用基于距离的相似性度量语义地执行核心关系运算(选择、投射、联接、分组),其中使用基于向量最近邻计算在向量空间中执行相似性计算以执行那些运算符;以及(ii)使关系系统能够通过实体的语义来匹配实体,实体的语义由实体的上下文决定(而不是基于值的匹配)。
IV.定义
本发明:不应被视为术语“本发明”所描述的主题被提交的权利要求书或者在专利申请后最终可能发布的权利要求书所覆盖的绝对指示;虽然术语“本发明”用于帮助读者获得一般的感觉-这里的公开内容被认为是潜在的新内容,但是如术语“本发明”的使用所指示的,这种理解是暂时的和临时的,并且随着相关信息的发展和权利要求的潜在修改,在专利申请过程中会发生变化。
实施例:参见上文“本发明”的定义——类似的注意事项适用于术语“实施例”。
和/或:包括或;例如,A、B“和/或”C表示A、B或C中至少一个是真(true)并且适用的。
包括:除非另有明确说明,否则意味着“包括但不一定限制于”。
模块/子模块:任何硬件、固件和/或软件集,可操作地工作以进行某种功能,而不考虑模块是否:(i)在单一本地邻近处;(ii)分布在广大区域;(iii)在更大的软件代码段中的单一邻近处;(iv)位于单一软件代码段中;(v)位于单一存储设备、存储器或介质中;(vi)是机械连接的;(vii)是电连接的;和/或(viii)以数据通信方式连接的。
计算机:具有显著数据处理和/或机器可读指令读取能力的任何设备,包括但不限于:台式计算机、大型计算机、膝上型计算机、基于现场可编程门阵列(FPGA)的设备、智能电话、个人数字助理(PDA)、体戴式或插入式计算机、嵌入式设备型计算机、基于专用集成电路(ASIC)的设备。

Claims (18)

1.一种方法,包括:
由一个或多个处理器基于第一数据库的文本表示生成向量空间模型;
由一个或多个处理器训练所述向量空间模型,其中所述训练包括将所述向量空间模型中的向量散列到相应键,并且其中将所述向量空间模型中具有相同方向的向量散列到相同的相应键;
由一个或多个处理器接收对第一数据库的查询,其中所述查询包括:(i)操作数,和(ii)指示基于距离的相似性度量的运算符;和
由一个或多个处理器基于所述查询确定结果集,其中所述结果集包括多个记录,并且其中基于以下各项之间的向量最近邻计算将记录包括在所述结果集中:(i)对应于所述操作数的第一向量,和(ii)对应于所述记录的第二向量,其中所述第二向量包括在所述向量空间模型中,所述第二向量具有所述第一向量的相应键的特定汉明距离内的相应键。
2.根据权利要求1所述的方法,进一步包括:
由一个或多个处理器生成所述第一数据库的文本表示,其中所述文本表示包括由外键来对其进行相关的第一数据库的多个表的连结。
3.根据权利要求2所述的方法,其中进一步基于以下各项来训练所述向量空间模型:(i)至少部分地从一个或多个数据库中导出的文本实体序列,所述一个或多个数据库包括第一数据库;和(ii)至少部分地从外部数据源导出的文本实体序列。
4.根据权利要求2所述的方法,其中生成第一数据库的文本表示还包括由一个或多个处理器预处理所述文本表示,其中所述预处理包括小写化、词形还原、单词分组和词汇切分。
5.根据权利要求1所述的方法,其中所述向量最近邻计算根据以下各项之一来执行:(i)平均余弦距离,(ii)最大余弦距离,或(iii)序数余弦距离。
6.根据权利要求1所述的方法,其中,所述查询对应于结构化查询语言SQL查询。
7.一种计算机可读存储媒介,其上存储有计算机可执行的程序指令,所述程序指令在被计算机执行时执行以下操作:
基于第一数据库的文本表示生成向量空间模型;
由一个或多个处理器训练所述向量空间模型,其中所述训练包括将所述向量空间模型中的向量散列到相应键,并且其中将所述向量空间模型中具有相同方向的向量散列到相同的相应键;
接收对第一数据库的查询,其中所述查询包括:(i)操作数,和(ii)指示基于距离的相似性度量的运算符;和
用于基于所述查询确定结果集,其中,所述结果集包括多个记录,并且其中,基于以下各项之间的向量最近邻计算将记录包括在所述结果集中:(i)对应于所述操作数的第一向量,和(ii)对应于所述记录的第二向量,其中所述第二向量包括在所述向量空间模型中,所述第二向量具有所述第一向量的相应键的特定汉明距离内的相应键。
8.根据权利要求7所述的计算机可读存储媒介,其中所述程序指令在被计算机执行时进一步执行以下操作:
生成所述第一数据库的文本表示,其中所述文本表示包括由外键来对其进行相关的第一数据库的多个表的连结。
9.根据权利要求8所述的计算机可读存储媒介,其中进一步基于以下各项来训练所述向量空间模型:(i)至少部分地从一个或多个数据库中导出的文本实体序列,所述一个或多个数据库包括第一数据库;和(ii)至少部分地从外部数据源导出的文本实体序列。
10.根据权利要求8所述的计算机可读存储媒介,其中生成第一数据库的文本表示的程序指令进一步包括预处理所述文本表示的程序指令,其中所述预处理包括小写化、词形还原、单词分组和词汇切分。
11.根据权利要求7所述的计算机可读存储媒介,其中所述向量最近邻计算根据以下各项之一来执行:(i)平均余弦距离,(ii)最大余弦距离,或(iii)序数余弦距离。
12.根据权利要求7所述的计算机可读存储媒介,其中所述查询对应于结构化查询语言SQL查询。
13.一种计算机系统,包括:
一个或多个计算机处理器;
一个或多个计算机可读媒介;和
存储在所述一个或多个计算机可读媒介上用于由所述一个或多个处理器中的至少一个处理器执行的程序指令,所述程序指令包括:
基于第一数据库的文本表示生成向量空间模型的程序指令;
由一个或多个处理器训练所述向量空间模型的程序指令,其中所述训练包括将所述向量空间模型中的向量散列到相应键,并且其中将所述向量空间模型中具有相同方向的向量散列到相同的相应键;
接收对第一数据库的查询的程序指令,其中所述查询包括:(i)操作数,和(ii)指示基于距离的相似性度量的运算符;和
用于基于所述查询确定结果集的程序指令,其中,所述结果集包括多个记录,并且其中,基于以下各项之间的向量最近邻计算将记录包括在所述结果集中:(i)对应于所述操作数的第一向量,和(ii)对应于所述记录的第二向量,其中所述第二向量包括所述向量空间模型中,所述第二向量具有所述第一向量的相应键的特定汉明距离内的相应键。
14.根据权利要求13所述的计算机系统,进一步包括:
生成所述第一数据库的文本表示的程序指令,其中所述文本表示包括由外键来对其进行相关的第一数据库的多个表的连结。
15.根据权利要求14所述的计算机系统,其中进一步基于以下各项来训练所述向量空间模型:(i)至少部分地从一个或多个数据库中导出的文本实体序列,所述一个或多个数据库包括第一数据库;和(ii)至少部分地从外部数据源导出的文本实体序列。
16.根据权利要求14所述的计算机系统,其中生成第一数据库的文本表示的程序指令进一步包括预处理所述文本表示的程序指令,其中所述预处理包括小写化、词形还原、单词分组和词汇切分。
17.根据权利要求13所述的计算机系统,其中所述向量最近邻计算根据以下各项之一来执行:(i)平均余弦距离,(ii)最大余弦距离,或(iii)序数余弦距离。
18.一种计算机系统,所述系统包括分别用于执行权利要求1-6中任一项所述的方法的步骤的模块。
CN201910332737.6A 2018-04-25 2019-04-24 语义关系数据库运算 Active CN110399392B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/962,392 US10831752B2 (en) 2018-04-25 2018-04-25 Semantic relational database operations
US15/962,392 2018-04-25

Publications (2)

Publication Number Publication Date
CN110399392A CN110399392A (zh) 2019-11-01
CN110399392B true CN110399392B (zh) 2023-06-27

Family

ID=68292482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910332737.6A Active CN110399392B (zh) 2018-04-25 2019-04-24 语义关系数据库运算

Country Status (2)

Country Link
US (1) US10831752B2 (zh)
CN (1) CN110399392B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831752B2 (en) 2018-04-25 2020-11-10 International Business Machines Corporation Semantic relational database operations
US11474978B2 (en) * 2018-07-06 2022-10-18 Capital One Services, Llc Systems and methods for a data search engine based on data profiles
US11526670B2 (en) * 2018-09-28 2022-12-13 The Mitre Corporation Machine learning of colloquial place names
US11972424B1 (en) * 2021-08-31 2024-04-30 Amazon Technologies, Inc. Detection of evasive item listings
CN114817299A (zh) * 2022-05-17 2022-07-29 在线途游(北京)科技有限公司 一种基于udaf的数据分析方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1514976A (zh) * 1998-07-24 2004-07-21 �ָ��� 用于进行对象检索的分布式计算机数据库系统和方法
CN102640145A (zh) * 2009-08-31 2012-08-15 莱克萨利德股份公司 可信查询系统和方法
CN104620239A (zh) * 2012-09-28 2015-05-13 甲骨文国际公司 自适应查询优化

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103672B2 (en) * 2009-05-20 2012-01-24 Detectent, Inc. Apparatus, system, and method for determining a partial class membership of a data record in a class
US8326820B2 (en) * 2009-09-30 2012-12-04 Microsoft Corporation Long-query retrieval
US8468160B2 (en) 2009-10-30 2013-06-18 International Business Machines Corporation Semantic-aware record matching
JP5547030B2 (ja) * 2010-10-18 2014-07-09 日本電信電話株式会社 情報分析装置及び方法及びプログラム
US9514753B2 (en) * 2013-11-04 2016-12-06 Google Inc. Speaker identification using hash-based indexing
US9792289B2 (en) * 2014-11-07 2017-10-17 Semandex Networks Inc. Systems and methods for file clustering, multi-drive forensic analysis and data protection
US9953065B2 (en) * 2015-02-13 2018-04-24 International Business Machines Corporation Method for processing a database query
US10467268B2 (en) * 2015-06-02 2019-11-05 International Business Machines Corporation Utilizing word embeddings for term matching in question answering systems
US10394803B2 (en) * 2015-11-13 2019-08-27 International Business Machines Corporation Method and system for semantic-based queries using word vector representation
US10521413B2 (en) * 2015-11-20 2019-12-31 Oath Inc. Location-based recommendations using nearest neighbors in a locality sensitive hashing (LSH) index
US20180204113A1 (en) * 2017-01-13 2018-07-19 Ebay Inc. Interaction analysis and prediction based neural networking
US10839157B2 (en) * 2017-10-09 2020-11-17 Talentful Technology Inc. Candidate identification and matching
US10831752B2 (en) 2018-04-25 2020-11-10 International Business Machines Corporation Semantic relational database operations

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1514976A (zh) * 1998-07-24 2004-07-21 �ָ��� 用于进行对象检索的分布式计算机数据库系统和方法
CN102640145A (zh) * 2009-08-31 2012-08-15 莱克萨利德股份公司 可信查询系统和方法
CN104620239A (zh) * 2012-09-28 2015-05-13 甲骨文国际公司 自适应查询优化

Also Published As

Publication number Publication date
US10831752B2 (en) 2020-11-10
CN110399392A (zh) 2019-11-01
US20190332705A1 (en) 2019-10-31

Similar Documents

Publication Publication Date Title
CN110399392B (zh) 语义关系数据库运算
Efthymiou et al. Matching web tables with knowledge base entities: from entity lookups to entity embeddings
Cohen et al. Exploiting dictionaries in named entity extraction: combining semi-markov extraction processes and data integration methods
US8463810B1 (en) Scoring concepts for contextual personalized information retrieval
Zhao et al. An improved approach to traceability recovery based on word embeddings
Al-Obaydy et al. Document classification using term frequency-inverse document frequency and K-means clustering
Ma et al. Matching descriptions to spatial entities using a siamese hierarchical attention network
Khan et al. A clustering framework for lexical normalization of Roman Urdu
Suresh et al. Data mining and text mining—a survey
Arasu et al. A grammar-based entity representation framework for data cleaning
Pandi et al. A novel similarity measure for sequence data
Cohen et al. A graph-search framework for associating gene identifiers with documents
Shekarpour et al. Query Segmentation and Resource Disambiguation Leveraging Background Knowledge.
Lin et al. A knowledge base completion model based on path feature learning
JP2011159100A (ja) 逐次類似文書検索装置、逐次類似文書検索方法およびプログラム
Zhang et al. A semantics-based method for clustering of Chinese web search results
Pinto et al. Intelligent and fuzzy systems applied to language & knowledge engineering
Daggupati Unsupervised duplicate detection (UDD) Of query results from multiple web databases
Mazaitis et al. A tale of two entity linking and discovery systems
Yongxin et al. Matching reviews to object based on 2-stage CRF
Lashkari Indexing infrastructure for semantics full-text search
Holter Semantic embeddings for owl 2 ontologies
Ghavimi et al. EXmatcher: Combining Features Based on Reference Strings and Segments to Enhance Citation Matching
Akbarian Rastaghi Probing the Robustness of Pre-trained Language Models for Structured and Unstructured Entity Matching
Kamel Optimizing Index Structures to Support Semantic Queries in Relational Databases

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant