节目的分发方法、系统、计算机设备和存储介质与流程

文档序号:18618863发布日期:2019-09-06 22:17阅读:275来源:国知局
节目的分发方法、系统、计算机设备和存储介质与流程

本发明涉及网络技术领域,特别是涉及一种节目的分发方法、系统、计算机设备和存储介质。



背景技术:

随着互联网技术不断发展,一些影视平台(例如荔枝、yy直播等)相继出现并且迅速发展。随着平台不断扩大,每分钟都有大量的节目上传到这些平台供平台用户进行收听,如何分发这些的节目,是一种非常复杂的工作。例如荔枝是一个ugc平台,荔枝每天上传的节目有几十万,如何快速的把这些节目推荐给用户,是一个比较大的难题。

目前,通常采用协同过滤或基于标签推荐的方法;但是协同过滤依赖大量的用户数据,对于新节目来说,不可能在刚上传节目时就能积累大量的用户数据,这就是一个很大的瓶颈;而基于标签推荐新节目,容易出现质量参差不齐很难达到很好的效果。



技术实现要素:

基于此,有必要针对目前的节目的分发方法存在需要依赖大量用户数据或推荐的节目质量参差不起的问题,提供一种节目的分发方法、系统、计算机设备以及存储介质。

一种节目的分发方法,所述方法包括以下步骤:

获取待分发的新节目和用户偏好节目的向量;

从所述新节目输入至预先建立的节目向量模型,计算出所述新节目的向量;其中,所述节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

根据所述新节目的向量和所述用户偏好节目的向量计算所述新节目与用户偏好节目的余弦相似度;

当所述余弦相似度大于预设阈值时,将所述待分发的新节目分发至与所述用户偏好节目所对用的用户。

在其中一个实施例中,所述预先建立的节目向量模型的方式,包括:

从节目数据库获取所述历史节目;

根据所述历史节目的点击率选择训练样本;

从所述训练样本中提取主播向量、标签向量和质量向量,并将所述主播向量、所述标签向量和质量向量输入至所述神经网络模型进行学习训练,得到所述节目向量模型。

在其中一个实施例中,在将所述主播向量、所述标签向量和质量向量输入至所述神经网络模型进行学习训练,得到所述节目向量模型的步骤中,包括:

将所述训练样本中任意两个节目的所述主播向量、所述标签向量和所述质量向量分别输入所述神经网络模型的隐含层,分别生成两个节目的向量;

计算两个节目的向量的哈达玛积;

将两个节目的向量相减,得到差值;

根据所述质量向量计算两个节目的点击率;

将所述哈达玛积、所述差值以及所述点击率输入所述神经网络模型的sigmoid层,计算出两个节目的相似度;

依次计算所述训练样本中每两个节目的相似度;

根据所述相似度和损失函数计算出损失值;

当所述损失值小于预设值时,得到所述节目向量模型。

在其中一个实施例中,在将所述主播向量、所述标签向量和质量向量输入至所述神经网络模型进行学习训练,得到所述节目向量模型的步骤之前,包括:

根据用户对历史节目中主播的偏好程度采用word2vec算法训练得到主播向量模型;

根据所述历史节目的标签体系采用word2vec算法训练得到标签向量模型;

根据所述历史节目的质量体系的采用one-hot分桶算法训练得到质量向量模型。

在其中一个实施例中,对所述主播向量采用word2vec算法训练得到主播向量模型的步骤中,包括:

构建用户主播评分矩阵;

采用轮盘赌算法对所述用户主播评分矩阵进行分析,根据分析的结果中为每一个用户选取预设数量的主播形成主播矩阵;

将所述主播矩阵采用word2vec算法训练得到主播向量模型。

在其中一个实施例中,所述质量体系包括播放数、点击率、完播率和发布时间,根据历史节目中质量体系的采用one-hot分桶算法训练得到质量向量模型的步骤中,包括:

选取所述历史节目的所述播放数、所述点击率、所述完播率和所述发布时间采用one-hot分桶算法进行分桶,得到质量向量模型。

在其中一个实施例中,所述标签体系包括关键字标签;在根据所述历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:

提取所述历史节目的所有关键字以及关键字对应的标签;

将所述关键字对应的标签采用word2vec算法训练得到关键字标签模型。

一种节目的分发系统,包括:

信息获取模块,用于获取待分发的新节目和用户偏好节目的节目向量;

向量计算模块,用于从所述新节目输入至预先建立的节目向量模型,计算出所述新节目的节目向量;其中,所述节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

余弦相似度计算模块,用于根据所述新节目的节目向量和所述用户偏好节目的节目向量计算所述新节目与用户偏好节目的余弦相似度;

节目分发模块,用于当所述余弦相似度大于预设阈值时,将所述待分发的新节目分发至与所述用户偏好节目所对用的用户。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:

获取待分发的新节目和用户偏好节目的节目向量;

从所述新节目输入至预先建立的节目向量模型,计算出所述新节目的节目向量;其中,所述节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

根据所述新节目的节目向量和所述用户偏好节目的节目向量计算所述新节目与用户偏好节目的余弦相似度;

当所述余弦相似度大于预设阈值时,将所述待分发的新节目分发至与所述用户偏好节目所对用的用户。

一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:

获取待分发的新节目和用户偏好节目的节目向量;

从所述新节目输入至预先建立的节目向量模型,计算出所述新节目的节目向量;其中,所述节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

根据所述新节目的节目向量和所述用户偏好节目的节目向量计算所述新节目与用户偏好节目的余弦相似度;

当所述余弦相似度大于预设阈值时,将所述待分发的新节目分发至与所述用户偏好节目所对用的用户。

上述的节目的分发方法、系统、计算机设备和存储介质,首选获取待分发的节目和用户偏好节目的节目向量,然后将待分发的新节目输入预先建立的节目向量模型计算得到新节目的节目向量,根据新节目的节目向量和用户偏好节目的节目向量计算新节目与用户偏好节目的余弦相似度,再将余弦相似度与预设阈值进行比较,当余弦相似度大于预设阈值时,表明新节目与用户偏好节目相似,因此将新节目分发给用户偏好节目相应的用户;该节目的分发方法通过计算新节目的节目向量,然后通过新节目的节目向量与用户偏好节目的节目向量来确定新节目与用户偏好节目的相似度,找出与新节目最相似的节目并按照最相似节目进行推荐或分发,从而能快速完成新节目的分发,并且分发准确率高。

附图说明

图1为本发明的节目的分发方法在一实施例中的结构示意图;

图2为本发明的注册装置在一实施例中的注册信息结构示意图;

图3为本发明的节目的分发方法在其中一实施例中的结构示意图;

图4为本发明的节目的分发方法在其中一实施例中的结构示意图;

图5为本发明的节目的分发方法在其中一实施例中的流程示意图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

下面将结合较佳实施例及附图对本发明的内容作进一步详细描述。显然,下文所描述的实施例仅用于解释本发明,而非对本发明的限定。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。应当说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。

【相关说明部分】

需要说明的是,本发明实施例所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二\第三”区分的对象在适当情况下可以互换,以使这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

本发明实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或(模块)单元的过程、方法、方法、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

本申请提供的节目的分发方法,本方法运用于终端中,终端可以是个人计算机、笔记本电脑等。终端中可以运行对应的应用程序,将待分发的新节目输入对应的应用程序即可迅速地完成对新节目的分发。

在一个实施例中,如图1所示,提供了一种节目的分发方法,以该方法应用于终端为例进行说明,包括以下步骤:

步骤s102,获取待分发的新节目和用户偏好节目的节目向量;

其中,待分发的新节目是指平台刚接收(或者刚上传到平台)还没推荐或者分发给用户的节目;向量在数学中(也称为欧几里得向量、几何向量、矢量)指具有大小和方向的量;而节目向量是指用一个具有大小和方向的量来表示节目,可以用来表示节目的特征。节目向量通常包括主播向量、标签向量和质量向量,主播向量是指根据主播的共现行为计算出来的;标签向量是根据节目对应的标签计算出来的;质量向量是根据节目播放数、点击率、完播率以及发布时间计算出来的;用户偏好节目通常是指用户明显偏好或者喜欢的历史节目,用户偏好节目的节目向量是预先计算出来的,可以存储在终端或者数据库中。

步骤s104,从新节目输入至预先建立的节目向量模型,计算出新节目的向量;其中,节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

其中,预先建立的节目向量模型是采用神经网络算法对历史节目进行学习训练得到的;历史节目是指平台过去一段时间接收并分发给的节目,可以包括所有的已经完成分发的节目。

步骤s106,根据新节目的节目向量和用户偏好节目的节目向量计算新节目与用户偏好节目的余弦相似度;

步骤s108,当余弦相似度大于预设阈值时,将待分发的新节目分发至与用户偏好节目所对用的用户。

具体的,余弦相似度,又称为余弦相似性,是通过计算两个向量的夹角余弦值来评估他们的相似度。此余弦值就可以用来表征,这两个向量的相似性。夹角越小,余弦值越接近于1,它们的方向更加吻合,则越相似。在本实施例中,根据新节目的节目向量和用户偏好的节目向量计算新节目和用户偏好节目的余弦相似度,从而来判断新节目与用户偏好节目的相似性,找出与选节目相似的用户偏好节目,然后将新节目推送给用户偏好节目对应的用户。

在其中一个可选的实施例方式中,通过以下公式计算余弦相似度:

其中,similarity表示余弦相似度,ai表示新节目的节目向量,bi表示用户偏好节目的节目向量。

另外,预设阈值可以是一个范围值,在本实施例中为大于0小于1数值,是根据实际需求确定的,当预设阈值越大,选择出来的新节目与用户偏好节目相似度越高。

上述的节目的分发方法首选获取待分发的节目和用户偏好节目的节目向量,然后将待分发的新节目输入预先建立的节目向量模型计算得到新节目的节目向量,根据新节目的节目向量和用户偏好节目的节目向量计算新节目与用户偏好节目的余弦相似度,再将余弦相似度与预设阈值进行比较,当余弦相似度大于预设阈值时,表明新节目与用户偏好节目相似,因此将新节目分发给用户偏好节目相应的用户;该节目的分发方法通过计算新节目的节目向量,然后通过新节目的节目向量与用户偏好节目的节目向量来确定新节目与用户偏好节目的相似度,找出与新节目最相似的节目并按照最相似节目进行推荐或分发,从而能快速完成新节目的分发,并且分发准确率高。

在其中一个实施例中,如图2所示,预先建立的节目向量模型的方式,包括:

步骤s202,从节目数据库获取历史节目;

步骤s204,根据历史节目的点击率选择训练样本;

步骤s206,从训练样本中提取主播向量、标签向量和质量向量,并将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型。

具体的,根据历史节目的点击率选择训练样本,其中选择点击率大于0的作为正样本,选择点击率为0的为负样本;为了保证正负样本数量基本相等,对选择训练样本后对其进行将采样处理。点击率=曝光次数/点击次数;例如曝光次数为1,点击次数为1,点击率就为1/1;为了数据的准确性,参考拉普拉斯平滑曲线,给分母加上一个常数,如加上5(可以根据实际情况确认),认为5个人曝光的节目才具有统计意义,即1/(1+5)约为0.1667,选择正样本数量为500w;然后经分析可知曝光次数大于5,且点击率为0的样本也是500w,将其作为负样本,从而正样本和负样本共同组成训练样本;选择的训练样本准确可以使得训练的节目向量模型更加精确,减少错误的发生。

节目向量通常包括主播向量、标签向量和质量向量;因此在采用训练样本进行模型训练时,首选从历史节目中提取主播向量、标签向量和质量向量,然后将提取的主播向量、标签向量和质量向量输入至神经网络模型进行训练,从而得到节目向量模型。

在其中一个实施例中,在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤中,包括:

将训练样本中任意两个节目的主播向量、标签向量和质量向量分别输入神经网络模型的隐含层,分别生成两个节目的向量;

计算两个节目的向量的哈达玛积;

将两个节目的向量相减,得到差值;

根据质量向量计算两个节目的点击率;

将哈达玛积、差值以及点击率输入神经网络模型的sigmoid层,计算出两个节目的相似度;

依次计算训练样本中每两个节目的相似度;

根据相似度和损失函数计算出损失值;

当损失值小于预设值时,得到节目向量模型。

具体的,在训练模型过程中,(1)输入为训练样本中任意两个节目对应的主播向量,标签向量,质量向量,将两个节目对应的主播向量,标签向量,质量向量输入一个共享神经网络,这个共享的神经网络有n层的隐含层。在一个可选的实施例方式中,根据复杂度和效果的衡量,该神经网络选择三层,中间一层隐含层增加relu防止过拟合,经过神经网络后分别生成两个节目的向量;(2)然后对两个节目的向量求哈达码积(对应项相乘),接着这两个向量相减,然后结果合并在一起。相乘和相减主要是提供计算两个节目向量之间的差异有多大,合并的作用是结合两种差异,能更好的刻画出两个节目的差异性有多大。(3)然后计算这两个节目的点击率;(4)将(2)和(3)的结果连接在一起,经过一个sigmoid层,预测出两个节目之间的相似度,其中相似度通常是一个0~1的数。在本实施例中采用tensorflow作为主要的计算框架,其中损失函数采用的是交叉熵;最后根据相似度和损失函数计算出整个训练过程中的loss(损失值),当损失值小于预设值时,表示模型训练完成。所述预设值预先设置的一个值,该值并不是一个唯一的数值,可以是某一范围中任意一个值,通常是根据模型训练实际需求确定的。

在其中一个实施例中,如图3所示,在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤之前,包括:

步骤s302,根据用户对历史节目中主播的偏好程度采用word2vec算法训练得到主播向量模型;

步骤s304,根据历史节目的标签体系采用word2vec算法训练得到标签向量模型;

步骤s306,根据历史节目的质量体系的采用one-hot分桶算法训练得到质量向量模型。

在本实施例中,预先训练好主播向量、标签向量和质量向量,使得在得到节目向量模型时,不用进行随机初始化,大大加快了网络训练的速度。

具体的,对主播向量进行训练得到主播向量模型;通常是根据主播与主播之前播放的历史节目之间的关系确定,即是根据用户对历史节目中主播的偏好程度(通常采用打分制度)确定的。标签向量是根据历史节目的标签体系采用word2vec方法训练得到的;质量标签是根据历史节目的质量体系one-hot分桶算法训练得到质量向量模型。其中标签体系是指节目所有标签分类的集合;质量体系是指节目所有质量参数的结合。

另外,主播可以发不同的节目,不同节目有标签体系与质量体系(如图4所示),包括一级标签和场景标签;一级标签通常是节目种类(分类)的标记,场景标签是指节目适用性别、适用时间/场景、适用心情以及适用教育阶段的标记。一级标签包括二级标签,二级标签是对一级标签的进行一步细化;二级标签包括实体标签和关键字标签。质量体系主要评估节目质量的好坏主要用的指标有播放数,点击率,完播率,发布时间等。

为了便于理解,给出一个详细的实施例;如表1所示,二级标签隶属于一级分类下的子分类,一二级标签尽量保证粒度粗,尽量保证完备的正交体系,保证任意一个节目都能被分到一二级分类。下图则是荔枝节目的一二级标签体系。

表格1一级、二级标签体系

实体:人名,地名,作品名,歌曲名等等

关键词:意思完整且明确,是形容一类节目不是单个,是描述节目的主题或节目想给人造成的影响。

场景标签:适用性别,适用时间/场景,适用心情,适用教育阶段等等。

在其中一个实施例中,对主播向量采用word2vec算法训练得到主播向量模型的步骤中,包括:

构建用户主播评分矩阵;

采用轮盘赌算法对用户主播评分矩阵进行分析,根据分析的结果中为每一个用户选取预设数量的主播形成主播矩阵;

将主播矩阵采用word2vec算法训练得到主播向量模型。

训练主播向量模型的具体过程为:(1)首先,我们会构造用户,主播的评分矩阵,主要根据用户对主播的播放,点赞,关注等行为,刻画用户对主播的喜好程度,并且我们把这个偏好值scorei归一化到0~1。例如以下的格式:

user1,nj1,score1

user1,nj2,score2

user2,nj3,score3

(2)然后我们根据用户id,统计用户喜好的主播列表,转化为以下格式

user1nj1:score11,nj2:score12,nj3:score13………

user2nj2:score21,nj2:score22,nj4:score24……….

(3)首先轮盘赌算法:

nj1,,nj2……njn

假设我们对主播nj1,,nj2......njn的评分为score1,,score2......scoren,则nji被抽中的概率为pi,

接着,我们根据随机轮盘赌算法,根据用户对主播的偏好权重,偏好越大,被抽中的概率越高,根据用户,主播评分矩阵,考虑到准确率与计算性能,为每个用户抽取10次主播,构造成以下的格式:

user1nj1,nj2,nj1,nj3…

user2nj2,nj3,nj2,nj4……

(4)去掉前面的userid,并且分隔符采用空格,转化为以下格式

nj1nj2nj1nj3……

nj2nj3nj2nj4……

(5)我们把以上的构造的样本输入到word2vec中,获得主播向量模型。当节目输入主播向量模型即可得到节目的主播向量。

word2vec,是一群用来产生词向量的相关模型。这些模型为浅而双层的神经网络,用来训练以重新建构语言学之词文本。网络以词表现,并且需猜测相邻位置的输入词,在word2vec中词袋模型假设下,词的顺序是不重要的。训练完成之后,word2vec模型可用来映射每个词到一个向量,可用来表示词对词之间的关系,该向量为神经网络之隐藏层。即word2vec可以根据给定的语料库,通过优化后的训练模型快速有效地将一个词语表达成向量形式。

在其中一个实施例中,质量体系包括播放数、点击率、完播率和发布时间,根据历史节目中质量体系的采用one-hot分桶算法训练得到质量向量模型的步骤中,包括:

选取历史节目的播放数、点击率、完播率和发布时间采用one-hot分桶算法进行分桶,得到质量向量模型。

具体的,one-hot编码是将类别变量转换为机器学习算法易于利用的一种形式的过程。在本实施例中,将历史节目的播放数,点击率,完播率,发布时间转变成0或1组成的向量。

以播放数为例,我们把节目的播放数从小到大排序,计算每个播放数对应的节目数,我们用分位数进行分割,分为5等份,分别是20%,40%,60%,80%进行分割,假设这四个分位数为200,4000,60000,100000,那么200播放数以下的节目占20%,4000播放数以下的节目占40%,60000播放数以下的节目占60%,100000以下的节目占80%。某一个节目的播放数为321,那么他大于20%的数据的分位数又小于这个节目40%的分位数,那么这个节目对应播放数的向量值为[0,1,0,0,0]。其中分位数亦称分位点,是指将一个随机变量从小到大排列,分为几个等份的数值点;分位数的具体取值可以根据实际的需求进行选择。

另外,对于点击率、完播率和发布时间采用同样的方式进行。

在其中一个实施例中,标签体系包括关键字标签;在根据历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:

提取历史节目的所有关键字以及关键字对应的标签;

将关键字对应的标签采用word2vec算法训练得到关键字标签模型。

具体的,关键字训练过程中,(1)把每个主播所有节目的关键词聚集在一起即可,不用进行去重处理,再把主播对应的标签随机打乱,例如主播节目对应关系:

nj1,audio1

nj1,audio2

nj1,audio3

nj1,audio4

nj2,audio5

………

节目对应标签

audio1:ta.g1,tag2

audio2:tag2

audio3:tag3

audio4:tag5

audio5:tag6

………

那么主播对应标签为

nj1:tag1,tag2,tag2,tag3

nj2:tag5,tag6

………

(2)去掉前面的nj,再把以上的节目随机打乱

tag1,tag2,tag2,tag3

tag5,tag6

………

(3)我们把以上的构造的样本输入到word2vec中,获得关键字向量模型。当节目输入关键字向量模型即可得到节目的关键字向量。

在其中一个实施例中,标签体系包括实体标签;在根据历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:训练一级或二级标签模型;其中,具体过程与训练关键字相似,因此在此不在赘述。

在其中一个实施例中,标签体系包括实体标签;在根据历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:训练实体模型;其中训练实体模型过程为:(1)构造用户,主播的评分矩阵,主播与实体之间的关系,根据主播关联起来,构造成用户,实体的评分矩阵。

用户主播评分矩阵格式:

user1,nj1,score1

user1,nj2,score2

user2,nj3,score3

………

主播节目对应关系:

nj1,audio1

nj1,audio2

nj1,audio3

nj1,audio4

nj2,audio5

………

节目对应实体:

audio1:entity1,entity2

audio2:entity3

audio3:enity4,entity2

audio5:enity5

………

那么主播对应实体为:

nj1:entity1,entity2,entity3,entity4

nj2:entity5

………

最终构造用户,实体的评分矩阵

user1entity1:score11,entity2:score12,entity3:score13………

user2entity2:score21,entity3:score22,entity4:score24……….

(2)根据随机轮盘赌算法,用户对实体的偏好权重,偏好越大,被抽中的概率越高,构造以下成以下的格式

user1entity1,entity2,entity1,entity3…

user2entity2,entity3,entity2,entity4……

(3)去掉前面的userid,并且分隔符采用空格,转化为以下格式

entity1,entity2,entity1,entity3…

entity2,entity3,entity2,entity4……

(4)我们把以上的构造的样本输入到word2vec中,获得实体向量模型。当节目输入实体向量模型即可得到节目的实体字向量。

根据上述的节目的分发方法,本发明还提供了一种节目的分发系统。

图5为本发明的节目的分发方法在一个实施例中的结构示意图。如图5所示,该实施例中的节目的分发系统,

信息获取模块10,用于获取待分发的新节目和用户偏好节目的节目向量;

向量计算模块20,用于从所述新节目输入至预先建立的节目向量模型,计算出所述新节目的节目向量;其中,所述节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

余弦相似度计算模块30,用于根据所述新节目的节目向量和所述用户偏好节目的节目向量计算所述新节目与用户偏好节目的余弦相似度;

节目分发模块40,用于当所述余弦相似度大于预设阈值时,将所述待分发的新节目分发至与所述用户偏好节目所对用的用户。

在其中一个实施例中,包括:

历史节目获得模块,用于从节目数据库获取历史节目;

训练样本选择模块,用于根据历史节目的点击率选择训练样本;

节目向量模型得到模块,用于从训练样本中提取主播向量、标签向量和质量向量,并将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型。

在其中一个实施例中,节目向量模型得到模块包括:

向量生成模块,用于将训练样本中任意两个节目的主播向量、标签向量和质量向量分别输入神经网络模型的隐含层,分别生成两个节目的向量;

哈达玛积计算模块,用于计算两个节目的向量的哈达玛积;

差值计算模块,用于将两个节目的向量相减,得到差值;

点击率计算模块,用于根据质量向量计算两个节目的点击率;

相似度计算模块,用于将哈达玛积、差值以及点击率输入神经网络模型的sigmoid层,计算出两个节目的相似度;依次计算训练样本中每两个节目的相似度;

损失值计算模块,用于根据相似度和损失函数计算出损失值;

节目向量模型得到模块,用于当损失值小于预设值时,得到节目向量模型。

在其中一个实施例中,还包括:

主播向量模型得到模块,用于根据用户对历史节目中主播的偏好程度采用word2vec算法训练得到主播向量模型;

标签向量模型得到模块,用于根据历史节目的标签体系采用word2vec算法训练得到标签向量模型;

质量向量模型得到模块,用于根据历史节目的质量体系的采用one-hot分桶算法训练得到质量向量模型。

在其中一个实施例中,主播向量模型得到模块包括:

评分矩阵构建模块,用于构建用户主播评分矩阵;

主播矩阵行程模块,用于采用轮盘赌算法对用户主播评分矩阵进行分析,根据分析的结果中为每一个用户选取预设数量的主播形成主播矩阵;

主播向量模型得到模块,用于将主播矩阵采用word2vec算法训练得到主播向量模型。

在其中一个实施例中,质量体系包括播放数、点击率、完播率和发布时间,包括:

质量向量模型得到模块,用于选取历史节目的播放数、点击率、完播率和发布时间采用one-hot分桶算法进行分桶,得到质量向量模型。

在其中一个实施例中,标签体系包括关键字标签;包括:

关键字标签提取模块,用于提取历史节目的所有关键字以及关键字对应的标签;

关键字标签模型得到模块,用于将关键字对应的标签采用word2vec算法训练得到关键字标签模型。

关于节目的分发系统的具体限定可以参见上文中对于节目的分发系统的限定,在此不再赘述。上述节目的分发系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储故障事例数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种节目的分发方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取待分发的新节目和用户偏好节目的向量;

从新节目输入至预先建立的节目向量模型,计算出新节目的向量;其中,节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

根据新节目的向量和用户偏好节目的向量计算新节目与用户偏好节目的余弦相似度;

当余弦相似度大于预设阈值时,将待分发的新节目分发至与用户偏好节目所对用的用户。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:

从节目数据库获取历史节目;

根据历史节目的点击率选择训练样本;

从训练样本中提取主播向量、标签向量和质量向量,并将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤中,包括:

将训练样本中任意两个节目的主播向量、标签向量和质量向量分别输入神经网络模型的隐含层,分别生成两个节目的向量;

计算两个节目的向量的哈达玛积;

将两个节目的向量相减,得到差值;

根据质量向量计算两个节目的点击率;

将哈达玛积、差值以及点击率输入神经网络模型的sigmoid层,计算出两个节目的相似度;

依次计算训练样本中每两个节目的相似度;

根据相似度和损失函数计算出损失值;

当损失值小于预设值时,得到节目向量模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤之前,包括:

根据用户对历史节目中主播的偏好程度采用word2vec算法训练得到主播向量模型;

根据历史节目的标签体系采用word2vec算法训练得到标签向量模型;

根据历史节目的质量体系的采用one-hot分桶算法训练得到质量向量模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:对主播向量采用word2vec算法训练得到主播向量模型的步骤中,包括:

构建用户主播评分矩阵;

采用轮盘赌算法对用户主播评分矩阵进行分析,根据分析的结果中为每一个用户选取预设数量的主播形成主播矩阵;

将主播矩阵采用word2vec算法训练得到主播向量模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:质量体系包括播放数、点击率、完播率和发布时间,根据历史节目中质量体系的采用one-hot分桶算法训练得到质量向量模型的步骤中,包括:

选取历史节目的播放数、点击率、完播率和发布时间采用one-hot分桶算法进行分桶,得到质量向量模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:刀闸状态异常数据识别模型通过以下步骤得到:标签体系包括关键字标签;在根据历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:

提取历史节目的所有关键字以及关键字对应的标签;

将关键字对应的标签采用word2vec算法训练得到关键字标签模型。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取待分发的新节目和用户偏好节目的向量;

从新节目输入至预先建立的节目向量模型,计算出新节目的向量;其中,节目向量模型为基于神经网络算法对历史节目的进行学习训练而得到的;

根据新节目的向量和用户偏好节目的向量计算新节目与用户偏好节目的余弦相似度;

当余弦相似度大于预设阈值时,将待分发的新节目分发至与用户偏好节目所对用的用户。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:预先建立的节目向量模型的方式,包括:

从节目数据库获取历史节目;

根据历史节目的点击率选择训练样本;

从训练样本中提取主播向量、标签向量和质量向量,并将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤中,包括:

将训练样本中任意两个节目的主播向量、标签向量和质量向量分别输入神经网络模型的隐含层,分别生成两个节目的向量;

计算两个节目的向量的哈达玛积;

将两个节目的向量相减,得到差值;

根据质量向量计算两个节目的点击率;

将哈达玛积、差值以及点击率输入神经网络模型的sigmoid层,计算出两个节目的相似度;

依次计算训练样本中每两个节目的相似度;

根据相似度和损失函数计算出损失值;

当损失值小于预设值时,得到节目向量模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在将主播向量、标签向量和质量向量输入至神经网络模型进行学习训练,得到节目向量模型的步骤之前,包括:

根据用户对历史节目中主播的偏好程度采用word2vec算法训练得到主播向量模型;

根据历史节目的标签体系采用word2vec算法训练得到标签向量模型;

根据历史节目的质量体系的采用one-hot分桶算法训练得到质量向量模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对主播向量采用word2vec算法训练得到主播向量模型的步骤中,包括:

构建用户主播评分矩阵;

采用轮盘赌算法对用户主播评分矩阵进行分析,根据分析的结果中为每一个用户选取预设数量的主播形成主播矩阵;

将主播矩阵采用word2vec算法训练得到主播向量模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:质量体系包括播放数、点击率、完播率和发布时间,根据历史节目中质量体系的采用one-hot分桶算法训练得到质量向量模型的步骤中,包括:

选取历史节目的播放数、点击率、完播率和发布时间采用one-hot分桶算法进行分桶,得到质量向量模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:标签体系包括关键字标签;在根据历史节目的共现关系采用word2vec算法训练得到标签向量模型的步骤中,包括:

提取历史节目的所有关键字以及关键字对应的标签;

将关键字对应的标签采用word2vec算法训练得到关键字标签模型。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1