WO2018205845A1 - 一种数据处理方法及服务器、计算机存储介质 - Google Patents

一种数据处理方法及服务器、计算机存储介质 Download PDF

Info

Publication number
WO2018205845A1
WO2018205845A1 PCT/CN2018/084664 CN2018084664W WO2018205845A1 WO 2018205845 A1 WO2018205845 A1 WO 2018205845A1 CN 2018084664 W CN2018084664 W CN 2018084664W WO 2018205845 A1 WO2018205845 A1 WO 2018205845A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
user status
queue
type
user
Prior art date
Application number
PCT/CN2018/084664
Other languages
English (en)
French (fr)
Inventor
钟沛珉
Original Assignee
腾讯科技(深圳)有限公司
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 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2018205845A1 publication Critical patent/WO2018205845A1/zh
Priority to US16/411,871 priority Critical patent/US11816172B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2216/00Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
    • G06F2216/03Data mining

Definitions

  • 1 is a schematic diagram of hardware entities of each party performing information interaction in an embodiment of the present application
  • the processing logic 10 includes: S1, establishing a user status queue according to the first type of data and the second type of data, and identifying each user status information in the queue with time information; S2, obtaining a user status feature according to the user status queue; S3, The user state feature, the candidate data input operation model, output the data processing result, and send the data processing result to the terminal.
  • the embodiment of the present application is based on a user time queue of a dynamic time window to represent a user state, and can accurately capture the user state and describe it, thereby solving the above problems that cannot be solved by related technologies.
  • a real-time data stream is collected, and a distributed streaming processing framework (such as Spark Streaming) may be used for data collection.
  • Spark Streaming as the streaming data processing framework is that the streaming data processing framework, as a real-time computing framework built on Spark, extends Spark's ability to handle large-scale streaming data through the streaming data processing framework.
  • Rich application programming interface API
  • memory-based high-speed execution engine users can combine streaming, batch processing and interactive trial query for data processing, which can meet the requirements of real-time requirements, such as real-time recommendation, user behavior analysis Wait.
  • the streaming data processing framework can quickly iterate over the data set in memory, it supports complex data mining algorithms and graphics computing algorithms.
  • the same functions can be implemented using other streaming processing frameworks, and are also within the scope of the present application.
  • the user status feature is obtained according to the user status queue, the user status feature and the candidate data are input into the operation model, the data processing result (such as recommendation information) is output, and the data processing result (such as recommendation information) is sent to the terminal 41.
  • the recommendation information is one of the data processing results calculated based on the calculation model of the embodiment of the present application.
  • the collecting unit is further configured to: when the real-time data stream is collected, obtain a second type of data that is added.
  • the server further includes: an extracting unit configured to extract a current user status queue; and an updating unit configured to directly add the added second type of data to the tail of the current user status queue, to the current user status queue Update.
  • the update strategy needs to ensure sensitivity to changes in user interests and preferences while ensuring accuracy.
  • the above two points are guaranteed from the two aspects of queue length and queue validity time.
  • 1) According to the user's reading behavior statistics on Tencent News and Daily Express, select 100 as the queue length. When new data arrives to fill the queue, if there are already 100 elements in the queue, the earliest arriving elements need to be culled, and the elements behind are migrated in turn, and the newly added elements are inserted at the end of the queue. 2) Limit the timeliness of the queue content in time. When the time of occurrence of the last element of the queue differs from the current time by more than 24 hours, the queue content will be cleared.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computer Security & Cryptography (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种数据处理方法、服务器及计算机存储介质,其中,所述方法包括:收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;根据所述第一类数据和所述第二类数据建立用户状态队列;根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;获取待处理的候选数据和运算模型;将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;根据所述输出参数得到推荐信息,发送所述推荐信息。

Description

一种数据处理方法及服务器、计算机存储介质
相关申请的交叉引用
本申请基于申请号为201710326633.5、申请日为2017年05月10日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本申请涉及通信技术,尤其涉及一种数据处理方法及服务器、计算机存储介质。
背景技术
从信息交互中发掘出用户所关注的信息,以该用户所关注的信息为基础为用户提供更多相关的服务,是目前信息发掘的发展趋势。比如,在信息发掘的过程中,可以对用户状态(如用户当下的兴趣或偏好)等进行分析。
目前,按照固定时间段的选取机制来捕获用户状态,以用于分析。由于用户状态变化较快、且有一定随机性的特性,导致其难以被精确的捕获到,从而无法精准的为用户提供推荐信息。
如何精准的得到用户状态并对其进行描述,是要解决的技术问题。然而,相关技术中,对此,尚未存在有效的解决方案。
发明内容
有鉴于此,本申请实施例提供了一种数据处理方法及服务器、计算机存储介质,至少解决了现有技术存在的问题。
本申请实施例的一种数据处理方法,所述方法包括:
收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
根据所述第一类数据和所述第二类数据建立用户状态队列;
根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
获取待处理的候选数据和运算模型;
将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
根据所述输出参数得到推荐信息,发送所述推荐信息。
本申请实施例的一种服务器,所述服务器包括:
收集单元,配置为收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
队列建立单元,配置为根据所述第一类数据和所述第二类数据建立用户状态队列;
状态变化跟踪单元,配置为根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
获取单元,配置为获取待处理的候选数据和运算模型;
运算单元,配置为将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
发送单元,配置为根据所述输出参数得到推荐信息,发送所述推荐信息。
本申请实施例的一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项所述方法的步骤。
本申请实施例的一种服务器,所述服务器包括:
存储器,配置为存储能够在处理器上运行的计算机程序;
处理器,配置为运行所述计算机程序时,执行如上述方案任一项所述方法的步骤。
本申请实施例的一种数据处理方法,所述方法由服务器执行,所述服务器包括有一个或多个处理器以及存储器,以及一个或一个以上的程序,其中,所述一个或一个以上的程序存储于存储器中,所述程序可以包括一个或一个以上的每一个对应于一组指令的单元,所述一个或多个处理器被配置为执行指令;所述方法包括:
收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
根据所述第一类数据和所述第二类数据建立用户状态队列;
根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
获取待处理的候选数据和运算模型;
将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
根据所述输出参数得到推荐信息,发送所述推荐信息。
本申请实施例的信息安全处理方法,包括:收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;根据所述第一类数据和所述第二类数据建立用户状态队列;根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;获取待处理的候选数据和运算模型;将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;根据所述输出参数得到推荐信息,发送所述推荐信息。
采用本申请实施例,收集实时的数据流,根据实时的数据流建立用户状态队列,根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征,从而实现实时(如以实时的数据流为依据)对用户状态变化(如动态时间窗口)的动态把握(如队列中每一个用户状态的跟踪),可以精确的定位到某个时刻对应的用户状态、或某个相对短时间段所对应的用户状态变化,即便用户状态变化较快、且有一定随机性的特性,仍然可以将其精确的捕获到,从而精准的为用户提供推荐信息,为用户提供更多精确的相关服务。
附图说明
图1为本申请实施例中进行信息交互的各方硬件实体的示意图;
图2为本申请实施例一方法的实现流程示意图;
图3为本申请实施例一系统架构的示意图;
图4为本申请实施例一服务器的硬件架构示意图;
图5为应用本申请实施例一点击率预估流程的示意图;
图6-10为应用本申请实施例的多个用户状态队列及其更新的示意图;
图11为应用本申请实施例的用户状态存储流程图。
具体实施方式
下面结合附图对技术方案的实施作进一步的详细描述。
现在将参考附图描述实现本申请各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本申请实施例的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
在下面的详细说明中,陈述了众多的具体细节,以便彻底理解本申请。不过,对于本领域的普通技术人员来说,显然可在没有这些具体细节的情 况下实践本申请。在其他情况下,没有详细说明公开的公知方法、过程、组件、电路和网络,以避免不必要地使实施例的各个方面模糊不清。
另外,本文中尽管多次采用术语“第一”、“第二”等来描述各种元件(或各种阈值或各种应用或各种指令或各种操作)等,不过这些元件(或阈值或应用或指令或操作)不应受这些术语的限制。这些术语只是用于区分一个元件(或阈值或应用或指令或操作)和另一个元件(或阈值或应用或指令或操作)。例如,第一操作可以被称为第二操作,第二操作也可以被称为第一操作,而不脱离本申请的范围,第一操作和第二操作都是操作,只是二者并不是相同的操作而已。
本申请实施例中的步骤并不一定是按照所描述的步骤顺序进行处理,可以按照需求有选择的将步骤打乱重排,或者删除实施例中的步骤,或者增加实施例中的步骤,本申请实施例中的步骤描述只是可选的顺序组合,并不代表本申请实施例的所有步骤顺序组合,实施例中的步骤顺序不能认为是对本申请的限制。
本申请实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。
本申请实施例的智能终端(如移动终端)可以以各种形式来实施。例如,本申请实施例中描述的移动终端可以包括诸如移动电话、智能电话、笔记本电脑、数值广播接收器、个人数值助理(PDA,Personal Digital Assistant)、平板电脑(PAD)、便携式多媒体播放器(PMP,Portable Media Player)、导航装置等等的移动终端以及诸如数值TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是, 除了特别用于移动目的的元件之外,根据本申请的实施方式的构造也能够应用于固定类型的终端。
随着互联网的普及,用户间可以很方便的通过互联网进行各种信息交互。需要从信息交互中发掘出用户所关注的信息,以便以该用户所关注的信息为基础为用户提供更多相关的服务。比如,在信息发掘的过程中,可以对用户状态等信息进行分析。所述用户状态指用户当下的兴趣、偏好,通常变化较快而又有一定随机性。如果能精确的捕获到用户状态,就可以为用户提供精准的服务。
由于用户状态通常变化较快且有一定随机性,因此,难以通过目前的相关技术精确的捕获到用户状态,从而无法精准的为用户推荐信息。一种方式是:使用固定时间长度的用户历史行为数据建立用户画像,可是,用户画像指用户长期的兴趣、喜好,只能描述倾向于长期稳定。无论对该固定时间段的选取时间是长或短,都无法精确的定位到某个时刻对应的用户状态、或某个相对短时间段所对应的用户状态。这与希望捕获用户状态变化和对它进行描述的初衷是不一致的。
图1为本申请实施例中进行信息交互的各方硬件实体的示意图,图1中包括:终端1、服务器2。终端1可以由多个终端11-13组成,通过无线或有线方式与服务器2进行信息交互。图1中的服务器个数仅仅起指代作用,并不限制服务器的个数。
在信息发掘的过程中,可以对用户状态等信息进行分析。所述用户状态指用户当下的兴趣、偏好,通常变化较快而又有一定随机性。如果能精确的捕获到用户状态,就可以为用户提供精准的服务,尤其适用于信息推荐场景。由于用户状态通常变化较快且有一定随机性,比如,在天宫一号空间站发射升空时,平时不喜爱航空航天的人,也会在这个时间点关注中国航空航天;比如,在美国大选时,平时不关注国际时政的人,也会关注 大选结果,因此,既能敏感的捕捉用户状态变化、又能准确的描述用户状态十分困难,也就是说,难以通过现有技术精确的捕获到用户状态并对它进行描述。因此,难以通过相关技术精确的捕获到用户状态,从而无法精准的为用户推荐信息。也就是说,信息推荐场景中,想要获取到用户状态,但是,相关技术达不到,因此,只能退而求其次,获取用户画像并进行分析,而用户画像指用户长期的兴趣、喜好,倾向长期稳定。可见,这个分析结果并不是用户希望得到的数据处理结果,也不是最好的处理结果。用户的目的始终是希望得到用户状态,更精确的描述出用户状态。
在信息推荐场景或广告投放等场景,如果能准确的捕捉用户状态,从技术角度来说,对信息推荐和广告投放的精准度会有很大的帮助,处理效率也会得到改善。从产品应用的角度来说,无论对提升信息推荐的预估点击率,还是用户得到更精准的信息都有巨大的帮助。可是,相关技术中,是使用不同周期的用户行为建立用户画像,但时间周期往往很难选择。如果选择用户行为的时间周期过长,例如一个月或半个月内的行为建立用户画像,那么无法敏感的获得用户状态的变化;如果选择用户行为的时间周期过短,例如几个小时内的行为建立用户画像,那么可能导致数据量过少,无法准确的描述用户当下状态。采用本申请实施例,由服务器执行处理逻辑10,如图1所示。处理逻辑10,包括:S1、根据第一类数据和第二类数据建立用户状态队列,以时间信息标识队列中的每一个用户状态信息;S2、根据用户状态队列得到用户状态特征;S3、将用户状态特征、候选数据输入运算模型,输出数据处理结果,将数据处理结果发送给终端。本申请实施例是基于动态时间窗口的用户状态队列来表示用户状态,能准确的捕获到用户状态并对它进行描述,从而以此为基础解决了相关技术无法解决的上述问题。
本申请实施例中,还可以根据用户行为发生的频率,动态的调整收集 用户行为的时间窗口,从而兼顾到对用户变化的敏感性和用户状态表示的准确性。
上述图1的例子只是实现本申请实施例的一个系统架构实例,本申请实施例并不限于上述图1所述的系统结构,基于上述图1所述的系统架构,提出本申请方法各个实施例。
本申请实施例的数据处理方法,如图2所示,所述方法包括:收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据(101)。其中,第一类数据可以为针对所关注的数据产生的各种用户行为,包括用户点击浏览新闻、评论、收藏、转发等;第二类数据可以是用户所关注的数据,比如一段新闻、一个视频、一本小说等。本文中,可以将第二类数据统称为“曝光数据”。
本申请实施例中,收集实时的数据流,可以采用分布式流式处理框架(如Spark Streaming)进行数据收集。使用Spark Streaming作为该流式数据处理框架的好处是:该流式数据处理框架作为建立在Spark上的实时计算框架,扩展了Spark处理大规模流式数据的能力,通过该流式数据处理框架提供的丰富的应用编程接口(API)、基于内存的高速执行引擎,用户可以结合流式、批处理和交互试查询进行数据处理,可以满足实时性要求较高的业务,如实时推荐、用户行为分析等。由于该流式数据处理框架可以快速在内存中对数据集进行多次迭代,因此,支持复杂的数据挖掘算法和图形计算算法。除了将Spark Streaming作为本申请实施例中的流式数据处理框架,使用其他流式处理框架也可以实现相同的功能,也在本申请的保护范围之内。
本申请实施例的数据处理方法,包括:根据所述第一类数据和所述第二类数据建立用户状态队列(102);根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征(103)。 具体的,可以根据触发所述第一类数据的时间信息,标识位于所述用户状态队列中的每一个用户状态信息,得到所述用户状态队列中以动态时间窗口表示的每一个用户状态(103a)。用户状态队列的结构中,是以行为的发生时间来标识位于所述用户状态队列中的每一个用户状态信息。该用户状态队列的结构中,除了包括行为的发生时间,还包括行为内容。具体的,行为内容记录了用户看到的新闻id以及具体发生了什么行为,例如只是看了新闻1的标题没有点击进入具体的详情页,则记录为“新闻1:曝光”。而行为的发生时间,则记录发生行为的具体时间。
本申请实施例中,所述用户状态队列可以采用动态时间窗口的结构体来实现,则所述用户状态队列也可以称为动态时间窗口用户状态队列。该队列中所包含的两种数据:1)行为的发生时间;2)行为内容,其中,该行为的发生时间可以通过表征用户行为的第一类数据来实现,记录触发该用户行为的时间;该行为内容可以通过表征用户行为的第一类数据和表征用户关注数据自身的第二类数据来实现,记录针对该用户关注数据自身,具体发生了何种用户行为,比如,用户看到的一段视频后具体发生了什么行为(如点赞、评论或转发等等)。
根据所述用户状态队列得到用户状态特征(103b)。对用户状态进行分析,可以得到用户状态特征。该用户状态特征用于描述用户当下兴趣、偏好主观感受的信号或变量。一个示例中,用户状态特征是根据用户状态队列生成的,可以分为两类特征。1)属性统计类特征;2)反馈类特征。具体的,对于属性统计类特征,是将用户状态队列中所有新闻id对应的,新闻一级分类、二级分类、关键词、标签、主题、标题分次取出,并按不同的行为权重做累加,例如有点击行为的权重为1,收藏行为的权重为1.5,转发行为的2,未发生行为的为0等。以此方法,分别取权重累加top5的新闻一级分类、二级分类、关键词、标签、标题分次作为用户偏好特征。 对于反馈类特征,还可以分为正反馈特征和负反馈特征。其中,正反馈特征的一个示例为:将用户近半小时内、取发生点击行为时间离当前最近的20条新闻(若超过20条取20条,若不足20条全部取)的一级分类、二级分类、关键词、标题、主题、标题分次,按时间排序取top5,作为用户的正反馈特征。负反馈特征的一个示例为:将用户近半小时内,所有曝光且为点击新闻的一级分类、二级分类、关键词、标签、主题、标题分次等,按出现次数累加,取top10作为特征。
也就是说,对新闻分类对应不同的行为权重(点击、分享、转发)统计后,按照优先级排序,获取排序靠前的新闻,这些排序靠前的新闻属于新闻敏感度高的新闻。将这些排序靠前的新闻中,新闻敏感度top5的新闻按照时间的维度进行排序,得到的特征就是正反馈特征;将这些排序靠前的新闻中,新闻敏感度top5的新闻按照次数的维度进行排序,得到的特征就是负反馈。进一步的,本申请实施例还可以包括筛选排序等等。
本申请实施例的数据处理方法,包括:获取待处理的候选数据和运算模型(104)。将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数(105)。以信息推荐场景为例,该运算模型可以为点击率预估模型,将得到的用户状态特征经点击率预估模型运算后,可以得到点击率。本实施例并不限于信息推荐场景,还适用于广告投放、搜索排放场景等等。根据所述输出参数得到数据处理结果,比如,推荐的新闻、视频、小说等等。根据所述输出参数得到推荐信息,将所述推荐信息发送给终端(106)。推荐信息是基于本申请实施例的运算模型计算得到数据处理结果中的一种信息。
采用本申请实施例,由于能对用户状态队列中的每一个用户状态信息以时间信息进行标识,从而可以使用具备动态时间窗口的用户状态队列来表示用户状态,以精确的定位到某个时刻对应的用户状态、或某个相对短 时间段所对应的用户状态变化,符合用户初衷。以由用户状态队列得到的用户状态特征为基础,通过运算模型的运算可以得到精确的数据处理结果,发送数据处理结果给终端,为用户提供更多精确的相关服务。
本申请实施例的一个示例中,可以通过分布式流式数据处理框架(例如spark streaming或storm)接入实时的新闻曝光数据(用户看到哪些新闻)以及用户实时行为数据(用户点击浏览新闻、评论、收藏、转发等)。对这些实时数据进行处理,为每一位用户建立一个用户状态信息队列,供后续计算用户特征使用。之后,根据之前收集的用户状态队列,计算用户状态特征。最后,将新闻候选集、用户状态特征等信号量输入运算模型,如点击率预估模型,也就是说,是将计算出的用户状态特征,连同带待荐的新闻信息以及用户基本属性等,输入该点击率预估模型(例如逻辑回归或分解机)中,输出每一条待推荐新闻的预估点击率,使点击率预估准确度得到大幅提高。根据每一条待推荐新闻的预估点击率,计算用户最可能喜欢的新闻,生成最终的个性化新闻推荐结果,将最终的推荐新闻展现给用户。
本申请实施例中,收集所述实时的数据流时得到新增的第一类数据,如新增的用户行为数据后,提取当前用户状态队列,在所述当前用户状态队列中,查询到与新增的第一类数据对应的第二类数据(如曝光数据,该新增的第一类数据和与其匹配的第二类数据,可以针对同一个新闻,比如,第一类数据为针对新闻1的点击行为,第二类数据为针对新闻1的曝光数据)。从所述当前用户状态队列中,删除所述第二类数据所在的用户状态信息,将位于被删除用户状态信息后的所有用户状态信息进行位置依次前移,对所述当前用户状态队列进行更新。将新增的第一类数据添加入更新后的用户状态队列的队尾部。本申请实施例的一个示例中,可以不停的用实时新闻曝光数据和实时用户行为数来填充队列。队列的数据更新针对用户行为数据,是新来一条用户行为数据时,需要先在用户状态队列里找到其对 应的曝光数据,并且将该条曝光数据移出用户状态队列,将用户状态队列中排在该元素后的内容位置依次前移,最后将该条用户行为数据插入用户状态队列的末尾。比如,找到新闻1在用户状态队列对应的曝光数据,具体为与新增用户行为数据对应的曝光数据,并将其删除。如何查找与新增用户行为数据对应的曝光数据,一是从数据自身看,比如,在用户状态队列的用户状态信息中,都是针对“新闻1”,二是从针对该数据的行为发生时间看,在时间关系上呈现时间顺序,比如,新增用户行为数据是针对“新闻1”在“2015年10月21日13:45:20秒发生的,曝光数据是针对“新闻1”在2015年10月21日13:45:11秒发生的。将删除元素后的所有元素位置一次迁移,这里,在用户状态队列中不区分内容,可以按照用户点击的时间进行顺序。最后,将新增用户行为数据插入新用户状态队列的队尾部。本文中,用户状态队列中的“元素”,即为构成用户状态队列的多个用户状态信息。
本申请实施例中,收集所述实时的数据流时得到新增的第二类数据,如新增的曝光数据后,提取当前用户状态队列,将新增的第二类数据直接添加入所述当前用户状态队列的队尾部,对所述当前用户状态队列进行更新。本申请实施例的一个示例中,可以不停的用实时新闻曝光数据和实时用户行为数来填充队列。队列的数据更新针对实时新闻曝光数据时,在数据流实时更新以得到新增的该曝光数据之前,已经根据在先第一类数据和在先第二类数据建立了原有的用户状态队列,即当前用户状态队列,则针对新增的该曝光数据进行队列数据更新的过程中,直接将该曝光数据填入当前用户状态队列的队尾部。
本申请实施例中,可以建立实时流式数据连接,实时获取到用户看到哪些新闻的曝光数据,以及用户在点击进入哪些新闻的详情页进行浏览、 或者评论过哪些新闻、对哪些新闻做过转发操作的用户行为数据。可以不断使用新闻曝光实时数据和用户行为实时数据,来填充用户状态。
本申请实施例中,一方面,如果是老用户,则其用户状态队列已经存储于存储介质中,这里,该存储介质包括各种类型的数据库。则对于老用户,直接从存储介质中取出用户状态队列。另一方面,如果是新用户,则新建一个用户状态队列(或称为动态时间窗口用户状态表示队列)。可以根据当前的数据,以及队列变化情况来更新用户状态队列。最终,将更新完毕的用户状态队列写入存储介质中。
本申请实施例中,配置了队列更新策略。一方面,针对队列长度,所述第一类数据(新增的用户行为数据)和/或第二类数据(新增的曝光数据)实时更新时,触发对所述当前用户状态队列的更新。所述当前用户状态队列的队列长度达到第一阈值时,将处于所述当前用户状态队列中位置靠前的用户状态信息依次从所述当前用户状态队列中删除,将处于所述当前用户状态队列中位置靠后的用户状态信息依次前移,将实时更新的数据插入所述当前用户状态队列的队尾部。另一方面,针对队列有效性,所述第一类数据(新增的用户行为数据)和/或第二类数据(新增的曝光数据)实时更新时,触发对所述当前用户状态队列的更新。获取处于所述当前用户状态队列中队尾部的用户状态信息所对应的第一时间信息,根据所述第一时间信息与当前时间信息的差值来判断所述当前用户状态队列中队列内容的有效性,若所述差值大于第二阈值,则对所述当前用户状态队列中的所有用户状态信息进行清空。
本申请实施例中,就上述用户状态队列的该队列更新策略而言,该队列更新策略需要保证对用户兴趣、偏好的变化的敏感性,又要保证准确性,为此,从队列长度和队列有效性时间两方面来保证上述两点。也就是说, 对该用户状态队列,在队列长度和队列内容有效期上都可以设置限制,或者,对其中一个方面进行限制。
比如,1)队列长度的限制,保证了对用户状态把握的准确性与时效性,当用户刷新频率较快时,队列保留的是用户短期100条浏览记录,当用户刷新频率较慢时,保留的是用户中长期100条浏览记录,这样就实现了一个动态时间窗口的机制,使得用户状态的表示随用户行为频率变化而变化。具体的,根据用户行为数据的统计,可以选取100作为队列长度。新增数据到来要填充队列时,如果队列已中已有100个元素,则需要将最早到达的元素剔除队列,并将后边的元素依次迁移,再将新增的元素插入队列末尾。
比如,2)队列内容有时间限制,队列最后一条数据与当前时间超过24小时时,说明用户的使用发生了间隔,在这个时间段认为用户的兴趣偏好是不可感知的,因此,为了使过去的数据对未来用户兴趣偏好预测不产生影响,可以清空队列,以保证用户状态的准确。具体的,在时间上限制队列内容的时效性,当队列最后一个元素的发生时间与当前时间相差大于24小时情况下,将清空队列内容。
需要指出的是,本申请实施例的适用场景有很多,比如新闻推荐场景、点击率预估场景、广告投放场景、搜索排序场景等,均适用于上述本申请实施例中的步骤、思想或处理逻辑。
本申请实施例的数据处理系统,如图3所示,包括终端41和服务器42,终端41通过无线或有线方式与服务器42进行信息交互。服务器42从终端41收集到实时的数据流后,根据实时数据流中的第一类数据和第二类数据建立用户状态队列,根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征。具体的,以时间信息标识队列中的每一个用户状态信息。根据用户状态队列得到用户状态特 征,将用户状态特征、候选数据输入运算模型,输出数据处理结果(如推荐信息),将数据处理结果(如推荐信息)发送给终端41。推荐信息是基于本申请实施例的运算模型计算得到数据处理结果中的一种信息。
本申请实施例中,服务器42包括:
收集单元421,配置为收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据。队列建立单元422,配置为根据所述第一类数据和所述第二类数据建立用户状态队列。状态变化跟踪单元423,配置为根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;具体的,状态变化跟踪单元423还包括:用户状态描述子单元,配置为根据触发所述第一类数据的时间信息,标识位于所述用户状态队列中的每一个用户状态信息,得到所述用户状态队列中以动态时间窗口表示的每一个用户状态。以及特征确定子单元,配置为根据所述用户状态队列得到用户状态特征。获取单元424,配置为获取待处理的候选数据和运算模型。运算单元425,配置为将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数。发送单元426,配置为根据所述输出参数得到数据处理结果,将所述数据处理结果发送给终端。
本申请实施例一实施方式中,所述收集单元,进一步配置为:收集所述实时的数据流时得到新增的第二类数据。所述服务器还包括:提取单元,配置为提取当前用户状态队列;更新单元,配置为将新增的第二类数据直接添加入所述当前用户状态队列的队尾部,对所述当前用户状态队列进行更新。
本申请实施例一实施方式中,所述收集单元,进一步配置为:收集所述实时的数据流时得到新增的第一类数据。所述服务器还包括:提取单元, 配置为提取当前用户状态队列;更新单元,配置为:在所述当前用户状态队列中,查询到与新增的第一类数据对应的第二类数据;从所述当前用户状态队列中,删除所述第二类数据所在的用户状态信息;将位于被删除用户状态信息后的所有用户状态信息进行位置依次前移,对所述当前用户状态队列进行更新;将新增的第一类数据添加入更新后的用户状态队列的队尾部。
本申请实施例一实施方式中,所述服务器还包括:触发单元,配置为所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;第一校验更新单元,配置为所述当前用户状态队列的队列长度达到第一阈值时,将处于所述当前用户状态队列中位置靠前的用户状态信息依次从所述当前用户状态队列中删除,将处于所述当前用户状态队列中位置靠后的用户状态信息依次前移,将实时更新的数据插入所述当前用户状态队列的队尾部。
本申请实施例一实施方式中,所述服务器还包括:触发单元,配置为所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;第一校验更新单元,配置为:获取处于所述当前用户状态队列中队尾部的用户状态信息所对应的第一时间信息;根据所述第一时间信息与当前时间信息的差值来判断所述当前用户状态队列中队列内容的有效性,若所述差值大于第二阈值,则对所述当前用户状态队列中的所有用户状态信息进行清空。
本申请实施例的一种计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如上述实施例所述数据处理方法的步骤。
本申请实施例的一种服务器,如图4所示,所述服务器包括:存储器61,用于存储能够在处理器上运行的计算机程序;处理器62,用于运行所 述计算机程序时,执行如上述实施例中数据处理方法的步骤。所述服务器还可以包括:外部通信接口63,外部通信接口63用于与终端等外设进行信息交互,具体如服务器接收终端发送的实时数据流,根据实时数据流中的第一类数据和第二类数据建立用户状态队列,以时间信息标识队列中的每一个用户状态信息。服务器42根据用户状态队列得到用户状态特征,将用户状态特征、候选数据输入运算模型,输出数据处理结果,将数据处理结果发送给终端。所述服务器还可以包括:内部通信接口64,所述内部通信接口64具体可以是PCI总线等总线接口。
以一个现实应用场景为例对本申请实施例阐述如下:
以信息推荐中的点击率预估场景为例描述本申请实施例。
相关技术中,是通过用户行为建立用户画像来描述用户的兴趣、偏好等。具体是使用固定时间长度的用户历史行为数据建立用户画像。可是,时间选取过长(例如一个月)则对用户变化不够敏感,时间选取过短(例如几小时或一天)对用户的行为统计又不够准确。为兼容对用户当下兴趣、偏好的敏感性与准确性,采用本申请实施例,是一种基于动态时间窗口用户状态队列来表示用户状态,能精确的描述出用户当下状态,得到用户的兴趣、偏好等。
本申请实施例的一处理流程如图5所示,包括:
步骤301、收集实时流数据。
步骤302、根据实时流数据生成用户状态队列。
步骤303、根据用户状态队列计算用户状态特征。
步骤304、将用户状态特征和候选数据输入点击率预估模型,根据点击率预估模型计算点击率。
步骤305、根据点击率得到推荐结果。
本申请实施例中,通过固定时间周期的用户画像来描述用户状态。时 间周期选取过长导致对用户时下兴趣、偏好的变化不敏感;时间周期选取过短,导致对用户时下兴趣表示不准确。为兼容对用户当下兴趣、偏好的敏感性与准确性,采用动态时间窗口的用户状态表示队列来表示用户状态,包括如下内容:
一、动态时间窗口的结构和更新策略。
1.1)动态时间窗口的用户状态队列结构。
该队列每一个元素包含两部分数据,分别是行为内容和发生时间。行为内容记录了用户看到的新闻标识(ID)以及具体发生了什么行为,例如只是看了新闻1的标题没有点击进入具体的详情页,则记录为“新闻1:曝光”。发生时间则记录发生行为是的具体时间。动态时间窗口的用户状态队列,其一个样例如6图示,图6为动态时间窗口用户状态队列的样例图。
不停的用实时新闻曝光数据和实时用户行为数来填充队列,在使用曝光数据时,直接将曝光数据填入队尾部,其过程如图7所示,图7为曝光数据插入动态时间窗口用户状态队列示例图。以A1标识的原有队列有三条内容,当新来一条以A2标识的曝光数据时,直接将其填充在队列尾部。当新来一条用户行为数据时,需要先在队列里找到其对应的曝光数据,并且将该条曝光数据移出队列,将队列中排在该元素后的内容位置依次前移,最后将该条用户行为数据插入队列末尾,其过程如图8所示。图8为行为数据插入动态时间窗口用户状态队列示例图。如图8所示,以A3标识的原有队列有四条内容,当新来一条A4标识的用户行为数据时,首先,找到新闻3在队列对应的曝光数据,并将其删除,如新闻3对应的用户状态信息在用户状态队列中予以删除(移除或清空或同类意思)。之后,将删除元素后的所有元素位置一次迁移(队列不区分内容,按照用户点击的时间顺序排列,即根据发生时间进行排序),如图9所示。最后,将用户行为数据插入队列末尾,如图10所示。
1.2)动态时间窗口用户状态表示队列更新策略。
更新策略需要保证对用户兴趣、偏好的变化的敏感性,又要保证准确性。从队列长度和队列有效性时间两方面来保证上述两点。1)根据用户在腾讯新闻和天天快报上的阅读行为统计,选取100作为队列长度。新增数据到来要填充队列时,如果队列已中已有100个元素,需要将最早到达的元素剔除队列,并将后边的元素依次迁移,再将新增的元素插入队列末尾。2)在时间上限制队列内容的时效性,当队列最后一个元素的发生时间与当前时间相差大于24小时时,将清空队列内容。
采用动态时间窗口用户状态表示队列的好处是:动态时间窗口用户状态表示队列的对长度和队列内容有效期均有限制。其长度限制保证了对用户状态把握的准确性与时效性,当用户刷新频率较快时,队列保留的是用户短期100条浏览记录,当用户刷新频率较慢时我们保留的是用户中长期100条浏览记录,这样就实现了一个动态时间窗口的机制,使得用户状态的表示随用户行为频率变化而变化。其次,队列内容有时间限制,队列最后一条数据与当前时间超过24小时时,说明用户的使用发生了间隔,在这个时间段,认为用户的兴趣偏好是不可感知的,因此,为了使过去的数据对未来用户兴趣偏好预测不产生影响,清空队列,以保证用户状态的准确。
1.3)用户状态的生成。
第一步:建立实时流式数据连接,使系统能实时获取用户看到那些新闻以及在点击进入那些新闻的详情页进行浏览,或者评论过那些新闻,对那些新闻做过转发操作。我们使用新闻曝光实时数据和用户行为实时数据,来填充用户状态。第二步:如果是老用户,则在在存储介质中(这里存储介质包括各种类型数据库)取出该用户的状态表示队列,如果是新用户则新建一个动态时间窗口用户状态表示队列。第三步:根据当前的数据,以及队列情况,更新队列。第四步:将更新完毕的队列写入存储介质。
用户状态生成的流程如图11所示,包括:
步骤501、采用Spark Streaming接入流式数据,流式数据包括新闻曝光数据的数据流和用户行为数据的数据流。
步骤502、从存储介质中读取用户历史状态。
步骤503、计算用户当前状态。
步骤504、将用户当前状态写入存储介质中。
这里,对于该流程,其系统实现上,使用Spark Streaming作为实时数据流的接入工具,在存储端使用redis作为该存储介质。redis是一个性能非常优秀的内存数据库,为高性能的分布式存储系统(key-value)中的数据库,能最大限定确保key/value的数据存储,查询速度快、存放数据量大、支持高并发,在部分场合可以对关系数据库起到很好的补充作用。redis支持存储的value类型相对更多,包括字符串(string)、链表(list)、集合(set)、哈希(hashs)等数据类型。这些数据类型支持各种丰富的操作。在此基础上,redis支持各种不同方式的排序,为了保证效率,数据都是缓存在内存中,redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件中。
二、用户状态特征生成。
用户状态特征,是根据用户状态队列生成,目前主要分为两类特征。一类为属性统计类特征,一类为反馈类特征。1)属性统计类特征的实现。将用户状态队列中所有新闻id对应的,新闻一级分类、二级分类、关键词、标签、主题、标题分次取出,并按不同的行为权重做累加,例如有点击行为的权重为1,收藏行为的权重为1.5,转发行为的2,未发生行为的为0等。以此方法,分别取权重累加top5的新闻一级分类、二级分类、关键词、标签、标题分次作为用户偏好特征。2)反馈类特征的实现。反馈类特征分为正反馈特征和负反馈特征,负反馈特征。负反馈特征是将用户近半小时 内,所有曝光且为点击新闻的一级分类、二级分类、关键词、标签、主题、标题分次等,按出现次数累加,取top10作为特征。而正反馈特征是将用户近半小时内,取发生点击行为时间离当前最近的20条新闻(若超过20条取20条,若不足20条全部取)的一级分类、二级分类、关键词、标题、主题、标题分次,按时间排序取top5,作为用户的正反馈特征。
三、点击模型预估点击率。
将上文计算出的用户状态特征,连同带待荐的新闻信息以及用户基本属性等,输入点击率预估模型(例如逻辑回归或分解机),输出每一条待推荐新闻的预估点击率。
四、输出新闻推荐结果:
以上一步每一条新闻的预估点击率为主要依据,结合业务规则,将最终的推荐新闻展现给用户。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单 元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
工业实用性
采用本申请实施例,收集实时的数据流,根据实时的数据流建立用户状态队列,根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征,从而实现实时(如以实时的数据流为依据)对用户状态变化(如动态时间窗口)的动态把握(如队列 中每一个用户状态的跟踪),可以精确的定位到某个时刻对应的用户状态、或某个相对短时间段所对应的用户状态变化,即便用户状态变化较快、且有一定随机性的特性,仍然可以将其精确的捕获到,从而精准的为用户提供推荐信息,为用户提供更多精确的相关服务。

Claims (20)

  1. 一种数据处理方法,所述方法包括:
    收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
    根据所述第一类数据和所述第二类数据建立用户状态队列;
    根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
    获取待处理的候选数据和运算模型;
    将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
    根据所述输出参数得到推荐信息,发送所述推荐信息。
  2. 根据权利要求1所述的方法,其中,所述根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征,包括:
    根据触发所述第一类数据的时间信息,标识位于所述用户状态队列中的每一个用户状态信息,得到所述用户状态队列中以动态时间窗口表示的每一个用户状态;
    根据所述用户状态队列得到用户状态特征。
  3. 根据权利要求1或2所述的方法,其中,所述方法还包括:
    收集所述实时的数据流时得到新增的第二类数据;
    提取当前用户状态队列;
    将新增的第二类数据直接添加入所述当前用户状态队列的队尾部,对所述当前用户状态队列进行更新。
  4. 根据权利要求1或2所述的方法,其中,所述方法还包括:
    收集所述实时的数据流时得到新增的第一类数据;
    提取当前用户状态队列;
    在所述当前用户状态队列中,查询到与新增的第一类数据对应的第二类数据;
    从所述当前用户状态队列中,删除所述第二类数据所在的用户状态信息;
    将位于被删除用户状态信息后的所有用户状态信息进行位置依次前移,对所述当前用户状态队列进行更新;
    将新增的第一类数据添加入更新后的用户状态队列的队尾部。
  5. 根据权利要求1或2所述的方法,其中,所述方法还包括:
    所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    所述当前用户状态队列的队列长度达到第一阈值时,将处于所述当前用户状态队列中位置靠前的用户状态信息依次从所述当前用户状态队列中删除,将处于所述当前用户状态队列中位置靠后的用户状态信息依次前移,将实时更新的数据插入所述当前用户状态队列的队尾部。
  6. 根据权利要求1或2所述的方法,其中,所述方法还包括:
    所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    获取处于所述当前用户状态队列中队尾部的用户状态信息所对应的第一时间信息;
    根据所述第一时间信息与当前时间信息的差值来判断所述当前用户状态队列中队列内容的有效性,若所述差值大于第二阈值,则对所述当前用户状态队列中的所有用户状态信息进行清空。
  7. 一种服务器,所述服务器包括:
    收集单元,配置为收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
    队列建立单元,配置为根据所述第一类数据和所述第二类数据建立用户状态队列;
    状态变化跟踪单元,配置为根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
    获取单元,配置为获取待处理的候选数据和运算模型;
    运算单元,配置为将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
    发送单元,配置为根据所述输出参数得到推荐信息,发送所述推荐信息。
  8. 根据权利要求7所述的服务器,其中,所述状态变化跟踪单元,还包括:
    用户状态描述子单元,配置为根据触发所述第一类数据的时间信息,标识位于所述用户状态队列中的每一个用户状态信息,得到所述用户状态队列中以动态时间窗口表示的每一个用户状态;
    特征确定子单元,配置为根据所述用户状态队列得到用户状态特征。
  9. 根据权利要求7或8所述的服务器,其中,所述收集单元,进一步配置为:
    收集所述实时的数据流时得到新增的第二类数据;
    所述服务器还包括:
    提取单元,配置为提取当前用户状态队列;
    更新单元,配置为将新增的第二类数据直接添加入所述当前用户状态队列的队尾部,对所述当前用户状态队列进行更新。
  10. 根据权利要求7或8所述的服务器,其中,所述收集单元,进一 步配置为:
    收集所述实时的数据流时得到新增的第一类数据;
    所述服务器还包括:
    提取单元,配置为提取当前用户状态队列;
    更新单元,配置为:
    在所述当前用户状态队列中,查询到与新增的第一类数据对应的第二类数据;
    从所述当前用户状态队列中,删除所述第二类数据所在的用户状态信息;
    将位于被删除用户状态信息后的所有用户状态信息进行位置依次前移,对所述当前用户状态队列进行更新;
    将新增的第一类数据添加入更新后的用户状态队列的队尾部。
  11. 根据权利要求7或8所述的服务器,其中,所述服务器还包括:
    触发单元,配置为所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    第一校验更新单元,配置为所述当前用户状态队列的队列长度达到第一阈值时,将处于所述当前用户状态队列中位置靠前的用户状态信息依次从所述当前用户状态队列中删除,将处于所述当前用户状态队列中位置靠后的用户状态信息依次前移,将实时更新的数据插入所述当前用户状态队列的队尾部。
  12. 根据权利要求7或8所述的服务器,其中,所述服务器还包括:
    触发单元,配置为所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    第一校验更新单元,配置为:
    获取处于所述当前用户状态队列中队尾部的用户状态信息所对应的第 一时间信息;
    根据所述第一时间信息与当前时间信息的差值来判断所述当前用户状态队列中队列内容的有效性,若所述差值大于第二阈值,则对所述当前用户状态队列中的所有用户状态信息进行清空。
  13. 一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
  14. 一种服务器,所述服务器包括:
    存储器,配置为存储能够在处理器上运行的计算机程序;
    处理器,配置为运行所述计算机程序时,执行如权利要求1至6任一项所述方法的步骤。
  15. 一种数据处理方法,所述方法由服务器执行,所述服务器包括有一个或多个处理器以及存储器,以及一个或一个以上的程序,其中,所述一个或一个以上的程序存储于存储器中,所述程序可以包括一个或一个以上的每一个对应于一组指令的单元,所述一个或多个处理器被配置为执行指令;所述方法包括:
    收集实时的数据流,所述实时的数据流包含表征用户行为的第一类数据和表征用户关注数据自身的第二类数据;
    根据所述第一类数据和所述第二类数据建立用户状态队列;
    根据所述用户状态队列和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征;
    获取待处理的候选数据和运算模型;
    将所述用户状态特征和所述待处理的候选数据作为所述运算模型的输入参数,经所述运算模型的运算后得到输出参数;
    根据所述输出参数得到推荐信息,发送所述推荐信息。
  16. 根据权利要求15所述的方法,其中,所述根据所述用户状态队列 和触发所述第一类数据的时间信息,实时跟踪用户状态的变化,得到用户状态特征,包括:
    根据触发所述第一类数据的时间信息,标识位于所述用户状态队列中的每一个用户状态信息,得到所述用户状态队列中以动态时间窗口表示的每一个用户状态;
    根据所述用户状态队列得到用户状态特征。
  17. 根据权利要求15或16所述的方法,其中,所述方法还包括:
    收集所述实时的数据流时得到新增的第二类数据;
    提取当前用户状态队列;
    将新增的第二类数据直接添加入所述当前用户状态队列的队尾部,对所述当前用户状态队列进行更新。
  18. 根据权利要求15或16所述的方法,其中,所述方法还包括:
    收集所述实时的数据流时得到新增的第一类数据;
    提取当前用户状态队列;
    在所述当前用户状态队列中,查询到与新增的第一类数据对应的第二类数据;
    从所述当前用户状态队列中,删除所述第二类数据所在的用户状态信息;
    将位于被删除用户状态信息后的所有用户状态信息进行位置依次前移,对所述当前用户状态队列进行更新;
    将新增的第一类数据添加入更新后的用户状态队列的队尾部。
  19. 根据权利要求15或16所述的方法,其中,所述方法还包括:
    所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    所述当前用户状态队列的队列长度达到第一阈值时,将处于所述当前 用户状态队列中位置靠前的用户状态信息依次从所述当前用户状态队列中删除,将处于所述当前用户状态队列中位置靠后的用户状态信息依次前移,将实时更新的数据插入所述当前用户状态队列的队尾部。
  20. 根据权利要求15或16所述的方法,其中,所述方法还包括:
    所述第一类数据和/或第二类数据实时更新时,触发对所述当前用户状态队列的更新;
    获取处于所述当前用户状态队列中队尾部的用户状态信息所对应的第一时间信息;
    根据所述第一时间信息与当前时间信息的差值来判断所述当前用户状态队列中队列内容的有效性,若所述差值大于第二阈值,则对所述当前用户状态队列中的所有用户状态信息进行清空。
PCT/CN2018/084664 2017-05-10 2018-04-26 一种数据处理方法及服务器、计算机存储介质 WO2018205845A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/411,871 US11816172B2 (en) 2017-05-10 2019-05-14 Data processing method, server, and computer storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710326633.5A CN108874812B (zh) 2017-05-10 2017-05-10 一种数据处理方法及服务器、计算机存储介质
CN201710326633.5 2017-05-10

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/411,871 Continuation US11816172B2 (en) 2017-05-10 2019-05-14 Data processing method, server, and computer storage medium

Publications (1)

Publication Number Publication Date
WO2018205845A1 true WO2018205845A1 (zh) 2018-11-15

Family

ID=64104378

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/084664 WO2018205845A1 (zh) 2017-05-10 2018-04-26 一种数据处理方法及服务器、计算机存储介质

Country Status (3)

Country Link
US (1) US11816172B2 (zh)
CN (1) CN108874812B (zh)
WO (1) WO2018205845A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115136612A (zh) * 2022-05-26 2022-09-30 广东逸动科技有限公司 数据处理方法、装置、系统、安全终端、船舶及监控装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110851706B (zh) * 2019-10-10 2022-11-01 百度在线网络技术(北京)有限公司 用户点击模型的训练方法、装置、电子设备及存储介质
CN111143415B (zh) * 2019-12-26 2023-12-29 政采云有限公司 一种数据处理方法、装置和计算机可读存储介质
CN114070563B (zh) * 2020-07-31 2023-09-05 中移(苏州)软件技术有限公司 一种数据处理方法、装置、终端及存储介质
CN114253951B (zh) * 2020-09-21 2023-09-19 腾讯科技(深圳)有限公司 数据处理方法、系统及第二服务器
CN113139081B (zh) * 2021-04-27 2023-10-27 中山亿联智能科技有限公司 高效率低延迟上报读取用户在线播放信息的方法
CN117009672B (zh) * 2023-10-08 2024-01-09 江西科技学院 基于大数据的活动推荐方法与系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075851A (zh) * 2009-11-20 2011-05-25 北京邮电大学 一种移动网络中用户偏好的获取方法及系统
US8762302B1 (en) * 2013-02-22 2014-06-24 Bottlenose, Inc. System and method for revealing correlations between data streams
CN105447186A (zh) * 2015-12-16 2016-03-30 汉鼎信息科技股份有限公司 一种基于大数据平台的用户行为分析系统
CN105469263A (zh) * 2014-09-24 2016-04-06 阿里巴巴集团控股有限公司 一种商品推荐方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021403A (en) * 1996-07-19 2000-02-01 Microsoft Corporation Intelligent user assistance facility
US7177853B1 (en) * 2002-02-21 2007-02-13 Emc Corporation Cache management via statistically adjusted time stamp queue
US6807588B2 (en) * 2002-02-27 2004-10-19 International Business Machines Corporation Method and apparatus for maintaining order in a queue by combining entry weights and queue weights
GB0425309D0 (en) * 2004-11-17 2004-12-15 Ibm Deleting expired items in queue data structure
US20160086222A1 (en) * 2009-01-21 2016-03-24 Truaxis, Inc. Method and system to remind users of targeted offers in similar categories
CN103136275A (zh) * 2011-12-02 2013-06-05 盛乐信息技术(上海)有限公司 个性化视频推荐系统及方法
US8996530B2 (en) * 2012-04-27 2015-03-31 Yahoo! Inc. User modeling for personalized generalized content recommendations
CA2904359A1 (en) * 2013-03-15 2014-09-25 JIBO, Inc. Apparatus and methods for providing a persistent companion device
CN103235823A (zh) * 2013-05-06 2013-08-07 上海河广信息科技有限公司 根据相关网页和当前行为确定用户当前兴趣的方法和系统
US10200824B2 (en) * 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
WO2016201631A1 (en) * 2015-06-17 2016-12-22 Yahoo! Inc. Systems and methods for online content recommendation
US10194378B2 (en) * 2015-07-16 2019-01-29 Google Llc Access port queuing and resource management
CN106447371A (zh) * 2015-08-10 2017-02-22 北京奇虎科技有限公司 一种网页广告的推荐方法和装置
CN106326413A (zh) * 2016-08-23 2017-01-11 达而观信息科技(上海)有限公司 一种个性化视频推荐系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075851A (zh) * 2009-11-20 2011-05-25 北京邮电大学 一种移动网络中用户偏好的获取方法及系统
US8762302B1 (en) * 2013-02-22 2014-06-24 Bottlenose, Inc. System and method for revealing correlations between data streams
CN105469263A (zh) * 2014-09-24 2016-04-06 阿里巴巴集团控股有限公司 一种商品推荐方法及装置
CN105447186A (zh) * 2015-12-16 2016-03-30 汉鼎信息科技股份有限公司 一种基于大数据平台的用户行为分析系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115136612A (zh) * 2022-05-26 2022-09-30 广东逸动科技有限公司 数据处理方法、装置、系统、安全终端、船舶及监控装置

Also Published As

Publication number Publication date
CN108874812A (zh) 2018-11-23
US20190266206A1 (en) 2019-08-29
US11816172B2 (en) 2023-11-14
CN108874812B (zh) 2021-12-10

Similar Documents

Publication Publication Date Title
WO2018205845A1 (zh) 一种数据处理方法及服务器、计算机存储介质
US10706094B2 (en) System and method for customizing a display of a user device based on multimedia content element signatures
JP7201730B2 (ja) 意図推薦方法、装置、機器及び記憶媒体
US9704185B2 (en) Product recommendation using sentiment and semantic analysis
US10572565B2 (en) User behavior models based on source domain
US9298835B2 (en) Social static ranking for search
JP6128661B2 (ja) 主題ベースのバイタリティ
US20110320437A1 (en) Infinite Browse
US20100082653A1 (en) Event media search
TW201447797A (zh) 內容個人化之多相排序方法和系統
US10691664B1 (en) User interface structural clustering and analysis
WO2022042157A1 (zh) 视频数据的制作方法、装置、计算机设备和存储介质
WO2021114634A1 (zh) 文本标注方法、设备及存储介质
CN106462588B (zh) 来自所提取的内容的内容创建
US10193990B2 (en) System and method for creating user profiles based on multimedia content
KR102097912B1 (ko) 개인화 추천 컨텐츠를 제공하는 방법
Psallidas et al. Soc web: Efficient monitoring of social network activities
WO2022199494A1 (zh) 一种基于用户兴趣的内容推荐方法与终端设备
CN108319622B (zh) 一种媒体内容推荐方法及装置
JP5384567B2 (ja) 潜在クラス分析装置、潜在クラス分析方法及びプログラム
US11822447B2 (en) Methods and servers for storing data associated with users and digital items of a recommendation system
Jung Discovering social bursts by using link analytics on large-scale social networks
WO2018094930A1 (zh) 基于屏幕图像的用户行为获取方法及终端
US10565611B2 (en) Controlling real-time execution of internet communication campaigns with parameterizable flow control structures
CN111970327A (zh) 一种基于大数据处理的新闻传播方法及系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18797967

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18797967

Country of ref document: EP

Kind code of ref document: A1