CN109412883A - 推荐路径追踪方法、装置和系统 - Google Patents

推荐路径追踪方法、装置和系统 Download PDF

Info

Publication number
CN109412883A
CN109412883A CN201810924296.4A CN201810924296A CN109412883A CN 109412883 A CN109412883 A CN 109412883A CN 201810924296 A CN201810924296 A CN 201810924296A CN 109412883 A CN109412883 A CN 109412883A
Authority
CN
China
Prior art keywords
array
recommendation
dictionary
recommendation paths
path tracing
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.)
Granted
Application number
CN201810924296.4A
Other languages
English (en)
Other versions
CN109412883B (zh
Inventor
代俊
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.)
Alibaba China Co Ltd
Original Assignee
Guangdong Shenma Search Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Shenma Search Technology Co Ltd filed Critical Guangdong Shenma Search Technology Co Ltd
Priority to CN201810924296.4A priority Critical patent/CN109412883B/zh
Publication of CN109412883A publication Critical patent/CN109412883A/zh
Application granted granted Critical
Publication of CN109412883B publication Critical patent/CN109412883B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了一种推荐路径追踪方法、系统和装置。所述方法包括:记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。本发明通过位存储以及优选的字典压缩方式,极大地减少了推荐过程中路径的存储,并且由于存储数据的尺寸有限,因此可以使用本机保存代替远程传输保存,从而大幅降低了网络数据传输的需要。

Description

推荐路径追踪方法、装置和系统
技术领域
本发明涉及互联网技术,尤其涉及一种推荐路径追踪方法、装置和系统。
背景技术
在推荐系统中,存在着各种不同的推荐策略,每一种策略都会在推荐过程中经过推荐模型的各种不同的路径,如何在在线系统中保留每一种推荐策略的中间数据,是一个巨大的挑战。通常比较传统的做法是,在推荐过程中每一个需要记录的点打印日志和推荐ID,随后单独启动一个服务收集这些日志和推荐ID,并将这些日志和推荐ID上传到一个专门的服务器进行搜索和检索。
这一收集策略的存在诸多问题。首先,由于推荐过程中需要记录的点极多(每次推荐上千量级),因此每次推荐所需的存储空间较大。其次,由于生成的日志需要启动服务进行收集,会占据本地服务器的处理能力,再次,日志的频繁上传会导致磁盘I/O和网络I/O量特别大。在推荐任务繁重的时段,但是追踪信息的保存就会占据大量的系统资源。
由此,需要一种能够以较低代价实现推荐路径追踪的方案。
发明内容
为了解决如上至少一个问题,本发明提出了一种推荐路径追踪方案,通过位存储以及优选的字典压缩方式,极大地减少了推荐过程中路径的存储,并且由于存储数据的尺寸有限,因此可以使用本机保存代替远程传输保存,从而大幅降低了网络数据传输的需要。
根据本发明的一个方面,提出了一种推荐路径追踪方法,包括:记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。由此,通过在实际路径生成过程中进行打点记录,消除了日志逐点上传的需要,从而降低了路径追踪中存储和传输的需要。
优选地,记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过包括:构造每一位对应于N个追踪点中的一个追踪点的数组;以及对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。由此,可以通过打点记录的比特化,进一步提升记录效率,并且能够获取便于进行后续处理的追踪数组。
获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组可以包括:从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
优选地,本发明的推荐路径追踪方法还可以包括:将所述路径追踪数组与推荐路径字典里的数组相比较;以及将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。由此,通过使用位数更短追踪编号代替数组存储,能够进一步降低对存储空间的需求。
优选地,将所述路径追踪数组与推荐路径字典里的数组相比较包括:将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域;以及在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。由此,可以通过引入索引表提升数组比较的效率。
优选地,本发明的推荐路径追踪方法还可以包括:在路径追踪数组与推荐路径字典里的数组都不相同的情况下,在推荐路径字典中或其他位置存储中存储所述路径追踪数组。进一步地,可以为存储的所述路径追踪数组分配一个新的追踪编号;以及将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。由此提升了针对新数组的扩展性。
本发明的推荐路径追踪方法还可以包括:汇总存储的所述路径追踪数组及为其分配的追踪编号;以及将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。由此,方便将新数组更新至字典。
优选地,本发明的推荐路径追踪方法还可以包括:存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。由此实现对字典的构造。
根据本发明的另一个方面,提出了一种推荐路径追踪系统,包括:路由服务器,用于将与用户ID对应的推荐请求分配给相应的工作服务器;与所述路由服务器有线或无线连接的多个工作服务器,每个所述工作服务器用于:基于推荐请求生成推荐结果;记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。由此,将追踪数组的构造和获取限制在本地进行,提升了系统整体的传输和处理效率。
进一步地,工作服务器用于记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过可以包括:构造每一位对应于N个追踪点中的一个追踪点的数组;以及对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
工作服务器用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组可以包括:从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
优选地,路由服务器可以用于将统一的推荐路径字典分发给多个工作服务器,并且每个所述工作服务器进一步用于:将所述路径追踪数组与推荐路径字典里的数组相比较;以及将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。由此,通过路由服务器的统一字典下发,为各个工作服务器本地进行字典压缩和追踪信息存储提供了可能。
路由服务器可以进一步用于:基于所述推荐路径字典生成包括多个M位索引项的推荐路径字典索引表,其中M是大于2且小于N的整数;以及将所述推荐路径字典索引表分发给所述多个工作服务器;所述工作服务器用于将所述路径追踪数组与推荐路径字典里的数组相比较包括:将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较;基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域;以及在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
优选地,工作服务器可以进一步用于:在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
优选地,工作服务器可以进一步用于:为存储的所述路径追踪数组分配一个新的追踪编号;以及将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
优选地,路由服务器可以进一步用于:汇总多个所述工作服务器存储的所述路径追踪数组及为其分配的追踪编号;将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典;以及将更新的推荐路径字典分发给多个所述工作服务器。
关于字典构造,多个所述工作服务器可以用于:存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;而所述路由服务器则可用于:基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
根据本发明的另一个方面,提出了一种推荐路径追踪装置,包括:记录单元,用于记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;获取单元,用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
优选地,记录单元可以包括:数组构造单元,用于构造每一位对应于N个追踪点中的一个追踪点的数组;以及置位单元,用于对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
相应地,获取单元可以用于从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
在一个优选实施例中,推荐路径追踪装置还可以包括用于进行字典压缩的装置。具体地,装置可以包括比较单元,用于将所述路径追踪数组与推荐路径字典里的数组相比较;以及编号存储单元,用于将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。
比较单元可以包括:索引比较单元,用于将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及字典跳转单元,用于基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域,并且所述比较单元用于在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
优选地,推荐路径追踪装置可以包括:数组存储单元,用于在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
作为优选或者替换,推荐路径追踪装置还可以包括编号分配单元,用于为存储的所述路径追踪数组分配一个新的追踪编号,并且所述编号存储单元用于将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
进一步地,推荐路径追踪装置还可以包括汇总单元,用于汇总存储的所述路径追踪数组及为其分配的追踪编号;以及字典更新单元,用于将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。
为了构造字典,推荐路径追踪装置还可以包括:数组存储单元,用于存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及字典构造单元,用于基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
根据本发明的另一个方面,提出了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的推荐路径追踪方法。
根据本发明的再一个方面,提出了一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的推荐路径追踪方法。
本发明的推荐路径追踪方案通过位存储的方式,最小化的压缩了推荐系统中推荐路径的每一个关键位置的信息,减少了推荐过程中路径的存储;基于推荐路径的重复性和相似性,使用字典方式进一步压缩存储推荐关键路径所需位数,同时能够对记录关键点路径的数组进行快速定位与查找;进一步地,通过本机保存,避免了远程服务器专门保存追踪信息的需要,从而大幅减少所需的网络数据传输。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了根据本发明一个实施例的推荐路径追踪方法的流程示意图。
图2示出了根据本发明另一个实施例的推荐路径追踪方法的流程示意图。
图3示出了一个能够执行本发明的推荐路径追踪方案的推荐系统的组成示意图。
图4示出了根据本发明一个实施例的推荐路径追踪装置的结构示意图。
图5示出了根据本发明一个实施例可用于实现上述推荐路径追踪方法的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在现今社会,人们花费大量时间从互联网上获取资讯。如何为用户提供感兴趣的信息流以增加用户粘性,成为各大内容提供方所追求的目标。因此,各大内容提供方也致力于建立一个性能良好的内容推荐系统。在推荐系统中,存在各种不同的推荐策略。例如,可以基于兴趣、位置、热门、新闻和历史点击等诸多方面进行推荐。
每一种推荐策略都会在推荐系统中经过各种不同的路径。因此在获取最终的推荐结果之前,都会在推荐系统中经历多次决策。通常,基于用户对推荐结果的反馈(例如点击转化率),需要调整在推荐系统中的决策过程,以提升用户对推荐结果的满意程度,例如,推荐用户更愿意点击浏览的内容。这时,就需要在在线推荐系统中保留决策过程中每一种推荐策略的中间数据。
如何高效且准确地保留中间数据于是成为本领域内的一大挑战。如上所述,传统的做法是在推荐过程中每一个需要记录的点打印日志和推荐ID,随后单独启动一个服务收集这些日志和推荐ID,并将这些日志和推荐ID上传到一个专门的服务器进行搜索和检索。但这一策略的存在诸多问题。首先,由于推荐过程中需要记录的点极多(每次推荐上千量级),因此每次推荐所需的存储空间较大。另外,由于生成的日志需要启动服务进行收集,会占据本地服务器的处理能力,再次,日志的频繁上传会导致磁盘I/O和网络I/O量特别大。在推荐任务繁重的时段,但是追踪信息的保存就会占据大量的系统资源。
有鉴于此,本发明提出了一种简单的追踪机制,通过数组表示的方式对请求路径进行处理,由此大幅压缩追踪信息所需占据的空间。上述数组表示能够与字典压缩相结合,以进一步压缩所需空间。另外,上述字典可以分发给每个工作服务器,使得对追踪信息的检索能够在本机上进行,由此免于网络传输,减轻了追踪信息收集对推荐系统性能的影响并提升了信息收集本身的效率。
图1示出了根据本发明一个实施例的推荐路径追踪方法的流程示意图。
在步骤S110,记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数。由于需要充分考虑各种推荐场景和需要,因此一个好的推荐模型可能涉及相当的决策点(因为决策结果不同需要进行追踪,因此也可称为追踪点)。换句话说,推荐模型所包含的追踪点个数N通常相当大,例如千量级。因此,在一个实施例中,N可以是远大于2的整数。在某一具体推荐结果的生成过程中,虽然很少需要遍历每一个决策点,但通常一次推荐结果生成涉及的追踪点的量也相对较多。
随后,在步骤S120,获取用于表示N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
这样,就将现有技术中逐决策点进行的日志收集修改为针对推荐模型内N个决策点的打点行为,最终将针对一次推荐的所有打点结果进行汇总,一次性得到能够用于还原推荐路径的数组,从而大大降低了推荐路径追踪所需的处理、存储和传输开销。
进一步地,步骤S120可以包括:构造每一位对应于N个追踪点中的一个追踪点的数组;以及对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。例如,在一个推荐系统中,包括自上而下的1024个决策点。因此可以为每一次的推荐结果生成构造一个1024位(bit)的数组,该数组内每一位的位置对应于推荐系统中一个具体位置的追踪点。当针对某一推荐请求生成推荐结果的过程中,每到一个追踪点,就可以将该追踪点在数组内对应位置的那一位进行标记。由此,在推荐结果生成完毕时,能够同时得到标记具体推荐路径的数组。在需要时,即可利用该数组中每一位的取值反推出具体的推荐路径。在此,置位可以是置零,也可以是置1。例如,可以在构造数组时使每一位初始为0,并在经过追踪点时将相应位数置1;也可以正好相反,在构造数组时使每一位初始为1,并在经过追踪点时将相应位数置0。
相应地,步骤S120可以进一步包括:从与推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。在一个实施例中,上述被对应置位的数组可以就是获取的路径追踪数组。在其它实施例中,可以从所述数组生成路径追踪数组。例如,在N位的数组长于路径追踪数组时,可以将所述数组进行切分,并生成多个路径追踪数组。而在长度不足时,则可将不足的位补零(例如,在经过追踪点置1的情况下)。
在推荐系统中,虽然包括各种推荐策略和过滤策略,但很多类的推荐请求在推荐系统中所经过的推荐路径是类似的。例如,虽然一个推荐系统内可以包括N=1024个追踪点,并且可以使用一个1024位的数组来对这些点进行对应位置的打孔,但是在实际应用中,由于推荐请求在整体上的类似性,并非真的存在2的1024次方的路径追踪数组的取值。相反地,路径追踪数组的可能取值数要远小于2的1024次方,例如,可能只有2的16次方。而这为使用压缩字典编号(例如,一个16位的编号)来代替路径追踪数组本身提供了可能。
图2示出了根据本发明另一个实施例的推荐路径追踪方法的流程示意图。与图1类似的,步骤S210和S220同样涉及记录和获取路径追踪数组,但不同之处在于图2的方法还涉及字典压缩。
具体地,在步骤S230,可以将路径追踪数组与推荐路径字典里的数组相比较。随后,在步骤S240,可以将推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。由此,不同于对数组本身的存储,可以使用位数更低(且通常低得多)的追踪编号来经由字典的推荐路径还原。例如,使用16位的追踪编号来代替1024位的路径追踪数组进行存储。
在此,推荐路径字典可以是在前生成的数组集合。例如,推荐系统可以汇总前一天(也可以是别的在前时段)整个系统下的多个推荐请求(通常是海量推荐请求)的路径追踪数组,对这些路径追踪数组进行去重和排序,以生成用于后续数组比较的推荐路径字典。在推荐路径字典中,可以按照各种次序对其中的数组进行排序。例如,可以按数组本身的大小进行排序。随后,可以为经排序的每一个数组分配一个编号(即,追踪编号)。由此,方便使用更为简短的追踪编号来代替字典比对命中的数组进行存储。
更进一步地,可以对比较方法进行优化,在一个实施例中,步骤S230可以包括:将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域。由于路径追踪数组的位数通常较长,例如,1024位,因此直接与整个字典中的每个数组进行比较(尤其是在内存中直接进行比较的情况下)的开销过大且效率不高。为此,可以首先构造一个尺寸较小的字典索引表。例如,在按照数组大小排序的推荐路径字典中,汇总所有数组的前8位数据(以数组最左位开始的M=8位的数据)以生成字典索引表。上述生成的字典索引表由于尺寸较小,可以优选被加载到内存。随后,在进行生成的路径追踪数组与推荐路径字典内各数组的比较时,可以首先将路径追踪数组的前8位直接与内存中加载的字典索引表相比较,当在字典索引表中查找出相同的8位索引时,则可跳转至以上述8位索引开头的字典区域,在上述字典区域内进行整个数组长度的比对,以确定是否能够在字典中找出完全相同的数组。
通过引入基于字典索引表的二次比较,能够提升数组命中的搜索效率,从而提升整体的计算效率。
在步骤S250,在路径追踪数组与推荐路径字典里的数组都不相同的情况下,则可在推荐路径字典中或其他位置存储中存储路径追踪数组。更进一步地,可以为存储的所述路径追踪数组分配一个新的追踪编号;以及将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。由此,在字典未命中的情况下,依然能够实现使用更简短的追踪编号对路径追踪数组本身的代替存储。
在针对推荐路径追踪方法的优选实施例中,还可以包括对字典的更新和生成步骤。
在一个实施例中,本发明的推荐路径追踪方法还可以包括:汇总存储的所述路径追踪数组及为其分配的追踪编号;以及将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。由此,实现字典的可扩展性。
在另一个实施例中,本发明的推荐路径追踪方法还可以包括:存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。由此实现对字典的构造。
在典型的推荐系统中,主要存在路由服务器和工作服务器两类节点。图3示出了一个能够执行本发明的推荐路径追踪方案的推荐系统的组成示意图。
如图3所示,一个典型的推荐系统可以包括路由服务器310和多个工作服务器320。路由服务器310可以用于分发请求任务,以及本发明优选实施例中的字典等。工作服务器320则可执行具体的推荐结果生成,将相应的推荐结果返回给路由服务器,并可上传例如不在字典中记载的数组。
推荐请求首先被汇总至路由服务器310,路由服务器310根据用户的ID进行hash(哈希处理),以将对应的用户ID信息发送至工作服务器。多个工作服务器320与路由服务器310有线或无线连接,并且可以执行具体的路径追踪数组的生成过程。于是,每个工作服务器320可以用于:基于由路由服务器310分配的推荐请求生成推荐结果;记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
更具体地,工作服务器320可以用于记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过包括:构造每一位对应于N个追踪点中的一个追踪点的数组;以及对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。所述工作服务器用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组则可包括:从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
在包括字典命中与编码替换存储的优选实施例中,路由服务器310可以起到字典的汇总生成、分发和更新的功能。
在字典生成阶段,多个工作服务器320可以用于:存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组。相应地,路由服务器310可以汇总这些路径追踪数组,并且基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。例如,路由服务器310可以收集一定时间内生成的数组,对这些数组进行去重、排序和编号分配,以构造一个新的字典。优选地,还可以根据构造好的字典,再构造一个字典检索表。随后,路由服务器310可以将构造好的字典(及其检索表)分发给每一个工作服务器320。
工作服务器320在接收到推荐路径字典之后,便可进行路径追踪数组与字典内数组及其追踪编号的比较替换。具体地,每个工作服务器320可以进一步用于:将路径追踪数组与推荐路径字典里的数组相比较;以及将推荐路径字典里相同数组的追踪编号存储为针对推荐结果的推荐路径信息。
如上所述,路由服务器310可以用于字典检索表的生成和分发,以提升字典命中的比较效率。具体地,路由服务器310可以进一步用于:基于推荐路径字典生成包括多个M位索引项的推荐路径字典索引表,其中M是大于2且小于N的整数;以及将推荐路径字典索引表分发给多个工作服务器320。随后,工作服务器320可以将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较;基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域;以及在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。由此,实现数组的快速查找与命中。
在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,工作服务器320可以在所述推荐路径字典中或其它位置存储中存储所述路径追踪数组。换句话说,工作服务器320可以直接更新本机的字典,或者可以专门为新数组开辟一个新的存储位置,以供路由服务器310的汇总与更新。
在此情况下,工作服务器320可以进一步用于:为存储的所述路径追踪数组分配一个新的追踪编号;以及将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。相应地,路由服务器310可以进一步用于:汇总多个所述工作服务器存储的所述路径追踪数组及为其分配的追踪编号;将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典;以及将更新的推荐路径字典分发给多个所述工作服务器。
由上可知,上述推荐系统(及其包括的路由服务器和工作服务器)可以在执行推荐的同时,完成本发明的推荐路径追踪。换句话说,上述推荐系统300也可以用作本发明的推荐路径追踪系统。
如下将结合一个具体示例,描述本发明推荐路径追踪系统的一个优选实施例。
本发明的推荐路径追踪系统主要涉及推荐系统中的路由服务器和工作服务器两类节点。一个推荐请求的主要流程是通过路由服务器分发至一个具体的工作服务器进行执行的过程。路由服务器会首先根据用户ID进行哈希处理,以将对应的UID(用户标识)信息发送到一台工作服务器上去。
为了执行针对字典压缩的优选实施例,首先需要进行离线字典的训练。于是,可以首先收集在每台工作服务器上存储的路径信息(即,路径追踪数组)并汇总。然后使用1024位进行切割(例如,在构造由1024位数组组成的字典的情况下),对1024位的数组信息进行收集,对来自各个工作服务器的数组进行去重和排序,例如,可以按照由小到大的顺序进行排序。在一个实施例中,可以将收集的1024位数组按照出现次数的数量进行截断,仅保存频繁出现的路径追踪数组,由此可控制字典的大小。
优选地,可以进一步构建离线字典索引。字典索引表的建立能够方便对如上生成的1024位数组的检索。首先可以按照1024位数组的前8位(在另一例中为前16位)来标识该1024位数组在字典内的所在区域。例如,如果两个1024位的数组前16位相同,则这两个数组同属于字典的同一区域。
在构造出了离线字典及其优选字典索引之后,可以在每天的固定的时间点,将这些字典分发到各个工作服务器上。每台工作服务器随后加载该字典,并将生成的例如16位字典索引表加载到内存中,而其对应的实际完整位数的数组可以保存到磁盘上。
随后,各个工作服务器可以针对推荐请求进行推荐路径的生成操作。该步骤如上所述需要对各个推荐路径的关键点进行标记。即,对于每个关键点都会对应于路径追踪数组中的一个位。走到该关键点则置为1,否则则保持为0。然后对所有的生成位按照1024位进行分割,对于不足1024位的数据则进行补0处理,最终生成P个1024位,其中,P可以等于1,或更大的整数值。换句话说,对于一个推荐请求所记录的推荐路径,可由1个或更多个路径追踪数组进行表示。
随后,可以针对如上生成的P个1024位数组,进行字典命中操作。例如,可以首先对于每一个1024位数组的前16位到离线字典的内存索引中进行查找,找到对应1024位所在字典区域的索引,然后针对字典文件中对应区域的1024位进行逐个对比,直到找到完全相同的数组,记录该数组的追踪编号并加以存储。如果找不到相同的数组,或者是找到比自己更大的数据,则可直接存储该新数组。
后续在需要查找某一推荐结果的推荐路径时,可以首先通过路由服务器计算用户ID分配在哪一台工作服务器。随后,在对应的那台工作服务器上进行检索该用户ID对应保存的追踪编号。利用该追踪编号反查字典中的位置或是该位置实际对应的1024位数组。根据数组中每个位的取值,例如就能与推荐模型(例如,分发至每个工作服务器的相同的推荐模型代码)中对应的关键点进行还原,并最终还原出这一次推荐请求对应的整个推荐路径。
另外,对于不在字典中的数组,工作服务器可以将这些新的数组保存到自己内存中,并为其生成一个追踪编号(与字典中已有的编号不同),然后在需要进行推荐路径复原时,首先可以找到上述追踪编号,并根据编号进行数组还原。每晚在流量低峰期的时候,路由服务器可以汇总每台工作服务器机器上存储的上述新数组和编号信息,并由此训练出一套更新的字典并进行分发。例如,可以将新出现的数组和编号都并入字典,或是选择出现频繁的数组并入字典。另外,更新的字典可以沿用旧有的编号,也可以根据新的数组大小排列顺序而使用新的编号。
由此,本发明的推荐路径追踪方案通过将推荐系统中的所走过的路径进行位数化(bit化),使得每一个关键点对应追踪数组中的一个具体的位,由此大大减少整个追踪信息所需的存储空间。同时使用字典压缩的方式,充分利用推荐路径存在高重复度的特性,使用位数少的多的追踪编号来代替对数组本身的存储,从而进一步降低了实际存储追踪信息的数据量。同时,通过追踪信息的本地保存及直接检索,消除了远程保存追踪信息的需要。由此,能够基于任意用户推荐,立即还原推荐路径,极大地提高了系统的追踪效率。
在一个实施例中,本发明还能被实现为一种推荐路径追踪装置。图4示出了根据本发明一个实施例的推荐路径追踪装置的结构示意图。
如图4所示,推荐路径追踪装置400可以包括记录单元410和获取单元420。记录单元410可用于记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数。获取单元420则可用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
优选地,记录单元410可以包括:数组构造单元,用于构造每一位对应于N个追踪点中的一个追踪点的数组;以及置位单元,用于对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
相应地,获取单元420可以用于从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
在一个优选实施例中,推荐路径追踪装置400还可以包括用于进行字典压缩的装置。具体地,装置400可以包括比较单元,用于将所述路径追踪数组与推荐路径字典里的数组相比较;以及编号存储单元,用于将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。
比较单元可以包括:索引比较单元,用于将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及字典跳转单元,用于基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域,并且所述比较单元用于在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
优选地,推荐路径追踪装置400可以包括:数组存储单元,用于在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
作为优选或者替换,推荐路径追踪装置400还可以包括编号分配单元,用于为存储的所述路径追踪数组分配一个新的追踪编号,并且所述编号存储单元用于将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
进一步地,推荐路径追踪装置400还可以包括汇总单元,用于汇总存储的所述路径追踪数组及为其分配的追踪编号;以及字典更新单元,用于将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。
为了构造字典,推荐路径追踪装置400还可以包括:数组存储单元,用于存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及字典构造单元,用于基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
在另一个实施例中,本发明的推荐路径追踪方案还可由计算设备实现。图5示出了根据本发明一个实施例可用于实现上述推荐路径追踪方法的计算设备的结构示意图。
参见图5,计算设备500包括存储器510和处理器520。
处理器520可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器520可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器520可以使用定制的电路实现,例如特定用途集成电路(ASIC)或者现场可编程逻辑门阵列(FPGA)。
存储器510可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器520或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器510可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器510可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器510上存储有可执行代码,当可执行代码被处理器520处理时,可以使处理器520执行上文述及的推荐路径追踪方法。
上文中已经参考附图详细描述了根据本发明的推荐路径追踪方法、系统和装置。本发明的推荐路径追踪方案通过位存储的方式,最小化的压缩了推荐系统中推荐路径的每一个关键位置的信息,减少了推荐过程中路径的存储;基于推荐路径的重复性和相似性,使用字典方式进一步压缩存储推荐关键路径所需位数,同时能够对记录关键点路径的数组进行快速定位与查找;进一步地,通过本机保存,避免了远程服务器专门保存追踪信息的需要,从而大幅减少所需的网络数据传输。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (29)

1.一种推荐路径追踪方法,包括:
记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;
获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
2.如权利要求1所述的方法,其中,记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过包括:
构造每一位对应于N个追踪点中的一个追踪点的数组;以及
对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
3.如权利要求2所述的方法,其中,获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组包括:
从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
4.如权利要求1所述的方法,还包括:
将所述路径追踪数组与推荐路径字典里的数组相比较;以及
将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。
5.如权利要求4所述的方法,其中,将所述路径追踪数组与推荐路径字典里的数组相比较包括:
将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及
基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域;以及
在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
6.如权利要求4所述的方法,还包括:
在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
7.如权利要求6所述的方法,还包括:
为存储的所述路径追踪数组分配一个新的追踪编号;以及
将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
8.如权利要求6所述的方法,还包括:
汇总存储的所述路径追踪数组及为其分配的追踪编号;以及
将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。
9.如权利要求1所述的方法,还包括:
存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及
基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
10.一种推荐路径追踪装置,包括:
记录单元,用于记录推荐模型在生成某一推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;
获取单元,用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
11.如权利要求10所述的装置,其中,所述记录单元包括:
数组构造单元,用于构造每一位对应于N个追踪点中的一个追踪点的数组;以及
置位单元,用于对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
12.如权利要求11所述的装置,其中,获取单元用于:
从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
13.如权利要求10所述的装置,还包括:
比较单元,用于将所述路径追踪数组与推荐路径字典里的数组相比较;以及
编号存储单元,用于将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。
14.如权利要求13所述的装置,其中,比较单元包括:
索引比较单元,用于将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较,其中M是大于2且小于N的整数;以及
字典跳转单元,用于基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域,并且
所述比较单元用于在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
15.如权利要求13所述的装置,还包括:
数组存储单元,用于在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
16.如权利要求15所述的装置,还包括:
编号分配单元,用于为存储的所述路径追踪数组分配一个新的追踪编号,并且所述编号存储单元用于将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
17.如权利要求16所述的装置,还包括:
汇总单元,用于汇总存储的所述路径追踪数组及为其分配的追踪编号;以及
字典更新单元,用于将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典。
18.如权利要求10所述的装置,还包括:
数组存储单元,用于存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及
字典构造单元,用于基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
19.一种推荐路径追踪系统,包括:
路由服务器,用于将与用户ID对应的推荐请求分配给相应的工作服务器;
与所述路由服务器有线或无线连接的多个工作服务器,每个所述工作服务器用于:
基于推荐请求生成推荐结果;
记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过,其中N是大于2的整数;
获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组,所述路径追踪数组用于还原生成所述推荐结果的推荐路径。
20.如权利要求19所述的系统,其中,所述工作服务器用于记录推荐模型在生成推荐结果的推荐路径的过程中N个追踪点中的每个追踪点是否被经过包括:
构造每一位对应于N个追踪点中的一个追踪点的数组;以及
对所述数组中与所述推荐路径经过的每个追踪点对应的位进行置位。
21.如权利要求20所述的系统,其中,所述工作服务器用于获取用于表示所述N个追踪点中的每个追踪点是否被经过的路径追踪数组包括:
从与所述推荐路径经过的每个追踪点对应的位都被置位的所述数组生成一个或多个所述路径追踪数组。
22.如权利要求19所述的系统,其中,所述路由服务器用于将统一的推荐路径字典分发给多个工作服务器,并且每个所述工作服务器进一步用于:
将所述路径追踪数组与推荐路径字典里的数组相比较;以及
将所述推荐路径字典里相同数组的追踪编号存储为针对所述推荐结果的推荐路径信息。
23.如权利要求22所述的系统,其中,所述路由服务器进一步用于:
基于所述推荐路径字典生成包括多个M位索引项的推荐路径字典索引表,其中M是大于2且小于N的整数;以及
将所述推荐路径字典索引表分发给所述多个工作服务器;
所述工作服务器用于将所述路径追踪数组与推荐路径字典里的数组相比较包括:
将所述路径追踪数组中特定位置的M位与推荐路径字典索引表里的各个M位索引项相比较;
基于相同的M位索引项访问所述推荐路径字典中与该M位索引项对应的区域;以及
在与该M位索引项对应的区域中查找与所述路径追踪数组相同的数组。
24.如权利要求22所述的系统,其中,所述工作服务器进一步用于:
在所述路径追踪数组与所述推荐路径字典里的数组都不相同的情况下,在所述推荐路径字典中或其他位置存储中存储所述路径追踪数组。
25.如权利要求24所述的系统,其中,所述工作服务器进一步用于:
为存储的所述路径追踪数组分配一个新的追踪编号;以及
将所述新的追踪编号存储为针对所述推荐结果的推荐路径信息。
26.如权利要求25所述的系统,其中,所述路由服务器进一步用于:
汇总多个所述工作服务器存储的所述路径追踪数组及为其分配的追踪编号;
将汇总的所述路径追踪数组及其追踪编号更新至所述推荐路径字典;以及
将更新的推荐路径字典分发给多个所述工作服务器。
27.如权利要求19所述的系统,多个所述工作服务器进一步用于:存储在前预定时间段内针对不同推荐结果获取的多个路径追踪数组;以及所述路由服务器进一步用于:
基于所述多个路径追踪数组,构造用于与后续生成的路径追踪数组相比较的路径推荐字典。
28.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-9中任一项所述的方法。
29.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-9中任一项所述的方法。
CN201810924296.4A 2018-08-14 2018-08-14 推荐路径追踪方法、装置和系统 Active CN109412883B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810924296.4A CN109412883B (zh) 2018-08-14 2018-08-14 推荐路径追踪方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810924296.4A CN109412883B (zh) 2018-08-14 2018-08-14 推荐路径追踪方法、装置和系统

Publications (2)

Publication Number Publication Date
CN109412883A true CN109412883A (zh) 2019-03-01
CN109412883B CN109412883B (zh) 2021-12-03

Family

ID=65464309

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810924296.4A Active CN109412883B (zh) 2018-08-14 2018-08-14 推荐路径追踪方法、装置和系统

Country Status (1)

Country Link
CN (1) CN109412883B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111289816A (zh) * 2020-02-11 2020-06-16 南方电网科学研究院有限责任公司 一种多端直流输电系统的试验排序优化方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101709978A (zh) * 2009-09-24 2010-05-19 深圳市凯立德计算机系统技术有限公司 一种路径指引方法和路径指引设备
US20130124428A1 (en) * 2011-11-14 2013-05-16 Barrel of Jobs, LLC Referral generation and payment system and method
US20130132426A1 (en) * 2009-05-15 2013-05-23 Hyundai Motor Company Apparatus and method for generating a path
US20130331121A1 (en) * 2012-06-12 2013-12-12 Trx Systems, Inc. Wi-fi enhanced tracking algorithms
CN104215254A (zh) * 2013-05-31 2014-12-17 国际商业机器公司 路径导航的方法和装置
CN105722024A (zh) * 2016-01-15 2016-06-29 深圳市恒诺物联科技有限公司 智能定位监控方法
US20160203508A1 (en) * 2015-01-09 2016-07-14 Toshiba Tec Kabushiki Kaisha Method and system for distributing and tracking effectiveness of product recommendations
CN106023629A (zh) * 2016-06-06 2016-10-12 西安电子科技大学昆山创新研究院 一种路径推荐方法和装置
CN106961707A (zh) * 2017-03-06 2017-07-18 哈尔滨工程大学 一种vanet中基于连通性的多因素决策路由协议
CN108197243A (zh) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 一种基于用户身份的输入联想推荐方法及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130132426A1 (en) * 2009-05-15 2013-05-23 Hyundai Motor Company Apparatus and method for generating a path
CN101709978A (zh) * 2009-09-24 2010-05-19 深圳市凯立德计算机系统技术有限公司 一种路径指引方法和路径指引设备
US20130124428A1 (en) * 2011-11-14 2013-05-16 Barrel of Jobs, LLC Referral generation and payment system and method
US20130331121A1 (en) * 2012-06-12 2013-12-12 Trx Systems, Inc. Wi-fi enhanced tracking algorithms
CN104215254A (zh) * 2013-05-31 2014-12-17 国际商业机器公司 路径导航的方法和装置
US20160203508A1 (en) * 2015-01-09 2016-07-14 Toshiba Tec Kabushiki Kaisha Method and system for distributing and tracking effectiveness of product recommendations
CN105722024A (zh) * 2016-01-15 2016-06-29 深圳市恒诺物联科技有限公司 智能定位监控方法
CN106023629A (zh) * 2016-06-06 2016-10-12 西安电子科技大学昆山创新研究院 一种路径推荐方法和装置
CN106961707A (zh) * 2017-03-06 2017-07-18 哈尔滨工程大学 一种vanet中基于连通性的多因素决策路由协议
CN108197243A (zh) * 2017-12-29 2018-06-22 北京奇虎科技有限公司 一种基于用户身份的输入联想推荐方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111289816A (zh) * 2020-02-11 2020-06-16 南方电网科学研究院有限责任公司 一种多端直流输电系统的试验排序优化方法及装置

Also Published As

Publication number Publication date
CN109412883B (zh) 2021-12-03

Similar Documents

Publication Publication Date Title
CN104794123B (zh) 一种为半结构化数据构建NoSQL数据库索引的方法及装置
JP5338238B2 (ja) ワードの類似性を用いたオントロジーの自動生成
US8630972B2 (en) Providing context for web articles
CN107423422B (zh) 基于网格的空间数据分布式存储及检索方法和系统
US8977623B2 (en) Method and system for search engine indexing and searching using the index
CN110909182A (zh) 多媒体资源搜索方法、装置、计算机设备及存储介质
CN100458784C (zh) 在数字图书馆中所采用的检索系统和检索方法
US20140032568A1 (en) System and Method for Indexing Streams Containing Unstructured Text Data
CN113609374A (zh) 基于内容推送的数据处理方法、装置、设备及存储介质
CN102662986A (zh) 微博消息检索系统与方法
Kucukyilmaz et al. A machine learning approach for result caching in web search engines
CN111881358A (zh) 一种对象推荐系统、方法、装置、电子设备和存储介质
Cheng et al. Supporting entity search: a large-scale prototype search engine
US20110179013A1 (en) Search Log Online Analytic Processing
CN108647266A (zh) 一种异构数据快速分布存储、交互方法
Santos et al. Aggregated search result diversification
US9171054B1 (en) Systems and methods for high-speed searching and filtering of large datasets
CN101635001B (zh) 从数据库提取信息的方法和设备
CN114281989A (zh) 基于文本相似度的数据去重方法、装置及存储介质和服务器
CN101963993A (zh) 一种数据库单表记录快速查找的方法
CN109412883A (zh) 推荐路径追踪方法、装置和系统
CN110020001A (zh) 字符串数据的存储、查询方法以及相应的设备
CN102597969A (zh) 带属性的键值存储的数据库管理装置及其键值存储结构的高速缓存装置
Zhang [Retracted] Optimization of an Intelligent Music‐Playing System Based on Network Communication
CN109213760A (zh) 非关系数据存储的高负载业务存储及检索方法

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
TA01 Transfer of patent application right

Effective date of registration: 20200818

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant 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 13 layer self unit 01

Applicant before: Guangdong Shenma Search Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant