CN112686411A - 训练机器学习模型的设备、系统和方法 - Google Patents

训练机器学习模型的设备、系统和方法 Download PDF

Info

Publication number
CN112686411A
CN112686411A CN202011106202.6A CN202011106202A CN112686411A CN 112686411 A CN112686411 A CN 112686411A CN 202011106202 A CN202011106202 A CN 202011106202A CN 112686411 A CN112686411 A CN 112686411A
Authority
CN
China
Prior art keywords
machine learning
provider
coordination
given machine
given
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.)
Pending
Application number
CN202011106202.6A
Other languages
English (en)
Inventor
O·阿码迪尔
J-M·卡佐拉
P·C·M·伯德坎
C·哈斯-弗兰吉
N·E·梅洛特
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 FR1911671A external-priority patent/FR3102278A1/fr
Priority claimed from US16/656,820 external-priority patent/US11367017B2/en
Application filed by Amadeus SAS filed Critical Amadeus SAS
Publication of CN112686411A publication Critical patent/CN112686411A/zh
Pending legal-status Critical Current

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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Tourism & Hospitality (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

提供了一种用于使用与提供商对象相关联的消息来训练机器学习模型的设备、系统和方法。一个或多个计算设备:接收与表示由提供商系统提供的项目的提供商对象相关联的消息,该消息具有多于一种的格式;存储与消息相对应的协调对象,该协调对象是使用协调对象的协调数据到消息的消息数据的映射而生成的,协调对象具有针对协调对象类型的通用格式;从协调对象中,针对给定机器学习模型,提取给定机器学习训练数据;针对给定机器学习模型,使用给定机器学习训练数据生成至少一个机器学习分类器;并且将至少一个机器学习分类器提供给一个或多个服务器处的给定机器学习模型,该服务器被配置为在接收到的提供商对象上实现给定机器学习模型。

Description

训练机器学习模型的设备、系统和方法
技术领域
本说明书总体上涉及机器学习,并且具体地涉及用于使用与提供商对象相关联的消息来训练机器学习模型的设备、系统和方法。
背景技术
提供各种产品,包括例如与旅行有关的商品和服务(例如,航班、酒店预订等),通常需要各种离散实体来交换定义产品各个方面的数据。在旅行相关产品的上下文中,此类实体的示例包括航空公司、旅行社、最终用户、预订系统等。尽管此类实体可以被配置为根据标准化格式(例如,根据旅行相关产品的上下文中基于可扩展标记语言(XML)的新分发功能(NDC)标准)交换数据,但它们仍可以采用不同机制以启动数据交换。
发明内容
本说明书的一方面提供了一种用于使用与提供商对象相关联的消息来训练机器学习模型的方法,包括:在一个或多个计算设备处,接收与表示由一个或多个提供商系统提供的项目的提供商对象相关联的消息,所述消息具有多于一种的格式;在一个或多个存储器处存储与所述消息相对应的协调对象,所述协调对象是使用所述协调对象的协调数据到所述消息的消息数据的一个或多个映射生成的,所述协调对象具有针对协调对象类型的通用格式;在所述一个或多个计算设备处,针对给定机器学习模型,从所述协调对象中提取给定机器学习训练数据;在所述一个或多个计算设备处,针对所述给定机器学习模型,使用所述给定机器学习训练数据,生成至少一个机器学习分类器;以及由所述一个或多个计算设备,将所述至少一个机器学习分类器提供给服务器处的所述给定机器学习模型,所述服务器被配置为在接收到的提供商对象上实现所述给定机器学习模型。
在一些实施例中,针对所述给定机器学习模型,将所述协调对象的给定协调数据标识为所述给定机器学习训练数据。
在一些实施例中,所述给定机器学习训练数据包括从所述消息中提取的输入和输出,所述输入包括来自对应于针对由所述一个或多个提供商系统提供的项目的响应的消息的数据,并且所述输出包括对应于导致所述响应的请求的相应数据。
在一些实施例中,所述方法还包括;在所述一个或多个计算设备处,从所述协调对象中,针对多个给定机器学习模型,提取相应的给定机器学习训练数据;在所述一个或多个计算设备处,针对所述多个给定机器学习模型,使用所述相应的给定机器学习训练数据,生成至少一个相应的机器学习分类器;以及由所述一个或多个计算设备,将所述至少一个相应的机器学习分类器提供给一个或多个服务器处的所述多个给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述多个给定机器学习模型。
在一些实施例中,所述给定机器学习模型用于以下一项或多项:根据可重用性对接收到的提供商对象进行分类;根据上下文特性对接收到的提供商对象进行分类;确定接收到的提供商对象的紧迫性;以及组合接收到的提供商对象的两个或更多个项目。
在一些实施例中,所述给定机器学习模型用于根据可重用性和上下文特性中的一个或多个对多个提供商对象进行分类,包括:将第一数量的提供商对象分类到由第一可重用性和上下文特性定义的第一类别中;响应于接收到对具有与第一可重用性和上下文特性实质不同的第二可重用性和上下文特性的提供商对象的多个进一步请求,自动对具有第二可重用性和上下文特性的第二数量的提供商对象进行分类,并且存储经分类的所述第二数量的提供商对象,从而生成新的第二类别。
在一些实施例中,根据可重用性和上下文特性中的一个或多个对所述多个提供商对象进行分类包括:响应与接收到指示第一可重用性和上下文特性的子集的多个进一步请求,自动对具有第一可重用性和上下文特性的子集的提供商对象进行分类,并存储经分类的具有第一可重用性和上下文特性的子集的提供商对象,从而生成新的第三类别。
在一些实施例中,所述消息是从事件中心设备接收的,所述事件中心设备包括至少针对服务器的代理,所述服务器被配置为对针对由所述一个或多个提供商系统提供的项目的请求作出响应。
本说明书的另一方面提供了一种用于使用与提供商对象相关联的消息来训练机器学习模型的计算设备,包括:一个或多个存储器;通信接口;以及控制器,被配置为:经由所述通信接口,接收与表示由一个或多个提供商系统提供的项目的提供商对象相关联的消息,所述消息具有多于一种的格式;在所述一个或多个存储器处,存储与所述消息相对应的协调对象,所述协调对象是使用所述协调对象的协调数据到所述消息的消息数据的一个或多个映射生成的,所述协调对象具有针对协调对象类型的通用格式;从所述协调对象中,针对给定机器学习模型,提取给定机器学习训练数据;针对所述给定机器学习模型,使用所述给定机器学习训练数据,生成至少一个机器学习分类器;以及经由所述通信接口,将所述至少一个机器学习分类器提供给一个或多个服务器处的所述给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述给定机器学习模型。
在计算设备的一些实施例中,针对所述给定机器学习模型,将所述协调对象的给定协调数据标识为所述给定机器学习训练数据。
在计算设备的一些实施例中,所述给定机器学习训练数据包括从所述消息中提取的输入和输出,所述输入包括来自对应于针对由所述一个或多个提供商系统提供的项目的响应的消息的数据,并且所述输出包括对应于导致所述响应的请求的相应数据。
在一些实施例中,所述控制器还被配置为:从所述协调对象中,针对多个给定机器学习模型,提取相应的给定机器学习训练数据;针对所述多个给定机器学习模型,使用所述相应的给定机器学习训练数据,生成至少一个相应的机器学习分类器;以及经由所述通信接口,将所述至少一个相应的机器学习分类器提供给一个或多个服务器处的所述多个给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述多个给定机器学习模型。
在计算设备的一些实施例中,所述给定机器学习模型用于以下一项或多项:根据可重用性对接收到的提供商对象进行分类;根据上下文特性对接收到的提供商对象进行分类;确定接收到的提供商对象的紧迫性;以及组合接收到的提供商对象的两个或更多个项目。
在计算设备的一些实施例中,所述给定机器学习模型用于根据可重用性和上下文特性中的一个或多个对多个提供商对象进行分类,包括:将第一数量的提供商对象分类到由第一可重用性和上下文特性定义的第一类别中;响应于接收到对具有与第一可重用性和上下文特性实质不同的第二可重用性和上下文特性的提供商对象的多个进一步请求,自动对具有第二可重用性和上下文特性的第二数量的提供商对象进行分类,并且存储经分类的所述第二数量的提供商对象,从而生成新的第二类别。
在计算设备的一些实施例中,根据可重用性和上下文特性中的一个或多个对所述多个提供商对象进行分类包括:响应于接收到指示第一可重用性和上下文特性的子集的多个进一步请求,自动对具有第一可重用性和上下文特性的子集的提供商对象进行分类,并存储经分类的具有第一可重用性和上下文特性的子集的提供商对象,从而生成新的第三类别。
在计算设备的一些实施例中,所述消息从事件中心设备接收,所述事件中心设备包括针对至少服务器的代理,所述服务器被配置为对针对由所述一个或多个提供商系统提供的项目的请求作出响应。
本说明书的另一方面提供了一种非暂态计算机可读介质,其存储用于使用与提供商对象相关联的消息来训练机器学习模型的计算机程序,其中,计算机程序的执行用于:在一个或多个计算设备处,接收与表示由一个或多个提供商系统提供的项目的提供商对象相关联的消息,所述消息具有多于一种的格式;在一个或多个存储器处存储与所述消息相对应的协调对象,所述协调对象是使用所述协调对象的协调数据到所述消息的消息数据的一个或多个映射生成的,所述协调对象具有针对协调对象类型的通用格式;在所述一个或多个计算设备处,针对给定机器学习模型,从所述协调对象中提取给定机器学习训练数据;在所述一个或多个计算设备处,针对所述给定机器学习模型,使用所述给定机器学习训练数据,生成至少一个机器学习分类器;以及由所述一个或多个计算设备,将所述至少一个机器学习分类器提供给服务器处的所述给定机器学习模型,所述服务器被配置为在接收到的提供商对象上实现所述给定机器学习模型。
在非暂态计算机可读介质的一些实施例中,针对所述给定机器学习模型,将所述协调对象的给定协调数据标识为所述给定机器学习训练数据。
在非暂态计算机可读介质的一些实施例中,所述给定机器学习训练数据包括从所述消息中提取的输入和输出,所述输入包括来自对应于针对由所述一个或多个提供商系统提供的项目的响应的消息的数据,并且所述输出包括对应于导致所述响应的请求的相应数据。
本说明书的另一方面提供了一种计算机程序产品,包括存储在计算机可读介质上的程序代码指令,以当在计算机上执行所述程序时执行根据以上阐述的方法方面和实施例中的任何一个的方法步骤。
附图说明
为了更好地理解本文所描述的各种示例并更清楚地示出它们如何实现,现在仅以示例方式参考附图,其中:
图1描绘了根据非限制性示例,用于使用与提供商对象相关联的消息来训练机器学习模型的系统。
图2描绘了根据非限制性示例,被配置为协调和存储与提供商对象相关联的消息的计算设备。
图3描绘了根据非限制性示例,用于使用与提供商对象相关联的消息来训练机器学习模型的计算设备。
图4描绘了根据非限制性示例,用于使用与提供商对象相关联的消息来训练机器学习模型的方法。
图5描绘了根据非限制性示例,在图1的系统中接收的消息和/或提供商对象。
图6描绘了根据非限制性示例,消息与协调对象之间的映射。
图7描绘了根据非限制性示例,在图1的系统中训练的机器学习模型。
图8描述了将缓存分段成类别或逻辑部分。
具体实施方式
图1描绘了用于使用与提供商对象相关联的消息来训练机器学习模型的系统100。在本文讨论的示例中,提供商对象可以包括与产品和/或项目相对应的数据对象和/或数据记录,例如旅行相关的商品和服务(例如,航班、酒店预订、汽车租赁等),它们由提供商系统提供。更具体地,在以下示例中讨论的产品和/或项目可以是机票和相关服务(例如,行李托运服务、机上食品、娱乐等)。然而,下面讨论的系统和方法也可以应用于各种其他类型的数据对象和/或项目。
上述项目的交付通常由提供商实体控制,例如在结合本文提供的示例讨论的项目的情况下的航空公司。系统100包括一个或多个提供商系统104(例如,一个或多个服务器或其他合适的计算设备),在该示例中,该系统由一个或多个提供商实体操作。系统100可以包括多个提供商系统104,每个系统由各自的提供商实体(例如,其他航空公司)操作,尽管出于说明目的仅示出了一个提供商系统104。提供商对象可以采用任何适当的格式,包括但不限于在基于全球分发系统(GDS)的数据交换的上下文中的Edifact推荐,在基于新分发功能(NDC)的数据交换的上下文中的要约记录和/或任何其他合适的格式。实际上,提供商对象可以包括数据对象和/或数据记录,例如,存储Edifact推荐或NDC要约,和/或表示由提供商系统104提供的至少一个项目的任何其他合适的数据。
每个提供商对象定义可以被提供要约以供购买(例如,由这些项目的最终用户)的项目或项目的组合,包括但不限于航班、火车、酒店住宿、机场休息室使用权、座位升舱、行李托运服务、机上食品、娱乐等中的一个或多个。
在下面讨论的示例中,每个提供商对象可以定义由提供商实体操作的航班和/或与航班相关联的辅助服务。因此,每个提供商对象都包含各种字段。某些字段定义了项目属性,例如与产品相对应的产品对象标识符(例如,服务标识符、项目标识符、产品标识符等)、位置、日期和时间(例如,航班时间和其他路线数据)。提供商对象的字段和/或数据的类型可以取决于提供商对象的类型。例如,与航班相对应的提供商对象可以包括航班标识符,而与其他旅行相关项目相对应的提供商对象,例如针对火车、酒店、进入机场休息室的要约和/或针对高级座位升级的要约,可以包括与火车、酒店、休息室、高级座位等相关的信息。
如将在下面描述的,系统100还包括网络116和中介服务器120。网络116包括局域网和广域网(包括因特网)的任何合适的组合,使得系统100的组件可以通信。中介服务器120通常在客户端设备112和提供商系统104之间进行中介,例如使得客户端设备112可以经由中介服务器120从提供商系统104和/或多于一个提供商系统104请求产品。
如图所示,系统100还包括缓存服务器121,其缓存和/或存储从系统100中的各种源接收的提供商对象,包括但不限于提供商系统104。如在下文所解释的,缓存服务器121还例如经由中介服务器120向请求设备(例如,客户端设备112)提供包括存储在缓存中的提供商对象的响应。尽管服务器120、121可以是两个分离的设备,但是服务器120、121的功能性可以组合成一个服务器125和/或在云计算环境中使用多个服务器和/或一个或多个服务器来实现。服务器120、121在下文中可以被称为一个或多个服务器120、121。
如图所示,缓存服务器121维护可以被实现为一个或多个存储器的缓存和/或存储器126。存储器126包含如在缓存服务器121处从系统100中的提供商对象的各种源接收的提供商对象。缓存服务器121可以实现机器学习模型以通过可复用性和上下文特性中的一个或多个来对提供商对象进行分类,并按照分类将提供商对象存储在存储器126中;缓存服务器121还可以确定所存储和分类的提供商对象当前是否有效,如下文更详细地描述。一个或多个服务器120、121可以使用存储在存储器126中的提供商对象来响应针对由提供商系统104提供的项目的请求,例如以减少响应请求的时间。
在申请人的共同未决的申请中描述了一个或多个服务器120、121的功能,该申请题为“DEVICE,SYSTEM AND METHOD FOR PROVIDING PROVIDER OBJECTS FROM A CACHE(用于从缓存提供提供商对象的设备、系统和方法)”的申请号为FR1911662,具有与本说明书相同的申请/优先权日期。
在本示例中,客户端设备112可以由旅行社实体操作,并因此生成针对提供商对象(例如,代表可以供购买的产品)的请求,并经由中介服务器120,以最终用户的名义(例如,旅行者)将该请求发送到提供商系统104。系统100可以包括多个客户端设备112,但是出于说明目的图1中仅示出了一个客户端设备112。换句话说,中介服务器120在客户端设备112和提供商系统104之间进行中介,并从客户端设备112接收请求。
通常,例如在中介服务器120和提供商系统104之间,经由消息交换在系统100中发生请求和/或订购由提供商对象表示的项目。这种消息因此可以与提供商对象相关联,并且可以包括针对以下一项或多项的消息:请求提供商对象;请求与提供商对象相关联的更多信息;提供提供商对象;订购由提供商对象表示的项目等。
如图所示,系统100还包括事件中心设备127,其可以从提供商系统104接收与提供商对象相关联的消息。事件中心设备127可以包括至少用于中介服务器120的代理,使得至少由中介服务器120接收的消息在事件中心设备127处被接收。例如,当提供商系统104向包括提供商对象的中介服务器120发送消息和/或响应时,该消息和/或响应可以首先在事件中心设备127处被接收,然后被发送到中介服务器120。换句话说,当从提供商系统请求提供商对象时,可以将提供商对象推送到事件中心设备127,以使它们对于系统100中除中介服务器120的当前实例之外的其他组件可访问,如下文更详细地描述。实际上,事件中心设备127可以被配置为从系统100的所有提供商系统104接收包括提供商对象的消息和/或响应。这种“流量”可以是“实时的”并且包括由于由客户端设备112请求的提供商对象而生成的消息。然而,在其他示例中,这样的流量可以不是“实时的”;在这些示例中,系统100的组件(例如,流量生成器),其可以是中介服务器120的组件和/或单独的组件等,可以自动和/或定期经由消息从一个或多个提供商系统104请求提供商对象,例如以获取针对在特定日期飞往给定位置的航班的要约记录;这种请求可以由中介服务器120发送和/或触发。
如图所示,系统100还包括计算设备130,其从事件中心设备127接收在事件中心设备127处接收到的消息,如上所述。事件中心设备127还可以将提供商对象提供给缓存服务器121以供在存储器126处存储。
如图所示,系统100还包括一个或多个存储器135,如图所示,其可以包括数据库。尽管一个或多个存储器135被描绘为系统100的独立组件,但是一个或多个存储器135可以是诸如计算设备130和/或计算设备140和/或另一计算设备(例如,用于维护一个或多个存储器135)的计算设备的组件。为了简单起见,一个或多个存储器135在下文中可互换地称为存储器135。
计算设备130通常将从事件中心设备127接收的消息格式化(例如,翻译等)为协调对象和/或数据对象,该协调对象使用协调对象的协调数据到消息的消息数据的一个或多个映射来生成,协调对象具有针对协调对象类型的通用格式。下面将更详细地描述计算设备130的功能。计算设备130还将协调对象存储在存储器135中。这样,计算设备130可以被称为协调/存储计算设备130。
系统100还包括用于使用与提供商对象相关联的消息,特别是使用存储在存储器135中的协调对象,来训练机器学习模型的计算设备140。特别地,计算设备140可以被配置为:从协调对象中,针对给定机器学习模型,提取给定机器学习训练数据,针对给定机器学习模型,使用给定机器学习训练数据,生成至少一个机器学习分类器;以及将至少一个机器学习分类器提供给在缓存服务器121处在接收到的提供商对象上实现的给定机器学习模型。这样,计算设备140可以被称为机器学习训练计算设备140。因此,如本文中所使用的,术语“机器学习模型”可以指基于样本数据的数学模型,被称为训练数据和/或训练数据集和/或(本文)作为机器学习训练数据,以便针对给定任务做出预测和/或决策,而无需明确地被编程以执行给定任务;例如,机器学习模型可以实现执行给定任务的机器学习分类器。如本文所使用的机器学习训练算法可以指构建和/或训练机器学习模型的算法,例如通过生成机器学习分类器、使用训练数据和/或训练数据集和/或(本文)机器学习训练数据。因此,计算设备140可以实现机器学习训练算法以生成机器学习分类器以“训练”机器学习模型。
在更详细地讨论系统100的功能之前,将参照图2和图3更详细地讨论计算设备130、140的某些组。虽然被描绘为两个分离的设备,但是设备130、140可以包括可以在地理上分布式的一个或多个计算设备和/或一个或多个云计算设备。首先将参照图2描述计算设备130。
如图2所示,计算设备130包括至少一个控制器220,诸如中央处理单元(CPU)等。控制器220与存储应用223的存储器222互连,存储器222被实现为合适的非暂态计算机可读介质(例如,包括任何一个或多个随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪存、磁性计算机存储器等的非易失性和易失性存储器子系统的合适组合)。控制器220和存储器222通常包括一个或多个集成电路(IC)。
控制器220还与通信接口228互连,该通信接口使计算设备130能够经由网络116与系统100的其他组件(即,事件中心设备127)进行通信。通信接口228因此包括经由网络116进行通信的任何必要组件(例如,网络接口控制器(NIC)、无线电单元等)。通信接口228的特定组件是基于网络116的性质来选择的。计算设备130还可以包括连接到控制器220的输入和输出设备,例如键盘、鼠标、显示器等(未示出)。
上面提到的计算设备130的组件可以部署在单个外壳中,也可以以分布式格式部署。因此,在一些示例中,计算设备130包括多个处理器,它们共享存储器222和通信接口228,或者每个都具有不同的关联存储器和通信接口。
尽管未示出,但是存储器222可以包括存储器135(和/或其一部分)。然而,在其他示例中,存储器135可以在计算设备130的外部,并且例如经由通信接口228可被控制器220访问。实际上,存储器135可以在计算设备140之间分布和/或与计算设备140共享。
存储器222还以包括应用223的各种应用形式存储可由控制器220执行的多个计算机可读编程指令。如本领域技术人员将理解的,控制器220执行应用223(和任何其他合适的应用)的指令,以执行由其中包含的指令所定义的各种动作。在下面的描述中,控制器220,更一般地计算设备130,被称为被配置为执行那些动作。将理解的是,它们经由执行(由控制器220)存储在存储器222中的应用的指令而如此配置。
如图所示,存储器222还存储消息和协调对象之间的映射235。例如,映射235可以将消息的字段和/或消息数据映射到协调对象的对应字段和/或协调对象数据。实际上,协调对象通常具有针对协调对象类型的通用格式。例如,代表针对提供商对象的响应的消息可以具有不同的格式,这取决于响应的源、响应是以NDC还是GDS格式等,而表示响应的协调对象可以具有针对响应的通用格式。因此,映射235可以映射包括来自提供商系统104的响应的消息的不同格式。类似地,表示提供商对象的消息可以具有不同格式,这取决于提供商对象的源、提供商对象是包括NDC要约还是Edifact推荐等,而表示提供商对象的协调对象可以具有针对提供商对象的通用格式。映射235因此可以将消息和/或提供商对象的不同格式映射到针对提供商对象的通用格式。
特别地,映射235可以指示与消息的各个字段相对应的协调对象的字段。例如,给定类型的消息数据,例如代表提供商对象数据的消息数据,可以位于消息的给定字段处;类似地,协调对象可以包括消息数据将被存储的对应的给定字段。
映射235可以指示消息的此类字段与协调对象之间的对应关系,以使来自消息字段的给定数据用于填充协调对象的给定对应字段。在特定示例中,表示从始发地到目的地的航班的消息的提供商对象可以具有针对航空公司、航班号、始发地、目的地、航班日期和时间的字段;相应的协调对象可以具有经由映射235被映射到提供商对象的字段的类似字段。此外,包括响应的消息可以具有特定于消息和/或指示生成响应的关联请求的数据和/或元数据,例如,关联请求源自的地理位置、关联请求(和/或消息)的时间和/或日期等;在一些示例中,映射还可以在要用元数据填充的协调对象的字段与消息的元数据之间。
通常,映射235在存储器222处被预先配置。换句话说,在假设针对其生成给定映射235的消息的子集具有一致的(和/或相同的)格式(例如,来自给定源的给定类型的消息可以具有相同的格式)的情况下,生成映射235。然而,应当理解,不同源和/或具有不同类型的消息可以具有不同的格式,并且针对消息的每个子集提供映射235。
因此,尽管仅示出了一个映射235,但是存储器222可以存储针对不同消息格式和/或不同消息类型的不同映射235。例如,尽管本文仅描述了一个提供商系统104,但是计算设备130可以正在与多于一个提供商系统104(例如,不同航空公司的提供商系统)进行通信,该提供商系统104可以各自生成和/或提供具有不同格式的各自的消息(例如,提供商对象)。替代地,给定的提供商系统104可以针对不同类型的项目(例如,航班要约、休息室要约、高级座位要约等)生成和/或提供具有不同格式的消息(例如,提供商对象)。通常,存储器222可以针对可以接收的每种消息类型存储各自的映射235。
然而,针对给定的协调对象类型,所生成的协调对象可以具有一致和/或相同的格式。例如,一种类型的协调对象可以对应于消息中接收到的针对提供商对象的响应。另一种类型的协调对象可以对应于消息中接收到的提供商对象。不同的映射235可以用于每个给定的协调对象类型,并且多于一个的映射235可以用于给定消息类型。因此,以通用的协调对象格式生成表示具有针对相同消息类型的不同格式的消息的协调对象。
消息的格式可以取决于提供商系统104的能力和/或消息的源,并且可以以NDC格式或GDS格式等,和/或可以以任何合适的格式。实际上,消息的格式可以取决于提供商系统104和/或消息的源是否根据基于NDC或GDS的数据交换和/或另一种类型的数据交换格式进行操作。因此,映射235可以用于将给定类型的NDC格式化消息和给定类型的GDS格式化消息转译为通用的协调格式。
如下文将讨论的,应用223的执行将计算设备130配置为:接收与提供商对象相关联的消息,该提供商对象表示由一个或多个提供商系统104提供的项目,该消息具有多于一种的格式;以及在一个或多个存储器135处存储与消息相对应的协调对象,该协调对象使用协调对象的协调数据到消息的消息数据的一个或多个映射235生成,协调对象具有针对给定协调对象类型的通用格式。
接下来将参照图3描述计算设备140。如图3所示,计算设备140包括至少一个控制器320、存储应用323的存储器322以及通信接口328;控制器320、存储器322和通信接口328分别类似于控制器220、存储器222和通信接口228,如上文所述。
上文提到的计算设备140的组件可以部署在单个外壳中,也可以以分布式格式部署。因此,在一些示例中,计算设备140包括多个处理器,或者共享存储器322和通信接口328,或者每个处理器具有不同的关联存储器和通信接口。尽管未示出,但是存储器322可以包括存储器135(和/或其一部分)。然而,在其他示例中,存储器135可以在计算设备140的外部,并且可以例如经由通信接口328可被控制器320访问。实际上,存储器135可以分布在计算设备130之间和/或与计算设备130共享。
存储器322还以包括应用323的各种应用的形式存储可由控制器320执行的多个计算机可读编程指令。如本领域技术人员将理解的,控制器320执行应用323(和任何其他合适的应用)的指令,以便执行由本文包含的指令定义的各种动作。在下文的描述中,控制器320,以及更一般地计算设备140,被称为被配置为执行那些动作。将理解的是,它们经由执行(由控制器320)存储在存储器322中的应用的指令而如此配置。
如图所示,存储器322还存储一个或多个机器学习训练模块335(以下可互换地统称为多个模块335,并且更一般地称为模块335),它们可以是应用323的组成部分和/或与应用323分开存储。模块335通常用于训练机器学习模型,以基于存储在存储器135中的协调对象执行给定的各个功能。因此,模块335可互换地称为机器学习训练算法。模块335可以包括给定特征提取器和给定机器学习模块。给定特征提取器可以被配置为从协调对象中提取用于训练给定机器学习模型的给定机器学习训练数据,如下文更详细地描述的。如上文所描述的,缓存服务器121可以实现机器学习模型,例如用于将接收到的提供商对象存储在存储器126处,和/或使用存储在存储器126中的提供商对象来响应针对提供商对象的请求。存储器322可以存储针对在缓存服务器121处实现的每个机器学习模型的对应模块335。
机器学习模块335可以包括基于机器学习和/或深度学习和/或神经网络的模型和/或其他模型,包括但不限于,广义线性回归模型;随机森林模型;支持向量机模型;梯度提升回归模型;决策树模型;广义加性模型;进化规划模型;贝叶斯推理模型,强化学习模型等。但是,任何合适的机器学习模型和/或深度学习模型和/或神经网络模型都在本示例的范围内。
应用323的执行,如将在下文所讨论的,将计算设备140配置为:从协调对象中,针对给定机器学习模型提取给定机器学习训练数据;针对给定机器学习模型,使用给定机器学习训练数据生成至少一个机器学习分类器;以及在被配置为在接收到的提供商对象上实现给定机器学习模型的服务器(例如,缓存服务器121)处,将至少一个机器学习分类器提供给给定机器学习模型。
尽管未详细描述提供商系统104,客户端设备112和服务器120、121的结构,但是提供商系统104,客户端设备112和服务器120、121被理解为具有与计算设备130、140相似的结构,但是适用于提供商系统104,客户端设备112和服务器120、121的相应功能。
现在关注图4,其描绘了表示用于使用与提供商对象相关联的消息来训练机器学习模型的方法400的流程图。图3的方法400的操作对应于由计算设备130、140,并且具体地由控制器220、320,执行的机器可读指令。在所示示例中,由图3的框表示的指令例如存储在存储器222、322中,作为应用223、323(和/或模块335)。图4的方法400是可以配置控制器220、320和/或计算设备130、140和/或系统100的一种方式。此外,对图4的方法400的以下讨论可以导致对系统100及其各种组件的进一步理解。
图4的方法400不必按照所示的确切顺序执行,并且类似地,可以并行地而不是顺序地执行各个框。因此,方法400的元素在本文中被称为“框”而不是“步骤”。图3的方法400也可以在图1的系统100的变型上实现。特别地,虽然方法400被描述为由计算设备130、140实现,但是计算设备130、140的功能可以被组合成实现方法400的单个计算设备。替代地,计算设备130、140的功能可以分布在实现方法400的多个计算设备之间;例如,可以使用不同的计算设备来实现每个模块335。
在框402处,控制器220和/或计算设备130接收与表示由一个或多个提供商系统104提供的项目的提供商对象相关联的消息,该消息具有多于一种的格式。消息可以与提供商对象相关联,提供商对象可以包括NDC要约或Edifact推荐(例如,根据GDS格式)等,和/或可以以任何合适的格式;因此,消息的格式可以取决于提供商系统104的能力和/或消息的源,和/或提供商系统104和/或消息的源是否根据基于NDC或GDS的数据交换格式和/或另一类型的数据交换格式进行操作。
此外,可以从事件中心设备127接收消息,事件中心设备127包括至少用于中介服务器120的代理,中介服务器120被配置为响应针对由一个或多个提供商系统104提供的项目的请求。然而,可以从系统100中任何合适的消息源接收消息。实际上,在一些示例中,事件中心设备127可以是可选的,其中计算设备130被配置为从源接收消息,而不使用事件中心设备127。
在框404处,控制器220和/或计算设备130在一个或多个存储器135处存储与消息相对应的协调对象,该协调对象使用协调对象的协调数据到消息的消息数据的一个或多个映射235而生成,协调对象具有针对给定协调对象类型的通用格式。上文描述了映射235和协调数据对象的生成。
通常,控制器220和/或计算设备130可以在持续进行的基础上继续实现框402和框404,使得存储器135在持续进行的基础上被更新,例如在实现方法400的其余部分期间。
通常,如上所述,协调对象可以对应于消息,该消息可以指示以下一项或多项:针对由一个或多个提供商系统104提供的项目的给定请求;提供商反对;针对项目的成功关联响应;等等。然而,针对给定的协调对象类型,协调对象被协调为通用格式,如上文所述。
协调对象还可以包括与消息相关联的元数据。例如,可以响应于来自特定地理位置的请求来提供消息(例如,响应),该请求可以基于各自的映射235被存储在关联的协调对象处,如上文所述。
因此,存储在存储器135处的协调对象可以代表响应于从客户端设备112接收到的请求而提供不同的提供商对象的效果。这样,协调对象可以用作机器学习训练数据,其中给定协调对象被用作针对给定机器学习模型的机器学习训练数据,例如取决于给定机器学习模型的功能。
因此,在框406处,控制器320和/或计算设备140从协调对象中,针对给定机器学习模型,提取给定机器学习训练数据。例如,针对给定机器学习模型,可以将协调对象的给定协调数据标识为给定机器学习训练数据。
例如,给定机器学习模型可以针对以下一项或多项:根据可重用性对接收到的提供商对象进行分类;根据上下文特性对接收到的提供商对象进行分类;确定接收到的提供商对象的紧迫性;以及组合接收到的提供商对象的两个或更多个项目。因此,取决于被训练的机器学习模型的功能,可以将不同的协调对象用作机器学习训练数据。特定模块335因此可以被配置为从存储器135中提取特定的协调对象以训练相关联的机器学习模型。
在一个示例中,给定机器学习模型可以用于根据可重用性对接收到的提供商对象进行分类,其可以包括但不限于:通过接收到的提供商对象的各个特性中的一个或多个和由接收到的提供商对象表示的一个或多个相应项目(例如,包括由提供商系统104提供的产品的相应项目;然而,由提供商对象表示的相应项目可以对应于包括在来自客户端设备112的请求中的标准)的相应组合来对接收到的提供商对象进行分类。例如,用于对接收到的提供商对象进行分类的特性可以是接收到的提供商对象本身的特性,例如针对给定日期的航班,如由接收到的提供商对象表示的,接收到的提供商对象是否针对航班的特定座位类别(例如,经济舱、高等舱、商务舱、头等舱等),航班所含的行李袋数等。因此,例如,针对给定日期的给定航班,针对给定类别和给定数量的行李袋的接收到的提供商对象可以被分类为可重复用于针对给定日期的航班,针对给定类别和给定数量的行李袋的请求;然而,接收到的提供商对象可以不能可重复用于针对给定日期的航班,针对给定类别而针对不同数量的行李袋的请求。
在另一示例中,给定机器学习模型可以用于根据上下文特性对接收到的提供商对象进行分类,其可以包括但不限于:通过以下一项或多项对接收到的提供商对象进行分类:其中请求了相应的提供商对象的相应上下文、定制化、地理位置、客户类型以及由接收到的提供商对象表示的各个项目的类别。特别地,可以根据针对提供商对象的请求的某些类型的特性,例如上面列出的上下文特性,来定制由提供商系统104提供的提供商对象。例如,可以根据针对提供商对象的请求(例如,在英国发起的针对给定航班的请求可能导致针对给定航班在法国发起的与请求不同的提供商对象)的上下文特性来定制由提供商对象提出要约的提供商对象和/或项目的给定价格等。换句话说,当响应于请求提供提供商对象时,提供商系统104可以实现一组规则和/或上下文逻辑;根据上下文特性对接收到的提供商对象进行分类可以包括以模拟(或类似方式)由提供商系统104实现的该组规则/或上下文逻辑的方式对接收到的提供商对象进行分类。这种分类可以替代地被称为分段,因为提供商系统104可以以分段和/或上下文方式提供提供商对象。
在又一示例中,给定机器学习模型可以用于确定接收到的提供商对象的有效性和/或紧迫性,其可以包括但不限于,确定接收到的提供商对象当前是否有效。例如,接收到的提供商对象可以包括生存时间(TTL)字段,其通常指示提供商指定接收到的提供商对象为有效的时间长度(例如,针对航班的要约价格可以有效的时间长度,诸如30分钟)。然而,接收到的提供商对象的有效时间可以比TTL字段的时间长;例如,与接收到的提供商对象相关联的航班可以是从生成接收到的提供商对象之日起六个月,并且提出要约的价格可能在比TTL字段的时间长度更长的给定时间段内不会更改和/或过期的(例如四个月),和/或给定时间段可以基于负载和/或季节。因此,在这些示例中,给定机器学习模型可以通过确定当前时间不超过接收到的提供商对象的估计的到期时间和估计的(或未估计的)TTL值中的一个或多个来确定接收到的提供商对象的紧迫性。
在框408处,控制器320和/或计算设备140使用给定机器学习训练数据,针对给定机器学习模型生成至少一个机器学习分类器。特别地,如上文所述,响应消息通常包括与导致响应的请求相对应的数据和/或元数据。因此,消息可以既包括由提供商系统104用来生成响应的“输入”(例如,请求),又包括作为“输入”的结果的“输出”(例如,响应)。因此,协调对象通常也可以以协调格式包括这种“输入”和“输出”,并且可以被用于训练给定机器学习模型。特别地,如下文将更详细描述的,机器学习训练计算设备140可以包括针对正在被训练的不同机器学习模型的相应特征提取器,并且特征提取器可以被配置为从与机器学习模型的功能有关的协调对象中提取特定的输入和输出。换句话说,给定机器学习训练数据可以包括从消息中提取的输入和输出,输入包括来自消息的数据,该消息对应于针对由一个或多个提供商系统提供的项目的响应,并且输出包括与导致响应的请求相对应的相应数据。
例如,针对用于根据可重用性对接收到的提供商对象进行分类的机器学习模型,与可重用性有关的输入和输出可以从协调对象中提取,并用于训练可重用性机器学习模型。例如,可以从训练中生成针对提供商对象的不同可重用性类型的机器学习分类器。
在另一示例中,针对用于根据上下文特性对接收到的提供商对象进行分类的机器学习模型,与上下文特性有关的输入和输出可以从协调对象中提取,并用于训练上下文特性机器学习模型。例如,可以从训练中生成针对提供商对象的不同上下文特性类型的机器学习分类器。
在另一示例中,针对用于组合接收到的提供商对象的两个或更多个项目的机器学习模型,与组合两个或更多个项目有关的输入和输出可以从协调对象中提取,并用于训练上下文特性机器学习模型。例如,可以从训练中生成针对项目的不同组合的机器学习分类器。
在另一示例中,针对用于确定接收到的提供商对象的有效性和/或紧迫性的机器学习模型,与有效性和/或紧迫性有关的输入和输出可以从协调对象中提取,并用于训练紧迫性机器学习模型。可以从训练中生成针对不同提供商对象的紧迫性和/或有效性的机器学习分类器。
在框410处,控制器320和/或计算设备140在被配置为在接收到的提供商对象上实现给定机器学习模型的服务器(例如,缓存服务器121)处,向给定机器学习模型提供至少一个机器学习分类器。例如,当在接收到的提供商对象上实现不同的机器学习模型时,缓存服务器121可以使用针对不同的机器学习模型生成的机器学习分类器,如下文更详细地描述的。
可以与框402和框404周期性地和/或并行地实现框406、框408和框410,使得周期性地生成机器学习分类器并将其提供给缓存服务器121。
类似地,尽管已经相对于一个机器学习模型大体上描述了方法400的各方面,但是可以针对多个机器学习模型实现方法400。例如,方法400还可以包括控制器320和/或计算设备140:从协调对象中针对多个给定机器学习模型,提取(例如,在框406处)相应的给定机器学习训练数据;针对多个给定机器学习模型,使用相应的给定机器学习训练数据生成(例如,在框408处)至少一个相应的机器学习分类器;以及由一个或多个计算设备,在被配置为在接收到的提供商对象上实现多个给定机器学习模型的一个或多个服务器(例如,缓存服务器121)处,将至少一个相应的机器学习分类器提供(例如,在框410处)给多个给定机器学习模型。
接下来描述方法400的示例。首先关注图5,其描绘了系统100,但是没有网络116。图5示出了系统100的组件之间的通信链路,其之间以双头箭头表示;这样的通信链路可以包括网络116。否则,图5类似于图1,其中相似组件具有相似编号。特别地,图5与图6一起,描绘了方法400的框402和框404的示例。
在图5中,事件中心设备127正在接收消息501,如图所示,其可以包括从提供商系统104、提供商对象等接收到的响应。可以从系统100中的任何合适的源接收消息501,如上文所述。事件中心设备127将消息501发送到计算设备130。如图所示,事件中心设备127还向缓存服务器121提供消息501的提供商对象502。尽管提供商对象502被示为与消息501不同,但是提供商对象502可以以消息501的形式在缓存服务器121处被接收。
计算设备130接收(例如,在方法400的框402处)消息501,并从消息501和映射235生成协调对象503。在一些示例中,消息501和/或协调对象503可以以可扩展标记语言(XML)格式,然而消息501和统一对象503可以以任何合适的相应格式。
关注图6,其描绘了计算设备130接收消息501并使用映射235从消息501生成协调对象503的示例。特别地,给定映射235被示为包括给定消息类型的字段601(例如,针对航班的提供商对象)到相应协调对象503的字段603的映射。
如图所示,示例消息501的字段601(例如,其包括针对航班的提供商对象并且对应于来自提供商系统104的响应),包括“提供商对象ID”(例如,提供商对象标识符,例如,如由提供的系统104生成的)、“航空公司”、“始发地”、“目的地”、“时间”和“日期”。所示映射235将字段601的字段“航空公司”映射到对应的协调对象503的字段603的字段“航空公司”,如其间的箭头(与通信链路的箭头不同)所图形表示的。描绘了其他字段601到对应字段603的类似映射。特别地,针对字段601、603的每一个的字段“日期”和“时间”针对示例消息501和示例协调对象503具有不同的位置;例如,在协调对象503中,与消息501相比,字段“日期”和“时间”的位置颠倒了。尽管这样的示例相对简化,但是可以理解,消息501和协调对象503之间的格式差异可能要复杂得多。例如,日期、时间、航空公司名称等可以具有不同的格式,并且映射235可以包括用于将消息数据转译为协调对象数据的通用格式的数据。此外,消息501通常包括来自导致消息501的请求的数据(例如,其也可以在字段601中)。
此外,当接收到包括以不同格式的提供商对象的消息501时,映射235可用于生成具有用针对提供商对象的通用格式的对应协调对象503。
无论如何,来自消息501的消息数据用于针对协调对象类型填充协调对象503的相应字段。实际上,计算设备130还可以被配置为确定消息501的类型,并选择对应的映射235以生成对应的协调对象503。例如,计算设备130可以被配置为基于其格式和/或消息501的数据对消息501进行分类并相应地选择映射235。
返回图5,计算设备130在存储器135处存储(例如,在方法400的框404处)协调对象503,例如,在持续进行的基础上和/或在接收到消息501和/或生成协调对象503的情况下。
如图所示,存储器135存储多个协调对象503-1、503-2...503-N(例如,“N”是任何合适值的整数)。尽管未示出,但是可以根据类型来存储协调对象503。
如图所示,计算设备140包括多个机器学习模块335-1、335-2、335-3。尽管示出了三个模块335,但是计算设备140可以存储任何合适数量的模块335。特别地,计算设备140可以针对要使用协调对象503进行训练的每个机器学习模型存储模块335。
如图所示,每个模块335包括各自的特征提取器533-1、533-2、533-3(以下可互换地统称为多个特征提取器533,并且一般地称为特征提取器533)和给定机器学习模型535-1、535-2、535-3(以下可互换地统称为多个机器学习模型535,并且一般地称为机器学习模型535)。
给定特征提取器533可以被配置为从协调对象503提取给定机器学习训练数据(例如,“输入”和“输出”),用于训练给定机器学习模型535。例如,协调对象503针对机器学习模型535提供总体训练数据集(例如,协调对象503可以包括具有多个字段的记录,该字段对应于用于训练机器学习模型535的输入和输出)。给定特征提取器533可以根据被训练的给定机器学习模型535的目标和/或功能,从训练数据集(例如,被转换为可以用于给定机器学习模型535的格式的特定字段)中提取特征;这样的特征因此被用于训练机器学习模型535。
由给定特征提取器533从协调对象503提取的给定机器学习训练数据的类型通常可以取决于被训练的机器学习模型535的功能。上文已经描述了可以用作被用于训练特定机器学习模型535的输入和输出的协调对象503和/或给定机器学习训练数据的示例。然而,任何合适的协调对象503和/或给定的机器学习训练数据可以由给定特征提取器533提取,并用于训练机器学习模型535。实际上,协调对象503和/或给定机器学习训练数据可以由给定特征提取器533提取,该特征提取器533可以在计算设备140和/或模块335处预先配置。
例如,如图所示,机器学习模型535-1、535-2可以在缓存服务器121处实现,以对存储在存储器126中的提供商对象502分类。在一些示例中,机器学习模型535-1可以是根据可重用性对接收到的提供商对象502进行分类;因此,例如,机器学习模型535-1可以包括可重用性确定机器学习模型。在一些示例中,机器学习模型535-2可以是根据上下文特性对接收到的提供商对象502进行分类;因此,例如,机器学习模型535-2可以包括上下文确定机器学习模型。无论如何,提供商对象502通常按分类存储在缓存器126处,如下文所述。
机器学习模型535-3可以用于在响应于来自客户端设备112的针对提供商对象的请求时,确定存储在存储器126(例如,按分类)处的接收到的提供商对象502的紧迫性。例如,机器学习模型535-3可以包括紧迫性确定机器学习模型,并且特别地,有效性估计机器学习模型被配置为确定提供商对象502是否被估计为当前有效。例如,机器学习模型535-3可以被配置为确定当前时间不超过提供商对象的估计到期时间和估计TTL值中的一个或多个。
接下来将注意力转向图7,其基本上类似于图5,其中相似组件具有相似编号。特别地,图7描绘了方法400的框406、框408和框410的示例。
在图7中,计算设备140被示出为针对给定机器学习模型535,从存储在存储器135处的协调对象503中提取(例如,在方法400的框406处,并且例如使用特征提取器533)给定机器学习训练数据703-1、703-2、703-3(以下可互换地统称为机器学习训练数据703,并且一般地统称为一组机器学习训练数据703)。每组机器学习训练数据703包括存储在存储器135处的协调对象503的子集,该子集是基于正由特定模块335训练的相应机器学习模型535的功能选择的。
模块335使用机器学习训练数据的相应集合703来训练相应的机器学习模型535以生成(例如,在方法400的框408处)一个或多个相应的机器学习分类器735-1、735-2、735-3(以下可互换地统称为多个机器学习分类器735,并且一般地称为机器学习分类器735)。
虽然图7描绘了由每个模块335生成的一个机器学习分类器735,每个模块335可以生成多于一个的机器学习分类器735,例如用于根据不同的类别对提供商对象502进行分类。例如,当机器学习模型535-1用于根据可重用性对提供商对象502进行分类时,可以针对可重用性的多个类别生成机器学习分类器735-1。类似地,当机器学习模型535-2用于根据上下文特性对提供商对象502进行分类时,可以针对上下文特性的多个类别生成机器学习分类器735-1。
如图所示,计算设备140在缓存服务器121处提供(例如,在方法400的框410处)与相应的给定机器学习模型535相对应的机器学习分类器735。例如,在缓存服务器121处将机器学习分类器735-1提供给机器学习模型535-1,在缓存服务器121处将机器学习分类器735-2提供给机器学习模型535-2,并且在缓存服务器121处将机器学习分类器735-3提供给机器学习模型535-3(例如,计算设备140将机器学习分类器735发送给缓存服务器121)。缓存服务器121使用机器学习分类器735在接收到的提供商对象502上实现给定机器学习模型535。例如,如图所示,机器学习分类器735经由计算设备140与缓存服务器121之间的通信链路被发送到缓存服务器121。为清楚起见,以不同的方式(例如,使用不同的虚线样式)描绘了用于示出机器学习分类器735到缓存服务器121的传输的线。
如上文所述,一个或多个服务器120的功能在申请人的共同未决申请中进行了描述,该申请题为“DEVICE,SYSTEM AND METHOD FOR PROVIDING PROVIDER OBJECTS FROM ACACHE”,申请号为FR1911662。特别地,一个或多个服务器120可以实现机器学习模型535-1、535-2,以根据可重用性和上下文特性对提供商对象502进行分类,并且将提供商对象存储在存储器126中,例如按照经分类的提供商对象799。经分类的提供商对象799稍后被用于响应来自客户端设备112的请求,通过选择存储在存储器126处的满足请求标准的经分类的提供商对象799,例如至少部分地基于通过机器学习模型535-1、535-2的分类。当响应于请求时通过紧迫性和/或有效性,机器学习模型535-3可以被用于对存储在存储器126处并且满足请求的标准的经分类的提供商对象799进行进一步分类。因为机器学习模型535已经经由分类器735进行了“训练”,机器学习模型535可以用于使用经分类的提供商对象799来响应由客户端设备112的请求,而不是从提供商系统104请求提供商对象,这可以减少响应来自客户端设备112的请求的时间。
当接收到具有与先前的请求相似的特性,且请求相似的提供商对象的请求,并且将基于缓存作出响应时,如上所述对提供商对象进行分类在请求处理效率和响应时间方面提供技术优势。由于提供商对象先前是按照可重用性和/或上下文分类存储的,而不是不进行分类地存储提供商对象,因此与不进行分类相比,可以以更快、更有效的方式在缓存中识别和从缓存中检索提供商对象。为此,缓存识别请求的上下文特性(比如请求的地理来源,例如法国),并使用该信息作为缓存中的索引,以便使从缓存识别和检索所请求的提供商对象的处理资源减至最少。在这个意义上,提供商对象的分类构成如上所述按照先前接收的请求特性,将缓存分段成逻辑部分(类别)的缓存存储组织,这在请求处理效率方面是有利的。
一些细化实施例采用缓存的动态分段,缓存的动态分段跟踪请求特性随时间的动态变化,并以自动方式相应地适配数据组织。这些实施例提供了一种机制,用于通过取决于具有类似或不同的上下文/可重用性特性的请求的数量,按所跟踪的到来请求和/或提供商对象的可重用性/上下文特性定义新类别,来适配缓存分段的粒度级别。通常,缓存的动态分段指的是取决于到来请求的数量和/或与到来请求关联的准则,自动生成和/或消除存储在缓存中的经分类的提供商对象的类别,所述准则包括所述提供商对象的相应可重用性和相应上下文特性中的一个或多个。生成类别指的是按照新的可重用性/上下文特性或者可重用性/上下文特性的新组合对提供商对象进行分类,而消除类别指的是从缓存中删除按照特定可重用性/上下文特性分类存储的提供商对象。
按照一个例子,如果接收到被确定为至少在给定程度上与现有类别不相似的请求,那么缓存服务器121为该请求和具有相似特性的后续请求生成新类别。为此,缓存服务器121通过比较请求的上下文/可重用性特性与现有类别的上下文/可重用性特性,确定到来请求的相似性得分。
响应于基于相似性得分确定所述请求实质上类似于现有类别,基于分类存储在该实质上类似的类别中的提供商对象,处理并回复所述请求。响应于基于相似性得分确定所述请求实质上不类似于与现有类别,缓存服务器121创建与所述请求的上下文/可重用性特性对应的新类别。通过使用相似性得分的阈值,可以作出实质上相似和不相似之间的判定。例如,如果所接收的请求的相似性得分等于或高于相似性得分的阈值,那么确定该请求实质上类似于现有类别。另一方面,如果所接收的请求的相似性得分低于阈值,那么确定该请求与现有类别不相似。
例如,第一数量的提供商对象已按照五个属性K、L、M、N、P(第一类别)被分类,而第二数量的提供商对象已按照五个属性K、L、M、N、Q(第二类别)被分类,并且缓存126已被分段成对应的类别或逻辑部分(参见图8)。到来的指示属性K、L、M、N、P的第一请求被确定为与第一类别的相似性得分为100%,从而,基于第一类别处理该第一请求(意味着如果被确定为当前有效,那么可选地返回分类存储在第一类别中的一个或多个提供商对象)。到来的指示属性K、L、M、Q的第二请求被确定为与第二类别的相似性得分为80%,从而使用第二类别来处理该第二请求。然而,到来的第三请求指示属性K、L、Q。该第三请求被确定为与第二类别的相似性得分为60%,低于70%的例证阈值。从而,缓存服务器121通过将缓存126进一步分段成逻辑部分,为属性K、L、Q创建新的(第三)类别(图8)。具有这些上下文/可重用性特性的提供商对象使用这三个属性进行分类,并被存储在新类别(缓存段)中。
按照另外的(附加的或替代的)例子,如果在给定时段内收到多于给定上限阈值数量的具有相似特性的请求,那么缓存服务器121生成由一个或多个附加的上下文和/或可重用特性定义的新的缓存段,从而增加了分段的粒度级别。例如,多个存储的提供商对象可能先前是按照两个属性分类的。如果在给定阈值时段内收到多于给定阈值数量的指示这两个属性和附加属性的请求,那么缓存服务器121创建包括这两个属性和第三属性的新提炼的类别。由这三个属性表征的提供商对象随后也被存储在该新类别中(即,按这三个属性进行分类),而其他的提供商对象仍然被存储在先前定义的类别中。
同样地,如果在给定时段内,对某个类别的请求的数量低于给定下限阈值(例如,对于特定类别,一天中没有任何请求),那么缓存服务器121可以消除对应的类别,并且分类存储在该类别中的所有提供商对象从缓存中被删除。举个例子,如果在初始增加并持续一段时间保持恒定之后,对应的后续请求的数量在给定时段内最终降低到给定下限阈值数量以下,那么缓存服务器121可以在一段时间之后最终消除先前为属性K、L、Q创建的新类别。
在实施例中,通过取决于到来请求的数量和/或特性自动生成和/或消除类别,动态地分段缓存的上述功能由可重用性确定机器学习模型535和上下文确定机器学习模型535来实现。
以这些方式,缓存服务器121被安排为响应于上下文/可重用性特性和/或具有相似上下文/可重用性特性的请求的数量来自动适配类别(缓存段)。从而,取决于请求的变化的数量和特性,可以充分地保持现有缓存段的数量和大小。这一方面避免了太多的类别存储重复的提供商对象但是服务的请求太少的缓存的过度碎片化,以便有效地促进期望的整体处理和响应时间效率。另一方面,通过按需地自动生成新类别(如上所述),每个类别存储的提供商对象的数量保持在合理的水平(即,每个类别提供商对象不太多),使得基于提供商对象的分类来识别和检索提供商对象保持高效。
在一些实施例中,训练给定机器学习模型535还包括训练机器学习模型535以自动对缓存进行分段,以便基于缓存有效地响应请求。为此,可以响应于接收到表示提供商对象的上下文/可重用性特性的请求(消息)来提取训练数据,以便教机器学习模型535如何对提供商数据对象进行动态分类并在缓存中存储经分类的提供商对象。在这方面训练机器学习模型535还可以考虑接收到的请求的最近历史(例如,指代如上所述的类似特性的接收到的请求的数量)以及缓存的当前分类状态(更高或更低程度的分段),这两者都是产生新类别和/或消除现有类别的因素。
在本说明书中,可以将元件描述为“被配置为”执行一个或多个功能或“被配置用于”这样的功能。通常,被配置为执行或配置用于执行功能的元件被启用以执行该功能,或者适于执行该功能,或者被适配为执行该功能,或者可操作以执行该功能,或者以其他方式能够执行该功能。
应理解,出于本说明书的目的,语言“X、Y和Z中的至少一个”和“X、Y和Z中的一个或多个”可以解释为仅X、仅Y、仅Z、或两个或更多个术语X、Y和Z(例如,XYZ、XY、YZ、XZ等)的任意组合。在出现“至少一个...”和“一个或多个...”语言时,类似的逻辑可以应用于两个或更多个术语。
术语“大约”、“基本上”、“实质上”、“大约”等被定义为“接近”,例如,如本领域技术人员所理解的。在一些示例中,该术语应理解为“10%以内”,在其他示例中,“5%以内”,在其他示例中,“1%以内”,在其他示例中,“0.5%以内”。
本领域技术人员将理解,在一些示例中,可以使用预编程的硬件或固件元件(例如,专用集成电路(ASIC)、电可擦可编程只读存储器(EEPROM)等)或其他相关组件来实现本文描述的设备和/或方法和/或过程的功能。在其他示例中,可以使用能够访问代码存储器(未示出)的计算装置来实现本文描述的设备和/或方法和/或过程的功能,该代码存储器存储用于计算装置的操作的计算机可读程序代码。可以将计算机可读程序代码存储在计算机可读存储介质上,该计算机可读存储介质是固定的、有形的并且可以由这些组件直接读取的(例如,可移动磁盘、CD-ROM、ROM、固定盘、USB驱动器)。此外,应当理解,计算机可读程序可以被存储为包括计算机可用介质的计算机程序产品。此外,永久性存储设备可以包括计算机可读程序代码。还应当理解,计算机可读程序代码和/或计算机可用介质可以包括非暂态计算机可读程序代码和/或非暂态计算机可用介质。替代地,计算机可读程序代码可以远程存储,但是经由调制解调器或通过传输介质连接到网络(包括但不限于因特网)的其他接口设备可传输到这些组件。传输介质可以是非移动介质(例如,光学和/或数字和/或模拟通信线路)或移动介质(例如,微波、红外、自由空间光学或其他传输方案)或其组合。
本领域技术人员将理解,还有更多可能的替代示例和修改,并且以上示例仅是一个或多个示例的说明。

Claims (17)

1.一种用于使用与提供商对象相关联的消息来训练机器学习模型的方法,包括:
在一个或多个计算设备处,接收与表示由一个或多个提供商系统提供的项目的提供商对象相关联的消息,所述消息具有多于一种的格式;
在一个或多个存储器处存储与所述消息相对应的协调对象,所述协调对象是使用所述协调对象的协调数据到所述消息的消息数据的一个或多个映射生成的,所述协调对象具有针对协调对象类型的通用格式;
在所述一个或多个计算设备处,针对给定机器学习模型,从所述协调对象中提取给定机器学习训练数据;
在所述一个或多个计算设备处,针对所述给定机器学习模型,使用所述给定机器学习训练数据,生成至少一个机器学习分类器;以及
由所述一个或多个计算设备,将所述至少一个机器学习分类器提供给服务器处的所述给定机器学习模型,所述服务器被配置为在接收到的提供商对象上实现所述给定机器学习模型。
2.根据权利要求1所述的方法,其中,针对所述给定机器学习模型,将所述协调对象的给定协调数据标识为所述给定机器学习训练数据。
3.根据权利要求1或2所述的方法,其中,所述给定机器学习训练数据包括从所述消息中提取的输入和输出,所述输入包括来自对应于针对由所述一个或多个提供商系统提供的项目的响应的消息的数据,并且所述输出包括对应于导致所述响应的请求的相应数据。
4.根据权利要求1至3中任一项所述的方法,还包括:
在所述一个或多个计算设备处,从所述协调对象中,针对多个给定机器学习模型,提取相应的给定机器学习训练数据;
在所述一个或多个计算设备处,针对所述多个给定机器学习模型,使用所述相应的给定机器学习训练数据,生成至少一个相应的机器学习分类器;以及
由所述一个或多个计算设备,将所述至少一个相应的机器学习分类器提供给一个或多个服务器处的所述多个给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述多个给定机器学习模型。
5.根据权利要求1至4中任一项所述的方法,其中,所述给定机器学习模型用于以下一项或多项:
根据可重用性对接收到的提供商对象进行分类;
根据上下文特性对接收到的提供商对象进行分类;
确定接收到的提供商对象的紧迫性;以及
组合接收到的提供商对象的两个或更多个项目。
6.根据权利要求5所述的方法,其中所述给定机器学习模型用于根据可重用性和上下文特性中的一个或多个对多个提供商对象进行分类,包括:
将第一数量的提供商对象分类到由第一可重用性和上下文特性定义的第一类别中;
响应于接收到对具有与第一可重用性和上下文特性实质不同的第二可重用性和上下文特性的提供商对象的多个进一步请求,自动对具有第二可重用性和上下文特性的第二数量的提供商对象进行分类,并且存储经分类的所述第二数量的提供商对象,从而生成新的第二类别。
7.根据权利要求6所述的方法,其中根据可重用性和上下文特性中的一个或多个对所述多个提供商对象进行分类包括:响应于接收到指示第一可重用性和上下文特性的子集的多个进一步请求,自动对具有第一可重用性和上下文特性的子集的提供商对象进行分类,并存储经分类的具有第一可重用性和上下文特性的子集的提供商对象,从而生成新的第三类别。
8.根据权利要求1至7中的任一项所述的方法,其中,所述消息是从事件中心设备接收的,所述事件中心设备包括至少针对服务器的代理,所述服务器被配置为对针对由所述一个或多个提供商系统提供的项目的请求作出响应。
9.一种用于使用与提供商对象相关联的消息来训练机器学习模型的计算设备,包括:
一个或多个存储器;
通信接口;以及
控制器,被配置为:
经由所述通信接口,接收与表示由一个或多个提供商系统提供的项目的提供商对象相关联的消息,所述消息具有多于一种的格式;
在所述一个或多个存储器处,存储与所述消息相对应的协调对象,所述协调对象是使用所述协调对象的协调数据到所述消息的消息数据的一个或多个映射生成的,所述协调对象具有针对协调对象类型的通用格式;
从所述协调对象中,针对给定机器学习模型,提取给定机器学习训练数据;
针对所述给定机器学习模型,使用所述给定机器学习训练数据,生成至少一个机器学习分类器;以及
经由所述通信接口,将所述至少一个机器学习分类器提供给一个或多个服务器处的所述给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述给定机器学习模型。
10.根据权利要求9所述的计算设备,其中,针对所述给定机器学习模型,将所述协调对象的给定协调数据标识为所述给定机器学习训练数据。
11.根据权利要求9或10所述的计算设备,其中,所述给定机器学习训练数据包括从所述消息中提取的输入和输出,所述输入包括来自对应于针对由所述一个或多个提供商系统提供的项目的响应的消息的数据,并且所述输出包括对应于导致所述响应的请求的相应数据。
12.根据权利要求9至11中的任一项所述的计算设备,其中,所述控制器还被配置为:
从所述协调对象中,针对多个给定机器学习模型,提取相应的给定机器学习训练数据;
针对所述多个给定机器学习模型,使用所述相应的给定机器学习训练数据,生成至少一个相应的机器学习分类器;以及
经由所述通信接口,将所述至少一个相应的机器学习分类器提供给一个或多个服务器处的所述多个给定机器学习模型,所述一个或多个服务器被配置为在接收到的提供商对象上实现所述多个给定机器学习模型。
13.根据权利要求9至12中的任一项所述的计算设备,其中,所述给定机器学习模型用于以下一项或多项:
根据可重用性对接收到的提供商对象进行分类;
根据上下文特性对接收到的提供商对象进行分类;
确定接收到的提供商对象的紧迫性;以及
组合接收到的提供商对象的两个或更多个项目。
14.根据权利要求13所述的计算设备,其中所述给定机器学习模型用于根据可重用性和上下文特性中的一个或多个对多个提供商对象进行分类,包括:
将第一数量的提供商对象分类到由第一可重用性和上下文特性定义的第一类别中;
响应于接收到对具有与第一可重用性和上下文特性实质不同的第二可重用性和上下文特性的提供商对象的多个进一步请求,自动对具有第二可重用性和上下文特性的第二数量的提供商对象进行分类,并且存储经分类的所述第二数量的提供商对象,从而生成新的第二类别。
15.根据权利要求14所述的计算设备,其中根据可重用性和上下文特性中的一个或多个对所述多个提供商对象进行分类包括:
响应于接收到指示第一可重用性和上下文特性的子集的多个进一步请求,自动对具有第一可重用性和上下文特性的子集的提供商对象进行分类,并存储经分类的具有第一可重用性和上下文特性的子集的提供商对象,从而生成新的第三类别。
16.根据权利要求9至15中的任一项所述的计算设备,其中,所述消息是从事件中心设备接收的,所述事件中心设备包括针对至少服务器的代理,所述服务器被配置为对针对由所述一个或多个提供商系统提供的项目的请求作出响应。
17.一种计算机程序产品,包括存储在计算机可读介质上的程序代码指令,以在所述程序在计算机上执行时执行根据权利要求1至8中任一项所述的方法步骤。
CN202011106202.6A 2019-10-18 2020-10-16 训练机器学习模型的设备、系统和方法 Pending CN112686411A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR1911671A FR3102278A1 (fr) 2019-10-18 2019-10-18 Dispositif, système et procédé pour former des modèles d’apprentissage automatique en utilisant des messages associés à des objets de fournisseur
FR1911671 2019-10-18
US16/656,820 2019-10-18
US16/656,820 US11367017B2 (en) 2019-10-18 2019-10-18 Device, system and method for training machine learning models using messages associated with provider objects

Publications (1)

Publication Number Publication Date
CN112686411A true CN112686411A (zh) 2021-04-20

Family

ID=72752393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011106202.6A Pending CN112686411A (zh) 2019-10-18 2020-10-16 训练机器学习模型的设备、系统和方法

Country Status (2)

Country Link
EP (1) EP3809279A1 (zh)
CN (1) CN112686411A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061505A1 (en) * 2000-02-15 2001-08-23 Thinalike, Inc. Neural network system and method for controlling information output based on user feedback
US20030126021A1 (en) * 2000-12-06 2003-07-03 Yasumasa Mizushima Information processing apparatus and information processing method, network system, recording medium, and computer program
WO2018231187A1 (en) * 2017-06-12 2018-12-20 Google Llc Context aware chat history assistance using machine-learned models
CN109564575A (zh) * 2016-07-14 2019-04-02 谷歌有限责任公司 使用机器学习模型来对图像进行分类
CN109716346A (zh) * 2016-07-18 2019-05-03 河谷生物组学有限责任公司 分布式机器学习系统、装置和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061505A1 (en) * 2000-02-15 2001-08-23 Thinalike, Inc. Neural network system and method for controlling information output based on user feedback
US20030126021A1 (en) * 2000-12-06 2003-07-03 Yasumasa Mizushima Information processing apparatus and information processing method, network system, recording medium, and computer program
CN109564575A (zh) * 2016-07-14 2019-04-02 谷歌有限责任公司 使用机器学习模型来对图像进行分类
CN109716346A (zh) * 2016-07-18 2019-05-03 河谷生物组学有限责任公司 分布式机器学习系统、装置和方法
WO2018231187A1 (en) * 2017-06-12 2018-12-20 Google Llc Context aware chat history assistance using machine-learned models

Also Published As

Publication number Publication date
EP3809279A1 (en) 2021-04-21

Similar Documents

Publication Publication Date Title
US11922338B2 (en) Devices, systems and methods for providing ancillary objects from a cache and categorized provider objects
US6418413B2 (en) Method and apparatus for providing availability of airline seats
CN105630979B (zh) 航班查询方法及装置、系统
Kazak et al. Artificial intelligence in the tourism sphere
CN104169950B (zh) 利用面向批处理的计算的数据库系统
Dechampai et al. A differential evolution algorithm for the capacitated VRP with flexibility of mixing pickup and delivery services and the maximum duration of a route in poultry industry
US9064212B2 (en) Automatic event categorization for event ticket network systems
Tarhini et al. Swarm intelligence-based hyper-heuristic for the vehicle routing problem with prioritized customers
Wang et al. RETRACTED ARTICLE: Efficiency optimization and simulation to manufacturing and service systems based on manufacturing technology Just-In-Time
Samaras et al. A prediction model of passenger demand using AVL and APC data from a bus fleet
CN112288453A (zh) 标签选择方法和装置
US11367017B2 (en) Device, system and method for training machine learning models using messages associated with provider objects
CN112686411A (zh) 训练机器学习模型的设备、系统和方法
EP4073720A1 (en) Devices, systems and methods for providing ancillary objects from a cache and categorized provider objects
Avdeenko et al. Taxi service pricing based on online machine learning
Wu et al. A user constraint awareness approach for QoS-based service composition
US20140214734A1 (en) Classifying a submission
US11100454B1 (en) CDD with heuristics for automated variable use-case based constrained logistics route optimization
EP3809276A1 (en) Device, system and method for providing provider objects from a cache
Li et al. Modeling a hotel room assignment problem
FR3102278A1 (fr) Dispositif, système et procédé pour former des modèles d’apprentissage automatique en utilisant des messages associés à des objets de fournisseur
US11074591B2 (en) Recommendation system to support mapping between regulations and controls
Rizzo et al. Uncertainty-bounded reinforcement learning for revenue optimization in air cargo: a prescriptive learning approach
Liu et al. Optimizing the ground intra-city express delivery network: An integrated multiple centrality assessment, multi-criteria decision-making, and multi-objective integer programming model
US11586978B2 (en) Device, system and method for providing provider objects from a cache

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