标签推荐方法、装置、标签推荐模型的训练方法和介质
技术领域
本申请涉及人工智能
技术领域
,特别是涉及一种标签推荐方法、装置、标签推荐模型的训练方法和介质。背景技术
随着视频时代的到来,除了以图文为主的传统自媒体公众号平台外,还提供了个人用户可以随时分享短视频的视频号,例如微信视频号、抖音短视频号以及快手短视频号等,其主要内容表达方式不是文字内容,而是侧重短视频加上短文字的信息流(feeds)。为了改善信息环境以及对信息按照话题进行分组,用户可以在发布的信息流中添加主题标签(hashtags)。目前视频号平台上的主题标签基本是由用户在上传视频号信息流时手动标注,为了提高主题标签的标注效率,平台提供一种主题标签自动推荐的能力,即当用户输入一个主题标签时,平台自动推荐相关的主题标签。
在进行主题标签推荐时,相关技术中使用开放的基于新闻语料的googleword2vec(用来产生词向量的相关模型)将每个主题标签表示成一个N维的词向量,然后计算不同主题标签词向量之间的余弦(cosine)距离,根据该距离确定出不同主题标签之间的相关度,进而根据相关度推荐潜在的主题标签。
但是,由于原生google word2vec所表示的主题标签词向量是基于无监督新闻语料训练语言模型时得到的副产物,其学习的是词的语法相似性,因此所得到的相似度较高的词可能只是在新闻语料中经常一起出现,或者在语法上比较相似,甚至可能是反义词、下位词或同位词等,例如,在原生google word2vec中,“北京”和“上海”两个词的词向量可能很相近,但是在同一视频号信息流中,“北京”和“上海”往往并不会经常一起出现。总之,直接使用原生google word2vec得到的词向量一方面由于其分布假设与视频号信息流的主题标签之间的分布假设不一致,另一方面由于其本身只有语言模型损失函数的弱约束,并不能够有效控制所得到的词向量分布与视频号信息流的主题标签所需的共现分布保持一致,因此采用上述方式进行主题标签推荐时,准确度较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效提高标签推荐准确度的标签推荐方法、装置、标签推荐模型的训练方法和介质。
一种用于多媒体数据的标签推荐方法,包括:
获取参考标签和至少两个候选标签;
确定参考标签与候选标签之间的语义相似度;
确定参考标签与候选标签之间的共现概率,共现概率用于描述参考标签和候选标签属于相同多媒体数据的标签的概率;
根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。
一种标签推荐模型的训练方法,包括:
获取至少两个样本词,并获取多媒体数据的至少两个样本标签;
分析各个样本词之间的语义相似度并作为样本语义相似度,并分析各个样本标签之间的语义相似度并作为样本语义相似度;
分析各个样本标签之间的共现概率并作为样本共现概率;
根据样本语义相似度和样本共现概率训练标签推荐模型。
一种用于多媒体数据的标签推荐装置,包括:
第一获取模块,用于获取参考标签和至少两个候选标签;
第一确定模块,用于确定参考标签与候选标签之间的语义相似度;
第二确定模块,用于确定参考标签与候选标签之间的共现概率,共现概率用于描述参考标签和候选标签属于相同多媒体数据的标签的概率;
推荐模块,用于根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的用于多媒体数据的标签推荐方法的步骤,或者实现上述的标签推荐模型的训练方法的步骤。
上述标签推荐方法、装置、标签推荐模型的训练方法和介质,通过获取参考标签和至少两个候选标签,并确定参考标签与候选标签之间的语义相似度,以及确定参考标签与候选标签之间的共现概率,并根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。由于语义相似度表征了标签在语义上的相似性,共现概率表征了标签在相同多媒体数据中出现的概率,因此基于语义相似度和共现概率所获得目标标签更符合多媒体数据的分布假设,从而使得所获得的目标标签更加准确。
附图说明
图1为一个实施例中用于多媒体数据的标签推荐方法的应用环境图;
图2为一个实施例中用于多媒体数据的标签推荐方法的流程示意图;
图3为一个实施例中视频号信息流中主题标签的标注示意图;
图4为一个实施例中从至少两个候选标签中选取出目标标签的流程示意图;
图5为一个实施例中对标签推荐模型进行训练的流程示意图;
图6为一个实施例中标签推荐模型的结构示意图;
图7为一个实施例中标签推荐模型的训练方法的流程示意图;
图8为一个实施例中用于多媒体数据的标签推荐装置的结构框图;
图9为另一个实施例中用于多媒体数据的标签推荐装置的结构框图;
图10为又一个实施例中用于多媒体数据的标签推荐装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。机器学习(Machine Learning,ML)是人工智能的一个重要方向,主要研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
标签推荐可作为机器学习一个分支,在进行标签推荐时,使用开放的基于新闻语料的google word2vec(用来产生词向量的相关模型)将每个主题标签表示成一个N维的词向量,然后计算不同主题标签词向量之间的余弦距离,根据该距离确定出不同主题标签之间的相关度,进而根据相关度推荐潜在的主题标签。但是,由于原生google word2vec所表示的主题标签词向量是基于无监督新闻语料训练语言模型时得到的副产物,其学习的是词的语法相似性,因此所得到的相似度较高的词可能只是在新闻语料中经常一起出现,或者在语法上比较相似,甚至可能是反义词、下位词或同位词等,从而导致主题标签推荐的准确度低。基于此,本申请提供一种用于多媒体数据的标签推荐方法,该方法能够有效提高主题标签推荐的准确度。本申请提供的用于多媒体数据的标签推荐方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104通过网络进行通信,服务器104获取用户在终端102上输入的参考标签,并从数据库中获取至少两个候选标签,以及确定参考标签与候选标签之间的语义相似度,并确定参考标签与候选标签之间的共现概率,共现概率用于描述参考标签和候选标签属于相同多媒体数据的标签的概率,以及根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签,并将目标标签发送给终端102,在终端102上进行显示以供用户选择。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑,服务器104可以用独立的服务器或者是至少两个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种用于多媒体数据的标签推荐方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取参考标签和至少两个候选标签。
参考标签是指用户针对当前多媒体数据所提供的标签;候选标签是指在此之前已经存在的所有多媒体数据的标签,具体可根据服务器所能提供的已经存在的多媒体数据对应的标签为准,这里不做限制。
以用户利用微信视频号发布视频号信息流为例。参考图3所示,在用户通过终端102中的微信APP的微信视频号上传一段关于口袋饼的短视频后,用户可在该短视频的下方输入一段关于该短视频的短文字如“口袋饼太好吃了”,同时针对该短视频输入一个主题标签如“口袋饼”,该标签可作为参考标签。可以理解的是,为了区分短文字和主题标签,可在主题标签的两端加上分割符如“#”,以对短文字以及不同的主题标签进行分割,以便于系统及用户能够快速且准确地获悉短视频对应的短文字以及各个主题标签。
在用户针对上述短视频输入一个主题标签如“口袋饼”后,终端102将该主题标签“口袋饼”作为参考标签发送给服务器104。服务器104在接收到参考标签如主题标签“口袋饼”后,从数据库中获取已经存在的所有多媒体数据对应的主题标签如“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等并作为候选标签。
步骤204,确定参考标签与候选标签之间的语义相似度。
语义相似度是指两个词语在不同的上下文中可以相互替换使用而不改变文本的语法语义结构的程度,因此两个词语在不同的上下文中可以相互替换且不改变文本的语法语义结构的可能性越大,二者的相似度越高,否则相似度越低。
在本申请中,可通过将两个不同标签分别表示成一个N维的词向量,然后计算不同标签词向量之间的余弦距离,根据余弦距离来确定出两个不同标签之间的语义相似度。当然,也可以采用其它方式获取两个不同标签之间的语义相似度,具体可采用现有技术,这里不做限制。
服务器104在获得参考标签如主题标签“口袋饼”和至少两个候选标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等后,可先将参考标签和各个候选标签分别表示成一个N(如50)维的词向量,然后计算参考标签与各个候选标签之间的余弦距离,根据余弦距离确定出参考标签与每个候选标签之间的语义相似度。
步骤206,确定参考标签与候选标签之间的共现概率。
共现概率用于描述参考标签和候选标签属于相同多媒体数据的标签的概率,即同时出现在同一多媒体数据中的概率。当参考标签为“口袋饼”、候选标签为“美食”时,由于口袋饼属于美食的一种,因此“口袋饼”和“美食”同时出现在同一多媒体数据中的概率就高;当参考标签为“口袋饼”、候选标签为“造型”时,由于口袋饼与造型之间不具有直接的关系,因此“口袋饼”和“造型”几乎不会同时出现在同一多媒体数据中,即同时出现在同一多媒体数据中的概率接近零。
在一个实施例中,确定参考标签与候选标签之间的共现概率,包括:将参考标签与候选标签之间的点互信息作为共现概率,其中,点互信息用于描述参考标签与候选标签之间的相关性。
点互信息(Pointwise Mutual Information,PMI)是从信息论里的互信息衍生而来的,互信息是衡量两个随机变量之间的相关性,点互信息是衡量两个事物如两个词之间的相关性,在本申请中点互信息是衡量参考标签与候选标签之间的相关性。由于共现概率描述的是参考标签和候选标签属于相同多媒体数据的标签的概率,而点互信息能够定量给出参考标签与候选标签之间的相关程度,因此可以将参考标签与候选标签之间的点互信息作为共现概率。
其中,点互信息的基本原理较为简单,对应公式如下:
式中,p(x,y)表示事物x和事物y共同出现的概率,p(x)表示事物x单独出现的概率,p(y)表示事物y单独出现的概率,如果事物x和事物y不相关,则p(x,y)=p(x)p(y),对应事物x与事物y之间的点互信息PMI(x;y)为0,而事物x和事物y的相关性越大,则p(x,y)相较于p(x)p(y)就越大,对应事物x与事物y之间的点互信息PMI(x;y)就越大。另外,从公式(1)中可以看出,事物x与事物y之间的点互信息PMI(x;y)实质是指在事物y出现的情况下事物x出现的条件概率p(x|y)除以事物x本身出现的概率p(x),或者指在事物x出现的情况下事物y出现的条件概率p(y|x)除以事物y本身出现的概率p(y),且事物x与事物y之间的点互信息呈对称关系即PMI(x;y)=PMI(y;x)。
在本申请中,可通过以下方式获取两个不同标签之间的点互信息:
式中,PMI(X;Y)表示标签X与标签Y之间的点互信息,n表示标签X和标签Y共同出现在已经存在的所有多媒体数据中的频次,N表示已经存在的所有多媒体数据的标签的个数,N1表示标签X单独出现在已经存在的所有多媒体数据中的频次,N2表示标签Y单独出现在已经存在的所有多媒体数据中的频次。
举例来说,以“肉夹馍”和“美食”两个主题标签为例。假设在已经存在的所有多媒体数据中“肉夹馍”和“美食”同时出现在了10个多媒体数据中,“肉夹馍”出现在了15个多媒体数据中,“美食”出现在了20个多媒体数据中,且已经存在的所有多媒体数据一共有N个不同的主题标签,那么“肉夹馍”与“美食”之间的点互信息即为计算出的点互信息越大,说明两个主题标签经常在一起出现,即共现概率越大,也就是有很多视频号主在发布视频号信息流时,在打上了主题标签“肉夹馍”的同时,很高概率也会打上“美食”。
服务器104在获得参考标签如主题标签“口袋饼”和至少两个候选标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等后,可先从数据库中获取已经存在的所有多媒体数据中参考标签出现的频次、每个候选标签出现的频次、以及参考标签分别与每个候选标签同时出现在同一多媒体数据中的频次,然后根据参考标签出现的频次、每个候选标签出现的频次、参考标签分别与每个候选标签同时出现在同一多媒体数据中的频次、以及所有多媒体数据的标签的个数,通过上述公式(2)计算获得参考标签与各个候选标签之间的共现概率。
步骤208,根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。
服务器104在获得参考标签如主题标签“口袋饼”与每个候选标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等之间的语义相似度以及共现概率后,可根据语义相似度以及共现概率确定出与参考标签如主题标签“口袋饼”在语义上最相似且经常共同出现在同一多媒体数据中的候选标签作为目标标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”。
上述用于多媒体数据的标签推荐方法中,根据参考标签与候选标签之间的语义相似度以及参考标签与候选标签之间的共现概率,从至少两个候选标签中选取出目标标签,其中由于语义相似度表征了标签在语义上的相似性,共现概率表征了标签在相同多媒体数据中出现的概率,因此基于语义相似度和共现概率所获得目标标签更符合多媒体数据的分布假设,从而使得所获得的目标标签更加准确。
在一个实施例中,参考图4所示,根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签,包括:
步骤S402,将语义相似度和共现概率输入至预训练的标签推荐模型,并获取预训练的标签推荐模型输出的目标函数的函数值。其中,预训练的标签推荐模型已学习得到语义相似度、共现概率、以及与语义相似度和共现概率对应的目标函数的函数值之间的对应关系。
步骤S404,根据函数值,从至少两个候选标签中选取出目标标签。
也就是说,服务器104在获得参考标签如主题标签“口袋饼”与每个候选标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等之间的语义相似度以及共现概率后,可根据语义相似度以及共现概率通过预先训练获得的标签推荐模型从至少两个候选标签中选取出目标标签。具体地,服务器104可将获得的参考标签与每个候选标签之间的语义相似度以及共现概率输入至预先训练获得的标签推荐模型,经标签推荐模型中的目标函数计算后,输出相应的函数值,然后根据函数值从至少两个候选标签中选取出目标标签。
在一个实施例中,根据函数值,从至少两个候选标签中选取出目标标签,包括:依据大小顺序关系对函数值进行排序;将排序在前的预设个数的候选标签作为目标标签。
例如,服务器104在将参考标签如主题标签“口袋饼”与每个候选标签如主题标签“家常菜”、“早餐饼”、“美食”、“肉夹馍”、“午餐”、“晚餐”等之间的语义相似度以及共现概率输入至预先训练获得的标签推荐模型后,经预先训练获得的标签推荐模型的目标函数计算后,输出的函数值依次为80%、90%、90%、95%、60%、60%等,然后对所有函数值进行排序,并将排序在前的预设个数的候选标签作为目标标签如主题标签“肉夹馍”、“早餐饼”、“美食”和“家常菜”。然后,服务器104将获得的目标标签发送至终端102,并在终端102上显示,以便用户直接从目标标签中进行选择,从而提高了标签的标注效率。
在一个实施例中,参考图5所示,在获取参考标签和至少两个候选标签之前,还包括:
步骤502,从新闻语料库中获取至少两个样本词,并获取多媒体数据的至少两个样本标签。
语料库是语料库语言学研究的基础资源,也是经验主义语言研究方法的主要资源,应用于词典编纂、语言教学、传统语言研究以及自然语言处理中基于统计或实例的研究等方面。语料库中存放的是在语言的实际使用中真实出现过的语言材料,是以电子计算机为载体承载语言知识的基础资源,且真实语料需要经过加工(分析和处理)才能成为有用的资源。
在本申请中,语料库为新闻语料库,服务器104可从新闻语料库中获取至少两个样本词,并将其作为标签推荐模型的部分训练数据对标签推荐模型进行训练,同时服务器104还获取大量的已经存在的所有多媒体数据的标签作为至少两个样本标签,并将其作为标签推荐模型的部分训练数据对标签推荐模型进行训练。
在一个实施例中,在从新闻语料库中获取至少两个样本词前,还包括:获取海量新闻数据;根据新闻数据得到对应的新闻文本;对新闻文本进行分词处理,得到至少两个分词;根据至少两个分词构建新闻语料库。
例如,服务器104可从互联网平台上获取大量的新闻数据,包括历史、地理、科技、文化、教育、娱乐、社会与法制等多方面的文本数据、语音数据或视频数据,然后将所有新闻数据分别进行格式转换如分别进行文本转换,以获得大量的新闻文本,接着对新闻文本进行分词处理,以将原始的字符流转换成一个一个词条,最终得到至少两个分词,具体可采用现有技术实现,最后根据得到的分词构建新闻语料库,即新闻语料库中存在大量与新闻数据相关的分词。
步骤504,分析各个样本词之间的语义相似度并作为样本语义相似度,并分析各个样本标签之间的语义相似度并作为样本语义相似度。
服务器104在获得至少两个样本词以及至少两个样本标签后,可通过前述方式获取各个样本词之间的语义相似度,并将其作为样本语义相似度,同时通过前述方式获取各个样本标签之间的语义相似度,并将其作为样本语义相似度。也就是说,样本语义相似度包含有两个方面,一方面是样本词之间的语义相似度,另一方面是样本标签之间的语义相似度,由于同时采用了新闻语料和标签语料的语义相似度训练标签推荐模型,因此标签推荐模型就能泛化到任意的词,而不具有局限性,因而提升了标签推荐模型的识别准确性。
步骤506,分析各个样本标签之间的共现概率并作为样本共现概率。
服务器104在获得至少两个样本标签后,还可通过前述方式获取各个样本标签之间的共现概率,并将其作为样本共现概率。
步骤508,根据样本语义相似度和样本共现概率训练初始的标签推荐模型,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
服务器104在获得样本语义相似度和样本共现概率后,将样本语义相似度和样本共现概率输入至初始的标签推荐模型,以对初始的标签推荐模型的进行训练,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
在一个实施例中,初始的标签推荐模型包括第一标签推荐模型和第二标签推荐模型,目标函数包括与第一标签推荐模型对应的第一函数和与第二标签推荐模型对应的第二函数,第一标签推荐模型和第二标签推荐模型共享词嵌入层。
也就是说,初始的标签推荐模型可包括两个标签推荐模型,分别为第一标签推荐模型和第二标签推荐模型,第一标签推荐模型作为主模型,可以为词向量模型,第二标签推荐模型作为辅助模型,与主模型共享词嵌入层以进行联合优化,即辅助模型输出的函数值作为主模型的联合监督信号对主模型进行联合训练,从而使得训练获得的标签推荐模型能够学习到多媒体数据已有标签中不同标签的共现概率分布。其中,第一标签推荐模型对应第一函数,当第一标签推荐模型为词向量模型时,第一函数为词向量模型的目标函数,第二标签推荐模型对应第二函数,第二函数可以为求取共现概率之差也即求取点互信息之差的损失函数,具体可以为铰链损失函数或均方差损失函数等,目标函数包括第一函数和第二函数,例如目标函数为第一函数加上第二函数,或者第一函数的绝对值加上第二函数的绝对值,或者第一函数与第二函数相乘等。
在一个实施例中,根据样本语义相似度和样本共现概率训练初始的标签推荐模型,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕,包括:将样本语义相似度训练第一标签推荐模型,并获取第一标签推荐模型输出的第一函数的第一函数值;将样本共现概率训练第二标签推荐模型,并获取第二标签推荐模型输出的第二函数的第二函数值;将第一函数值和第二函数值的加和值作为目标值,直至目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
服务器104在获得样本语义相似度和样本共现概率后,利用样本语义相似度对第一标签推荐模型进行训练,并获取第一标签推荐模型对应的第一函数的函数值记为第一函数值,同时利用样本共现概率对第二标签推荐模型进行训练,并获取第二标签推荐模型对应的第二函数的函数值记为第二函数值,然后对第一函数值和第二函数值进行求和,并将求和结果作为目标值,直至目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。其中,第一函数用于求取语义相似度最大值,第二函数用于求取共现概率最大值,目标函数用于同时求取两者的最大值,并且当目标函数为第一函数加上第二函数时,目标函数用于求取两者的最大值之和,即求取最大化二者之和。
作为一个具体示例,参考图6所示,初始的标签推荐模型可包括第一标签推荐模型(图中左侧)和第二标签推荐模型(图中右侧),第一标签推荐模型作为主模型,可以为词向量模型,具体可以为skip-gram模型或glove模型等,第二标签推荐模型作为辅助模型,与主模型共享词嵌入层以进行联合优化。
其中,当第一标签推荐模型为skip-gram模型时,该模型对应的目标函数即第一函数可通过下述公式(3)进行表达:
式中,为skip-gram模型对应的目标函数,具体为最大化语义相似度似然函数,即用于求取语义相似度的最大值,T表示输入至skip-gram模型的样本词的总个数,p(wt+j|wt)表示在中心样本词wt出现的情况下样本词wt+j出现的条件概率,c为skip-gram模型的窗口大小。
第二标签推荐模型对应的目标函数即第二函数可通过下述公式(4)进行表达:
式中,为第二标签推荐模型对应的目标函数,具体为最大化共现概率似然函数,即用于求取共现概率的最大值,具体可通过铰链损失函数或均方差损失函数等求取不同共现概率之间的差值,根据差值确定共现概率的最大值,如当PMI(wi,wj)>PMI(wi,wk)时,共现概率的最大值为PMI(wi,wj),PMI(wi,wj)表示样本标签wi与样本标签wj之间的点互信息即共现概率,PMI(wi,wk)表示样本标签wi与样本标签wk之间的点互信息即共现概率。
初始的标签推荐模型对应的目标函数可通过下述公式(5)进行表达:
式中,为初始的标签推荐模型的目标函数,具体为最大化语义相似度和共现概率之和。
需要说明的是,在该示例中,第一标签推荐模型对应的第一函数包含了语义相似度的分析过程,同时第二标签推荐模型对应的第二函数包含了共现概率的分析过程,因此在对初始的标签推荐模型进行训练时,可直接将样本词和样本标签作为训练参数输入至初始的标签推荐模型并对其进行训练以获得预训练的标签推荐模型,进而服务器104在基于该预训练的标签推荐模型从至少两个候选标签中选取出目标标签时,可直接将参考标签和至少两个候选标签输入至预训练的标签推荐模型中,通过学习获得目标标签,从而无需单独确定参考标签与候选标签之间的语义相似度以及共现概率。
通过上述标签推荐模型学习得到的目标值,不仅可以将如“肉夹馍”和“美食”在词向量表示的余弦距离上相似度高外,也可以将其它潜在多媒体数据中更可能经常出现在一起的词,其词向量更近。例如,背景技术中“北京”和“上海”不太可能同时在视频号信息流场景下共现,因此经过上述标签推荐模型学习得到的两个词的词向量距离将会明显拉远,即相似度较低。
应该理解的是,虽然图2、4-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4-5中的至少一部分步骤可以包括至少两个子步骤或者至少两个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
综上所述,上述用于多媒体数据的标签推荐方法,通过获取参考标签和至少两个候选标签,并确定参考标签与候选标签之间的语义相似度,以及确定参考标签与候选标签之间的共现概率,并根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。由于语义相似度表征了标签在语义上的相似性,共现概率表征了标签在相同多媒体数据中出现的概率,因此基于语义相似度和共现概率所获得目标标签更符合多媒体数据的分布假设,从而使得所获得的目标标签更加准确。
在一个实施例中,如图7所示,提供了一种标签推荐模型的训练方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S702,获取至少两个样本词,并获取多媒体数据的至少两个样本标签。
服务器104可从新闻语料库中获取至少两个样本词,并将其作为标签推荐模型的部分训练数据对标签推荐模型进行训练,同时服务器104还获取大量的已经存在的所有多媒体数据的标签作为至少两个样本标签,并将其作为标签推荐模型的部分训练数据对标签推荐模型进行训练。
步骤S704,分析各个样本词之间的语义相似度并作为样本语义相似度,并分析各个样本标签之间的语义相似度并作为样本语义相似度。
在本申请中,可通过将两个不同样本词分别表示成一个N维的词向量,然后计算不同样本词词向量之间的余弦距离,根据余弦距离来确定出两个不同样本词之间的语义相似度。当然,也可以采用其它方式获取两个不同样本词之间的语义相似度,具体可采用现有技术,这里不做限制。对于两个不同样本标签之间的语义相似度的获取方式可参考两个不同样本词之间的获取方式。
服务器104在获得至少两个样本词以及至少两个样本标签后,可通过前述方式获取各个样本词之间的语义相似度,并将其作为样本语义相似度,同时通过前述方式获取各个样本标签之间的语义相似度,并将其作为样本语义相似度。也就是说,样本语义相似度包含有两个方面,一方面是样本词之间的语义相似度,另一方面是样本标签之间的语义相似度,由于同时采用了新闻语料和标签语料的语义相似度训练标签推荐模型,因此标签推荐模型就能泛化到任意的词,而不具有局限性,因而提升了标签推荐模型的识别准确性。
步骤S706,分析各个样本标签之间的共现概率并作为样本共现概率。
在一个实施例中,分析各个样本标签之间的共现概率并作为样本共现概率,包括:将各个样本标签之间的点互信息作为样本共现概率,其中,点互信息用于描述各个样本标签之间的相关性。
服务器104在获得至少两个样本标签后,可先获取每个样本标签在数据库中已经存在的所有多媒体数据中出现的频次,至少两个样本标签中每两个不同样本标签同时出现在同一多媒体数据中的频次,然后根据每个样本标签出现的频次、至少两个样本标签中每两个不同标签同时出现在同一多媒体数据中的频次、以及至少两个样本标签的个数,通过上述公式(2)计算获得至少两个样本标签中每两个样本标签之间的共现概率。
步骤S708,根据样本语义相似度和样本共现概率训练标签推荐模型。
在一个实施例中,根据样本语义相似度和样本共现概率训练标签推荐模型,包括:根据样本语义相似度和样本共现概率训练初始的标签推荐模型,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
服务器104在获得样本语义相似度和样本共现概率后,将样本语义相似度和样本共现概率输入至初始的标签推荐模型,以对初始的标签推荐模型的进行训练,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
在一个实施例中,初始的标签推荐模型包括第一标签推荐模型和第二标签推荐模型,目标函数包括:与第一标签推荐模型对应的第一函数和与第二标签推荐模型对应的第二函数,第一标签推荐模型和第二标签推荐模型共享词嵌入层。
也就是说,初始的标签推荐模型可包括两个标签推荐模型,分别为第一标签推荐模型和第二标签推荐模型,第一标签推荐模型作为主模型,可以为词向量模型,第二标签推荐模型作为辅助模型,与主模型共享词嵌入层以进行联合优化,即辅助模型输出的函数值作为主模型的联合监督信号对主模型进行联合训练,从而使得训练获得的标签推荐模型能够学习到多媒体数据已有标签中不同标签的共现概率分布。其中,第一标签推荐模型对应第一函数,当第一标签推荐模型为词向量模型时,第一函数为词向量模型的目标函数,第二标签推荐模型对应第二函数,第二函数可以为求取共现概率之差也即求取点互信息之差的损失函数,具体可以为铰链损失函数或均方差损失函数等,目标函数包括第一函数和第二函数,例如目标函数为第一函数加上第二函数,或者第一函数的绝对值加上第二函数的绝对值,或者第一函数与第二函数相乘等。
在一个实施例中,根据样本语义相似度和样本共现概率训练初始的标签推荐模型,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕,包括:将样本语义相似度训练第一标签推荐模型,并获取第一标签推荐模型输出的第一函数的第一函数值;将样本共现概率训练第二标签推荐模型,并获取第二标签推荐模型输出的第二函数的第二函数值;将第一函数值和第二函数值的加和值作为目标值,直至目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
服务器104在获得样本语义相似度和样本共现概率后,利用样本语义相似度对第一标签推荐模型进行训练,并获取第一标签推荐模型对应的第一函数的函数值记为第一函数值,同时利用样本共现概率对第二标签推荐模型进行训练,并获取第二标签推荐模型对应的第二函数的函数值记为第二函数值,然后对第一函数值和第二函数值进行求和,并将求和结果作为目标值,直至目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。其中,第一函数用于求取语义相似度最大值,第二函数用于求取共现概率最大值,目标函数用于同时求取两者的最大值,并且当目标函数为第一函数加上第二函数时,目标函数用于求取两者的最大值之和,即求取最大化二者之和。
作为一个具体示例,参考图6所示,初始的标签推荐模型可包括第一标签推荐模型(图中左侧)和第二标签推荐模型(图中右侧),第一标签推荐模型作为主模型,可以为词向量模型,具体可以为skip-gram模型或glove模型等,第二标签推荐模型作为辅助模型,与主模型共享词嵌入层以进行联合优化。其中,当第一标签推荐模型为skip-gram模型时,该模型对应的目标函数即第一函数可通过上述公式(3)进行表达。第二标签推荐模型对应的目标函数即第二函数可通过上述公式(4)进行表达。初始的标签推荐模型对应的目标函数可通过上述公式(5)进行表达。需要说明的是,在该示例中,第一标签推荐模型对应的第一函数包含了语义相似度的分析过程,同时第二标签推荐模型对应的第二函数包含了共现概率的分析过程,因此在对初始的标签推荐模型进行训练时,可直接将样本词和样本标签作为训练参数输入至初始的标签推荐模型并对其进行训练以获得标签推荐模型。
需要说明的是,关于标签推荐模型的训练方法未披露的细节,可参考前述用于多媒体数据的标签推荐方法中关于模型训练的内容。
在一个实施例中,如图8所示,提供了一种用于多媒体数据的标签推荐装置,该用于多媒体数据的标签推荐装置100包括:第一获取模块101、第一确定模块102、第二确定模块103和推荐模块104。
其中,第一获取模块101用于获取参考标签和至少两个候选标签;第一确定模块102用于确定参考标签与候选标签之间的语义相似度;第二确定模块103用于确定参考标签与候选标签之间的共现概率,共现概率用于描述参考标签和候选标签属于相同多媒体数据的标签的概率;推荐模块104用于根据语义相似度和共现概率,从至少两个候选标签中选取出目标标签。
在一个实施例中,推荐模块104具体用于,将语义相似度和共现概率输入至预训练的标签推荐模型,并获取预训练的标签推荐模型输出的目标函数的函数值,其中,预训练的标签推荐模型已学习得到语义相似度、共现概率、以及与语义相似度和共现概率对应的目标函数的函数值之间的对应关系;根据函数值,从至少两个候选标签中选取出目标标签。
在一个实施例中,推荐模块104具体用于,依据大小顺序关系对函数值进行排序;将排序在前的预设个数的候选标签作为目标标签。
在一个实施例中,参考图9所示,用于多媒体数据的标签推荐装置还包括:第二获取模块105、第一分析模块106、第二分析模块107和训练模块108。其中,第二获取模块105用于从新闻语料库中获取至少两个样本词,并获取多媒体数据的至少两个样本标签;第一分析模块106用于分析各个样本词之间的语义相似度并作为样本语义相似度,并分析各个样本标签之间的语义相似度并作为样本语义相似度;第二分析模块107分析各个样本标签之间的共现概率并作为样本共现概率;训练模块108用于根据样本语义相似度和样本共现概率训练初始的标签推荐模型,直至初始的标签推荐模型输出的目标函数的目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
在一个实施例中,初始的标签推荐模型包括第一标签推荐模型和第二标签推荐模型,目标函数包括:与第一标签推荐模型对应的第一函数和与第二标签推荐模型对应的第二函数,第一标签推荐模型和第二标签推荐模型共享词嵌入层。
在一个实施例中,训练模块108具体用于,将样本语义相似度训练第一标签推荐模型,并获取第一标签推荐模型输出的第一函数的第一函数值;将样本共现概率训练第二标签推荐模型,并获取第二标签推荐模型输出的第二函数的第二函数值;将第一函数值和第二函数值的加和值作为目标值,直至目标值与标定值之间的损失值满足设定条件,标签推荐模型训练完毕。
在一个实施例中,参考图10所示,用于多媒体数据的标签推荐装置还包括:第三获取模块109、转换模块110、分词模块111和构建模块112,其中第三获取模块109用于获取海量新闻数据;转换模块110用于根据新闻数据得到对应的新闻文本;分词模块111对新闻文本进行分词处理,得到至少两个分词;构建模块112根据至少两个分词构建新闻语料库。
在一个实施例中,第二确定模块103具体用于,获取参考标签与候选标签之间的点互信息,并将点互信息作为共现概率。
在一个实施例中,第一标签推荐模型为词向量模型。
在一个实施例中,第二函数为铰链损失函数或均方差损失函数。
关于用于多媒体数据的标签推荐装置的具体限定可以参见上文中对于用于多媒体数据的标签推荐方法的限定,在此不再赘述。上述用于多媒体数据的标签推荐装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在本申请的一些实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本发明实施例提供的各种可选实现方式中提供的方法,例如图2、图4-图5示出的多媒体数据的标签推荐方法,或者图7示出的标签推荐模型的训练方法。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:视频标签的处理方法和装置