CN108509459B - 数据处理方法和装置 - Google Patents
数据处理方法和装置 Download PDFInfo
- Publication number
- CN108509459B CN108509459B CN201710114120.8A CN201710114120A CN108509459B CN 108509459 B CN108509459 B CN 108509459B CN 201710114120 A CN201710114120 A CN 201710114120A CN 108509459 B CN108509459 B CN 108509459B
- Authority
- CN
- China
- Prior art keywords
- data
- objects
- training data
- training
- target object
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Business, Economics & Management (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Strategic Management (AREA)
- Evolutionary Computation (AREA)
- Pure & Applied Mathematics (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Development Economics (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Algebra (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法和装置。其中,该方法包括:获取多个对象的对象数据,多个对象包括目标对象和除目标对象以外的第一对象;根据对象数据构造训练数据,其中,对象数据包括对象与用户行为,训练数据包括多个用户的用户行为与每个对象的对应关系;利用逻辑回归模型对训练数据进行训练,得到多个权重值,其中,多个权重值与多个对象一一对应,多个权重值用于表示多个对象之间的相关程度;根据权重值推荐与目标对象相关的第一对象。本发明解决了无法准确推荐与目标对象相关联的对象的技术问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据处理方法和装置。
背景技术
现有计算两个对象之间的关联性的方案通常利用关联规则中的Lift(提升)值来进行计算,但是这种方式具有以下两种缺点:
1)、直接利用关联规则,需要计算支持度和置信度,需要设置支持度和置信度的阈值来判断两个事项是否有关联。直观来看如图1,需要计算:
判断对象x和对象y是否有关联性,需要看α和β是否满足大于设定的阈值。这里的阈值如何调节是个难点,需要大量实验,根据经验来定。但数据分布如果经常发生波动的话,会很难进行阈值调节。
2)、利用关联规则中的lift值来进行计算,lift计算公式为:
通常在确定与某个对象关联度高的对象时,会先固定某个对象,然后对其他关联的对象进行排序,例如,固定对象x来对其他对象y进行排序,故而计算lift值时分母的p(x)可以省略。但这里又有个问题,如果对象y的出现频次很小,而且凑巧是出现x的时候出现的(如图2所示),就会导致lift值非常大,会大于那些出现频次很高,但是和x交集少的对象。这种结果本无错误,但在某些场景中(如视频推荐)就会导致很多播放量少的时候被优先推荐出来,影响体验也影响点击率。所以在计算的时候,会把出现频次少的对象y过滤掉,或者对lift公式做一个平滑。引入2个平滑因子a和b,所以这里a、b的值如何设置,也是需要大量实验以及凭借经验。若数据经常波动,阈值的设置也是个难点。
综上,现有基于两个对象之间的关联性进行对象推荐的方案中,由于对象的数据经常波动,导致无法准确推荐与目标对象相关联的对象。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法和装置,以至少解决无法准确推荐与目标对象相关联的对象的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理方法,包括:获取多个对象的对象数据,所述多个对象包括目标对象和除所述目标对象以外的第一对象;根据所述对象数据构造训练数据,其中,所述对象数据包括对象与用户行为,所述训练数据包括多个用户的用户行为与每个对象的对应关系;利用逻辑回归模型对所述训练数据进行训练,得到多个权重值,其中,所述多个权重值与所述多个对象一一对应,所述多个权重值用于表示所述多个对象之间的相关程度;根据所述权重值推荐与所述目标对象相关的所述第一对象。
根据本发明实施例的另一方面,还提供了一种数据处理装置,包括:获取单元,用于获取多个对象的对象数据,所述多个对象包括目标对象和除所述目标对象以外的第一对象;构造单元,用于根据所述对象数据构造训练数据,其中,所述对象数据包括对象与用户行为,所述训练数据包括多个用户的用户行为与每个对象的对应关系;训练单元,用于利用逻辑回归模型对所述训练数据进行训练,得到多个权重值,其中,所述多个权重值与所述多个对象一一对应,所述多个权重值用于表示所述多个对象之间的相关程度;推荐单元,用于根据所述权重值推荐与所述目标对象相关的所述第一对象。
在本发明实施例中,利用逻辑回归模型对训练数据进行训练,得到用于表示多个对象之间的相关程度的权重值,根据权重值推荐与目标对象相关的第一对象。由于逻辑回归模型可以直接采用针对对象的数据,而无需根据实验数据或者经验值设置阈值,消除了现有技术在获取相关度时由阈值造成的结果的不确定性,使得本实施例得到的相关程度的结果更加准确,从而使得根据相关程度进行的对象推荐也更加准确。同时,由于利用逻辑回归模型不会出现某对象出现的频次小所导致的计算结果显示相关程度高的情形,也进一步提高了对象推荐的准确性,解决了现有技术无法准确推荐与目标对象相关联的对象的技术问题,达到了准确推荐与目标对象相关联的对象的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据现有技术的具有交叉关系的两个对象的示意图;
图2是根据现有技术的具有包含关系的两个对象的示意图;
图3是根据本发明实施例的系统架构的示意图;
图4是根据本发明实施例的一种可选的数据处理方法的流程图;
图5是根据本发明实施例的以音乐为例进行推荐的流程图;
图6是根据本发明实施例的一种可选的数据处理装置的示意图;
图7是根据本发关实施例的终端的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
LR:逻辑回归Logistic Regression。一种广义线性模型,现在业界比较流行的机器学习方法,可以用来做回归,用于估计某种事件的可能性,诸如:广告点击率的预估等。也可以用来做分类,多用于二分类,用于判断物品属于A,还是属于B。
关联性:从大量数据信息中发现规律,度量出两个变量之间的相关密切程度。
实施例1
根据本发明实施例,提供了一种可以通过本申请装置实施例执行的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本发明实施例,提供了一种数据处理方法。
可选地,在本实施例中,上述数据处理方法可以应用于如图3所示的由服务器102和终端104所构成的硬件环境中。如图3所示,服务器102通过网络与终端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的数据处理方法可以由服务器102来执行,也可以由终端104来执行,还可以是由服务器102和终端104共同执行。其中,终端104执行本发明实施例的数据处理方法也可以是由安装在其上的客户端来执行。
图4是根据本发明实施例的一种可选的数据处理方法的流程图,如图4所示,该方法可以包括以下步骤:
S402,获取多个对象的对象数据,多个对象包括目标对象和除目标对象以外的第一对象。
本实施例可以获取多个对象之间的相关性,并根据多个对象之间的相关性做进一步的数据处理和分析。例如,利用多个对象之间的相关性进行对象推荐。通常情况下,可以根据推荐与某个目标对象相关性比较高的一个或者对象。多个对象中的任意一个对象都可以作为目标对象,多个对象中除了目标对象中的其他对象(即第一对象)都可以是与目标对象相关的对象。
S404,根据对象数据构造训练数据,其中,对象数据包括对象与用户行为,训练数据包括多个用户的用户行为与每个对象的对应关系。
对象可以是视频、音乐和广告等,用户行为可以是用户针对对象所执行的动作,例如,针对视频的观看行为,针对音乐的试听行为,针对广告的点击行为等。根据对象的不同,用户行为也有可能不同。根据待分析的内容不同,可以通过不同的用户行为来构建训练数据。例如,在分析多个视频之间的相关度时,可以利用多个视频的用户观看数据来确定多个视频之间的相关度。再例如,在分析试听音乐与下载音乐的相关度时,可以根据用户试听音乐和下载音乐的数据来确定试听音乐与下载音乐的相关度。
S406,利用逻辑回归模型对训练数据进行训练,得到多个权重值,其中,多个权重值与多个对象一一对应,多个权重值用于表示多个对象之间的相关程度。
每个对象对应一个权重值,权重值的大小可以表示对象之间的相关程度。权重值越大,表示第一对象与目标对象的相关程度越强;权重值越小,表示第一对象与目标对象的相关程度越弱。
S408,根据权重值推荐与目标对象相关的第一对象。
在确定了权重值之后,就确定了多个第一对象与目标对象的相关程度,可以选择相关程度最接近的第一对象推荐给目标对象。
在本实施例中,利用逻辑回归模型对训练数据进行训练,得到用于表示多个对象之间的相关程度的权重值,根据权重值推荐与目标对象相关的第一对象。由于逻辑回归模型可以直接采用针对对象的数据,而无需根据实验数据或者经验值设置阈值,消除了现有技术在获取相关度时由阈值造成的结果的不确定性,使得本实施例得到的相关程度的结果更加准确,从而使得根据相关程度进行的对象推荐也更加准确。同时,由于利用逻辑回归模型不会出现某对象出现的频次小所导致的计算结果显示相关程度高的情形,也进一步提高了对象推荐的准确性,解决了现有技术无法准确推荐与目标对象相关联的对象的技术问题,达到了准确推荐与目标对象相关联的对象的技术效果。
可选地,利用逻辑回归模型对训练数据进行训练,得到多个权重值包括:从训练数据中提取目标对象的训练数据,得到第一训练数据;从训练数据中提取第一对象的训练数据,得到第二训练数据的集合,每个第一对象对应一个第二训练数据;利用逻辑回归模型对第一训练数据和第二训练数据进行训练,得到多个权重值。
以对象为视频进行举例说明。
提取一段时间内视频的有效播放数据,针对每个用户可以得到一个观看序列:
Uin1:Vid1,Vid2,Vid3...
其中,vidi为视频名称,uin为观看过视频的用户。
那么,收集多个用户观看的视频数据,并按照一定的规则形成训练数据。可选地,在构造训练数据时,获取多个对象中第二对象对应的对象数值,其中,对象数值用于指示用户针对第二对象的用户行为,第二对象为多个对象中的任意一个;获取多个用户与第二对象对应的对象值,得到多个对象数值;将多个对象数值组成的序列作为第一对象的训练数据。
如表1所示,对视频名称进行序列化,把每个用户的观看行为对应填在相应视频下面,如果用户有过观看则填1,如果用户没有观看则填0。上述0和1就可以是对象数值,第二对象是表1所示的任意一个视频。表1中的每一列数值组成的数值序列就作为一个第二对象的训练数据。当第二对象作为目标对象时,那么该第二对象对应的一个数值序列就是第一训练数据;当第二对象作为第一对象时,该第二对象对应的一个数值序列就是第二训练数据,多个第二对象对应的多个数值序列就是第二训练数据的集合。
表1
例如,目标对象为视频Vid j。第一训练数据如表2所示,第二训练数据的集合如表3所示。
表2
Vidj |
1 |
0 |
1 |
…… |
0 |
1 |
表3
表3与表1相比,少了表2所示的第一训练数据的一列。
在得到第一训练数据和第二训练数据的集合之后,将上述数据代入到逻辑回归模型中进行训练,从而得到多个权重值。
可选地,利用以下逻辑回归模型进行训练:
其中,y表示目标对象,x表示第一对象,w0表示目标对象的权重值,w1表示第一个第一对象的权重值,wj表示第j个第一对象的权重值,wn表示第n个第一对象的权重值,x1表示第一个第一对象,xj表示第j个第一对象,xn表示第n个第一对象。
在利用逻辑回归模型进行训练时,可以对表1的数据进行转换,转换得到表4所示的数据。
表4
将表4的数据代入上述逻辑回归模型,得到多个权重值,由于权重值可以表示多个对象之间的相关性,因此,得到权重值后就得到了每个第一对象与目标对象的相关程度,再根据该相关程度推荐与目标对象相关的第一对象,就会更加准确。
需要说明的是,在推荐与目标对象相关的第一对象时,可以先推荐与目标对象最相关的第一对象。权重值对接近目标对象的权重值的第一对象是与目标对象最相关的第一对象。
可选地,根据权重值推荐与目标对象相关的对象包括:按照权重值的大小对权重值进行排序,得到排序结果,其中,权重值越大,权重值对应的第一对象与目标对象的相关性越高;按照排序结果推荐与目标对象相关的第一对象。
在需要推荐一个或者多个第一对象的场景中,尤其是需要推荐多个第一对象的场景中,可以按照权重值由大到小的顺序推荐第一对象。
例如,在某些视频应用中,推荐与动画片《小马宝莉》相关的多个视频时,可以按照上述方案获取到多个视频与《小马宝莉》的权重值,并按照权重值的大小依次推荐每个权重值对应的视频。
在推荐的过程中,由于视频的类型比较多,通常与目标视频属于相同类型的第一对象与目标视频的相似度更高,因此,在获取多个对象的对象数据时,可以先对视频的类型进行筛选。也就是说,获取目标对象的对象数据,以及与目标对象具有相同类型的第一对象的对象数据,然后再利用逻辑回归模型对这多个对象进行权重值的确定,并最终进行视频推荐。即,获取多个对象的对象数据包括:获取对象集合的对象数据,其中,对象集合包括多种类型的对象;从对象集合中筛选出与目标对象具有相同类型的第一对象;将筛选出的相同类型的第一对象和目标对象作为多个对象;从对象集合的对象数据中获取筛选出的多个对象的对象数据。
通过这种方式,可以减少获取权重值时所采用的数据量,提高获取权重值的计算效率,同时,由于推荐的第一对象是与目标对象具有相同类型的对象,这就提高了推荐第一对象的准确性。
例如,按照:电影,电视剧,综艺,动漫,纪录片等分类进行一段时间内(按照时效性,长视频一般取滑动窗口15天或者30天的数据,短视频一般取滑动窗口24小时的数据)有效播放数据的提取。这样对每个类型的视频,针对每个用户可以得到一个观看序列:
Type,Uin1:Vid1,Vid2,Vid3...
其中,type为视频类型,vidi为视频名称,uin为观看过视频的用户。
需要说明的是,上述有效播放数据是指对上报的播放数据进行数据过滤后的数据。例如:将上报的播放数据中由恶意点击行为或者导常上报行为产生的数据过滤掉。
本实施例与现有技术相比,具有如下好处:
(1)数据来源为用户行为,不需要确定用户行为之间的关系,只要根据用户行为和对象构造出用户行为矩阵。
(2)利用构造出的数据进行模型训练,利用模型训练方法,消除了统计方法中由于数据波动造成的阈值和平滑因子等不确定因素,使得训练结果更加准确。
以下结合图5,以对象为音乐为例对本实施例进行说明。
S502,获取一段时间内摇滚类音乐的试听数据,每个用户得到一个试听序列:摇滚,用户i,m1,m2,……
S504,利用试听数据构造训练数据。将每个用户的试听行为填写在相应的音乐下面。对于某个音乐,如果用户1听过,则填1;如果用户1没听过,则填0。获取多个用户对该音乐的试听数据,得到该音乐的序列数据,即得到多个用户是否试听该音乐的行为所表示的序列数据。
S506,对于多个音乐都采用S504的方式进行序列化,从而构造出一个数据阵列。该数据阵列包括目标音乐的序列数据,以及待判断与目标音乐相关性的第一音乐的序列数据。
S508,将构造的训练数据代入逻辑回归模型,得到每个音乐对应的权重值。
S510,对得到的权重值进行排序,权重值越大的音乐与目标音乐的相关程度越高。
需要说明的是,本实施例利用权重值刻画多个对象之间的相关性的方式,可以应用到视频推荐、音乐推荐和广告推荐等领域,还可以应用到获取视频与原生广告的关系,从而确定投放广告的策略等,此处不再一一举例说明。
可以理解的是,在本申请的具体实施方式中,涉及到用户信息、对象数据等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述数据处理方法的数据处理装置,该数据处理装置主要用于执行本发明实施例上述内容所提供的数据处理方法,以下对本发明实施例所提供的数据处理装置做具体介绍:
图6是根据本发明实施例的一种数据处理装置的示意图,如图6所示,该数据处理装置主要包括:
获取单元610,用于获取多个对象的对象数据,多个对象包括目标对象和除目标对象以外的第一对象。
本实施例可以获取多个对象之间的相关性,并根据多个对象之间的相关性做进一步的数据处理和分析。例如,利用多个对象之间的相关性进行对象推荐。通常情况下,可以根据推荐与某个目标对象相关性比较高的一个或者对象。多个对象中的任意一个对象都可以作为目标对象,多个对象中除了目标对象中的其他对象(即第一对象)都可以是与目标对象相关的对象。
构造单元620,用于根据对象数据构造训练数据,其中,对象数据包括对象与用户行为,训练数据包括多个用户的用户行为与每个对象的对应关系。
对象可以是视频、音乐和广告等,用户行为可以是用户针对对象所执行的动作,例如,针对视频的观看行为,针对音乐的试听行为,针对广告的点击行为等。根据对象的不同,用户行为也有可能不同。根据待分析的内容不同,可以通过不同的用户行为来构建训练数据。例如,在分析多个视频之间的相关度时,可以利用多个视频的用户观看数据来确定多个视频之间的相关度。再例如,在分析试听音乐与下载音乐的相关度时,可以根据用户试听音乐和下载音乐的数据来确定试听音乐与下载音乐的相关度。
训练单元630,用于利用逻辑回归模型对训练数据进行训练,得到多个权重值,其中,多个权重值与多个对象一一对应,多个权重值用于表示多个对象之间的相关程度。
每个对象对应一个权重值,权重值的大小可以表示对象之间的相关程度。权重值越大,表示第一对象与目标对象的相关程度越强;权重值越小,表示第一对象与目标对象的相关程度越弱。
推荐单元640,用于根据权重值推荐与目标对象相关的第一对象。
在确定了权重值之后,就确定了多个第一对象与目标对象的相关程度,可以选择相关程度最接近的第一对象推荐给目标对象。
在本实施例中,利用逻辑回归模型对训练数据进行训练,得到用于表示多个对象之间的相关程度的权重值,根据权重值推荐与目标对象相关的第一对象。由于逻辑回归模型可以直接采用针对对象的数据,而无需根据实验数据或者经验值设置阈值,消除了现有技术在获取相关度时由阈值造成的结果的不确定性,使得本实施例得到的相关程度的结果更加准确,从而使得根据相关程度进行的对象推荐也更加准确。同时,由于利用逻辑回归模型不会出现某对象出现的频次小所导致的计算结果显示相关程度高的情形,也进一步提高了对象推荐的准确性,解决了现有技术无法准确推荐与目标对象相关联的对象的技术问题,达到了准确推荐与目标对象相关联的对象的技术效果。
可选地,训练单元包括:第一提取模块,用于从训练数据中提取目标对象的训练数据,得到第一训练数据;第二提取模块,用于从训练数据中提取第一对象的训练数据,得到第二训练数据的集合,每个第一对象对应一个第二训练数据;训练模块,用于利用逻辑回归模型对第一训练数据和第二训练数据进行训练,得到多个权重值。
以对象为视频进行举例说明。
提取一段时间内视频的有效播放数据,针对每个用户可以得到一个观看序列:
Uin1:Vid1,Vid2,Vid3...
其中,vidi为视频名称,uin为观看过视频的用户。
那么,收集多个用户观看的视频数据,并按照一定的规则形成训练数据。可选地,构造单元在构造训练数据时:第二获模块获取多个对象中第二对象对应的对象数值,其中,对象数值用于指示用户针对第二对象的用户行为,第二对象为多个对象中的任意一个;第三获取模块获取多个用户与第二对象对应的对象数值,得到多个对象数值;数据模块将多个对象数值组成的序列作为第一对象的训练数据。
如表1所示,对视频名称进行序列化,把每个用户的观看行为对应填在相应视频下面,如果用户有过观看则填1,如果用户没有观看则填0。上述0和1就可以是对象数值,第二对象是表1所示的任意一个视频。表1中的每一列数值组成的数值序列就作为一个第二对象的训练数据。当第二对象作为目标对象时,那么该第二对象对应的一个数值序列就是第一训练数据;当第二对象作为第一对象时,该第二对象对应的一个数值序列就是第二训练数据,多个第二对象对应的多个数值序列就是第二训练数据的集合。
表1
例如,目标对象为视频Vid j。第一训练数据如表2所示,第二训练数据的集合如表3所示。
表2
Vidj |
1 |
0 |
1 |
…… |
0 |
1 |
表3
Vid1 | Vid2 | …… | Vidn | |
Uin1 | 0 | 1 | …… | 0 |
Uin2 | 1 | 0 | …… | 1 |
Uin3 | 0 | 1 | …… | 1 |
…… | …… | …… | …… | …… |
Uin i | 1 | 0 | …… | 0 |
Uin m | 0 | 0 | …… | 1 |
表3与表1相比,少了表2所示的第一训练数据的一列。
在得到第一训练数据和第二训练数据的集合之后,将上述数据代入到逻辑回归模型中进行训练,从而得到多个权重值。
可选地,训练模块包括:训练子模块,用于利用以下逻辑回归模型进行训练:
其中,y表示目标对象,x表示第一对象,w0表示目标对象的权重值,w1表示第一个第一对象的权重值,wj表示第j个第一对象的权重值,wn表示第n个第一对象的权重值,x1表示第一个第一对象,xj表示第j个第一对象,xn表示第n个第一对象。
在利用逻辑回归模型进行训练时,可以对表1的数据进行转换,转换得到表4所示的数据。
表4
X1 | X2 | …… | xj | …… | xn |
0 | 1 | …… | 1 | …… | 0 |
1 | 0 | …… | 0 | …… | 1 |
0 | 1 | …… | 1 | …… | 1 |
…… | …… | …… | …… | …… | …… |
1 | 0 | …… | 0 | …… | 0 |
0 | 0 | …… | 1 | …… | 1 |
将表4的数据代入上述逻辑回归模型,得到多个权重值,由于权重值可以表示多个对象之间的相关性,因此,得到权重值后就得到了每个第一对象与目标对象的相关程度,再根据该相关程度推荐与目标对象相关的第一对象,就会更加准确。
需要说明的是,在推荐与目标对象相关的第一对象时,可以先推荐与目标对象最相关的第一对象。权重值对接近目标对象的权重值的第一对象是与目标对象最相关的第一对象。
可选地,根据权重值推荐与目标对象相关的第一对象包括:排序模块,用于按照权重值的大小对权重值进行排序,得到排序结果,其中,权重值越大,权重值对应的第一对象与目标对象的相关性越高;推荐模块,用于按照排序结果推荐与目标对象相关的第一对象。
在需要推荐一个或者多个第一对象的场景中,尤其是需要推荐多个第一对象的场景中,可以按照权重值由大到小的顺序推荐第一对象。
例如,在某些视频应用中,推荐与动画片《小马宝莉》相关的多个视频时,可以按照上述方案获取到多个视频与《小马宝莉》的权重值,并按照权重值的大小依次推荐每个权重值对应的视频。
在推荐的过程中,由于视频的类型比较多,通常与目标视频属于相同类型的第一对象与目标视频的相似度更高,因此,在获取多个对象的对象数据时,可以先对视频的类型进行筛选。也就是说,获取目标对象的对象数据,以及与目标对象具有相同类型的第一对象的对象数据,然后再利用逻辑回归模型对这多个对象进行权重值的确定,并最终进行视频推荐。
可选地,获取单元包括:第一获取模块,用于获取对象集合的对象数据,其中,对象集合包括多种类型的对象;第一筛选模块,用于从对象集合中筛选出与目标对象具有相同类型的第一对象;对象模块,用于将筛选出的相同类型的第一对象和目标对象作为多个对象;第二筛选模块,用于从对象集合的对象数据中获取筛选出的多个对象的对象数据。
通过这种方式,可以减少获取权重值时所采用的数据量,提高获取权重值的计算效率,同时,由于推荐的第一对象是与目标对象具有相同类型的对象,这就提高了推荐第一对象的准确性。
例如,按照:电影,电视剧,综艺,动漫,纪录片等分类进行一段时间内(按照时效性,长视频一般取滑动窗口15天或者30天的数据,短视频一般取滑动窗口24小时的数据)有效播放数据的提取。这样对每个类型的视频,针对每个用户可以得到一个观看序列:
Type,Uin1:Vid1,Vid2,Vid3...
其中,type为视频类型,vidi为视频名称,uin为观看过视频的用户。
需要说明的是,上述有效播放数据是指对上报的播放数据进行数据过滤后的数据。例如:将上报的播放数据中由恶意点击行为或者导常上报行为产生的数据过滤掉。
本实施例与现有技术相比,具有如下好处:
(1)数据来源为用户行为,不需要确定用户行为之间的关系,只要根据用户行为和对象构造出用户行为矩阵。
(2)利用构造出的数据进行模型训练,利用模型训练方法,消除了统计方法中由于数据波动造成的阈值和平滑因子等不确定因素,使得训练结果更加准确。
实施例3
根据本发明实施例,还提供了一种用于实施上述数据处理方法的终端,如图7所示,该终端主要包括处理器701、存储器702、网络接口703和显示器704,其中:
存储器702主要用于存储获取到的多个对象的对象数据。
网络接口703主要用于与服务器进行网络通信,为构造训练数据提供数据支持。
显示器704主要用于显示推荐出的与目标对象相关的第一对象。
处理器701主要用于执行如下操作:
获取多个对象的对象数据,多个对象包括目标对象和除目标对象以外的第一对象;根据对象数据构造训练数据,其中,对象数据包括对象与用户行为,训练数据包括多个用户的用户行为与每个对象的对应关系;利用逻辑回归模型对训练数据进行训练,得到多个权重值,其中,多个权重值与多个对象一一对应,多个权重值用于表示多个对象之间的相关程度;根据权重值推荐与目标对象相关的第一对象。
处理器701还用于从训练数据中提取目标对象的训练数据,得到第一训练数据;从训练数据中提取第一对象的训练数据,得到第二训练数据的集合,每个第一对象对应一个第二训练数据;利用逻辑回归模型对第一训练数据和第二训练数据进行训练,得到多个权重值。
处理器701还用于利用以下逻辑回归模型进行训练:
其中,y表示目标对象,x表示第一对象,w0表示目标对象的权重值,w1表示第一个第一对象的权重值,wj表示第j个第一对象的权重值,wn表示第n个第一对象的权重值,x1表示第一个第一对象,xj表示第j个第一对象,xn表示第n个第一对象。
处理器701还用于按照权重值的大小对权重值进行排序,得到排序结果,其中,权重值越大,权重值对应的第一对象与目标对象的相关性越高;按照排序结果推荐与目标对象相关的第一对象。
处理器701还用于获取对象集合的对象数据,其中,对象集合包括多种类型的对象;从对象集合中筛选出与目标对象具有相同类型的第一对象;将筛选出的相同类型的第一对象和目标对象作为多个对象;从对象集合的对象数据中获取筛选出的多个对象的对象数据。
处理器701还用于获取多个对象中第二对象对应的对象数值,其中,对象数值用于指示用户针对第二对象的用户行为,第二对象为多个对象中的任意一个;获取多个用户与第二对象对应的对象数值,得到多个对象数值;将多个对象数值组成的序列作为第一对象的训练数据。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于存储本发明实施例的数据处理方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于移动通信网络、广域网、城域网或局域网的网络中的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,获取多个对象的对象数据,多个对象包括目标对象和除目标对象以外的第一对象;
S2,根据对象数据构造训练数据,其中,对象数据包括对象与用户行为,训练数据包括多个用户的用户行为与每个对象的对应关系;
S3,利用逻辑回归模型对训练数据进行训练,得到多个权重值,其中,多个权重值与多个对象一一对应,多个权重值用于表示多个对象之间的相关程度。
S4,根据权重值推荐与目标对象相关的第一对象。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行从训练数据中提取目标对象的训练数据,得到第一训练数据;从训练数据中提取第一对象的训练数据,得到第二训练数据的集合,每个第一对象对应一个第二训练数据;利用逻辑回归模型对第一训练数据和第二训练数据进行训练,得到多个权重值。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行利用以下逻辑回归模型进行训练:
其中,y表示目标对象,x表示第一对象,w0表示目标对象的权重值,w1表示第一个第一对象的权重值,wj表示第j个第一对象的权重值,wn表示第n个第一对象的权重值,x1表示第一个第一对象,xj表示第j个第一对象,xn表示第n个第一对象。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行按照权重值的大小对权重值进行排序,得到排序结果,其中,权重值越大,权重值对应的第一对象与目标对象的相关性越高;按照排序结果推荐与目标对象相关的第一对象。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行获取对象集合的对象数据,其中,对象集合包括多种类型的对象;从对象集合中筛选出与目标对象具有相同类型的第一对象;将筛选出的相同类型的第一对象和目标对象作为多个对象;从对象集合的对象数据中获取筛选出的多个对象的对象数据。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行获取多个对象中第二对象对应的对象数值,其中,对象数值用于指示用户针对第二对象的用户行为,第二对象为多个对象中的任意一个;获取多个用户与第二对象对应的对象数值,得到多个对象数值;将多个对象数值组成的序列作为第一对象的训练数据。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种数据处理方法,其特征在于,包括:
获取多个对象的对象数据,所述多个对象包括目标对象和除所述目标对象以外的第一对象;
根据所述对象数据构造训练数据,其中,所述对象数据包括对象与用户行为,所述训练数据包括多个用户的用户行为与每个对象的对应关系;
利用逻辑回归模型对所述训练数据进行训练,得到多个权重值,其中,所述多个权重值与所述多个对象一一对应,所述多个权重值用于表示所述多个对象之间的相关程度;
根据所述权重值推荐与所述目标对象相关的所述第一对象;
所述根据所述对象数据构造训练数据包括:
获取所述多个对象中第二对象对应的对象数值,其中,所述对象数值用于指示用户针对所述第二对象的用户行为,所述第二对象为所述多个对象中的任意一个;
获取多个用户与所述第二对象对应的对象数值,得到多个对象数值;
将所述多个对象数值组成的序列作为所述第一对象的训练数据;
所述将所述多个对象数值组成的序列作为所述第一对象的训练数据,包括:
当所述第二对象作为所述目标对象时,将所述第二对象对应的序列确定为第一训练数据;当所述第二对象作为所述第一对象时,将所述第二对象对应的序列确定为第二训练数据,其中,所述多个权重值是利用所述逻辑回归模型对所述第一训练数据和所述第二训练数据进行训练得到的。
2.根据权利要求1所述的方法,其特征在于,利用逻辑回归模型对所述训练数据进行训练,得到多个权重值包括:
从所述训练数据中提取所述目标对象的训练数据,得到第一训练数据;
从所述训练数据中提取所述第一对象的训练数据,得到第二训练数据的集合,每个所述第一对象对应一个所述第二训练数据;
利用所述逻辑回归模型对所述第一训练数据和所述第二训练数据进行训练,得到所述多个权重值。
4.根据权利要求1所述的方法,其特征在于,根据所述权重值推荐与所述目标对象相关的所述第一对象包括:
按照所述权重值的大小对所述权重值进行排序,得到排序结果,其中,所述权重值越大,所述权重值对应的所述第一对象与所述目标对象的相关性越高;
按照所述排序结果推荐与所述目标对象相关的所述第一对象。
5.根据权利要求1所述的方法,其特征在于,获取多个对象的对象数据包括:
获取对象集合的对象数据,其中,所述对象集合包括多种类型的对象;
从所述对象集合中筛选出与所述目标对象具有相同类型的所述第一对象;
将筛选出的相同类型的所述第一对象和所述目标对象作为所述多个对象;
从所述对象集合的对象数据中获取筛选出的所述多个对象的对象数据。
6.一种数据处理装置,其特征在于,包括:
获取单元,用于获取多个对象的对象数据,所述多个对象包括目标对象和除所述目标对象以外的第一对象;
构造单元,用于根据所述对象数据构造训练数据,其中,所述对象数据包括对象与用户行为,所述训练数据包括多个用户的用户行为与每个对象的对应关系;
训练单元,用于利用逻辑回归模型对所述训练数据进行训练,得到多个权重值,其中,所述多个权重值与所述多个对象一一对应,所述多个权重值用于表示所述多个对象之间的相关程度;
推荐单元,用于根据所述权重值推荐与所述目标对象相关的所述第一对象;
所述构造单元包括:
第二获模块,用于获取所述多个对象中第二对象对应的对象数值,其中,所述对象数值用于指示用户针对所述第二对象的用户行为,所述第二对象为所述多个对象中的任意一个;
第三获取模块,用于获取多个用户与所述第二对象对应的对象数值,得到多个对象数值;
数据模块,用于将所述多个对象数值组成的序列作为所述第一对象的训练数据;
所述数据模块用于通过如下方式将所述多个对象数值组成的序列作为所述第一对象的训练数据:
当所述第二对象作为所述目标对象时,将所述第二对象对应的序列确定为第一训练数据;当所述第二对象作为所述第一对象时,将所述第二对象对应的序列确定为第二训练数据,其中,所述多个权重值是利用所述逻辑回归模型对所述第一训练数据和所述第二训练数据进行训练得到的。
7.根据权利要求6所述的装置,其特征在于,所述训练单元包括:
第一提取模块,用于从所述训练数据中提取所述目标对象的训练数据,得到第一训练数据;
第二提取模块,用于从所述训练数据中提取所述第一对象的训练数据,得到第二训练数据的集合,每个所述第一对象对应一个所述第二训练数据;
训练模块,用于利用所述逻辑回归模型对所述第一训练数据和所述第二训练数据进行训练,得到所述多个权重值。
9.根据权利要求6所述的装置,其特征在于,根据所述权重值推荐与所述目标对象相关的所述第一对象包括:
排序模块,用于按照所述权重值的大小对所述权重值进行排序,得到排序结果,其中,所述权重值越大,所述权重值对应的所述第一对象与所述目标对象的相关性越高;
推荐模块,用于按照所述排序结果推荐与所述目标对象相关的所述第一对象。
10.根据权利要求6所述的装置,其特征在于,所述获取单元包括:
第一获取模块,用于获取对象集合的对象数据,其中,所述对象集合包括多种类型的对象;
第一筛选模块,用于从所述对象集合中筛选出与所述目标对象具有相同类型的所述第一对象;
对象模块,用于将筛选出的相同类型的所述第一对象和所述目标对象作为所述多个对象;
第二筛选模块,用于从所述对象集合的对象数据中获取筛选出的所述多个对象的对象数据。
11.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序可被终端设备或计算机运行时执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710114120.8A CN108509459B (zh) | 2017-02-28 | 2017-02-28 | 数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710114120.8A CN108509459B (zh) | 2017-02-28 | 2017-02-28 | 数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108509459A CN108509459A (zh) | 2018-09-07 |
CN108509459B true CN108509459B (zh) | 2022-05-20 |
Family
ID=63373547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710114120.8A Active CN108509459B (zh) | 2017-02-28 | 2017-02-28 | 数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108509459B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111914172B (zh) * | 2020-07-29 | 2021-09-10 | 上海梅斯医药科技有限公司 | 一种基于用户标签的医学信息推荐方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105160008A (zh) * | 2015-09-21 | 2015-12-16 | 合一网络技术(北京)有限公司 | 一种定位推荐用户的方法及装置 |
CN105590240A (zh) * | 2015-12-30 | 2016-05-18 | 合一网络技术(北京)有限公司 | 一种品牌广告效果优化的离散计算方法 |
CN105678570A (zh) * | 2015-12-31 | 2016-06-15 | 北京京东尚科信息技术有限公司 | 电子商务潜在用户识别的方法和装置 |
CN106228386A (zh) * | 2016-07-12 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 一种信息推送方法及装置 |
-
2017
- 2017-02-28 CN CN201710114120.8A patent/CN108509459B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105160008A (zh) * | 2015-09-21 | 2015-12-16 | 合一网络技术(北京)有限公司 | 一种定位推荐用户的方法及装置 |
CN105590240A (zh) * | 2015-12-30 | 2016-05-18 | 合一网络技术(北京)有限公司 | 一种品牌广告效果优化的离散计算方法 |
CN105678570A (zh) * | 2015-12-31 | 2016-06-15 | 北京京东尚科信息技术有限公司 | 电子商务潜在用户识别的方法和装置 |
CN106228386A (zh) * | 2016-07-12 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 一种信息推送方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108509459A (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106326391B (zh) | 多媒体资源推荐方法及装置 | |
CN111199428B (zh) | 商品推荐方法、装置、存储介质及计算机设备 | |
CN105095508B (zh) | 一种多媒体内容推荐方法和多媒体内容推荐装置 | |
CN107423355B (zh) | 信息推荐方法及装置、电子设备 | |
CN105512331B (zh) | 一种视频推荐方法及装置 | |
CN104090919B (zh) | 推荐广告的方法及广告推荐服务器 | |
CN109165975B (zh) | 标签推荐方法、装置、计算机设备及存储介质 | |
CN108108821A (zh) | 模型训练方法及装置 | |
CN109753601B (zh) | 推荐信息点击率确定方法、装置及电子设备 | |
CN106339507B (zh) | 流媒体消息推送方法和装置 | |
CN108805598B (zh) | 相似度信息确定方法、服务器及计算机可读存储介质 | |
US20150324448A1 (en) | Information Recommendation Processing Method and Apparatus | |
CN106874314B (zh) | 信息推荐的方法和装置 | |
US10089358B2 (en) | Methods and apparatus to partition data | |
US20120109946A1 (en) | Determination of category information using multiple | |
US20140095308A1 (en) | Advertisement distribution apparatus and advertisement distribution method | |
CN106878405B (zh) | 一种调整推送项目的方法及装置 | |
CN110896488B (zh) | 一种直播间的推荐方法以及相关设备 | |
CN106776873A (zh) | 一种推荐结果生成方法以及装置 | |
CN107894998A (zh) | 视频推荐方法及装置 | |
CN108062692B (zh) | 一种录音推荐方法、装置、设备及计算机可读存储介质 | |
CN109978580A (zh) | 对象推荐方法、装置以及计算机可读存储介质 | |
CN107103028A (zh) | 一种信息处理方法及装置 | |
CN110782291A (zh) | 广告投放用户确定方法及装置、存储介质及电子装置 | |
CN111815375A (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 |