CN104636478B - 信息查询方法和设备 - Google Patents
信息查询方法和设备 Download PDFInfo
- Publication number
- CN104636478B CN104636478B CN201510081199.XA CN201510081199A CN104636478B CN 104636478 B CN104636478 B CN 104636478B CN 201510081199 A CN201510081199 A CN 201510081199A CN 104636478 B CN104636478 B CN 104636478B
- Authority
- CN
- China
- Prior art keywords
- entity
- query
- category
- database
- data
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2445—Data retrieval commands; View definitions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2448—Query languages for particular applications; for extensibility, e.g. user defined types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3325—Reformulation based on results of preceding query
- G06F16/3326—Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种信息查询方法和设备,该方法包括:将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;将所述抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;针对预先准备的数据库,执行根据所述基本查询语句或所述迭代的多个基本查询语句的查询操作。可以对用户的自然语言查询文本首先进行意图分析,过滤掉无需查询的文本,并对符合意图的查询文本转化成抽象查询语言语句;再将抽象查询语句转换为基本查询语句或者迭代多个基本查询语句;可以覆盖大多数的查询意图,还能够实现复杂的逻辑和推理查询,这样,可以方便地返回查询结果。
Description
技术领域
本发明涉及互联网领域,特别涉及信息查询方法和设备。
背景技术
目前,人们对信息查询的精准度要求越来越高,往往需要得到相对于所请求的查询词最准确的答案。
而在实际应用中,用户的搜索请求也会是很精确的,其输入的查询词中会包含大量的精确意图,需要在查询时直接返回答案。例如:输入“刘德华的身高”需要返回“174CM”;输入“身高超过180cm的明星”需要返回满足此身高条件的明星列表;输入“唐宋八大家”需要返回“柳宗元”等人。
但是,传统的信息查询***多采用存储层、中间查询层和自然语言解析层的分层架构。而现有技术的中间查询层中的查询语言或者过于简单,而不能够对用户输入的请求做出精确的分析和肢解,使得用户查询得到的结果复杂且不够直观;或者过于复杂,而使得自然语言解析层对复杂的查询语言无法解析,对自然语言解析层不够友好,不能够得到用户所需要的查询结果。
所以,传统的信息查询***在通过比对用户的查询词和收录网页的文本匹配程度来返回查询结果时,并不能符合用户的查询意图,而不能精确地返回用户所需要的查询结果。
因此,需要一种能够方便地返回查询结果的信息查询方法和设备。
发明内容
本发明所要解决的一个技术问题是提供了一种信息查询方法和设备,将抽象查询语句转换为基本查询语句或者迭代多个基本查询语句,可以覆盖大多数的查询意图,还能够实现复杂的逻辑和推理查询,这样,可以方便地返回查询结果。
根据本发明的一个方面,提供了一种信息查询方法,包括:
将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;
将抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;
针对预先准备的数据库,执行根据基本查询语句或迭代的多个基本查询语句的查询操作。
由此,可以对用户的自然语言查询文本首先进行意图分析,过滤掉无需查询的文本,并对符合意图的查询文本转化成抽象查询语言语句。再将抽象查询语句转换为基本查询语句,可以覆盖大多数的查询意图;或者迭代多个基本查询语句。基本查询语句可以设计为较为简单的查询,例如根据较少的(例如仅一个或两个)输入获得较为明确的(例如单个)输出,输入和输出之间的关系距离可以较近,或者说较为直接。迭代则是重复反馈过程的活动,其目的是为了实现查询目标,每执行一个基本查询语句称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的输入,从而可以实现复杂的逻辑和推理查询。将一个复杂的抽象查询语句转换为若干个简单的基本查询语句的迭代,每一次迭代都根据较少的输入获得较为直接的输出,通过一次次迭代,从原始输入逐步到达最终查询目标。由于基本查询语句都比较简单,所以对于数据库(存储层)的要求较低,不需要以复杂的结构来进行存储。这样,使得有可能方便地得到更符合用户意图和更加精准的查询结果。
优选地,基本查询语句可以包括:
实体信息查询语句,用于查询与指定实体相关的信息;
实体属性查询语句,用于查询指定实体的指定属性;
实体反向查询语句,用于根据指定属性过滤条件和指定类别来反向查询对应的实体;
相关实体查询语句,用于查询与指定实体具有指定关系的实体;以及
实体间关系查询语句,用于查询两个指定实体之间的关系。
这样,可以预先设定不同的基本查询语句类型,并根据所接收到的抽象查询语言文本,解析出与其对应的基本查询语句的类型,然后以此类型进行查询操作。不同的基本查询语言和满足了用户对不同查询文本的精准查询的需求。这些基本查询语句的输入和输出之间都有直接的关联,容易从数据库或网页中实现其查询目的。
优选地,数据库包括:实体数据库,实体数据库中针对一个实体的记录包括实体数据字段和可变属性字段,在实体数据字段中存储有表示实体的实体数据,在可变属性字段中存储有描述实体的属性的实体属性数据;
以及关系数据库,关系数据库中的每条记录包括两个节点和边信息,其中,在两个节点中分别存储有分别表示两个实体的两个实体数据,在边信息中存储有表示两个实体之间的关系的实体间关系数据。
这样,通过按照基本查询语句的输入数据与输出数据之间的关系来设置数据库的存储结构,使得能够更加方便快捷地执行基本查询语句。可以在数据库中对实体数据字段、可变属性字段、以及两个节点、边信息建立索引,以进一步提高查询的效率。
优选地,实体数据库中针对一个实体的记录还可以包括元信息字段,在元信息字段中存储有与实体相关的元信息,元信息是使实体区别于其他实体的信息。
在执行查询操作的步骤中,基于元信息来确定实体数据。
这样,作为实体数据中的核心信息数据,元信息,就将不同的实体和实体数据进行了区分,特别是相同实体名称的不同实体。以便,在对实体查询的时候可以准确的获得实体的相关信息,避免了其他不属于查询实体的信息出现而造成模糊查询的现象的发生。
优选地,数据库还可以包括类别数据库,在类别数据库中,对应地存储有多个实体类别数据和类别标签,多个实体类别数据被划分为多个层次,较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据。
在实体数据库中针对实体的记录中的元信息字段中,存储有与描述实体的类别的实体类别数据对应的类别标签。
在执行根据实体反向查询语句的查询操作时,在实体数据库中检索满足下述条件的实体数据:
类别标签为表示指定类别的实体类别数据或者从属于表示指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足指定属性过滤条件。
这样,可以通过识别到类别标签,以及满足过滤条件而执行反向确定实体数据的查询操作。
优选地,在类别数据库中,可以与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性。
执行根据实体反向查询语句的查询操作的步骤包括:
在指定属性过滤条件所涉及的指定属性属于为指定类别定义的实体属性的情况下,针对实体数据库执行根据实体反向查询语句的查询操作。
这样,在过滤条件和实体类别数据之间设立了判断条件,避免了多余的不适当的查询操作的执行,使得查询更加有针对性,更准确。
根据本发明的另一个方面,提供了一种信息查询设备,包括:
第一转换装置,用于将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;
第二转换装置,用于将抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;
查询装置,用于针对预先准备的数据库,执行根据基本查询语句或迭代的多个基本查询语句的查询操作。
优选地,查询装置包括:
实体信息查询装置,用于执行实体信息查询语句,以查询与指定实体相关的信息;
实体属性查询装置,用于执行实体属性查询语句,以查询指定实体的指定属性;
实体反向查询装置,用于执行实体反向查询语句,以根据指定属性过滤条件和指定类别来反向查询对应的实体;
相关实体查询装置,用于执行相关实体查询语句,以查询与指定实体具有指定关系的实体;以及
实体间关系查询装置,用于执行实体间关系查询语句,以查询两个指定实体之间的关系。
优选地,数据库包括:
实体数据库,实体数据库中针对一个实体的记录包括实体数据字段和可变属性字段、元信息字段,在实体数据字段中存储有表示实体的实体数据,在可变属性字段中存储有描述实体的属性的实体属性数据,在元信息字段中存储有与实体相关的元信息,元信息是使实体区别于其他实体的信息,查询装置基于元信息来确定实体数据;
关系数据库,关系数据库中的每条记录包括两个节点和边信息,其中,在两个节点中分别存储有分别表示两个实体的两个实体数据,在边信息中存储有表示两个实体之间的关系的实体间关系数据;以及
数据库还包括类别数据库,在类别数据库中,对应地存储有多个实体类别数据和类别标签,多个实体类别数据被划分为多个层次,较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据。
在实体数据库中针对实体的记录中的元信息字段中,存储有与描述实体的类别的实体类别数据对应的类别标签。
其中,实体反向查询装置在实体数据库中检索满足下述条件的实体数据:
类别标签为表示指定类别的实体类别数据或者从属于表示指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足指定属性过滤条件。
优选地,在类别数据库中,与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性。
实体反向查询装置在指定属性过滤条件所涉及的指定属性属于为指定类别定义的实体属性的情况下,针对实体数据库执行根据实体反向查询语句的查询操作。
由此,可以对用户的自然语言查询文本首先进行意图分析,过滤掉无需查询的文本,并对符合意图的查询文本转化成抽象查询语言语句。再将抽象查询语句转换为基本查询语句,可以覆盖大多数的查询意图;或者迭代多个基本查询语句。基本查询语句可以设计为较为简单的查询,例如根据较少的(例如仅一个或两个)输入获得较为明确的(例如单个)输出,输入和输出之间的关系距离可以较近,或者说较为直接。迭代则是重复反馈过程的活动,其目的是为了实现查询目标,每执行一个基本查询语句称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的输入,从而可以实现复杂的逻辑和推理查询。将一个复杂的抽象查询语句转换为若干个简单的基本查询语句的迭代,每一次迭代都根据较少的输入获得较为直接的输出,通过一次次迭代,从原始输入逐步到达最终查询目标。由于基本查询语句都比较简单,所以对于数据库(存储层)的要求较低,不需要以复杂的结构来进行存储。这样,使得有可能方便地得到更符合用户意图和更加精准的查询结果。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1是根据本发明的一个实施例的信息查询方法的示意性流程图。
图2是根据本发明的查询方法可以使用的数据库结构。
图3是根据本发明的查询方法可以使用的改进的数据库结构。
图4是根据本发明的一个实施例的信息查询设备的示意性方框图。
图5是图4中的查询装置的可选内部结构示意性方框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1是根据本发明的一个实施例的信息查询方法的示意性流程图。
首先,在步骤S100,将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句。
用户输入的自然语言查询文本包括在搜索引擎中所输入的想要查询的人物或事件等的相关内容,这其中可以是简单的几个字或者词语,当然也可以是一句详细的描述性的句子。
在步骤S100中,具体说来,可以对用户的自然语言查询文本首先进行意图分析,过滤掉无查询意图的查询词,并对符合意图的查询词进行解析,得出其查询类型,并形成结构化查询串,从而转化成抽象查询语言语句。
然后,在步骤S200,将抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句。
在S200步骤中可以将在步骤S100中所得到的抽象查询语句转换为基本查询语句或者迭代多个基本查询语句,其中基本查询语句可以通过多次迭代而最终得到查询目标,可以覆盖大多数的查询意图。迭代是重复反馈过程的活动,其目的是为了通过相对多次简单的查询步骤最终实现相对复杂查询目标。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的输入,从而可以实现复杂的逻辑和推理的分析。将一个复杂的抽象查询语句转换为若干个简单的基本查询语句的迭代,每一次迭代都根据较少的输入获得较为直接的输出,通过一次次迭代,从原始输入逐步到达最终查询目标。
由于基本查询语句都比较简单,所以对于数据库(存储层)的要求较低,不需要以复杂的结构来进行存储。这样,使得有可能方便地得到更符合用户意图和更加精准的查询结果。
这样,在步骤S300,针对预先准备的数据库,执行根据基本查询语句或迭代的多个基本查询语句的查询操作。
通过如图1所示的方法,可以方便地得到更符合用户意图和更加精准的查询结果。
在步骤S200中,对抽象查询语句的转换基本查询语句或迭代多个基本查询语句,可以覆盖主要的查询意图,并且可以实现复杂的逻辑和推理的分析。
下面描述几种可以采用的基本查询语句。
实体信息查询语句可以用于查询与指定实体相关的信息,例如可以查询指定实体的所有属性信息。
这里,可以识别出抽象查询语句中的实体信息,并查询实体的相关信息。例如,实体信息查询语句可以记为EE(实体信息),而所识别到的实体信息是“刘德华”,则可以表示为EE(刘德华),将返回刘德华的相关信息的查询操作。
实体属性查询语句可以用于查询指定实体的指定属性。
例如,实体属性查询语句可以记为EAA(实体信息,属性名),而识别到的是“刘德华的身高”,可以表示为EAA(刘德华,身高),将返回刘德华的身高数字的查询操作。
实体反向查询语句可以用于根据指定属性过滤条件和指定类别来反向查询对应的实体。
这里,可以识别出抽象查询语句中的指定的某种属性的过滤条件和类别,而反向查询出符合该条件和类别的实体。例如:实体反向查询语句可以记为ATE(指定属性过滤条件,指定类别),而识别到的是“身高超过180cm的歌星”,可以表示为ATE(身高>180cm,歌星),将返回符合该条件的歌星列表的查询操作。
相关实体查询语句可以用于查询与指定实体具有指定关系的实体。
这里,可以识别出抽象查询语句中的实体和某种指定关系,而查询符合这种与该实体的指定关系的另一实体。例如:相关实体查询语句可以记为ERE(实体名,指定关系名),而识别到的是“刘德华的妻子”,可以表示为ERE(刘德华,妻子),将返回朱丽倩(刘德华的妻子)的查询操作。
实体间关系查询语句可以用于查询两个指定实体之间的关系。
这里,可以识别出抽象查询语句中的两个特定的实体,而查询符合这种与该两个实体之间存在的关系。例如:实体间关系查询语句可以记为EER(实体名1,实体名2),而识别到的是“刘德华和梁朝伟有什么关系”,可以表示为EER(刘德华,梁朝伟),将返回刘德华和梁朝伟之间关系列表的查询操作。
另一方面,上述的几种基本查询语句并没有一定的执行顺序,而是通过所识别到的抽象查询语句中的关键词而选择执行,当然,上述几种基本查询语言还可以迭代执行。例如:所识别到“刘德华妻子的身高”,可以表示为EAA(ERE(刘德华,妻子),身高),将返回朱丽倩的身高查询操作。
当然,基本查询语句的子语句也并不仅限于上述所列举的几种,几种基本语句的迭代执行也不仅限于上述举例的迭代方式,满足其他的所需要的逻辑查询关系的基本查询语句及迭代执行,均可应用在其中。
图2是可用于根据本发明的查询方法的数据库结构示例。
数据库结构至少可以包括两部分,实体数据库(实体库)和关系数据库(关系库)。
实体数据库中针对一个实体的记录包括实体数据字段和可变属性字段,在实体数据字段中存储有表示实体的实体数据,在可变属性字段中存储有描述实体的属性的实体属性数据。
这里,实体数据库可以用于执行根据实体信息查询语句和实体属性查询语句的查询操作。可以在实体数据库中对可变属性字段建立索引。这样,可以更加高效地执行查询。
关系数据库中的每条记录包括两个节点和边信息,其中,在两个节点中分别存储有分别表示两个实体的两个实体数据,在边信息中存储有表示两个实体之间的关系的实体间关系数据。在一些实施例中,两个节点可以区分为入节点和出节点,分别存储实体A和实体B。此时边信息中存储的则是有方向性的关系数据。
这里,关系数据库可以用于执行根据实体间关系查询语句和相关实体查询语句的查询操作。可以在关系数据库中对节点和边信息分别建立索引。这样,可以更加高效地执行查询。
进一步地,实体数据库中针对一个实体的记录还可以包括元信息字段,在元信息字段中存储有与实体相关的元信息,元信息是使实体区别于其他实体的信息。元信息也可以称为“元数据”,是描述数据的数据,即对数据及信息资源的描述性信息。
在执行查询操作的步骤中,可以基于元信息来确定实体数据。
这样,针对基本查询语句,可以首先根据元信息字段中的元信息确定实体数据,每一个元信息都关联着一个实体数据。这就将不同的实体和实体数据之间通过元信息进行了区分,以便在对实体查询的时候可以准确的获得实体的相关信息,避免了其他不属于查询实体的信息出现而造成模糊查询的现象的发生。特别是,相同实体名称的不同实体,例如,几个不同的人物(实体)都叫“刘德华”(实体数据),这就需要通过每个人物的元信息的不同,将他们各自区分,以得到各自的人物信息(实体属性数据)。
图3示出了根据本发明的查询方法可以使用的改进的数据库结构。
如图3所示,除了实体数据库和关系数据库,数据库还可以包括类别数据库(类别库)。
在类别数据库中,对应地存储有多个实体类别数据和类别标签,多个实体类别数据被划分为多个层次(一级类别1、一级类别2、……;二级类别1、二级类别2、……;三级类别1、三级类别2、……;……)。较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据。
在实体数据库中针对实体的记录中的元信息字段中,存储有与描述实体的类别的实体类别数据对应的类别标签。
在执行根据实体反向查询语句的查询操作时,可以在实体数据库中检索满足下述条件的实体数据:
类别标签为表示指定类别的实体类别数据或者从属于表示指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足指定属性过滤条件。
例如,假设要执行“身高超过180cm的歌星”的查询操作。
假设类别数据库中“歌星”对应的实体类别数据例如属于二级类别,从属于一级类别“娱乐明星”,并且三级类别“大陆歌星”、“香港歌星”、“台湾歌星”从属于二级类别“歌星”。
可以从类别数据库获知二级类别“歌星”的类别标签tab-II以及从属于“歌星”的三级类别“大陆歌星”、“香港歌星”、“台湾歌星”各自对应的类别标签tab-III1、tab-III2、tab-III3。
然后,可以在实体数据库中查看在元信息字段中存储的类别标签。找出元信息中存储的类别标签为tab-II、tab-III1、tab-III2、tab-III3的实体数据。
然后,查看这些通过类别标签找到的实体数据对应的可变属性数据中关于身高的属性数据满足条件“超过180cm”的实体数据。
这样可以从数据库中反查出“身高超过180cm的歌星”。
另外,如图3所示,在类别数据库中,可以与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性。图3中只示出了与一级类别1的实体类别数据对应的属性。事实上,可以与每一个(或者多个)实体类别数据(每一个类别)设置对应的属性。
执行根据实体反向查询语句的查询操作的步骤可以包括:
在指定属性过滤条件所涉及的指定属性属于为指定类别定义的实体属性的情况下,针对实体数据库执行根据实体反向查询语句的查询操作。
这里,在指定属性过滤条件和实体类别数据之间设立了判断条件,是当指定属性过滤条件所涉及的指定属性属于为指定类别定义的实体属性的情况下,才针对实体数据库执行反向查询语句的查询操作。这样,避免了多余的不适当的查询操作的执行,使得查询更加有针对性,更准确。
例如:在“身高超过180cm的歌星”的这一例子中,指定属性过滤条件“身高超过180cm”涉及指定属性“身高”属于为指定类别“歌星”定义的实体属性,则数据库执行实体反向查询语句的查询操作。若将指定属性过滤条件从“身高超过180cm”改为“占地面积超过100平方米”,其中所涉及的指定属性“占地面积”不属于为指定类别“歌星”定义的实体属性,则数据库不执行实体反向查询语句的查询操作。
上面参考图1-3详细描述了信息查询方法。下面参照附图描述信息查询设备。
下面描述的设备很多功能分析与上面参考图1-3描述的相应方法步骤的功能相同。为了避免重复,这里重点描述设备具有的装置结构,而对一些细节则不再赘述,可以参考上文的相关描述。
图4是根据本发明的一个实施例的信息查询设备的示意性方框图。
如图4所示,信息查询设备,包括:
第一转换装置100,用于将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;
第二转换装置200,用于将抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;
查询装置300,用于针对预先准备的数据库,执行根据基本查询语句或迭代的多个基本查询语句的查询操作。
通过图4的所示设备,可以覆盖大多数的查询意图,实现复杂的逻辑和推理查询,方便地得到更符合用户意图和更加精准的查询结果。
图5是图4所示的查询装置300的可选内部结构示意性方框图。
如图5所示,查询装置包括:
实体信息查询装置310,用于执行实体信息查询语句,以查询与指定实体相关的信息;
实体属性查询装置320,用于执行实体属性查询语句,以查询指定实体的指定属性;
实体反向查询装置330,用于执行实体反向查询语句,以根据指定属性过滤条件和指定类别来反向查询对应的实体;
相关实体查询装置340,用于执行相关实体查询语句,以查询与指定实体具有指定关系的实体;以及
实体间关系查询装置350,用于执行实体间关系查询语句,以查询两个指定实体之间的关系。
通过对不同查询装置对不同的查询语言的执行,实现多种选择性的查询操作。
如上所述,可用于根据本发明的查询设备的数据库可以包括:实体数据库和关系数据库。
实体数据库中针对一个实体的记录可以包括实体数据字段和可变属性字段、元信息字段,在实体数据字段中存储有表示实体的实体数据,在可变属性字段中存储有描述实体的属性的实体属性数据,在元信息字段中存储有与实体相关的元信息,元信息是使实体区别于其他实体的信息,查询装置基于元信息来确定实体数据。
关系数据库中的每条记录可以包括两个节点和边信息,其中,在两个节点中分别存储有分别表示两个实体的两个实体数据,在边信息中存储有表示两个实体之间的关系的实体间关系数据。
该数据库还可以包括类别数据库,在类别数据库中,对应地存储有多个实体类别数据和类别标签,多个实体类别数据被划分为多个层次,较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据。
在实体数据库中针对实体的记录中的元信息字段中,存储有与描述实体的类别的实体类别数据对应的类别标签。
其中,实体反向查询装置在实体数据库中检索满足下述条件的实体数据:
类别标签为表示指定类别的实体类别数据或者从属于表示指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足指定属性过滤条件。
这里,数据库可以包括实体数据库,关系数据库和类别数据库中的一种或几种,以配合查询装置完成几种查询操作,可以是对实体信息的查询,实体属性的查询,实体反向查询,相关实体查询,实体间关系查询等。具体的查询步骤流程参见上文的对应位置处的详细描述。
在类别数据库中,与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性。
实体反向查询装置在指定属性过滤条件所涉及的指定属性属于为指定类别定义的实体属性的情况下,针对实体数据库执行根据实体反向查询语句的查询操作。
这里,在实体反向查询装置和类别数据库之间设立了判断条件,避免了多余的不适当的查询操作的执行,使得查询更加有针对性,更准确。具体的操作步骤流程参见上文的对应位置处的详细描述。
至此,已经详细地描述了根据本发明的信息查询方法和设备。
此外,根据本发明的方法还可以实现为一种计算机程序产品,该计算机程序产品包括计算机可读介质,在该计算机可读介质上存储有用于执行本发明的方法中限定的上述功能的计算机程序。本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的***和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (9)
1.一种信息查询方法,包括:
将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;
将所述抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;
针对预先准备的数据库,执行根据所述基本查询语句或所述迭代的多个基本查询语句的查询操作,
其中,所述数据库包括:
实体数据库,所述实体数据库中针对一个实体的记录包括实体数据字段和可变属性字段,在所述实体数据字段中存储有表示实体的实体数据,在所述可变属性字段中存储有描述所述实体的属性的实体属性数据;以及
关系数据库,所述关系数据库中的每条记录包括两个节点和边信息,其中,在所述两个节点中分别存储有分别表示两个实体的两个实体数据,在所述边信息中存储有表示所述两个实体之间的关系的实体间关系数据。
2.根据权利要求1所述的方法,其中,所述基本查询语句包括:
实体信息查询语句,用于使用所述实体数据库查询与指定实体相关的信息;
实体属性查询语句,用于使用所述实体数据库查询指定实体的指定属性;
相关实体查询语句,用于使用所述关系数据库查询与指定实体具有指定关系的实体;以及
实体间关系查询语句,用于使用所述关系数据库查询两个指定实体之间的关系。
3.根据权利要求2所述的方法,其中,
所述实体数据库中针对一个实体的记录还包括元信息字段,在所述元信息字段中存储有与所述实体相关的元信息,所述元信息是使所述实体区别于其他实体的信息,
在所述执行查询操作的步骤中,基于所述元信息来确定所述实体数据。
4.根据权利要求3所述的方法,其中,
所述数据库还包括类别数据库,在所述类别数据库中,对应地存储有多个实体类别数据和类别标签,所述多个实体类别数据被划分为多个层次,较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据,
在所述实体数据库中针对所述实体的记录中的元信息字段中,存储有与描述所述实体的类别的实体类别数据对应的类别标签,
所述基本查询语句还包括实体反向查询语句,用于根据指定属性过滤条件和指定类别来反向查询对应的实体,
在执行根据所述实体反向查询语句的查询操作时,在所述实体数据库中检索满足下述条件的实体数据:
类别标签为表示所述指定类别的实体类别数据或者从属于表示所述指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足所述指定属性过滤条件。
5.根据权利要求4所述的方法,其中,
在所述类别数据库中,与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性,
所述执行根据实体反向查询语句的查询操作的步骤包括:
在所述指定属性过滤条件所涉及的指定属性属于为所述指定类别定义的实体属性的情况下,针对所述实体数据库执行所述根据实体反向查询语句的查询操作。
6.一种信息查询设备,包括:
第一转换装置,用于将用户输入的自然语言查询文本转换为结构化的抽象查询语言语句;
第二转换装置,用于将所述抽象查询语言语句转换为基本查询语句或迭代的多个基本查询语句;
查询装置,用于针对预先准备的数据库,执行根据所述基本查询语句或所述迭代的多个基本查询语句的查询操作,
其中,所述数据库包括:
实体数据库,所述实体数据库中针对一个实体的记录包括实体数据字段和可变属性字段、元信息字段,在所述实体数据字段中存储有表示实体的实体数据,在所述可变属性字段中存储有描述所述实体的属性的实体属性数据,在所述元信息字段中存储有与所述实体相关的元信息,所述元信息是使所述实体区别于其他实体的信息,所述查询装置基于所述元信息来确定所述实体数据;
关系数据库,所述关系数据库中的每条记录包括两个节点和边信息,其中,在所述两个节点中分别存储有分别表示两个实体的两个实体数据,在所述边信息中存储有表示所述两个实体之间的关系的实体间关系数据。
7.根据权利要求6所述的设备,其中,
所述数据库还包括类别数据库,在所述类别数据库中,对应地存储有多个实体类别数据和类别标签,所述多个实体类别数据被划分为多个层次,较低层次的实体类别数据从属于与其关联的较高层次的实体类别数据,
在所述实体数据库中针对所述实体的记录中的元信息字段中,存储有与描述所述实体的类别的实体类别数据对应的类别标签。
8.根据权利要求7所述的设备,其中,所述查询装置包括:
实体信息查询装置,用于使用所述实体数据库执行实体信息查询语句,以查询与指定实体相关的信息;
实体属性查询装置,用于使用所述实体数据库执行实体属性查询语句,以查询指定实体的指定属性;
实体反向查询装置,用于使用所述实体数据库执行实体反向查询语句,以根据指定属性过滤条件和指定类别来反向查询对应的实体;
相关实体查询装置,用于使用所述关系数据库执行相关实体查询语句,以查询与指定实体具有指定关系的实体;以及
实体间关系查询装置,用于使用所述关系数据库执行实体间关系查询语句,以查询两个指定实体之间的关系,
其中,所述实体反向查询装置在所述实体数据库中检索满足下述条件的实体数据:
类别标签为表示所述指定类别的实体类别数据或者从属于表示所述指定类别的实体类别数据所对应的类别标签;并且
相应的实体属性数据满足所述指定属性过滤条件。
9.根据权利要求8所述的设备,其中,
在所述类别数据库中,与每个实体类别数据关联地存储有针对该实体类别数据所表示的实体类别定义的实体属性,
所述实体反向查询装置在所述指定属性过滤条件所涉及的指定属性属于为所述指定类别定义的实体属性的情况下,针对所述实体数据库执行所述根据实体反向查询语句的查询操作。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510081199.XA CN104636478B (zh) | 2015-02-13 | 2015-02-13 | 信息查询方法和设备 |
PCT/CN2016/070332 WO2016127740A1 (zh) | 2015-02-13 | 2016-01-07 | 信息查询方法和设备 |
US15/550,591 US10860632B2 (en) | 2015-02-13 | 2016-01-07 | Information query method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510081199.XA CN104636478B (zh) | 2015-02-13 | 2015-02-13 | 信息查询方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104636478A CN104636478A (zh) | 2015-05-20 |
CN104636478B true CN104636478B (zh) | 2019-12-20 |
Family
ID=53215224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510081199.XA Active CN104636478B (zh) | 2015-02-13 | 2015-02-13 | 信息查询方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10860632B2 (zh) |
CN (1) | CN104636478B (zh) |
WO (1) | WO2016127740A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636478B (zh) | 2015-02-13 | 2019-12-20 | 广州神马移动信息科技有限公司 | 信息查询方法和设备 |
CN106610973B (zh) * | 2015-10-21 | 2020-09-04 | 北京国双科技有限公司 | 电视数据查询方法及装置 |
CN106339454A (zh) * | 2016-08-25 | 2017-01-18 | 北京云知声信息技术有限公司 | 查询命令转化方法及装置 |
CN106776888A (zh) * | 2016-11-30 | 2017-05-31 | 北京赛迈特锐医疗科技有限公司 | 智能结构化搜索***及其搜索方法 |
JP6382359B2 (ja) * | 2017-01-10 | 2018-08-29 | 株式会社オルツ | 個人の属性情報の集合体を利用するためのコンピュータシステム、サーバ装置およびプログラム |
CN106951452A (zh) * | 2017-02-22 | 2017-07-14 | 中国建设银行股份有限公司 | 用于账务追溯的数据查询方法及装置 |
CN107357812A (zh) * | 2017-05-31 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 一种数据查询方法及装置 |
CN107480183A (zh) * | 2017-07-06 | 2017-12-15 | 广州索答信息科技有限公司 | 一种厨房领域知识图谱查询方法、装置和存储介质 |
US10990592B2 (en) * | 2017-10-31 | 2021-04-27 | Microsoft Technology Licensing, Llc | Querying of profile data by reducing unnecessary downstream calls |
CN111512303B (zh) * | 2017-12-29 | 2023-10-27 | 电子技术公司 | 分层图形数据结构 |
US11416481B2 (en) * | 2018-05-02 | 2022-08-16 | Sap Se | Search query generation using branching process for database queries |
CN110858100B (zh) * | 2018-08-22 | 2023-10-20 | 北京搜狗科技发展有限公司 | 联想候选词生成方法及装置 |
CN109299129A (zh) * | 2018-09-05 | 2019-02-01 | 深圳壹账通智能科技有限公司 | 自然语言的数据查询方法、装置、计算机设备及存储介质 |
CN109753658B (zh) * | 2018-12-29 | 2023-09-19 | 百度在线网络技术(北京)有限公司 | 交互方法和装置 |
CN109933672B (zh) * | 2019-02-12 | 2021-09-07 | 北京百度网讯科技有限公司 | 处理查询的方法、装置、电子设备和计算机可读存储介质 |
CN111538743B (zh) * | 2020-04-22 | 2023-08-18 | 电子科技大学 | 基于sql的数据血缘关系分析方法以及*** |
CN111897829A (zh) * | 2020-05-26 | 2020-11-06 | 华瑞新智科技(北京)有限公司 | 一种用于医疗软件的自然语言查询方法及设备 |
US11604790B2 (en) * | 2020-08-31 | 2023-03-14 | Unscrambl Inc | Conversational interface for generating and executing controlled natural language queries on a relational database |
US20220067102A1 (en) * | 2020-09-03 | 2022-03-03 | International Business Machines Corporation | Reasoning based natural language interpretation |
CN112507098B (zh) * | 2020-12-18 | 2022-01-28 | 北京百度网讯科技有限公司 | 问题处理方法、装置、电子设备、存储介质及程序产品 |
CN112559690A (zh) * | 2020-12-21 | 2021-03-26 | 广东珠江智联信息科技股份有限公司 | 一种自然语言智能数据建模技术 |
CN112632106B (zh) * | 2020-12-29 | 2023-05-23 | 重庆农村商业银行股份有限公司 | 一种知识图谱查询方法、装置、设备及存储介质 |
CN112632110A (zh) * | 2021-01-06 | 2021-04-09 | 上海合合信息科技股份有限公司 | 一种自动生成查询语句的数据提取方法及装置 |
CN113239009A (zh) * | 2021-04-08 | 2021-08-10 | 大唐软件技术股份有限公司 | 一种数据库操作方法、装置、设备及存储介质 |
CN113127506B (zh) * | 2021-06-16 | 2021-10-15 | 北京明略昭辉科技有限公司 | 目标查询语句的构建方法、装置、存储介质和电子装置 |
CN114461665B (zh) * | 2022-01-26 | 2023-01-24 | 北京百度网讯科技有限公司 | 用于生成语句转换模型的方法、装置及计算机程序产品 |
CN114168726B (zh) * | 2022-02-11 | 2022-05-31 | 阿里巴巴达摩院(杭州)科技有限公司 | 语句处理方法、装置、存储介质及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682118A (zh) * | 2012-05-15 | 2012-09-19 | 北京久其软件股份有限公司 | 一种多维数据模型访问方法及装置 |
CN102737134A (zh) * | 2012-06-29 | 2012-10-17 | 电子科技大学 | 适用于大规模实时数据流的查询处理方法 |
CN102982147A (zh) * | 2012-11-26 | 2013-03-20 | 深圳市华为技术软件有限公司 | 一种提高数据信息整合效率的方法和装置 |
CN103229162A (zh) * | 2010-09-28 | 2013-07-31 | 国际商业机器公司 | 使用候选答案逻辑综合提供问题答案 |
CN103440296A (zh) * | 2013-08-19 | 2013-12-11 | 曙光信息产业股份有限公司 | 数据查询方法和装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7720674B2 (en) * | 2004-06-29 | 2010-05-18 | Sap Ag | Systems and methods for processing natural language queries |
US7461052B2 (en) * | 2004-12-06 | 2008-12-02 | International Business Machines Corporation | Abstract query plan |
US7333981B2 (en) * | 2004-12-17 | 2008-02-19 | International Business Machines Corporation | Transformation of a physical query into an abstract query |
US20080016049A1 (en) * | 2006-07-12 | 2008-01-17 | Dettinger Richard D | Natural language support for query results |
US7680780B2 (en) * | 2007-04-06 | 2010-03-16 | International Business Machines Corporation | Techniques for processing data from a multilingual database |
CN102262634B (zh) * | 2010-05-24 | 2013-05-29 | 北京大学深圳研究生院 | 一种自动问答方法及*** |
US9646164B2 (en) * | 2010-12-30 | 2017-05-09 | Aziomatics Ab | System and method for evaluating a reverse query |
CN102737049A (zh) | 2011-04-11 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 一种数据库的查询方法和*** |
CN103646032B (zh) * | 2013-11-11 | 2017-01-04 | 漆桂林 | 一种基于本体和受限自然语言处理的数据库查询方法 |
US20170116260A1 (en) * | 2014-02-25 | 2017-04-27 | Google Inc. | Using a dimensional data model for transforming a natural language query to a structured language query |
CN104636478B (zh) * | 2015-02-13 | 2019-12-20 | 广州神马移动信息科技有限公司 | 信息查询方法和设备 |
-
2015
- 2015-02-13 CN CN201510081199.XA patent/CN104636478B/zh active Active
-
2016
- 2016-01-07 US US15/550,591 patent/US10860632B2/en active Active
- 2016-01-07 WO PCT/CN2016/070332 patent/WO2016127740A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103229162A (zh) * | 2010-09-28 | 2013-07-31 | 国际商业机器公司 | 使用候选答案逻辑综合提供问题答案 |
CN102682118A (zh) * | 2012-05-15 | 2012-09-19 | 北京久其软件股份有限公司 | 一种多维数据模型访问方法及装置 |
CN102737134A (zh) * | 2012-06-29 | 2012-10-17 | 电子科技大学 | 适用于大规模实时数据流的查询处理方法 |
CN102982147A (zh) * | 2012-11-26 | 2013-03-20 | 深圳市华为技术软件有限公司 | 一种提高数据信息整合效率的方法和装置 |
CN103440296A (zh) * | 2013-08-19 | 2013-12-11 | 曙光信息产业股份有限公司 | 数据查询方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104636478A (zh) | 2015-05-20 |
US10860632B2 (en) | 2020-12-08 |
US20180039692A1 (en) | 2018-02-08 |
WO2016127740A1 (zh) | 2016-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104636478B (zh) | 信息查询方法和设备 | |
JP4644420B2 (ja) | ネットワークを介してデータを検索及び提示する方法及びマシン可読記憶装置 | |
JP6014725B2 (ja) | 単文/複文構造の自然言語クエリに対する検索および情報提供方法並びにシステム | |
WO2021174783A1 (zh) | 近义词推送方法、装置、电子设备及介质 | |
US8326869B2 (en) | Analysis of object structures such as benefits and provider contracts | |
CN109408578B (zh) | 一种针对异构环境监测数据融合方法 | |
JP7082147B2 (ja) | エンティティを推奨する方法及び装置、電子機器、コンピュータ読み取り可能な媒体 | |
CN107679035B (zh) | 一种信息意图检测方法、装置、设备和存储介质 | |
JP2019040598A5 (zh) | ||
WO2015161340A1 (en) | Ontology browser and grouping method and apparatus | |
Kiyoki et al. | Contextual and differential computing for the multi-dimensional world map with context-specific spatial-temporal and semantic axes | |
CN102915381A (zh) | 基于多维语义的可视化网络检索呈现***及呈现控制方法 | |
CN105989097A (zh) | 一种基于本体的知识库查询方法及*** | |
US7979452B2 (en) | System and method for retrieving task information using task-based semantic indexes | |
US20120117090A1 (en) | System and method for managing digital contents | |
CN107870915A (zh) | 对搜索结果的指示 | |
US20180189380A1 (en) | Job search engine | |
US10565188B2 (en) | System and method for performing a pattern matching search | |
CN108804580B (zh) | 一种在联邦型rdf数据库中查询关键字的方法 | |
Achichi et al. | A survey on web data linking. | |
Barioni et al. | Querying complex objects by similarity in SQL. | |
Cooper et al. | Knowledge-based fast web query engine using NoSQL | |
CN109408713A (zh) | 一种基于用户反馈信息的软件需求检索*** | |
Kim et al. | Q-PD: query graph extension framework using predicate-based RDF on linked open data | |
WO2021070247A1 (en) | Data searching system, device, method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200810 Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Alibaba (China) Co.,Ltd. Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 12 layer self unit 01 Patentee before: GUANGZHOU SHENMA MOBILE INFORMATION TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |