CN108205584B - 用于计算机处理的预测性数据库 - Google Patents

用于计算机处理的预测性数据库 Download PDF

Info

Publication number
CN108205584B
CN108205584B CN201711360977.4A CN201711360977A CN108205584B CN 108205584 B CN108205584 B CN 108205584B CN 201711360977 A CN201711360977 A CN 201711360977A CN 108205584 B CN108205584 B CN 108205584B
Authority
CN
China
Prior art keywords
data object
decision tree
relationships
rule
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
Application number
CN201711360977.4A
Other languages
English (en)
Other versions
CN108205584A (zh
Inventor
F·特罗斯瓦莱斯
A·奥林斯基
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.)
Amadeus SAS
Original Assignee
Amadeus SAS
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
Priority claimed from US15/383,059 external-priority patent/US10402406B2/en
Priority claimed from FR1662721A external-priority patent/FR3060797A1/fr
Application filed by Amadeus SAS filed Critical Amadeus SAS
Publication of CN108205584A publication Critical patent/CN108205584A/zh
Application granted granted Critical
Publication of CN108205584B publication Critical patent/CN108205584B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/363Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes with the personal data of a user
    • 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/2455Query execution
    • G06F16/24564Applying rules; Deductive 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及用于计算机处理的预测性数据库。用于实现提高计算机处理成功率的预测性数据库的***、方法和计算机程序产品。接收包括用户输入的用于若干计算机处理中的每一个的数据对象的历史输入数据。基于历史输入数据确定若干关系,其中每个关系包括为成功的计算机处理之一输入的数据对象,该数据对象链接到为成功的计算机处理输入的另一个数据对象。基于关系和优化阈值生成并过滤决策树。基于过滤后的决策树生成若干规则并将规则存储在预测性数据库中。此后,响应于接收到由用户输入的与所请求的计算机处理相关的部分输入数据,基于规则和部分输入数据确定附加输入数据并将其供应给所请求的计算机处理。

Description

用于计算机处理的预测性数据库
技术领域
本发明一般而言涉及计算机处理,更具体地涉及用于实现预测性数据库以提高计算机处理的成功率的***、方法和计算机程序产品。
背景技术
当请求计算机处理时,用户通常必须输入用于计算机处理的若干信息项才能成功。例如,取决于用户请求的计算机处理的类型,用户可能需要输入特定于请求用户的名称、地址、登录信息、支付信息和/或其它信息项。如果所需的任何信息被用户省略和/或输入不正确,则所请求的计算机处理可能失败或产生意想不到的结果。此外,计算机处理要求用户输入的信息项越多,用户将越有可能省略和/或输入导致计算机处理不成功的不正确信息。
因此,需要改进的***、方法和计算机程序产品来预测用户信息,从而提高计算机处理的成功率。
发明内容
在一个示例性实施例中,一种用于实现用于计算机处理的预测性数据库的方法包括:在一个或多个处理器处接收历史输入数据,该历史输入数据包括为由用户请求的若干成功的计算机处理中的每一个输入的数据对象。此后,该方法包括基于历史输入数据确定关系。关系中的每一个包括为成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,该第一数据对象链接到为该一个成功的计算机处理输入的数据对象中的第二数据对象。该方法还包括基于关系生成决策树,并且基于优化阈值对决策树进行过滤以减小决策树。此外,该方法包括基于过滤后的决策树生成规则。规则中的每一个包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括关系中的一个关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括该一个关系的第二数据对象。该方法还包括将规则存储在预测性数据库中。
此外,该方法可以包括接收由用户输入的与对计算机处理的请求相关的部分输入数据。部分输入数据可以包括规则中的一个规则的第三数据对象。响应于部分输入数据被接收,该方法可以包括从预测性数据库检索规则、基于部分输入数据从检索到的规则中确定该一个规则、并且将该一个规则的第四数据对象供应给所请求的计算机处理。
此外,决策树可以包括若干条路径,其中路径中的每条路径对应于关系中的一个或多个关系。为此,基于优化阈值对决策树进行过滤以减小决策树可以包括从决策树中去除针对其与其对应的关系的数量小于优化阈值的每条路径。附加地或替代地,每条路径可以与基于对应于相应路径的关系的数量和所确定的关系的总数量的概率相关联。为此,基于优化阈值对决策树进行过滤以减小决策树可以包括从决策树中去除针对其与其相关联的概率小于优化阈值的每条路径。
而且,决策树可以包括第一节点和链接到第一节点的若干第二节点,其中第二节点中的每一个对应于关系中的不同的一个或多个关系。为此,第一节点可以跟踪与第二节点中的每一个对应的关系的数量,并且基于优化阈值对决策树进行过滤以减小决策树可以包括去除针对其由第一节点跟踪的关系的数量小于优化阈值的每个第二节点。附加地或替代地,第一节点可以为每个第二节点跟踪基于与该第二节点对应的关系的数量和与所有第二节点对应的关系的总数量的概率。为此,基于优化阈值对决策树进行过滤以减小决策树可以包括去除由针对其由第一节点跟踪的概率小于优化阈值的每个第二节点。
此外,规则中的一个规则可以包括链接到该一个规则的第三数据对象的第五数据对象。第五数据对象可以不同于该一个规则的第四数据对象,并且可以包括关系中的第二关系的第二数据对象。而且,关系中的第二关系的第一数据对象可以包括该一个规则的第三数据对象。该一个规则还可以包括与该一个规则的第四数据对象相关联的第一概率和与该一个规则的第五数据对象相关联的第二概率。第一概率可以大于第二概率。为此,该方法还可以包括接收由用户输入的与对计算机处理的请求相关的部分输入数据,其中部分输入数据包括该一个规则的第三数据对象。响应于部分输入数据被接收,该方法可以包括从预测性数据库中检索规则,并且基于部分输入数据从检索到的规则中确定一个规则。响应于该一个规则被确定,该方法还可以包括基于第一概率和第二概率确定该一个规则的第四数据对象作为主要结果并且该一个规则的第五数据对象作为次要结果,以及将主要结果供应给所请求的计算机处理。在主要结果被供应给所请求的计算机处理之后,并且响应于所请求的计算机处理不成功,该方法还可以包括将次要结果供应给所请求的计算机处理。
在另一个示例性实施例中,一种用于实现用于计算机处理的预测性数据库的***包括一个或多个处理器和存储器。存储器存储指令,当该指令被一个或多个处理器执行时使***响应于包括为由用户请求的若干成功的计算机处理中的每一个输入的数据对象的历史输入数据被接收,基于历史输入数据确定关系。关系中的每一个包括为成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,该第一数据对象链接到为该一个成功的计算机处理输入的第二数据对象。指令在执行时还使***基于关系生成决策树,并且基于优化阈值对决策树进行过滤以减小决策树。此后,指令一旦被执行还使得***基于过滤后的决策树生成规则。规则中的每一个包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括关系中的第一关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括关系中的第一关系的第二数据对象。指令一旦被执行还使得***将规则存储在预测性数据库中。
存储器的指令一旦被执行还可以使得***实现和/或执行上述示例性方法的特征中的任何一个或多个特征。
在还有的实施例中,计算机程序产品可以包括非瞬态计算机可读介质和存储在非瞬态计算机可读介质上的指令。指令一旦由***的一个或多个处理器执行,使得***响应于包括为由用户请求的若干成功的计算机处理中的每一个输入的数据对象的历史输入数据被接收,基于历史输入数据确定关系。关系中的每一个包括为成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,该第一数据对象链接到为该一个成功的计算机处理输入的数据对象中的第二数据对象。指令一旦被执行还使得***基于关系生成决策树,并且基于优化阈值对决策树进行过滤以减小决策树。此后,指令一旦被执行还使得基于过滤后的决策树生成规则。每个规则包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括关系中的第一关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括关系中的第一关系的第二数据对象。指令一旦被执行还使得***将规则存储在预测性数据库中。
非瞬态计算机可读介质的指令一旦被执行还可以使得***实现和/或执行上述示例性方法的特征中的任何一个或多个特征。
以上概述可以给出本发明的一些实施例的简化的概览,以便提供对本文讨论的本发明的某些方面的基本理解。本概述并非旨在提供对本发明的广泛概览,也不旨在标识任何关键或重要的元素,或描绘本发明的范围。本概述的唯一目的仅仅是以简化的形式给出一些概念,作为对下面给出的具体实施方式的介绍。
附图说明
根据以下结合附图的具体描述,将更全面地理解和认识本发明的实施例。
图1是示例性操作环境的示意图,该操作环境包括用于实现预测性数据库以提高计算机处理的成功率的多个***。
图2是图1中的示例性计算机***的示意图。
图3是可以由图1的计算机***中的一个或多个实现的示例性处理体系架构的示意图。
图4是用于实现和利用可以由图3的处理体系架构执行的预测性数据库的示例性处理的流程图。
图5是可以在执行图4的处理的同时由图3的处理体系架构生成的示例性决策树的示意图。
图6是可以在执行图4的处理的同时由图3的处理体系架构生成的示例性部分决策树的示意图。
图7是可以在执行图4的处理的同时由图3的处理体系架构生成的另一个示例性部分决策树的示意图。
具体实施方式
本文描述的若干实施例涉及实现预测性数据库以提高用户请求的计算机处理的成功率。特别地,这些实施例利用用户输入的与成功的计算机处理相关的输入数据来生成规则并将规则存储在预测数据库中。此后,当用户提交对计算机处理的请求时,用户可能只需输入计算机处理所需的一些特定于用户的输入数据就能成功。基于由用户输入的部分输入数据,可以利用规则来确定对于所请求的计算机处理所必需的附加的特定于用户的输入数据。通过减少用户对于计算机处理必须输入的输入数据量,实施例提高了计算机处理将会成功的可能性。
现在转到附图,图1图示了示例性操作环境10。操作环境10可以包括客户端***12、一个或多个处理***14和/或机器学习***16。这些***中的每一个可以被通信地启用,以经由一个或多个网络24(诸如互联网)彼此通信。而且,这些***中的一个或多个可以彼此集成。例如,机器学习***16可以托管在处理***14中的一个或多个上。
客户端***12可以是使得用户能够经由互联网访问远程信息和服务的电子设备。特别地,客户端***12可以包括允许用户访问处理***14的浏览器和/或一个或多个应用,从而指示处理***14基于由用户输入的输入数据来执行计算机处理。客户端***12的非限制性示例包括台式计算机、膝上型计算机和诸如移动电话或平板电脑的移动电子设备。
处理***14可以包括接收由用户诸如经由客户端***12输入的输入数据并且基于接收到的输入数据来执行或触发用户所请求的计算机处理的***。例如,处理***14可以包括商家的***,其可以被配置为经由互联网向用户销售商品和/或服务。为此,由用户输入的输入数据可以包括用于在线交易的用户的支付信息,诸如用户的***数据。响应于接收到用于给定在线交易的用户的支付信息,商家***可以被配置为启动其中用户的支付信息被授权用于该在线交易的计算机处理,诸如通过将用户的支付信息经互联网传送给一个或多个银行相关的***。在接收到指示用户的支付信息被授权用于该在线交易的消息时(这几乎可以与将支付信息提交给商家***同时发生),商家然后可以继续向用户供应所购买的商品和/或服务,诸如经由准备运输、为用户创建预订等。
除了商家***之外,处理***14还可以包括支付授权和结算处理中涉及的其它***。例如,处理***14可以包括商家银行(即,汇入行)的***、用户银行(即,汇出行)的***、与用户的支付信息相关的信用关联的***(例如,
Figure BDA0001511758000000061
AMERICAN
Figure BDA0001511758000000062
Figure BDA0001511758000000063
)和/或促进代表商家进行授权和结算处理的第三方***(例如,票据交换所、开账和结算计划、第三方支付平台)。
如前所述,为了减少为了使计算机处理成功而需要由用户输入的输入数据量,并且相应地提高计算机处理的成功率,一些处理***14可以被配置为使得用户仅输入成功执行计算机处理所需的一些输入数据。例如,当向用户请求用于在线交易的支付信息时,处理***14可以被配置为使得用户能够仅输入部分***信息。具体而言,处理***14可以向用户呈现图形用户界面(GUI),其包括用于输入某些***细节(诸如信用***)的字段,并且省略用于输入其它***细节的字段,诸如***类型(例如,
Figure BDA0001511758000000064
AMERICAN
Figure BDA0001511758000000065
)。由于省略掉的***细节对于处理***14成功执行在线交易的计算机处理(例如,授权或结算处理)可能是必要的,因此处理***14可能需要在继续执行计算机处理之前以某种方式确定省略掉的细节。
用于确定省略掉的细节的常规方法是从第三方检索和整合将用于计算机处理的潜在部分输入数据链接到计算机处理成功所需的其它输入数据的表格。但是,这种方法有缺点。例如,表格必须定期维护和更新,这需要向第三方发送重复的请求。而且,相对于可能由用户输入的潜在部分输入数据,检索到的表格可能是不完整的和/或不可靠的,这可能导致许多计算机处理失败。
为了克服常规方案的缺点,机器学习***16可以被配置成基于用户为多个成功的计算机处理输入的历史输入数据来确定一组规则。特别地,机器学习***16可以基于从历史输入数据导出的关系来生成规则,并将规则存储在预测性数据库中。一般而言,成功的计算机处理可以包括按用户的意愿完成的计算机处理,而没有错误和/或没有拒绝用户输入的输入数据(例如,无效的登录信息、无效的***信息)。因此,从用户输入的与成功的计算机处理相关的输入数据导出的关系通常相当可靠,并且因此用作确定规则的良好基础。一旦规则被确定和存储,机器学习***和/或处理***14就可以利用规则来确定从由用户输入的与所请求的计算机处理相关的部分输入数据中省略掉的并且对于处理***14成功执行所请求的计算机处理必要的附加输入数据。
现在参考图2,可以在诸如示例性计算机***26的一个或多个计算机设备或***上实现客户端***12、处理***14和机器学习***16。计算机***26可以包括处理器28、存储器30、大容量存储存储器设备32、输入/输出(I/O)接口34和人机接口(HMI)36。计算机***26还可以经由网络24或I/O接口34可操作地耦合到一个或多个外部资源38。外部资源可以包括但不限于服务器、数据库、大容量存储设备、***设备、基于云的网络服务或可以由计算机***26使用的任何其它合适的计算机资源。
处理器28可以包括选自微处理器、微控制器、数字信号处理器、微计算机、中央处理单元、现场可编程门阵列、可编程逻辑器件、状态机、逻辑电路、模拟电路、数字电路或者基于存储在存储器30中的操作指令来操纵(模拟或数字)信号的任何其它设备。存储器30可以包括单个存储器设备或多个存储器设备,包括但不限于只读存储器(ROM)、随机存取存储器(RAM)、易失性存储器、非易失性存储器、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、闪存、高速缓存存储器或能够存储信息的任何其它设备。大容量存储存储器设备32可以包括数据存储设备,诸如硬盘驱动器、光盘驱动器、带驱动器、非易失性固态设备或能够存储信息的任何其它设备。
处理器28可以在驻留在存储器30中的操作***40的控制下操作。操作***40可以管理计算机资源,使得体现为一个或多个计算机软件应用的计算机程序代码(诸如驻留在存储器30中的应用42)可以具有由处理器28执行的指令。在替代实施例中,处理器28可以直接执行应用42,在这种情况下操作***40可以被省略。一个或多个数据结构44也可以驻留在存储器30中,并且可以由处理器28、操作***40或应用42使用以存储或操纵数据。
I/O接口34可以提供将处理器28可操作地耦合到其它设备和***(诸如网络24或一个或多个外部资源38)的机器接口。应用42因此可以通过经由I/O接口34进行通信来与网络24或外部资源38协作地工作,以提供构成本发明的实施例的各种特征、功能、应用、处理或模块。应用42还可以具有由一个或多个外部资源38执行或者以其它方式依赖于由计算机***26外部的其它***或网络组件提供的功能或信号的程序代码。事实上,考虑到几乎无限可能的硬件和软件配置,本领域普通技术人员将理解,本发明的实施例可以包括位于计算机***26的外部、分布在多个计算机或其它外部资源38之中、或者由作为通过网络24的服务(诸如云计算服务)提供的计算资源(硬件和软件)提供的应用。
HMI 36可以以已知的方式可操作地耦合到计算机***26的处理器28,以允许用户与计算机***26直接交互。HMI 36可以包括视频或字母数字显示器、触摸屏、扬声器以及能够向用户提供数据的任何其它合适的音频和视觉指示器。HMI 36还可以包括能够接受来自用户的命令或输入并将所输入的输入传送到处理器28的输入设备和控件,诸如字母数字键盘、指向设备、小键盘、按钮、控制钮、麦克风等。
数据库46可以驻留在大容量存储存储器设备32上,并且可以用于收集和组织由本文描述的各种***和模块使用的数据。数据库46可以包括数据和用来存储和组织该数据的支持数据结构。特别地,数据库46可以用任何数据库组织或结构,包括但不限于关系数据库、分层数据库、网络数据库或其组合,来布置。以作为处理器28上的指令执行的计算机软件应用形式的数据库管理***可以用于响应于查询来访问存储在数据库46的记录中的信息或数据,其中查询可以被动态确定并由操作***40、其它应用42或一个或多个模块来执行。
图3图示了可以由操作环境10的***中的一个或多个***提供的处理体系架构50。处理体系架构50可以包括机器学习引擎52和预测性数据库54。预测性数据库54可以存储一个或多个决策树56和/或多个规则58,这在下面进一步详细讨论。
在操作中,机器学习引擎52可以接收历史输入数据60,历史输入数据60可以包括由用户输入的与多个成功的计算机处理相关的输入数据。更特别地,历史输入数据60可以包括由用户为成功的计算机处理输入的多个数据对象。响应于接收到历史输入数据60,机器学习引擎52可以被配置为基于其生成多个规则58。具体而言,机器学习引擎52可以被配置为基于历史输入数据60来确定关系、基于关系生成决策树56、以实现计算机资源节省同时维持决策树56的完整性的方式对决策树56进行过滤、并且然后基于过滤后的决策树56来生成规则58。规则58中的每一个可以包括历史输入数据60的一个数据对象的至少一部分,其根据关系之一链接到历史输入数据60的数据对象中的另一个数据对象。机器学习引擎52然后可以将规则58存储在预测性数据库54中。
在已经生成并存储规则58之后,机器学习引擎52可以接收可能已由用户输入、与对计算机处理的请求有关的部分输入数据62。但是,所请求的计算机处理可能除了该部分输入数据62之外还需要用户没有输入的附加输入数据64才能成功。因此,响应于接收到部分输入数据62,机器学习引擎52可以从预测性数据库54中检索规则58,并且基于部分输入数据62和规则58确定所请求的计算机处理所需的附加输入数据64。此后,机器学习引擎52可以将附加输入数据64供应给所请求的计算机处理或者用于所请求的计算机处理。
图4图示了用于生成规则58并处理由用户输入的与所请求的计算机处理相关的部分输入数据62的示例性处理100。处理100可以由处理体系架构50的机器学习引擎52执行。
在方框102中,可以从由用户为该用户所请求的成功的计算机处理输入的输入数据来确定多个关系。特别地,机器学习引擎52可以接收历史输入数据60,历史输入数据60可以包括由用户为计算机处理输入的数据对象。对于每个成功的计算机处理,历史输入数据60可以包括由用户为计算机处理输入的并且可能对于计算机处理成功来说必需的一组(即,两个或更多个)数据对象。例如,在一个实施例中,历史输入数据60可以包括由用户为若干成功的在线交易输入的支付信息。在这种情况下,在历史输入数据60中包括的用于每个成功的在线交易的数据对象可以包括由用户为在线交易输入的支付信息的项目,其中每个项目对于处理用户的支付信息可能都是必要的。具体而言,在历史输入数据60中包括的用于每个在线交易的数据对象可以包括由用户为在线交易输入的信用***和***类型(例如,
Figure BDA0001511758000000101
AMERICAN
Figure BDA0001511758000000102
Figure BDA0001511758000000103
)。
在一些实施例中,并且可能由于安全性考虑和/或规定,由用户为成功的计算机处理输入的包括在历史输入数据60中的数据对象可以仅包括由用户为成功的计算机处理输入的较大项目的一部分。例如,当历史输入数据60包括用户输入的用于在线交易的支付信息时,包括在用于每个在线交易的历史输入数据60中的用户输入的数据对象中的一个数据对象可以包括由用户为在线交易输入的信用***的一部分,诸如信用***的银行标识号(BIN)部分,该部分通常是在信用***开始处的一系列数字。
在机器学***台传送的一个月的支付信息就可以单独在历史输入数据60中生成数千万个条目。
在一些实施例中,历史输入数据60可以包括由用户输入的与成功的计算机处理有关的数据对象集合以及由用户输入的与不成功的计算机处理有关的数据对象集合。在这些情况下,响应于接收到历史输入数据60,机器学习引擎52可以被配置为过滤历史输入数据60以丢弃导致不成功的计算机处理的那些数据对象集合。以这种方式,在过滤完成之后,机器学习引擎52可以留下仅包括导致成功的计算机处理的数据对象集合的历史输入数据60。例如,当历史输入数据60包括支付信息时,过滤历史输入数据60可以丢弃对于给定的在线交易未被授权的任何用户输入的支付信息,并且因此可以只保留被给定在线交易中涉及的所有方(例如,商家、银行、第三方支付服务提供商、欺诈检查者、***协会)授权和批准的用户输入的支付信息。
响应于接收到(和可能过滤了)历史输入数据60,机器学习引擎52可以基于其来确定关系。关系中的每一个可以包括在历史输入数据60中包括的数据对象集合之一中的数据对象(下文称为A数据对象),该对象链接到同一集合中的另一个数据对象(下文称为B数据对象)。例如,当历史输入数据60包括由用户输入的支付信息时,从历史输入数据60确定的关系可以包括以下:
表1
Figure BDA0001511758000000121
如表1表示的实施例所示,每个关系可以包括由用户在成功的在线交易中输入的信用***的BIN部分(即,A数据对象)和***类型(即,B数据对象)。例如,表1的关系3指示用户输入了以“414720”开始的信用***和“VI”的***类型作为成功的在线交易的支付信息。虽然表1将所确定的关系中的每一个描绘为是唯一的,但是在典型的实施例中,所确定的关系中的若干个可以包括副本(duplicate)。
在方框104中,可以基于所确定的关系生成决策树56。特别地,机器学习引擎52可以将每个确定的关系馈送到决策树模板中,并由此基于其建立决策树56。决策树56可以一般地跟踪由用户为一种类型的成功的计算机处理(例如,在线交易)输入的输入数据中哪些A数据对象或其部分通常与哪些B数据对象相关联。例如,参考表1,决策树56可以跟踪在成功的在线交易中哪些BIN典型地与哪些***类型相关联。
图5图示了基于表1中的关系生成的示例性决策树56。如图示的实施例所示,决策树56可以包括形成多条路径的多个节点,使得每条路径包括多个节点。特别地,决策树56可以包括根节点202、链接到根节点202的多个中间节点204以及链接到中间节点204和/或根节点202的多个叶节点206。每个叶节点206可以与一个或多个元素208相关联。
决策树56的路径可以在根节点202处开始,在叶节点206中的一个处结束,并且包括在它们之间的一个或多个中间节点204。虽然每条路径可以仅包括元素208中的一个,但是两条或更多条路径可以共享决策树56的一个或更多个节点,或者可以包括全部相同的节点。为此,决策树56的节点可以是一条或多条路径的一部分。但是,由于每条路径可以只从父节点流到子节点,因此相同级别的节点(即,距离根节点202的链接距离相等的节点)可以每个是不同的一条或多条路径的一部分。例如,由于链接到根节点202并标记为“4”的中间节点204是三个子节点的父节点,因此标记为“4”的中间节点204可以是至少三条路径的一部分,并且每个子节点可以是不同的一条或多条路径的一部分。
决策树56的每个节点(除根节点202)可以表示开始所确定的关系中的一个或多个的A数据对象的单元(例如,数字、字母、字符或单词)或单元序列。为此,每个节点可以对应于一个或多个关系,并且父节点的每个子节点可以对应于不同的一个或多个关系。对于给定节点,由该节点表示的单元或单元序列可以是通向给定节点的节点(除根节点202)的标记序列(如果有的话),后面是给定节点的标记。例如,标记为“3”的中间节点204可以表示单元“3”并且可以对应于表1的关系1和关系2。标记为“48”的叶节点206(其是标记为“3”的中间节点204的子节点)可以表示序列“348”并且对应于表1的关系1,并且标记为“49”的叶节点206(其也是标记为“3”的中间节点204的子节点)可以表示序列“349”并且可以对应于表1的关系2。
相应地,包括决策树56的一个或多个节点的决策树56的每条路径可以对应于不同组的一个或多个关系,其中每个对应关系包括相同的A数据对象链接到相同的B数据对象。更特别地,对于决策树56的每条路径,路径的节点可以表示开始路径所对应的一组关系的A数据对象的单元或单元序列,并且路径的元素208可以表示路径所对应的那组关系的B数据对象。例如,在决策树56中图示的一条路径包括标记为“3”的中间节点204,随后是与代表“DI”的元素208相关联的标记为“48”的叶节点206。该路径对应于表1中的关系1,并且指示以“348”开始的信用***通常与“DI”类型的***相关联。
为了建立决策树56,机器学习引擎52可以被配置为选择所确定的关系之一,并且此后将选择的关系的A数据对象分离成单元。例如,当A数据对象是数字序列时,每个单元可以包括序列中的一个数字。此后,机器学习引擎52可以通过生成用第一单元标记并且被链接到根节点202的新叶节点206,以及将新叶节点206与表示所选择的关系的B数据对象的元素208相关联,来将A数据对象的第一单元馈送到可能仅包括根节点202的空决策树。
此后,机器学习引擎52可以选择所确定的关系中的新的一个关系来馈送到决策树中。类似于之前选择的关系,机器学习引擎52可以将新选择的关系的A数据对象分离成单元。机器学习引擎52然后可以继续确定根节点202是否已经是用新选择的关系的A数据对象的第一单元标记的子节点的父节点。如果不是,则机器学习引擎52可以生成用第一单元标记并且被链接到根节点202的新叶节点206,并且将新叶节点206与表示新选择的关系的B数据对象的元素208相关联。
相反,如果根节点202已经是用新选择的关系的A数据对象的第一单元标记的子节点的父节点,则机器学习引擎52可以继续确定用第一单元标记的节点是否是用新选择的关系的A数据对象的下一个单元标记的子节点的父节点。如果不是,则机器学习引擎52可以生成用下一个单元标记并且被链接到用新选择的关系的A数据对象的第一单元标记的节点的新叶节点206,并且可以将新叶节点206与表示新选择的关系的B数据对象的元素208相关联。可替代地,如果用新选择的关系的A数据对象的第一单元标记的节点已经是用新选择的关系的A数据对象的下一个单元标记的子节点的父节点,则机器学习引擎52可以继续考虑新选择的关系的A数据对象的后面单元并重复以上处理。在叶节点206被创建并且与新选择的关系的B数据对象相关联之后,机器学习引擎52可以继续根据上述算法来选择每个剩余的关系并将其馈送到决策树中。
在一些实施例中,如果在将选择的关系馈送到决策树时,机器学习引擎52到达叶节点206,则机器学习引擎52可以确定叶节点206是否与表示选择的关系的B数据对象的元素208相关联。如果是,则机器学习引擎52可以继续选择不同的关系,因为当前选择的关系已经由决策树的路径表示。相反,如果叶节点206与不能表示选择的关系的B数据对象的元素208相关联,则机器学习引擎52可以将叶节点206转换成中间节点204,并且生成链接到转换后的中间节点204的两个或更多个叶节点206。新叶节点206中的一个可以对应于所选择的关系,并且每个其它新叶节点206可以对应于先前导致转换后的中间节点204的关系之一。为此,每个新叶节点206可以用在由转换后的中间节点204表示的单元或单元序列之后区分对应于叶节点206的关系的A数据对象和对应于其它新叶节点206的关系的A数据对象所需的最小单元进行标记。下面参考图6和图7提供这种处理的示例。
但是,在一些情况下,可能不能标记新叶节点206以区分两个不同的关系,例如当两个关系包括相同的A数据对象和不同的B数据对象时。例如,当历史输入数据60变得损坏时,可能发生这种情况。在这种情况下,一个单个叶节点206可以被生成用于两个不同的关系,并且该单个叶节点206此后可以与多个元素208相关联,每个元素可以表示两个不同关系的B数据对象中的一个。但是,当随后对决策树56进行过滤时(这将在下面进一步详细描述),表示与损坏的关系相关联的B数据对象的元素208可以被丢弃。
在一些实施例中,在建立决策树56时,机器学习引擎52可以跟踪每条路径所对应的关系的数量。换句话说,对于每条路径,机器学习引擎52可以跟踪和/或包括关系的数量的指示,其中关系包括以由路径的节点表示的单元或单元序列开始的A数据对象并且包括由路径的元素208表示的B数据对象。以这种方式,机器学习引擎52还可以跟踪和/或包括每条路径的概率,该概率基于对应于路径的关系的数量和所确定的关系的总数量之间的比率。该数据可以被用来对决策树56进行过滤,这将在下面更详细地描述。
附加地或替代地,决策树56中的给定父节点可以跟踪和/或包括对应于父节点的每个子节点的关系的数量的指示。特别地,对于父节点的每个子节点,父节点可以跟踪和/或包括具有以由子节点表示的单元或单元序列开始的A数据对象的关系的数量的指示。以这种方式,父节点还可以跟踪和/或包括每个子节点的概率,该概率基于对应于该子节点的关系的数量和对应于父节点的所有子节点的关系的总数量之间的比率。该信息也可以被机器学习引擎52利用以对决策树56进行过滤,这将在下面进一步详细描述。
类似地,对于链接到叶节点206的每个元素208,叶节点206可以跟踪和/或包括对应于元素208的关系的数量的指示(即,包括以由链接到由元素208表示的B数据对象的叶节点206表示的单元或单元序列开始的A数据对象的关系的数量)。叶节点206还可以跟踪和/或包括链接到其的每个元素208的概率,该概率基于对应于元素208的关系的数量和对应于链接到叶节点206的所有元素208的关系的总数量之间的比率。该信息同样可以被机器学习引擎52利用以对决策树56进行过滤,这将在下面进一步详细描述。
图6和图7图示了可以在建立表1的决策树56时生成的部分决策树。首先,机器学习引擎52可以选择关系1馈送到空决策树中,该空决策树可以仅包括根节点202。此后,机器学习引擎52可以将关系1的A数据对象,即BIN,分成单元序列,即3-4-8-5-4-0。然后,机器学习引擎52可以通过生成链接到根节点202的标记为“3”的叶节点206来将单元序列的第一单元(在这种情况下为“3”)馈送到空决策树中,并且此后将叶节点206关联到关系1的B数据对象(在这种情况下是“DI”)。图6图示了在将表1的关系1馈送到空决策树之后得到的部分决策树56a。
此后,机器学习引擎52可以选择要馈送到部分决策树56a中的表1的关系2。为此,机器学习引擎52可以将关系2的A数据对象分离成单元序列,即3-4-9-7-5-9,并且继续将第一单元(在这种情况下为“3”)馈送到部分决策树56a中。一旦将单元“3”馈送到部分决策树56a中,机器学习引擎52可以确定根节点202是标记为“3”的子节点的父节点,并且还确定标记为“3”的子节点是叶节点206。而且,机器学习引擎52可以检查标记为“3”的节点是否已经与表示关系2的B数据对象的元素208相关联。因为如果没有关联,则机器学习引擎52可以将标记为“3”的节点转换为中间节点204,并生成链接到转换后的中间节点204的两个新叶节点206。每个新叶节点206可以用在由转换后的中间节点204表示的单元或单元序列之后区分关系1的A数据对象和关系2的A数据对象所需的最小单元进行标记。在这种情况下,所需的最小单元包括关系1的“48”和关系2的“49”。因此,机器学习引擎52可以将新叶节点206之一标记为“48”并将其与关系1的B数据对象(即“DI”)相关联,并且可以将另一个新叶节点206标记为“49”并将其与关系2的B数据对象(即“AX”)相关联。图7图示了在关系2被馈送到部分决策树56a之后的部分决策树56b。
再次参考图4,在方框106中,可以基于一个或多个优化阈值来对决策树56进行过滤以减小决策树56。对决策树56进行过滤可以包括一种过滤技术或过滤技术的组合。例如,在一些实施例中,对决策树56进行过滤可以基于由机器学习引擎52为每条路径跟踪的数量。具体而言,对决策树56进行过滤可以包括从决策树56中去除与其对应的关系的数量小于优化阈值的每条路径。附加地或替代地,对决策树56进行过滤可以包括从决策树56中去除与其相关联的概率小于优化阈值的每条路径。换句话说,用于过滤决策树56的一个优化阈值可以是路径需要对应的关系的最小数量,和/或用于过滤决策树56的另一个优化阈值可以是路径需要满足或超过的最小概率。
此外,对决策树56进行过滤可以基于由决策树56的一个或多个父节点存储的数量。具体而言,对于给定父节点,对决策树56进行过滤可以包括去除父节点的每个这样的子节点,对于该子节点由父节点跟踪的关系的数量小于优化阈值。附加地或替代地,对决策树56进行过滤可以包括去除由父节点跟踪的概率小于优化阈值的每个子节点。换句话说,用于对决策树56进行过滤的一个优化阈值可以是节点需要对应的关系的最小数量,和/或用于对决策树56进行过滤的另一个优化阈值可以是节点需要满足或超过的最小概率。
对决策树56进行过滤还可以包括去除每个这样的元素208,对于该元素208,由与该元素208相关联的叶节点206跟踪的关系和/或概率的数量小于优化阈值。
以上过滤技术一般地用于提高决策树56的完整性,同时还实现提高的计算机资源利用率。特别地,通过如上所述基于多个对应关系和/或概率对决策树56进行过滤,机器学习引擎52可以去除表示错误关系的那些路径和/或节点。具体而言,由于与准确关系相比,错误关系一般是小数量的,因此以上过滤技术将会从决策树56中去除对应于错误关系的节点和/或路径,同时保留准确关系。而且,由于历史输入数据60以及对应地从其导出的关系的数量可能相当大,因此只有在诸如通过利用以上过滤技术已达到关系的最小出现集合之后信任关系才是有意义的。
此外,减小决策树56不仅释放了诸如存储器的***资源,而且还提高了当生成附加输入数据64时的响应时间。具体而言,决策树56越小,从决策树56生成的规则集合58越小,并且最终机器学习引擎52能够越快地响应于接收到部分输入数据62而确定附加数据64。例如,相对于从与多个在线交易有关的样本数据导出的决策树56,利用上述过滤技术(即概率过滤)已经表明将存储器消耗减少了多个百分点,而同时对准确性没有显著的影响。相应地,利用上述过滤技术中的一种或多种(即概率过滤)已经表明将从决策树56生成的规则58的数量从数千减少到大约一百或更少。
一旦被生成和/或过滤,决策树56就可以被存储在预测性数据库54中。以这种方式,当接收到还有的历史输入数据60时,机器学习引擎52可以从预测性数据库54检索决策树56,并且可以继续将从还有的历史输入数据60导出的关系馈送到决策树56中,从而更新决策树56。此后,机器学习引擎52可以使用上述技术中的一种或多种对现在更新的决策树56进行过滤,并且然后继续如下所述地生成规则58。
在方框108中,可以从决策树56生成规则58。每个规则58可以包括测试,该测试包括关系之一的A数据对象的至少一部分(在下文中称为C数据对象),该部分链接到该关系之一的B数据对象(在下文中称为D数据对象)。通常,每个规则58可以对应于决策树56的路径之一。例如,下表图示了可以从图5的决策树56生成的规则58的列表:
表2
Figure BDA0001511758000000191
Figure BDA0001511758000000201
在方框110中,一旦生成了规则58,规则58就可以被存储在预测性数据库54中。特别地,机器学习引擎52可以将规则58***到文件中并且将文件存储在预测性数据库54中。
在一些实施例中,规则58可以以特定顺序生成并放置在文件中,以便使得能够进一步整合规则58,并且从而进一步减少存储在预测性数据库54中的规则58的内存占用。而且,存储在预测性数据库54中的规则58越少,在确定附加输入数据64时,机器学习引擎52的响应时间越快。例如,当从决策树56生成规则58时,机器学习引擎52可以被配置为将共享除了根节点202之外还有至少一个节点的路径进行分组。此后,对于每个路径分组,机器学习引擎52可以被配置为确定包括在该分组的最多路径中的元素208。如果存在捆绑(tie),则机器学习引擎52可以选择该捆绑中的元素208中的任何一个。然后,机器学习引擎52可以将包括所确定的元素208的分组的路径整合成一个规则58,该规则58将由分组的最高级别共享节点所表示的单元链接到由所确定的元素208表示的B数据对象,并且确保整合的规则58在为该分组中的其余路径生成的任何其它规则58之后列出。
例如,参考图5的决策树56,机器学习引擎52可以将共享链接到根节点202并被标记为“4”的中间节点204的每条路径分组。此后,机器学习引擎52可以确定在分组中出现最多的元素208表示“VI”。因此,机器学习引擎52可以将包括表示“VI”的元素208的分组的路径整合成单个规则58,该单个规则58将由最高级别共享节点(在这种情况下为标记为“4”的中间节点204)表示的单元链接到“VI”的元素。然后整合的规则58可以在规则58的列表中被放置在为该路径分组生成的其它规则58下面。
再次参考图5的决策树56,机器学习引擎52可以被配置为生成以下用于在预测性数据库54中存储的规则58的有序表:
表3
Figure BDA0001511758000000211
如表3所示,从图5的决策树56生成规则58作为有序列表可以使得规则58的数量从十二个减少到六个。
如前所述,即使在决策树56已经被过滤和减小之后,决策树56中的一些叶节点206也可能与两个或更多个元素208相关联,每个是不同路径的一部分。在这种情况下,当基于决策树56生成规则58时,机器学习引擎52可以将共享叶节点206但包括不同元素208的每条路径整合成单个规则58,该单个规则58包括一个C数据对象和多个D数据对象。特别地,规则58的C数据对象可以是由共享叶节点206的每条路径的节点表示的单元或单元序列,并且单个规则58的每个D数据对象可以是由与共享叶节点206相关联的元素208中的一个元素表示的B数据对象。换句话说,单个规则58的D数据对象中的每一个可以对应于至少一个关系,其中对应于D数据对象的所有关系可以包括以单个规则58的C数据对象开始的A数据对象,并且对应于每个D数据对象的至少一个关系可以包括与对应于其它D数据对象的至少一个关系的B数据对象不同的B数据对象。
当生成包括多个D数据对象的单个规则58时,机器学习引擎52也可以向规则58内的每个D数据对象分配概率。换句话说,规则58可以包括与每个D数据对象相关联的概率。与规则58的给定D数据对象相关联的概率可以等于由叶节点206针对表示D数据对象的元素208跟踪的概率。以这种方式,响应于接收到与所请求的计算机处理有关的包括单个规则58的C数据对象的部分输入数据62,机器学习引擎52可以被配置为返回具有最高概率的规则58的D数据对象作为主要结果,并且返回具有次高概率的D数据对象作为次要结果,等等。机器学习引擎52然后可以被配置将主要结果作为附加输入数据64供应给或用于所请求的计算机处理。如果计算机处理不成功,则机器学习引擎52可以然后被配置为将次要结果作为附加输入数据64供应给或用于计算机处理。
再次参考图4,在方框112中,在已经生成规则58并将其存储在预测性数据库54中之后,部分输入数据62可以诸如在机器学习引擎52处被接收。特别地,部分输入数据62可能已由用户与对计算机处理的请求(诸如用于在线交易的支付信息的验证)相关地输入,并且可能满足规则58之一的C数据对象。但是,部分输入数据62可能省略了本文称为附加输入数据64、对于所请求的计算机处理成功所必需的其它用户数据。例如,部分输入数据62可能包括信用***的至少一部分,并且省略了与信用***相关联的***类型。
因此,在方框114中,响应于接收到部分输入数据62,可以基于部分输入数据62和存储在预测性数据库54中的规则58为所请求的计算机处理确定附加输入数据64。特别地,机器学习引擎52可以从预测性数据库54中检索规则58的列表,并且此后将部分输入数据62与一个或多个规则58的C数据对象进行比较以确定匹配(即,当部分输入数据62满足规则58的测试时)。这种比较可以基于规则58的顺序进行,意味着机器学习52可以将部分输入数据62与第一列出的规则58进行比较、与下一个列出的规则58进行比较、等等,直到找到匹配为止。
一旦机器学习引擎52确定了匹配规则58,如果匹配规则58仅包括一个D数据对象,则机器学习引擎52可以确定匹配规则58的D数据对象是附加输入数据64。可替代地,如果匹配规则58包括多个D数据对象,则机器学习引擎52可以如上所述确定主要结果和次要结果。此后,在方框116中,机器学习引擎52可以将附加输入数据64供应给或用于用户请求的计算机处理。例如,机器学习引擎52可以将附加输入数据64直接转发到所请求的计算机处理,或者转发到将促进或触发计算机处理的处理***14。
一般而言,被执行以实现本发明实施例的例程(无论被实现为操作***的一部分还是被实现为特定应用、组件、程序、对象、模块或指令序列,或甚至其子集)都可以在本文被称为“计算机程序代码”,或简称为“程序代码”。程序代码通常包括在不同时间驻留在计算机中的各种存储器和存储设备中的计算机可读指令,并且当由计算机中的一个或多个处理器读取和执行时,使该计算机执行执行体现本发明的实施例的各个方面的操作和/或元素所需的操作。用于执行本发明实施例的操作的计算机可读程序指令可以是例如汇编语言或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本文描述的各种程序代码可以基于在其中实现为本发明的特定实施例的应用来识别。但是,应当认识到的是,所遵循的任何特定程序命名仅仅是为了方便而使用,并且因此本发明不应当限于仅在由这种命名标识和/或暗示的任何特定应用中使用。此外,给定其中计算机程序可以被组织成例程、过程、方法、模块、对象等的通常无限数量的方式,以及其中程序功能可以在驻留在典型计算机内的各种软件层(例如,操作***、库、API、应用、小应用程序(applet)等)之间分配的各种方式,应当认识到的是,本发明的实施例不限于本文描述的程序功能的特定组织和分配。
本文描述的任何应用/模块中体现的程序代码能够作为各种不同形式的程序产品单独地或统一地分布。特别地,可以使用其上具有计算机可读程序指令的计算机可读存储介质来分布程序代码,以使处理器执行本发明的实施例的各个方面。
固有地是非暂态的计算机可读存储介质可以包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术实现的易失性和非易失性、可移动和不可移动的有形介质。计算机可读存储介质还可以包括RAM、ROM、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存存储器或其它固态存储器技术、便携式光盘只读存储器(CD-ROM)或其它光学存储装置、磁带盒、磁带、磁盘存储装置或其它磁性存储设备,或者可以用于存储期望信息并可以被计算机读取的任何其它介质。计算机可读存储介质不应当被认为本身是暂态信号(例如,无线电波或其它传播电磁波、通过诸如波导的传输介质传播的电磁波、或通过导线传送的电信号)。计算机可读程序指令可以经由网络从计算机可读存储介质或外部计算机或外部存储设备下载到计算机、另一种类型的可编程数据处理装置或另一种设备。
存储在计算机可读介质中的计算机可读程序指令可以用于指导计算机、其它类型的可编程数据处理装置或其它设备以特定方式工作,使得存储在计算机可读介质中的指令产生包括指令的制品,其中指令实现在流程图、序列图和/或框图中指定的功能、动作和/或操作。计算机程序指令可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的一个或多个处理器以产生机器,使得指令在经由一个或多个处理器执行时使得执行一系列计算,以实现在流程图、序列图和/或框图中指定的功能、动作和/或操作。
在某些替代实施例中,流程图、序列图和/或框图中指定的功能、动作和/或操作可以与本发明的实施例相一致地重新排序、串行处理和/或并发处理。而且,流程图、序列图和/或框图中的任何一个可以包括比与本发明的实施例相一致图示的方框更多或更少的方框。
本文使用的术语仅用于描述特定的实施例,而不旨在限制本发明的实施例。如本文所使用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另有明确指示。还将理解的是,术语“包括”当在本说明书中使用时,指定所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或多个其它特征、整数、步骤、操作、元件、组件和/或其组合的存在或添加。此外,就在具体实施方式或权利要求中使用术语“包含”、“具有”、“由...组成”或其变体的程度而言,以类似于术语“包括”的方式,这些术语旨在是包含性的。
虽然已经通过各种实施例的描述图示了全部发明,并且虽然已经相当详细地描述了这些实施例,但是申请人的意图不是将所附权利要求的范围限定或以任何方式限制到这种细节。附加的优点和修改对于本领域技术人员将是容易看出的。因此,本发明的更广泛的方面不限于所示出和描述的特定细节、代表性装置和方法以及说明性示例。因此,在不背离本申请人的总体发明性概念的精神或范围的情况下,可以从这些细节中进行偏离。

Claims (20)

1.一种用于实现用于计算机处理的预测性数据库的方法,所述方法包括:
在一个或多个处理器处接收历史输入数据,所述历史输入数据包括为由多个用户请求的多个成功的计算机处理中的每个计算机处理输入的多个数据对象;
由所述一个或多个处理器基于所述历史输入数据来确定多个关系,所述关系中的每个关系包括为所述成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,第一数据对象链接到为所述一个成功的计算机处理输入的数据对象中的第二数据对象;
由所述一个或多个处理器基于所述关系生成决策树;
由所述一个或多个处理器基于优化阈值对决策树进行过滤以减小决策树;
由所述一个或多个处理器基于过滤后的决策树生成多个规则,所述规则中的每个规则包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括所述关系中的第一关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括所述关系中的第一关系的第二数据对象;以及
由所述一个或多个处理器将所述规则存储在所述预测性数据库中。
2.如权利要求1所述的方法,还包括:
接收由用户输入的与对计算机处理的请求相关的部分输入数据,所述部分输入数据包括所述规则中的一个规则的第三数据对象;以及
响应于所述部分输入数据被接收:
从所述预测性数据库中检索所述规则;
基于所述部分输入数据从检索到的所述规则中确定所述一个规则;以及
将所述一个规则的第四数据对象供应给所请求的计算机处理。
3.如权利要求1所述的方法,其中所述决策树包括多条路径,所述多条路径中的每条路径对应于所述关系中的一个或多个关系。
4.如权利要求3所述的方法,其中基于所述优化阈值对决策树进行过滤以减小决策树包括:
从决策树中去除针对其与其对应的关系的数量小于所述优化阈值的每条路径。
5.如权利要求3所述的方法,其中每条路径与基于对应于相应路径的关系的数量和所确定的关系的总数量的概率相关联,并且基于所述优化阈值对决策树进行过滤以减小决策树包括:
从决策树中去除针对其与其相关联的概率小于优化阈值的每条路径。
6.如权利要求1所述的方法,其中所述决策树包括第一节点和链接到第一节点的多个第二节点,第二节点中的每个节点对应于所述关系中的不同的一个或多个关系。
7.如权利要求6所述的方法,其中第一节点跟踪与第二节点中的每个节点对应的关系的数量,并且基于优化阈值对决策树进行过滤以减小决策树包括:
去除针对其由第一节点跟踪的关系的数量小于优化阈值的每个第二节点。
8.如权利要求6所述的方法,其中第一节点针对每个第二节点跟踪基于与该第二节点对应的关系的数量和与第二节点对应的关系的总数量的概率,并且基于优化阈值对决策树进行过滤以减小决策树包括:
去除针对其由第一节点跟踪的概率小于优化阈值的每个第二节点。
9.如权利要求1所述的方法,其中所述规则中的一个规则还包括链接到所述一个规则的第三数据对象的第五数据对象,第五数据对象不同于所述一个规则的第四数据对象并且包括所述关系中的第二关系的第二数据对象,
其中所述关系中的第二关系的第一数据对象包括所述一个规则的第三数据对象。
10.如权利要求9所述的方法,其中所述一个规则包括与所述一个规则的第四数据对象相关联的第一概率和与所述一个规则的第五数据对象相关联的第二概率,第一概率大于第二概率,并且还包括:
接收由用户输入的与对计算机处理的请求相关的部分输入数据,所述部分输入数据包括所述一个规则的第三数据对象;以及
响应于所述部分输入数据被接收:
从预测性数据库中检索所述规则;
基于所述部分输入数据从检索到的所述规则中确定所述一个规则;
响应于所述一个规则被确定,基于第一概率和第二概率将所述一个规则的第四数据对象确定为主要结果并且将所述一个规则的第五数据对象确定为次要结果;
将主要结果供应给所请求的计算机处理;以及
在主要结果被供应给所请求的计算机处理之后,响应于所请求的计算机处理不成功,将次要结果供应给所请求的计算机处理。
11.一种用于实现用于计算机处理的预测性数据库的***,所述***包括:
一个或多个处理器;以及
存储指令的存储器,当所述指令由所述一个或多个处理器执行时使所述***:
响应于接收到包括为由多个用户请求的多个成功的计算机处理中的每个成功的计算机处理输入的多个数据对象的历史输入数据:
基于所述历史输入数据确定多个关系,所述关系中的每个关系包括为所述成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,第一数据对象链接到为所述一个成功的计算机处理输入的数据对象中的第二数据对象;
基于所述关系生成决策树;
基于优化阈值对决策树进行过滤以减小决策树;
基于过滤后的决策树生成多个规则,所述规则中的每个规则包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括所述关系中的第一关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括所述关系中的第一关系的第二数据对象;以及
将所述规则存储在预测性数据库中。
12.如权利要求11所述的***,其中所述指令一旦执行还使得所述***:
响应于由用户输入的与对计算机处理的请求相关的部分输入数据被接收,所述部分输入数据包括所述规则中的一个规则的第三数据对象:
从预测性数据库检索所述规则;
基于所述部分输入数据从检索到的规则中确定所述一个规则;以及
将所述一个规则的第四数据对象供应给所请求的计算机处理。
13.如权利要求11所述的***,其中所述决策树包括多条路径,所述多条路径中的每条路径对应于所述关系中的一个或多个关系,并且所述指令使所述***基于优化阈值对决策树进行过滤以减小决策树是通过使所述***:
从决策树中去除针对其与其对应的关系的数量小于优化阈值的每条路径,来进行的。
14.如权利要求11所述的***,其中所述决策树包括多条路径,所述多条路径中的每条路径对应于所述关系中的一个或多个关系,并且与基于对应于相应路径的关系的数量和所确定的关系的总数量的概率相关联,并且所述指令使所述***基于所述优化阈值对决策树进行过滤以减小决策树是通过使所述***:
从决策树中去除针对其与其相关联的概率小于优化阈值的每条路径,来进行的。
15.如权利要求11所述的***,其中所述决策树包括第一节点和链接到第一节点的多个第二节点,第二节点中的每个节点与所述关系中的一个或多个关系相关联。
16.如权利要求15所述的***,其中所述第一节点跟踪与第二节点中的每个节点对应的关系的数量,并且所述指令使所述***基于优化阈值对决策树进行过滤以减小决策树是通过使所述***:
去除针对其由第一节点跟踪的关系的数量小于优化阈值的每个第二节点,来进行的。
17.如权利要求15所述的***,其中第一节点针对每个第二节点跟踪基于与该第二节点对应的关系的数量和与第二节点对应的关系的总数量的概率,并且所述指令使所述***基于优化阈值对决策树进行过滤以减小决策树是通过使所述***:
去除针对其由第一节点跟踪的概率小于优化阈值的每个第二节点,来进行的。
18.如权利要求11所述的***,其中所述规则中的一个规则包括链接到所述一个规则的第三数据对象的第五数据对象,第五数据对象不同于所述一个规则的第四数据对象并且包括所述关系中的第二关系的第二数据对象,
其中所述关系中的第二关系的第一数据对象包括所述一个规则的第三数据对象。
19.如权利要求18所述的***,其中所述一个规则包括与所述一个规则的第四数据对象相关联的第一概率和与所述一个规则的第五数据对象相关联的第二概率,第一概率大于第二概率,并且所述指令一旦被执行还使***:
响应于接收到由用户输入的与对计算机处理的请求相关的部分输入数据,所述部分输入数据包括所述一个规则的第三数据对象:
从预测性数据库中检索所述规则;
基于所述部分输入数据从检索到的所述规则中确定所述一个规则;
响应于所述一个规则被确定,基于第一概率和第二概率将所述一个规则的第四数据对象确定为主要结果并且将所述一个规则的第五数据对象确定为次要结果;
将主要结果供应给所请求的计算机处理;以及
在主要结果被供应给所请求的计算机处理之后,响应于所请求的计算机处理不成功,将次要结果供应给所请求的计算机处理。
20.一种非暂态计算机可读介质,包括存储在其上的指令,所述指令一旦被***的一个或多个处理器执行就使所述***:
响应于接收到包括为由多个用户请求的多个成功的计算机处理中的每个成功的计算机处理输入的多个数据对象的历史输入数据:
基于所述历史输入数据确定多个关系,所述关系中的每个关系包括为所述成功的计算机处理中的一个成功的计算机处理输入的数据对象中的第一数据对象,第一数据对象链接到为所述一个成功的计算机处理输入的数据对象中的第二数据对象;
基于所述关系生成决策树;
基于优化阈值对决策树进行过滤以减小决策树;
基于过滤后的决策树生成多个规则,所述规则中的每个规则包括链接到第四数据对象的第三数据对象,其中对于每个规则,相应规则的第三数据对象包括所述关系中的第一关系的第一数据对象的至少一部分,并且相应规则的第四数据对象包括所述关系中的第一关系的第二数据对象;以及
将所述规则存储在预测性数据库中。
CN201711360977.4A 2016-12-19 2017-12-18 用于计算机处理的预测性数据库 Active CN108205584B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15/383,059 US10402406B2 (en) 2016-12-19 2016-12-19 Predictive database for computer processes
US15/383,059 2016-12-19
FR1662721 2016-12-19
FR1662721A FR3060797A1 (fr) 2016-12-19 2016-12-19 Base de donnees predictive pour des processus d'ordinateur

Publications (2)

Publication Number Publication Date
CN108205584A CN108205584A (zh) 2018-06-26
CN108205584B true CN108205584B (zh) 2020-12-22

Family

ID=60661873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711360977.4A Active CN108205584B (zh) 2016-12-19 2017-12-18 用于计算机处理的预测性数据库

Country Status (2)

Country Link
EP (1) EP3336713A1 (zh)
CN (1) CN108205584B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250008B1 (en) * 2009-09-22 2012-08-21 Google Inc. Decision tree refinement
CN103488672A (zh) * 2012-06-12 2014-01-01 波音公司 在关联存储器内创建优化比较标准
CN104102685A (zh) * 2013-04-11 2014-10-15 波音公司 识别关联存储器内的上下文关联结果

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160086185A1 (en) * 2014-10-15 2016-03-24 Brighterion, Inc. Method of alerting all financial channels about risk in real-time

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250008B1 (en) * 2009-09-22 2012-08-21 Google Inc. Decision tree refinement
CN103488672A (zh) * 2012-06-12 2014-01-01 波音公司 在关联存储器内创建优化比较标准
CN104102685A (zh) * 2013-04-11 2014-10-15 波音公司 识别关联存储器内的上下文关联结果

Also Published As

Publication number Publication date
EP3336713A1 (en) 2018-06-20
CN108205584A (zh) 2018-06-26

Similar Documents

Publication Publication Date Title
JP6975101B2 (ja) ブロックチェーンにおけるトランザクションの実行および妥当性確認のための方法、装置ならびに非一時的コンピュータ可読記憶媒体(ブロックチェーンにおけるトランザクション実行および妥当性確認)
US10402406B2 (en) Predictive database for computer processes
CN109977110B (zh) 数据清洗方法、装置及设备
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
CN103620601B (zh) 在映射缩减过程中汇合表
CN111400012A (zh) 数据并行处理方法、装置、设备及存储介质
EP3168758A1 (en) Data storage method, query method and device
CN107123047B (zh) 基于债券交易的数据采集***及其数据采集方法
US20200175403A1 (en) Systems and methods for expediting rule-based data processing
US10930389B2 (en) Systems and methods for the classification and indexing of contract documentation
CA3088580C (en) Translating transaction descriptions using machine learning
CN107329987A (zh) 一种基于mongo数据库的搜索***
CN111427971A (zh) 用于计算机***的业务建模方法、装置、***和介质
KR101737578B1 (ko) 자동 생성된 sql 구문에 대한 자동 튜닝 방법 및 장치
US11531984B2 (en) Method and device facilitating expansion of primary payment instruments
CN114064657A (zh) 多表格整合方法、装置、设备及存储介质
CN110909212B (zh) 一种银行标识代码的匹配方法和设备
CN108205584B (zh) 用于计算机处理的预测性数据库
US8229946B1 (en) Business rules application parallel processing system
CN116308333A (zh) 确定支付渠道的方法、***、设备与存储介质
CN115269085A (zh) 手机银行页面展示方法及装置
US10007398B2 (en) Integrated supplier information tool
CN112187788A (zh) 基于区块链的多级资产流转方法、***及溯源方法
US12045215B2 (en) Machine learning based duplicate invoice detection
US20160196537A1 (en) File Locking Framework

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