用于交互式搜索表格的推荐引擎的制作方法_3

文档序号:8531906阅读:来源:国知局
t库中的JavaScript源代码并因此执行脚本。脚本语言构建交互式表格40和交互式表格40的用户接口元素,接受到控件的内容输入,预先确认到控件中的数据输入和/或准备要从客户端设备16发送到服务器12的的表格数据,并且促使由客户端设备16从服务器12接收到的内容被输出到控件42、4344、45、46,其还有待于由用户输入填充或者另外寻址和/或在交互式表格40上显示给用户。
[0040]客户端应用32还可包括使得能够实现客户端设备16与服务器12之间的数据交换的程序代码。在一个实施例中,数据交换可使用AJAX、可扩展通讯和存在协议(XMPP)等以异步、非阻挡方式发生,并且由客户端设备16发起。客户端应用32可以异步地且优选地在后台中向服务器12发送数据以及从其检索数据而不与交互式表格40的显示和行为相干扰。
[0041]替换地,可使用其中由服务器12发起用于数据交换的请求的推送技术。
[0042]参考图4,其中相同的附图标记指代图1中的相同特征,服务器12包括一个或多个处理单元58,其用于执行一个或多个指令以执行和/或与客户端设备16相交互以执行根据本发明的实施例的一个或多个操作。服务器12包括可被一个或多个处理单元58访问的存储器60。服务器12的存储器60被配置为存储软件应用程序或模块62、64、66、68和/或操作系统70,其中,模块6264、66、68和操作系统70每个一般地包括一个或多个指令,其被存储为可被每个处理单元58从存储器60读取的程序代码。该指令在被处理单元58执行时可促使每个处理单元58执行一个或多个操作以从而执行要执行体现本发明的各种实施例的步骤、元件和/或方框所需的步骤。
[0043]存储器60可表示随机存取存储器(RAM),其包括计算机的主储存器以及任何附加水平的存储器,例如,高速缓冲存储器、非易失性或备份存储器(例如,可编程或闪速存储器)、大容量存储器、ROM等。另外,可认为存储器60包括在物理上位于别处的存储装置,例如与服务器12通信的任何计算系统的处理单元中的高速缓冲存储器以及与服务器12通信的任何计算系统上的任何储存设备(例如,远程存储数据库、远程计算设备的存储设备、云储存器等)。
[0044]服务器12还包括输入/输出(“I/O”)接口 72、显示器74以及外部设备76。可将服务器12的I/O接口 72配置成接收来自显示器74的数据和来自外部设备76的被传送至处理单元58的数据,并且可将其配置成将数据从处理单元58输出到显示器74和外部设备76。显示器74和外部设备76可用于允许诸如管理员之类的用户从服务器12接收输出数据和/或向服务器12供应输入数据。服务器12还可包括网络适配器78,其供应与网络14的物理连接且被配置为向通过网络14向客户端设备16发送数据和/或从客户端设备16接收数据。网络适配器78可以是硬接线链路,诸如IEEE 802.3 (以太网)链路、使用无线网络协议的无线链路,诸如802.11 (W1-Fi)链路、或用于将服务器12与网络14对接的任何其它适当链路。
[0045]存储器60还包括历史数据库80、推荐规则数据库82、商业规则数据库84以及参数数据库86。数据库80、82、84、86中的每一个包含数据及存储和组织数据的支持数据结构。特别地,数据库80、82、84、86中的每一个表示可用任何数据库组织和/或结构来布置的结构化数据集合,包括但不限于关系数据库、分级数据库、网络数据库和/或其组合。响应于查询而使用作为指令在处理单元58上执行的计算机软件应用程序形式的数据库管理系统来访问存储在数据库80、82、84、86的记录中的信息或数据。数据库80、82、84、中的每一个组织并存储数据中的相应数据,使得数据可以被高效地使用。数据的组织可支持要求信息的过程(例如,在推荐规则数据库82中找到推荐规则)。
[0046]服务器12处的推荐模块62直接地与客户端设备16相交互。推荐模块62接收已经输入到交互式表格40的控件42、43、44、45、46中或者由用户在交互式表格40的控件42、43、44、45、46中选择的值。推荐模块62将从交互式表格40接收到的所有用户选择值存储在历史数据库80中。与存储过程并行地,还使用接收到的值基于部分用户条目对概率式推理过程进行馈送,调用存储在推荐规则数据库82中的一组推荐规则。响应于部分旅行搜索查询,推荐模块62查询推荐规则数据库82并接收适合于查询上下文的一个或多个推荐规贝1J。可使用查询语言来构造查询,诸如结构化查询语言(SQL)。
[0047]推荐模块62应用推荐规则根据用于已填充表格控件的已知的一组值来确定用于交互式表格40中的未填充控件的预测值。例如,用于多个控件的多个已知值可导致用于具有统计相关的一个或多个未填充控件的推荐和优选地用于针对以概率相关性的形式具有统计相关的多个控件中的每一个的一个或多个值的推荐。可将推荐的每个推荐值从服务器12传送到客户端设备16。
[0048]客户端设备16处的客户端应用32可使用从服务器12接收到的推荐值在到控件的任何用户输入之前预先填写或预先填充控件中的一个,将值排序以在控件中建议给用户,对交互式表格进行其它修改(例如,控件中的掩码选择)等。结果是基于交互式表格40中的已知的一组一个或多个已填充控件,由推荐模块62应用体现交互式表格40中的一个或多个未填充控件的值或可能值的至少一个推荐规则以用于填充交互式表格40中的未填充控件的功能,并促进由客户端设备16的用户进行的旅行搜索查询的简化输入。
[0049]由推荐模块62进行的推荐还可考虑客户端设备16处的用户的个人历史数据。例如,可已知用户的身份(即,注册用户),并且推荐模块62可访问关于过去推荐的用户的个人历史数据。用户可以是注册用户,对于其而言存储了用于控件的值的偏好且从而称为个人历史数据。可与从推荐规则导出的控制值相结合地考虑从个人历史数据导出的用于控件的用户偏好。
[0050]由推荐模块62进行的推荐还可考虑关于客户端设备16的上下文的信息。例如,客户端设备16可将诸如位置之类的设备相关信息作为数据传送至服务器12以便在进行推荐时使用。客户端设备16还可传送其它类型的设备无关信息,包括可以在客户端设备16上找到和/或计算的数据,诸如日间时、周中日等。这些类型的信息还可在进行推荐时被推荐模块62考虑。
[0051]学习模块64被配置为从多个数据源输入数据并训练用来生成推荐规则作为与数据有关的预测的预测算法。特别地,学习模块64生成互相关(即,相互相关)的交互式表格40的控件之间的推荐规则。该预测算法是基于这样的假设,即交互式表格40的某些或所有控件在统计上互相关,可能作为控件的相关对或者作为控件的相关群组,使得到一个或多个控件中的值的输入影响用于一个或多个其它控件的预测值。一个或多个控件可在统计上与一个或多个其它控件相关以提供作为推荐规则的基础且由预测算法施加以计算推荐规则的相互关系。例如,多个控件可在统计上与多个其它控件相关以提供相互关系。
[0052]学习模块64向推荐规则数据库82供应推荐规则,其充当储存库以存储推荐规则。学习模块64的执行被从推荐模块62的执行解耦。例如,学习模块64可以规则的循环(例如,每小时一次)且在不被用户交互触发的情况下异步地运行。特别地,学习模块64可独立于由客户端设备16处的用户交互引起的任何类型的触发而确定推荐规则。
[0053]对学习模块64进行馈送的一个数据源是历史数据库80,其包含从用户累积的、模块62、64两者都可访问的历史合作数据。历史数据库80可将数据存储为原始数据或聚合数据。推荐模块62将表示交互式表格40的所有用户的选择的数据存储到历史数据库80。可随着从客户端设备16接收到用户选择而实时地更新历史数据库80,并且以递增方式刷新所有数据实例,无论是原始数据还是聚合数据。
[0054]学习模块64从历史数据库80读取表格选择的合作历史数据以便在生成推荐规则时使用。来自历史数据库80的输入数据表示观察到的用户选择之间的可能关系的实例,并且推荐模块62捕捉历史数据库80中的数据的未知底层概率分布的感兴趣特性。
[0055]历史数据库80还可包括与客户端设备16处的交互式表格40的每个特定用户相关的表格选择的个人历史数据。推荐模块62可从历史数据库80读取此个人历史数据以便与从来自推荐规则数据库82的推荐规则的应用导出的推荐相结合地在生成推荐时使用。
[0056]如果合作历史数据被作为原始数据存储在历史数据库80中,则学习模块64将可在没有限制的情况下访问所有合作历史数据,使得预测算法可以检测到用户选择模式的变化。例如,当前并不重要或未区别的与用户选择有关的参数可能在将来变得重要或被区别,并且因此需要原始数据,使得学习模块64可以适应于该变化。为了容纳大量的记录,可以以智能方式组织原始数据,诸如避免数据重复且在不损失粒度的情况下每当可能时存储计数而不是单独记录。
[0057]如果将合作历史数据聚合并作为聚合数据存储在历史数据库80中,则学习模块64能够比处于其原始形式的情况下更快地处理数据。以聚合形式来存储数据消除了每当运行学习模块64时对聚合数据的需要。
[0058]在确定推荐规则的过程期间,其它数据源可被学习模块64访问。例如,一个此类数据源可以是商业规则数据库84,其包含预定义商业规则。例如,典型商业规则可以是大多数休闲旅行包括星期六夜间逗留。可被学习模块64访问的另一数据源是参数数据库86,其包含静态参数。例如,典型静态参数是用以忽视用于交互式表格40的控件的某个值的指令。
[0059]学习模块64可使用一个或多个预测算法基于旅行者的概率趋势来计算用于推荐规则数据库82的推荐规则。
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1