CN116522000A - 一种用于向用户推荐内容的推荐模型的训练方法和装置 - Google Patents
一种用于向用户推荐内容的推荐模型的训练方法和装置 Download PDFInfo
- Publication number
- CN116522000A CN116522000A CN202310585117.XA CN202310585117A CN116522000A CN 116522000 A CN116522000 A CN 116522000A CN 202310585117 A CN202310585117 A CN 202310585117A CN 116522000 A CN116522000 A CN 116522000A
- Authority
- CN
- China
- Prior art keywords
- time
- request
- data
- user
- time period
- 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
Links
- 238000012549 training Methods 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 74
- 230000006399 behavior Effects 0.000 claims abstract description 45
- 230000004044 response Effects 0.000 claims abstract description 31
- 238000005192 partition Methods 0.000 claims description 108
- 238000003860 storage Methods 0.000 claims description 49
- 230000000875 corresponding effect Effects 0.000 description 60
- 238000010586 diagram Methods 0.000 description 18
- 238000004590 computer program Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000002349 favourable effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 2
- -1 20:00) Chemical compound 0.000 description 1
- 238000009933 burial Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供用于向用户推荐内容的推荐模型的训练方法,包括:响应于接收到客户端发送的用户对页面的请求,发送响应到客户端,响应携带与请求相关联的请求时刻、推荐模型生成的与页面相关联的内容;接收客户端响应于针对与页面相关联的内容的用户行为发送的埋点数据,埋点数据携带请求时刻;响应于当前时刻相对于请求时刻经过第一时间段,基于与携带请求时刻的当前已接收的所有埋点数据相关联的数据样本对推荐模型进行第一训练;响应于当前时刻相对于请求时刻经过大于第一时间段的第二时间段,基于与携带请求时刻的当前已接收的所有埋点数据相关联的数据样本对推荐模型进行第二训练。本公开还涉及用于向用户推荐内容的推荐模型的训练装置。
Description
技术领域
本公开涉及推荐系统技术领域,尤其是一种用于向用户推荐内容的推荐模型的训练方法和装置。
背景技术
随着技术的飞速发展,数据量也与日俱增,人们越来越感觉在海量数据面前束手无策,由此出现了推荐系统。推荐系统能够通过分析、挖掘用户行为,发现用户的个性化需求与兴趣特点,将用户可能感兴趣的信息或商品推荐给用户。推荐系统的应用有利于解决信息过载的问题,也有利于提高用户的使用体验。
推荐系统的关键在于推荐模型,好的推荐模型能够有效提升推荐系统的能力。要想实现推荐模型的最佳效果,需要对推荐模型进行训练,以便调试出最佳的模型参数。
发明内容
本公开一个或多个实施例的目的之一是提供用于向用户推荐内容的推荐模型的训练方法、装置及计算机可读存储介质。
根据本公开实施例的第一方面,提供一种用于向用户推荐内容的推荐模型的训练方法,由服务端执行,包括:响应于接收到客户端发送的所述用户对页面的请求,发送响应到所述客户端,所述响应携带与所述请求相关联的请求时刻、以及基于所述推荐模型生成的与所述页面相关联的多个内容;接收所述客户端响应于所述用户针对与所述页面相关联的多个内容中的一个或多个内容的用户行为而发送的埋点数据,其中埋点数据携带所述请求时刻;响应于当前时刻相对于所述请求时刻经过第一时间段,基于与携带所述请求时刻的当前已接收的所有埋点数据相关联的数据样本对所述推荐模型进行第一训练;并且响应于当前时刻相对于所述请求时刻经过大于第一时间段的第二时间段,基于与携带所述请求时刻的当前已接收的所有埋点数据相关联的数据样本对所述推荐模型进行第二训练。
在一些实施例中,第一时间段等于单位时长,第二时间段大于或等于三倍的单位时长。
在一些实施例中,第二时间段大于第一时间段的程度是基于所述内容的特性预先确定的。
在一些实施例中,单位时长为1小时。
在一些实施例中,单位时长是基于所述内容的特性预先确定的。
在一些实施例中,响应于所述内容所需的观看时长大于或等于预设值,第二时间段比第一时间段大第一预设时长;响应于所述内容所需的观看时长小于预设值,第二时间段比第一时间段大第二预设时长;所述第一预设时长大于所述第二预设时长。
在一些实施例中,所述响应还携带用于标识所述请求的事件标识符和用于标识与所述页面相关联的多个内容中的每个内容的内容标识符;所述埋点数据还携带所述事件标识符和所述埋点数据对应的用户行为所针对的内容的所述内容标识符;与埋点数据相关联的数据样本是根据所述埋点数据中携带的对应的用户行为的参数、所述事件标识符和所述内容标识符生成的。
在一些实施例中,与埋点数据相关联的数据样本还根据所述用户特征生成,所述用户特征包括年龄、性别和所在地中的一个或多个。
在一些实施例中,所述用户特征由所述服务端预先存储,所述服务端根据埋点数据中携带的所述事件标识符来获取与所述请求对应的所述用户的所述用户特征。
在一些实施例中,所述用户行为包括展示内容、点击内容或观看内容。
在一些实施例中,所述方法还包括:在存储器中创建多个存储分区,每个存储分区对应一个特定时间段,将接收到的埋点数据按照其携带的所述请求时刻所属的时间段存储在对应的存储分区中。
在一些实施例中,所述请求时刻为所述服务端接收到所述请求的时刻。
根据本公开实施例的第二方面,提供一种用于推荐系统的操作方法,所述推荐系统包括基于推荐模型向用户推荐内容的服务端,所述方法由所述服务端执行,所述方法包括:接收来自各客户端的埋点数据,埋点数据中的特定埋点数据与特定用户针对特定页面中的特定内容的用户行为相关联,每个埋点数据携带针对所对应的特定页面的请求的请求时刻;以第一时间间隔周期性地基于第一样本集对所述推荐模型进行第一训练以更新模型参数,第一样本集基于当前已接收的所有第一埋点数据生成,第一埋点数据携带的请求时刻与当前时刻的间隔小于第一时间间隔;以及以第二时间间隔周期性地基于第二样本集对所述推荐模型进行第二训练以更新模型参数,第二样本集基于当前已接收的所有第二埋点数据生成,第二埋点数据携带的请求时刻与当前时刻的间隔大于第二时间间隔并且小于两倍的第二时间间隔,其中,第一时间间隔等于单位时长,第二时间间隔大于或等于三倍的单位时长。
在一些实施例中,所述方法还包括:在存储器中创建多个存储分区,所述多个存储分区分别对应连续的多个时间段,每个时间段的时长等于单位时长;将接收到的埋点数据按照其携带的请求时刻所属的时间段存储在对应的存储分区中。
在一些实施例中,所述方法还包括:以第一时间间隔周期性地、基于与当前时刻最临近的一个时间段所对应的存储分区中的所有埋点数据生成第一样本集。
在一些实施例中,所述方法还包括:以第二时间间隔周期性地、基于与当前时刻间隔大于第二时间间隔并且小于两倍的第二时间间隔的多个时间段所对应的多个存储分区中的所有埋点数据生成第二样本集。
在一些实施例中,所述方法还包括:以第一时间间隔周期性地、基于与当前时刻间隔在预设范围的一个时间段所对应的存储分区中的所有埋点数据生成第二样本集的一个特定子集;在进行第二训练之前,将第二样本集的多个特定子集合成为第二样本集,其中所述预设范围包括大于第二时间间隔并且小于第一时间间隔与第二时间间隔之和、或者包括大于第二时间间隔与第一时间间隔之差并且小于第二时间间隔。
在一些实施例中,第一时间间隔为1小时,第二时间间隔为24小时。
在一些实施例中,每个埋点数据还携带由服务器指定的指示对应的特定页面的事件标识符和指示对应的特定内容的内容标识符,其中,基于埋点数据生成样本集包括:关联具有相同内容标识符的一个或多个用户行为、以及关联与事件标识符对应的特定页面的请求用户的用户特征,以生成样本。
在一些实施例中,所述请求时刻为所述服务端接收到所述请求的时刻。
根据本公开实施例的第三方面,提供一种用于向用户推荐内容的推荐模型的训练装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行上述任意一个实施例所述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,包括计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述任意一个实施例所述的方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现上述任意一个实施例所述的方法。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法的流程示意图。
图2是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法中涉及的客户端的显示界面的示意图。
图3是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法中的存储方法的示意图。
图4是根据本公开一些实施例的用于推荐系统的操作方法的流程示意图。
图5是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练装置的结构示意图。
图6是现有技术中对推荐模型进行训练的示意图。
图7至图9是根据本公开一些实施例的用于推荐系统的操作方法的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
推荐模型常用于应用软件中的推荐页面的生成。推荐系统通常会部署在应用软件的服务器(本文也称“服务端”)侧,推荐模型例如可以根据具有特定特征的用户的历史行为数据(例如是否点击特定内容、以及对特定内容的观看时长等)来预测具有特定特征的用户可能感兴趣的内容,并将这些内容推荐给用户。服务器可以基于推荐模型对内容进行筛选排序,进而生成推荐页面的内容,将推荐页面的内容发送到应用软件的客户端,以便客户端将推荐页面的内容展示给用户。
在训练推荐模型的过程中,可以预先在客户端设置埋点,以便客户端将反应用户行为的埋点数据发送到服务器,埋点数据可以携带对应的用户行为的参数来反应例如用户是否点击内容、是否分享内容、以及用户对特定内容的观看时长等信息。服务器可以将埋点数据与服务器端存储的用户特征进行关联,从而生成样本,再基于样本周期性地对推荐模型进行训练以调整和更新推荐模型的参数,保持推荐模型推荐的时效性,提高用户使用体验。
在目前对模型的训练过程中,服务端会按照埋点数据的接收时间,将埋点数据存储到该接收时间所属的时间分区(本文也称“时间段”)对应的存储分区中,再基于这个存储分区中的埋点数据生成样本用于训练。例如,可以将每个小时作为一个时间分区,每个时间分区对应一个存储分区。例如,9:10接收到的埋点数据会存储到9:00-10:00这一时间分区所对应的存储分区中。图6示出了现有技术中对推荐模型进行训练的方法。如上所述,将埋点数据按照其被服务端接收的时间存储到该接收时间所属的时间分区对应的存储分区中。为了对推荐模型参数更新的时效性,每个单位时间(通常选择为与时间分区的时间长度相同)对推荐模型进行一次训练。例如图6示出的在2:00、3:00等的每个整点对模型进行一次训练。同时为了数据样本的全面性和准确性,基于刚刚经过的多个时间段所对应的多个存储分区内的埋点数据的样本进行训练。在图6所示的示例中,基于最近的3个存储分区内的埋点数据的样本进行训练。例如,在2:00进行的训练基于存储分区-1(图中未示出)至存储分区1中的埋点数据,在3:00进行的训练基于存储分区0至存储分区2中的埋点数据,依此类推。
发明人注意到,上述训练过程存在如下问题:
1、时间错位:
用户行为的时间与该用户行为对应的埋点数据的存储分区所对应的时间分区不一致。例如,用户行为的时间为22:59:59,服务端接收到包含用户行为的埋点数据的时间为23:00:01,则该埋点数据会被存储在23:00-24:00这一时间分区对应的存储分区中,而非22:00-23:00这一时间分区对应的存储分区中。时间错位的问题可能是由于如下情况引起的:
(1)在手机处于弱网环境等场景下,埋点数据发送不及时。
(2)应用程序的进程被关闭等场景下,埋点数据不能及时发送,可能会在下次打开应用程序时发送。
(3)服务端出现bug,导致数据延迟。
时间错位可能会导致用于训练推荐模型的样本出错,也可能会影响训练模型的时效性和准确性。
2、针对长时间观看的用户行为的样本出错:
例如,用户观看特定视频的时长超过三小时,而预先设置的时间分区为每小时一个时间分区,这种情况可以认为属于长时间观看的情形。“点击内容”的用户行为相关的埋点数据通常是在用户点击进入该视频内容时上报,而与“观看内容”的用户行为相关的埋点数据通常是在用户看完视频后上报。例如,用户在2:05开始观看特定视频,在5:30结束观看该视频,客户端可能在2:05上报埋点数据以表示用户点击了该视频,在5:30上报埋点数据以指示用户观看该视频的时长。若预先设置每小时作为一个时间分区,例如在图6的示例中,则2:05上报的表示用户点击了该视频埋点数据会被存储在存储分区2中,5:30上报的指示用户观看该视频的时长的埋点数据会被存储在存储分区5中。从而,在服务端在3:00、4:00、5:00进行的多次训练中,对于该视频内容所对应的样本,由于只有在存储分区2中的指示用户点击该内容的埋点数据、而没有用户结束观看返回时上报的指示视频被观看及观看时长的埋点数据,该样本会基于该用户点击但并未持续观看该内容而建立,从而可能会被模型理解为该用户对该内容不感兴趣。这显然与实际情况不符,是错误的样本。而到了6:00的那次训练时,其虽然可以基于在存储分区5中的指示用户对该内容的观看时长的埋点数据,但由于本次训练的样本只基于存储分区3-5中的埋点数据生成,并不包含存储分区2中的指示用户点击该内容的埋点数据,因此该指示用户对该内容的观看时长的埋点数据可能会被当成是无效数据而不用于生成样本。如此,之前的错误样本导致的对模型参数的错误调整无法得到纠正。
如果为了适应长视频、直播等需要较长观看时间的内容,而把每次训练使用的存储分区的个数增加,会导致每次生成样本和每次训练的计算量都大幅增加。例如在图6的示例中,每次训练(每间隔1个小时)使用最近的3个存储分区的数据。如果增加为每次训练使用最近的4个、5个、6个或者更多个存储分区的数据,则可以在一定程度上解决上述问题。例如对于上述示例来说,在6:00、7:00及以后的训练中,可以将存储分区2中的指示用户点击该内容的埋点数据与存储分区5中的指示用户对该内容的观看时长的埋点数据相关联,从而生成正确的样本,基于正确的样本的训练可以对模型参数进行纠正。但如此带来的问题是,在每个小时的训练之前,用于生成样本的原始数据量增加(甚至可能是成倍地增加,例如在将基于3个存储分区的数据改为基于6个存储分区的数据的情况下),并且用于训练的样本的量也增加(甚至可能是成倍地增加)。特别是当每个单位时间(例如每小时)都要重复进行该过程的情况下,会使得训练模型的计算量明显增大。
综上,上述两种情形都会导致用于训练推荐模型的样本出现问题,造成样本错误,从而影响推荐模型的时效性和准确性。为了解决这些问题,发明人提出了如下方法。
图1是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法的流程示意图。图2是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法中涉及的客户端的显示界面的示意图。图1所示的方法可以由推荐系统中的服务端执行,并且可以包括如下所述的步骤S110、步骤S120、步骤S130和步骤S140。
在步骤S110,响应于接收到客户端发送的用户对页面的请求,发送响应到客户端。这里的响应可以携带与请求相关联的请求时刻、以及基于推荐模型生成的与页面相关联的多个内容。请求时刻例如是服务器接收到客户端发送的请求的时刻。
客户端发送的用户对页面的请求例如是列表页请求。客户端在接收到服务器发送的响应后,可以基于该响应携带的基于推荐模型生成的与页面相关联的多个内容生成例如图2所示的页面。如图2所示,推荐页面上可以有多个内容模块,图中示出了内容模块210和内容模块220被展示。用户可以通过例如在显示屏上的上下滑动的操作来使得一个或多个内容被展示。应理解,本文所称的展示,是指将内容置于浏览界面以便被用户观看。例如图2中内容模块220下方的内容为未被展示的内容。用户可以对内容模块进行操作,例如通过点击内容模块,可以打开与该内容模块对应的内容相关联的页面。在该相关联的页面中,用户可以对该内容进行观看。观看完毕之后可以返回该推荐列表页面。又例如,通过点击关注按钮211,用户可以关注发布内容的作者。再例如,通过点击分享按钮212,用户可以将该内容模块的内容分享给他人。此外,用户还可以对点赞按钮213和/或评论按钮214进行操作,以进行点赞和/或评论。以上所述的展示内容、点击内容、观看内容、分享内容、点赞内容、评论内容、以及关注作者等,均为本公开所称的“用户行为”的示例。
在步骤S120,接收客户端响应于用户针对与页面相关联的多个内容中的一个或多个内容的用户行为而发送的埋点数据。这里,埋点数据携带请求时刻。
在用户行为发生后,例如用户对图2所示的内容模块进行关注、分享、点赞、评论等用户行为后,客户端可以将指示用户行为的参数作为埋点数据发送到服务器端。又例如,客户端可以将包含指示内容模块是否被展示(例如可以在该内容被展示时发送)、是否被点击(例如可以在该内容被点击时发送)、以及是否被持续观看和用户观看每个内容模块的时长(例如可以在该内容被观看完毕时发送)等参数的信息作为埋点数据发送到服务器端。
在步骤S130,响应于当前时刻相对于请求时刻经过第一时间段,基于与携带请求时刻的当前已接收的所有埋点数据相关联的数据样本对推荐模型进行第一训练。在步骤S140,响应于当前时刻相对于请求时刻经过大于第一时间段的第二时间段,基于与携带请求时刻的当前已接收的所有埋点数据相关联的数据样本对推荐模型进行第二训练。
例如,请求时刻为1:00,第一时间段为1小时,第二时间段为3小时,如图7所示。如果当前时刻为2:00(或者超过2:00的某个时刻),则当前时刻相对于请求时刻经过第一时间段,此时可以基于当前已接收的所有携带请求时刻为1:00的埋点数据对应的数据样本对推荐模型进行第一训练。如果当前时刻为4:00(或者超过4:00的某个时刻),则当前时刻相对于请求时刻经过第二时间段,此时可以基于当前已接收的所有携带请求时刻为1:00的埋点数据对应的数据样本对推荐模型进行第二训练。后文将结合一些实施例介绍如何生成与埋点数据相关联的数据样本。在第一训练时,由于与请求时刻之间间隔了较短的时间,可以保证模型训练的时效性,以及时地跟随用户的兴趣变化。在第二训练时,由于与请求时刻之间间隔了较长的时间,对于长时间观看的用户行为可以将点击行为与观看行为的埋点数据相关联,以保证模型巡训练的准确性。如此,可以根据推荐系统所针对的内容的特性合理设定第一时间段和第二时间段的长度,来既保证模型训练的时效性又保证其准确性。例如推荐系统所针对的内容包括通常持续时间为数个小时的直播视频,则可以将第二时间段的长度设置得长一些。在一个示例中,第一时间段可以为1小时,第二时间段可以为24小时,如图8所示。
上述实施例中,服务器向客户端发送的响应携带请求时刻,以便服务器可以根据请求时刻生成用于推荐模型训练的样本,有利于解决时间错位的问题。此外,分别设置了第一训练和第二训练的两次训练,第一训练针对请求时刻距离当前时刻较近的样本,有利于保证模型的时效性,第二训练针对请求时刻距离当前时刻较远的样本,有利于保证模型的准确性,第一训练和第二训练都进行,有利于兼顾时效性和准确性。
现有技术中以服务器接收到客户端发送的埋点数据的时刻来生成待训练的样本,在时间错位以及长时间观看的情况下,可能导致样本错误。此外,现有技术中还有以客户端发送请求的时间来生成待训练的样本的方式。由于有的终端时间快、有的终端时间慢,这会导致安装在终端上各个客户端的时间不一致,也可能导致样本错误。相较于前述两种方式,本申请基于服务器接收到客户端发送请求的时刻来生成待训练的样本,既有利于使得样本时间更加贴近用户行为发生的真实时间,也有利于避免样本出错,有利于提高推荐模型的时效性和准确性。
在一些实施例中,第一时间段等于单位时长,第二时间段大于或等于三倍的单位时长。例如,单位时长可以设置为1小时,也即,第一时间段设置为1小时,第二时间段可以设置为3小时或以上。将第一时间段设置得较短,第二时间段设置得较长有利于兼顾模型训练的时效性和准确性。
在一些实施例中,单位时长是基于内容的特性预先确定的。内容的特性例如是内容所需的观看时长。例如,对于观看时长较长的内容,单位时长可以设置得较长;对于观看时长较短的内容,单位时长可以设置得较短。基于内容的特性确定单位时长,有利于使得单位时长的设置更加合理,使样本能够更加真实地反应用户行为,提高样本的准确性。在一些实施例中,第二时间段大于第一时间段的程度是基于内容的特性预先确定的。内容的特性例如时内容所需的观看时长。作为一些实现方式,响应于内容所需的观看时长大于或等于预设值,第二时间段比第一时间段大第一预设时长;响应于内容所需的观看时长小于预设值,第二时间段比第一时间段大第二预设时长。这里,第一预设时长大于第二预设时长。例如,对于长视频类型的内容而言,其所需的观看时长往往很长,第一时间段可以设置为1小时,第二时间段可以设置为24小时,第二时间段比第一时间段大23小时;对于短视频类型的内容而言,其所需的观看时长往往较短,第一时间段可以设置为1小时,第二时间段可以设置为3小时,第二时间段比第一时间段大2小时。上述实施例中,根据内容所需的观看时长确定第二时间段比第一时间段大的程度,有利于更好地设置第一时间段和第二时间段,进而确定更好的样本用于推荐模型的训练,提高推荐模型的质量。
下面介绍如何生成与埋点数据相关联的数据样本。
在一些实施例中,响应还携带用于标识请求的事件标识符(event_id)和用于标识与页面相关联的多个内容中的每个内容的内容标识符(item_id)。埋点数据还可以携带事件标识符和埋点数据对应的用户行为所针对的内容的内容标识符。与埋点数据相关联的数据样本是根据埋点数据中携带的对应的用户行为的参数、事件标识符和内容标识符生成的。
事件标识符例如可以标识“用户使用客户端向服务器提交了针对列表页的请求”这一事件,例如为“event_id=list_request111”。以图2为例,内容标识符例如可以标识内容模块210和内容模块220中的每一个,例如,对于内容模块210的标识为“item_id=210”,对于内容模块220的标识为“item_id=220”。内容标识符使得针对同一内容的不同用户行为的埋点数据之间可以进行关联,从而生成样本。针对同一内容的不同行为可以对应于同一样本的不同标签,例如对于某个内容,其对应的样本可以同时具有“被展示”、“被分享”、“未被观看”等标签。
用户行为的参数例如可以包括用户行为名称以及用户行为取值。例如,若用户进行分享操作,则参数为“share=1”,若用户未进行分享操作,则用户行为的参数为“share=0”。若用户进行观看,则用户行为取值可以是用户的观看时长,例如“watch duration=5”;若用户未进行观看,则用户行为的参数可以为“watch duration=0”。对于点赞、分享、评论等用户行为也可以按照类似的方法进行设置,在此不再赘述。
以图2为例,假设用户对内容模块210进行分享操作,且观看时长为5秒;对内容模块220未进行分享操作也未进行观看,则埋点数据的内容可以包括如下内容:
{
event_id=list_request111;
{
item_id=210;
share=1;
watch duration=5;
}
{
item_id=220;
share=0;
watch duration=0;
}
}
推荐系统可能面向具有不同特征的用户进行推荐,因此在一些实施例中,与埋点数据相关联的数据样本还可以根据用户特征生成。这里,用户特征可以包括年龄、性别、所在地、身份(例如是学生还是上班族等)、职业等中的一个或多个。应当理解,为达到对用户的更好的适配度,可以具有更细分的用户特征。在一些实施例中,用户特征由服务端预先存储。服务端可以根据埋点数据中携带的事件标识符来获取与请求对应的用户的用户特征。例如,可以在每个用户在与该推荐系统相关的应用程序中注册之后获取该用户的用户特征,例如经由交互界面从用户处直接获取或者经由操作系统或操作系统可访问的其他应用程序获取,并将每个用户的用户特征和该用户的用户标识符相关联地存储。服务端可以根据事件标识符确定与请求对应的用户的用户标识符,例如客户端向服务端发送的页面请求中可以携带该用户的用户标识符,进而基于预先存储的用户标识符与用户特征之间的对应关系确定用户特征。在生成样本时,可以将某个用户的用户行为和其用户特征相关联,例如将用户行为和用户特征均作为样本的标签。应当理解,每个样本还可以具有与样本所针对的内容相关的标签。
在一些实施例中,可以在存储器中创建多个存储分区,每个存储分区对应一个特定时间段,将接收到的埋点数据按照其携带的请求时刻所属的时间段存储在对应的存储分区中。
图3是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练方法中的存储方法的示意图。如图3所示,服务端在当前时刻(假设当前时刻属于T时间分区)通过kafka系统接收到了埋点数据,接收到的埋点数据包括请求时刻分别属于T-2时间分区、T-1时间分区以及T时间分区这3个时间分区的埋点数据。则服务端可以将请求时刻属于T-1时间分区的埋点数据存储至T-1时间分区所对应的存储分区,之后生成相应的样本。应理解,虽然图中未示出对于请求时刻属于T-2时间分区、T时间分区的埋点数据的操作,但是可以对其采用与对请求时刻属于T-1时间分区所采用的方法类似的方法。图7也示出了多个存储分区,每个存储分区对应一个特定时间段。服务端可以将接收到的埋点数据按照其携带的请求时刻所属的时间段存储在对应的存储分区中。这样,之后需要生成哪个时间段的数据的样本,只要对那个时间段所对应的存储分区内的所有埋点数据进行即可。
下面以一个具体的示例介绍本申请提供的用于向用户推荐内容的推荐模型的训练方法,该示例以单位时长为1小时、第一时间段为1小时、第二时间段为24小时为例。
步骤S1,用户通过客户端向服务端发送列表页请求。
步骤S2,服务端依据接收到列表页请求的时间Treq生成时间分区对应的存储分区(存储分区例如可以命名为2023041118,对应于2023年4月11日18:00-19:00这一时间分区)。服务端将用户特征及Treq共同落盘,存储至对应的存储分区。服务端将Treq与推荐列表共同发送到客户端。
步骤S3,客户端根据用户行为上报对应的埋点数据,埋点数据携带服务端发送的Treq。
步骤S4,服务端接受到埋点数据后,根据埋点数据中携带的Treq将数据存储至相应的存储分区。
步骤S5,服务端每小时进行样本生成的操作,例如可以在每个整点进行。为简便起见,将每个整点时刻记为Tin,Tin为T时间分区的起点(例如,20:00为20:00-21:00这一时间分区的起点)。服务端在每个整点时刻Tin(例如20:00),生成T-1时间分区(例如19:00-20:00)、T-24时间分区(例如前一天的20:00-21:00)的样本。
步骤S6,服务端每小时基于T-1这1个时间分区的样本训练模型(即进行第一训练)以保证时效性。
步骤S7,服务端每天基于T-47至T-24这24个时间分区的样本再次训练模型(即进行第二训练)以保证准确性。
图4是根据本公开一些实施例的用于推荐系统的操作方法的流程示意图。推荐系统包括基于推荐模型向用户推荐内容的服务端。图4所示的方法可以由服务端执行,包括步骤S410、S420和S430。图4所示的方法从服务器端持续周期性执行训练的角度来描述用于推荐系统的操作方法,其实质与上文所述的用于向用户推荐内容的推荐模型的训练方法类似,因此相关的描述可互为补充。
在步骤S410,接收来自各客户端的埋点数据。这里,埋点数据中的特定埋点数据与特定用户针对特定页面中的特定内容的用户行为相关联,每个埋点数据携带针对所对应的特定页面的请求的请求时刻。这里提到的埋点数据、用户行为、请求时刻可以参照前文的介绍。
在步骤S420,以第一时间间隔周期性地基于第一样本集对推荐模型进行第一训练以更新模型参数。这里,第一样本集基于当前已接收的所有第一埋点数据生成,第一埋点数据为携带的请求时刻与当前时刻的间隔小于第一时间间隔的埋点数据。在一些实施例中,第一时间间隔可以等于单位时长。单位时长可以根据推荐系统更新模型参数的时效性的要求来设定,例如可以为30分钟、1小时、2小时等。
例如,第一时间间隔可以为1小时,服务端可以每小时对模型进行第一训练,第一训练基于当前已接收的满足“携带的请求时刻与当前时刻的间隔小于1小时”这一条件的第一埋点数据。具体而言,假设当前时间为2023年5月11日10:00,可以基于携带的请求时刻属于2023年5月11日9:00至2023年5月11日10:00这一时间分区的埋点数据进行训练。在一些实施例中,可以以第一时间间隔周期性地生成第一样本集。在埋点数据以前文所述的方式分区存储的情况下,可以基于与当前时刻最临近的一个时间段所对应的存储分区中的所有埋点数据生成第一样本集。在第一时间间隔为1小时的示例中,服务端可以每小时生成第一样本集、并且每小时基于第一样本集对模型进行第一训练。
在步骤S430,以第二时间间隔周期性地基于第二样本集对推荐模型进行第二训练以更新模型参数。这里,第二样本集基于当前已接收的所有第二埋点数据生成,第二埋点数据为携带的请求时刻与当前时刻的间隔大于第二时间间隔并且小于两倍的第二时间间隔的埋点数据。在一些实施例中,第二时间间隔大于或等于三倍的单位时长。第二时间间隔可以根据推荐系统针对的推荐内容所需的观看时长来设定,例如可以为3小时、5小时、10小时、12小时、24小时等。
例如,第二时间间隔可以为24小时,服务端可以每24小时,即每天,对模型进行第二训练,第二训练基于当前已接收的满足“携带的请求时刻与当前时刻的间隔小于24小时”这一条件的第二埋点数据。在每天进行一次第二训练的情况下,由于第二训练所用的数据量远大于第一训练的数据量,训练所花费的时间可能较长,因此可以将第二训练的时间安排在推荐系统负荷较轻的时间段内。例如历史数据表明,应用程序在凌晨4:00左右的用户使用量最低,可以安排每天4:00进行第二训练。例如,在2023年5月11日4:00进行第二训练的情况下,可以基于携带的请求时刻属于2023年5月9日4:00至2023年5月10日4:00这一时间分区的埋点数据进行。第二样本集的生成时机可以是每次进行第二训练之前生成,也可以在时间上分布地逐步生成第二样本集的多个部分。下文将具体描述第二样本集的生成时机。
图7是根据本公开实施例的用于推荐系统的操作方法的示意图。在本文一些示例中为便于描述,进行训练和样本生成的时刻均以整点为例,各时间段的划分也是以整点为边界。应当理解,在实际执行方法时,本公开提到的各个时刻、以及各时间段的划分边界均可以不是整点的时刻。如图7所示,服务端在存储器中创建多个存储分区,例如图7示出了存储分区1至6,多个存储分区分别对应连续的多个时间段,例如存储分区1对应于1:00-2:00时间段、存储分区2对应于2:00-3:00时间段等,每个时间段的时长等于1小时(本示例中的单位时长)。应当理解,对于边界处的时刻,例如2:00,可以将其划分到前一个时间段(例如1:00-2:00)内、也可以将其划分到后一个时间段(例如2:00-3:00)内,只要对各个时间段的划分规则明确并统一即可。服务端将接收到的埋点数据按照其携带的请求时刻所属的时间段存储在对应的存储分区中。
在图7的示例中,第一时间间隔等于单位时长1小时,第二时间间隔等于三倍的单位时长,即3小时。服务端每隔1小时周期性地进行第一训练,例如图7中示出的在2:00、3:00、4:00等时刻周期性地进行第一训练。每次的第一训练基于:当前已接收的所有携带的请求时刻与当前时刻的间隔小于第一时间间隔的埋点数据(即与当前时刻最临近的1个小时所对应的存储分区中的所有埋点数据)所生成的第一样本集。例如,在2:00的第一训练基于存储分区1(对应1:00-2:00时间段)中的所有埋点数据,在3:00的第一训练基于存储分区2(对应2:00-3:00时间段)中的所有埋点数据,依次类推。如上文所述,可以每间隔1小时周期性地生成第一样本集,例如在每次第一训练之前生成。例如,服务端可以在2:00的时刻触发生成第一样本集的任务,并且在生成第一样本集的任务完成之后触发第一训练任务。由此可见,图中示出为“2:00训练”操作,是指在2:00可以开始进行该操作,实际执行训练的时刻、以及实际生成样本的时刻都可以不是2:00整的时刻,实际的执行时刻可以是由服务端的计算资源的占用情况来决定的。
服务端每隔3小时周期性地进行第二训练,例如图7中示出的在1:00、4:00、7:00等时刻周期性地进行第二训练。每次的第二训练基于:当前已接收的所有携带的请求时刻与当前时刻的间隔大于第二时间间隔并且小于两倍的第二时间间隔的埋点数据(即与当前时刻间隔大于3小时并且小于6小时的多个时间段所对应的多个存储分区中的所有埋点数据)所生成的第二样本集。例如,在1:00的第二训练基于存储分区-5(对应19:00-20:00时间段)至存储分区-3(对应21:00-22:00时间段)这三个存储分区(即对应19:00-22:00时间段)中的所有埋点数据,在4:00的第二训练基于存储分区-2(对应22:00-23:00时间段)至存储分区0(对应0:00-1:00时间段)这三个存储分区(即对应22:00-1:00时间段)中的所有埋点数据,在7:00的第二训练基于存储分区1(对应1:00-2:00时间段)至存储分区3(对应3:00-4:00时间段)这三个存储分区(即对应1:00-4:00时间段)中的所有埋点数据,依次类推。
图7所示的训练方法,每个单位时间使用最近的一个分区的数据进行第一训练使得可以及时更新模型参数,并且每隔较长的时间间隔进行的第二训练使用与当前时刻间隔较远的样本,可以提高样本的完整性和准确性(参考上文所述的现有技术训练过程存在的问题2),因此同时兼顾了推荐模型训练的时效性和准确性。在图6所示的现有技术的训练方法中,每个单位时间都要进行一次基于3个分区的数据量的训练。而在图7所示的根据本公开实施例的训练方法中,每个单位时间进行一次的训练只需要基于1个分区的数据,只是在每3个小时才需要进行一次基于3个分区的数据量的训练。可见,根据本公开实施例的训练方法可以明显减小模型训练(包括样本生成)的计算量,这种计算量的减少在第二时间间隔更长时(例如图8所示的24小时)更加明显。
图8是用于推荐模型的训练方法的又一示例。在该示例中,第一时间间隔为1小时,第二时间间隔为24小时。在时间轴t上,标出的t0、t1、t2……t23等各个时刻分别表示每个整点。为方便理解,可以将t0时刻对应为0:00,t1时刻对应为1:00,依此类推。在该示例中,每小时进行一次第一训练,每次第一训练基于刚刚经过的这一个小时的数据。每24小时,即每天,进行一次第二训练,每次第二训练基于与当前时刻间隔大于24但小于48小时的数据。如上文所述,在一些实施例中,第二样本集的生成时机可以是每次进行第二训练之前生成。以图8所示的情况为例,可以在t23时刻触发生成第二样本集的任务,在该任务中基于t-24时刻至t-1时刻(其中“-”为负号,t-24时刻和t-1时刻均位于时间轴t的负半轴上,未示出)的埋点数据生成第二样本集。在生成第二样本集的任务完成之后可以进行第二训练。
在一些实施例中,也可以在时间上分布地逐步生成第二样本集的多个部分。例如,以第一时间间隔周期性地、基于与当前时刻间隔在预设范围的一个时间段所对应的存储分区中的所有埋点数据生成第二样本集的一个特定子集。预设范围可以包括大于第二时间间隔并且小于第一时间间隔与第二时间间隔之和、或者可以包括大于第二时间间隔与第一时间间隔之差并且小于第二时间间隔。在进行第二训练之前,将第二样本集的多个特定子集合成为第二样本集。
图9以图8所示的情况为例示出了这些实施例中生成第二样本集的方式。例如,在t0时刻生成t-24时刻的样本,在t1时刻生成t-23时刻的样本,依此类推。需要说明的是,这里为了描述方便起见,使用了某个时刻的样本的用语。应当理解,某个时刻的样本即指该时刻之前并与之最临近的单位时间所对应的存储分区内的埋点数据所对应的样本。如此,在t22时刻生成t-2时刻的样本,在t23时刻生成t-1时刻的样本,并且在t23时刻会进行第二训练,该第二训练基于已经生成的t-24时刻的样本、t-23时刻的样本、……t-1时刻的样本。相比于以第二时间间隔为周期来生成第二样本集的前述实施例,当前实施例存在优势。如图9所示,在t0时刻生成t-24时刻的样本之后,t-24时刻的原始数据(指的是,t-24时刻之前并与之最临近的单位时间所对应的存储分区内的埋点数据)即可被服务端删除。而在前述实施例中,t-24时刻的原始数据需要在t23时刻完成生成第二样本集的任务之后才能删除。因此当前实施例比前述实施例可以更节省服务端的存储资源。此外,在当前实施例中,每次生成样本的任务只基于1个存储分区中的数据,相比于基于24个存储分区中的数据生成样本,其任务的执行时间明显较短,因此带来的系统延时也较小。并且,当前实施例中生成第二样本集的一个特定子集,与生成第一样本集都是基于1个存储分区中的数据,因此可以最大限度地实现功能模块的复用。
此外,尽管未在图9中示出,但应当理解,在t0时刻,除了生成t-24时刻的样本之外,还生成t0时刻的样本,并且还需进行基于t0时刻的样本的第一训练;在t1时刻,除了生成t-23时刻的样本之外,还生成t1时刻的样本,并且还需进行基于t1时刻的样本的第一训练;依此类推。在t23时刻,需要生成t-1时刻的样本以及t23时刻的样本,并且基于t23时刻的样本进行第一训练、以及基于t-24时刻的样本、t-23时刻的样本、……t-1时刻的样本进行第二训练。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于装置实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图5是根据本公开一些实施例的用于向用户推荐内容的推荐模型的训练装置的结构示意图。
如图5所示,用于向用户推荐内容的推荐模型的训练装置500包括存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一个实施例的方法。
存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如可以存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
用于向用户推荐内容的推荐模型的训练装置500还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530、540、550之间、以及存储器510与处理器520之间例如可以通过总线560连接。输入输出接口530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为SD卡、U盘等外置存储设备提供连接接口。
本公开实施例还提供了一种计算机可读存储介质,包括计算机程序指令,该计算机程序指令被处理器执行时实现上述任意一个实施例的方法。
本公开实施例还提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现上述任意一项所述的方法。
至此,已经详细描述了本公开的各实施例。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解,可由计算机程序指令实现流程图中一个流程或多个流程和/或方框图中一个方框或多个方框中指定的功能。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改或者对部分技术特征进行等同替换。本公开的范围由所附权利要求来限定。
Claims (10)
1.一种用于向用户推荐内容的推荐模型的训练方法,由服务端执行,包括:
响应于接收到客户端发送的所述用户对页面的请求,发送响应到所述客户端,所述响应携带与所述请求相关联的请求时刻、以及基于所述推荐模型生成的与所述页面相关联的多个内容;
接收所述客户端响应于所述用户针对与所述页面相关联的多个内容中的一个或多个内容的用户行为而发送的埋点数据,其中埋点数据携带所述请求时刻;
响应于当前时刻相对于所述请求时刻经过第一时间段,基于与携带所述请求时刻的当前已接收的所有埋点数据相关联的数据样本对所述推荐模型进行第一训练;并且
响应于当前时刻相对于所述请求时刻经过大于第一时间段的第二时间段,基于与携带所述请求时刻的当前已接收的所有埋点数据相关联的数据样本对所述推荐模型进行第二训练。
2.根据权利要求1所述的方法,其中,
第一时间段等于单位时长,第二时间段大于或等于三倍的单位时长。
3.根据权利要求1所述的方法,其中,
第二时间段大于第一时间段的程度是基于所述内容的特性预先确定的。
4.根据权利要求3所述的方法,其中,
响应于所述内容所需的观看时长大于或等于预设值,第二时间段比第一时间段大第一预设时长;
响应于所述内容所需的观看时长小于预设值,第二时间段比第一时间段大第二预设时长;
所述第一预设时长大于所述第二预设时长。
5.根据权利要求1所述的方法,还包括:
在存储器中创建多个存储分区,每个存储分区对应一个特定时间段,将接收到的埋点数据按照其携带的所述请求时刻所属的时间段存储在对应的存储分区中。
6.根据权利要求1所述的方法,其中,所述请求时刻为所述服务端接收到所述请求的时刻。
7.一种用于推荐系统的操作方法,所述推荐系统包括基于推荐模型向用户推荐内容的服务端,所述方法由所述服务端执行,所述方法包括:
接收来自各客户端的埋点数据,埋点数据中的特定埋点数据与特定用户针对特定页面中的特定内容的用户行为相关联,每个埋点数据携带针对所对应的特定页面的请求的请求时刻;
以第一时间间隔周期性地基于第一样本集对所述推荐模型进行第一训练以更新模型参数,第一样本集基于当前已接收的所有第一埋点数据生成,第一埋点数据携带的请求时刻与当前时刻的间隔小于第一时间间隔;以及
以第二时间间隔周期性地基于第二样本集对所述推荐模型进行第二训练以更新模型参数,第二样本集基于当前已接收的所有第二埋点数据生成,第二埋点数据携带的请求时刻与当前时刻的间隔大于第二时间间隔并且小于两倍的第二时间间隔,
其中,第一时间间隔等于单位时长,第二时间间隔大于或等于三倍的单位时长。
8.根据权利要求7所述的方法,还包括:
在存储器中创建多个存储分区,所述多个存储分区分别对应连续的多个时间段,每个时间段的时长等于单位时长;
将接收到的埋点数据按照其携带的请求时刻所属的时间段存储在对应的存储分区中。
9.根据权利要求8所述的方法,还包括:
以第一时间间隔周期性地、基于与当前时刻最临近的一个时间段所对应的存储分区中的所有埋点数据生成第一样本集。
10.根据权利要求8所述的方法,还包括:
以第二时间间隔周期性地、基于与当前时刻间隔大于第二时间间隔并且小于两倍的第二时间间隔的多个时间段所对应的多个存储分区中的所有埋点数据生成第二样本集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310585117.XA CN116522000B (zh) | 2023-05-23 | 2023-05-23 | 一种用于向用户推荐内容的推荐模型的训练方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310585117.XA CN116522000B (zh) | 2023-05-23 | 2023-05-23 | 一种用于向用户推荐内容的推荐模型的训练方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116522000A true CN116522000A (zh) | 2023-08-01 |
CN116522000B CN116522000B (zh) | 2024-01-23 |
Family
ID=87401089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310585117.XA Active CN116522000B (zh) | 2023-05-23 | 2023-05-23 | 一种用于向用户推荐内容的推荐模型的训练方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116522000B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444447A (zh) * | 2018-12-29 | 2020-07-24 | 北京奇虎科技有限公司 | 内容推荐页面的展现方法及装置 |
CN111859232A (zh) * | 2019-12-31 | 2020-10-30 | 北京骑胜科技有限公司 | 信息的处理方法、装置及设备 |
CN113051486A (zh) * | 2021-04-16 | 2021-06-29 | 深圳市珍爱捷云信息技术有限公司 | 基于交友场景的推荐模型的训练方法、装置、电子设备和计算机可读存储介质 |
WO2021147220A1 (zh) * | 2020-01-20 | 2021-07-29 | 平安科技(深圳)有限公司 | 页面访问时长采集方法、装置、介质及电子设备 |
CN113485889A (zh) * | 2021-06-29 | 2021-10-08 | 平安银行股份有限公司 | 埋点数据校验方法、装置、电子设备及存储介质 |
CN113724044A (zh) * | 2021-08-30 | 2021-11-30 | 平安国际智慧城市科技股份有限公司 | 基于用户画像的商品推荐、装置、计算机设备和存储介质 |
CN115220987A (zh) * | 2021-04-19 | 2022-10-21 | 京东科技控股股份有限公司 | 数据采集方法、装置、电子设备及存储介质 |
CN115797005A (zh) * | 2022-11-24 | 2023-03-14 | 百度在线网络技术(北京)有限公司 | 预测模型的训练、商品推荐方法、装置、电子设备及介质 |
-
2023
- 2023-05-23 CN CN202310585117.XA patent/CN116522000B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444447A (zh) * | 2018-12-29 | 2020-07-24 | 北京奇虎科技有限公司 | 内容推荐页面的展现方法及装置 |
CN111859232A (zh) * | 2019-12-31 | 2020-10-30 | 北京骑胜科技有限公司 | 信息的处理方法、装置及设备 |
WO2021147220A1 (zh) * | 2020-01-20 | 2021-07-29 | 平安科技(深圳)有限公司 | 页面访问时长采集方法、装置、介质及电子设备 |
CN113051486A (zh) * | 2021-04-16 | 2021-06-29 | 深圳市珍爱捷云信息技术有限公司 | 基于交友场景的推荐模型的训练方法、装置、电子设备和计算机可读存储介质 |
CN115220987A (zh) * | 2021-04-19 | 2022-10-21 | 京东科技控股股份有限公司 | 数据采集方法、装置、电子设备及存储介质 |
CN113485889A (zh) * | 2021-06-29 | 2021-10-08 | 平安银行股份有限公司 | 埋点数据校验方法、装置、电子设备及存储介质 |
CN113724044A (zh) * | 2021-08-30 | 2021-11-30 | 平安国际智慧城市科技股份有限公司 | 基于用户画像的商品推荐、装置、计算机设备和存储介质 |
CN115797005A (zh) * | 2022-11-24 | 2023-03-14 | 百度在线网络技术(北京)有限公司 | 预测模型的训练、商品推荐方法、装置、电子设备及介质 |
Non-Patent Citations (1)
Title |
---|
康嘉钰;苏凡军;: "基于生成对抗网络的长短兴趣推荐模型", 计算机技术与发展, no. 06 * |
Also Published As
Publication number | Publication date |
---|---|
CN116522000B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170142482A1 (en) | Video platform monitoring and analyzing system | |
CN110781321B (zh) | 一种多媒体内容推荐方法及装置 | |
US9633358B2 (en) | Interactive presentations with integrated tracking systems | |
US7899700B2 (en) | Method and system for providing multi-dimensional feedback | |
CN109840782B (zh) | 点击率预测方法、装置、服务器以及存储介质 | |
CN103986787A (zh) | 自动获取视频更新的方法和系统 | |
US20230066853A1 (en) | Method and apparatus for training information prediction models, method and apparatus for predicting information, and storage medium and device thereof | |
US10402465B1 (en) | Content authority ranking using browsing behavior | |
US11068926B2 (en) | System and method for analyzing and predicting emotion reaction | |
US20190034997A1 (en) | System and method of providing object for service of service provider | |
CN103997662A (zh) | 节目推送的方法及系统 | |
CN110059269A (zh) | 页面追踪方法、装置、电子设备和计算机可读存储介质 | |
CN114461871B (zh) | 推荐模型训练方法、对象推荐方法、装置及存储介质 | |
CN111552835B (zh) | 文件推荐方法、装置及服务器 | |
US20150245110A1 (en) | Management of invitational content during broadcasting of media streams | |
CN114461920A (zh) | 榜单信息推荐的数据处理方法、装置、介质及设备 | |
CN116522000B (zh) | 一种用于向用户推荐内容的推荐模型的训练方法和装置 | |
KR20220137943A (ko) | 패턴 기반 분류 | |
CN109063124B (zh) | 一种用于推荐电视电子说明书的方法、电子设备、系统及计算机可读存储介质 | |
CN109792452A (zh) | 具有减少的有效负载的自适应用户界面 | |
CN106603351B (zh) | 一种基于用户行为的电视广告推送方法及推送系统 | |
CN111741337B (zh) | 一种推荐信息展示方法、装置及设备 | |
KR102161051B1 (ko) | 서비스 제공자의 서비스에 관한 객체를 제공하는 시스템 및 방법 | |
CN113326397A (zh) | 业务数据的处理方法、装置 | |
CN112565904A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |