资源推荐方法、装置、设备及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种资源推荐方法、装置、设备及存储介质。
背景技术
近年来,人工智能越来越多的应用到生活当中,基于语义理解的智能语音交互系统方兴未艾,例如亚马逊音箱等具有资源点播功能的系统。为了提高用户的体验,在智能语音交互系统中向用户推荐点播请求对应的资源是人工智能发展中的重要一部分。
目前,在智能语音交互系统中向用户推荐点播请求对应的资源时,需要将用户的点播请求与数据库中搜索到的资源进行匹配,并输出匹配度高的资源给用户。而该方法当用户对点播资源记忆模糊,不能准确输入点播资源的名称时,推荐给用户的资源匹配度不高,从而降低了用户的体验。
发明内容
本发明实施例提供了一种资源推荐方法、装置、设备和存储介质,能够提供最合适的资源给用户,从而提升了用户的体验。
第一方面,本发明实施例提供了一种资源推荐方法,该方法包括:
获取点播请求的短文本的点播槽位信息及所述点播请求的短文本对应的各匹配资源的资源槽位信息;
依据点播槽位信息及各资源槽位信息,确定所述点播请求与各匹配资源的特征值向量;
依据各特征值向量,确定所述点播请求对应的目标资源并推荐给用户。
第二方面,本发明实施例还提供了一种资源装置,该装置包括:
槽位信息获取模块,用于获取点播请求的短文本的点播槽位信息及所述点播请求的短文本对应的各匹配资源的资源槽位信息;
特征值向量确定模块,用于依据点播槽位信息及各资源槽位信息,确定所述点播请求与各匹配资源的特征值向量;
目标资源推荐模块,用于依据各特征值向量,确定所述点播请求对应的目标资源并推荐给用户。
第三方面,本发明实施例还提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面中任意所述的资源推荐方法。
第四方面,本发明实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任意所述资源推荐方法。
本发明实施例提供的技术方案,依据点播请求获取点播槽位信息和各匹配资源的资源槽位信息,并依据点播槽位信息和各资源槽位信息,从多个角度综合考虑得到包含不同维度特征值的各特征向量,并依据各特征向量来确定点播请求对应的目标资源,该方案能够提供最合适的资源给用户,提升了用户的体验。
附图说明
图1是本发明实施例一中提供的一种资源推荐方法的流程图;
图2是本发明实施例二中提供的一种确定特征值向量中属性类槽位相似度特征值方法的流程图;
图3是本发明实施例三中提供的一种确定特征值向量中标签类槽位相似度特征值方法的流程图;
图4是本发明实施例四中提供的一种确定特征值向量中整体最大相似度值方法的流程图;
图5是本发明实施例五中提供的一种资源推荐装置的结构框图;
图6是本发明实施例六中提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种资源推荐方法的流程图,本实施适用于如何向用户推荐满足用户需求的资源的情况,尤其适用于向用户推荐歌曲、视频或故事等场景。该方法可以由本发明实施例提供的资源推荐装置来执行,该装置可采用软件和/或硬件的方式实现。参见图1,该方法具体包括:
S110,获取点播请求的短文本的点播槽位信息及点播请求的短文本对应的各匹配资源的资源槽位信息。
其中,点播请求是用户以语音或文本的形式点击或输入的内容。可选的,点播请求中可以包括点播资源;点播资源可以是故事、学习(如英文单词或简单交流用语)及儿歌等;对应的,匹配资源是服务端通过对点播请求分析所确定与用户需求相匹配的资源,包括至少一个。
点播槽位信息是点播资源的标识,可以通过语音识别技术将点播请求转换为短文本,并把短文本输入语义理解引擎分析后得到的,可选的,点播槽位信息中包括至少一个槽位的信息。对应的,资源槽位信息是匹配资源的标识。可选的,依据槽位信息自身特性,可以将槽位信息分为两大类,分别为属性类别和标签类别;可选的,属性类别可以包括资源名称、关键词、资源类型及资源作者中的至少一个,资源类型可以是音乐、故事、视频或儿歌等;标签类别包括资源标签和资源强标签中的至少一个。示例性的,点播槽位信息可以包括属性类别和标签类别中的至少一个,即依据点播请求得到的点播槽位信息中可能只包含属性类别,也可能只包括标签类别,还可能两者均包括。
需要说明的是,通常情况下,资源槽位信息可以包括点播槽位信息中的至少一个。例如,点播请求为“唱周二珂的匆匆那年”,经语义理解引擎处理得到的点播槽位信息包括专辑名和歌手,获取的资源槽位信息中包括专辑名、歌手、关键词、歌曲名、作词者、作曲者、音乐、标签及强标签。虽然点播槽位信息与资源槽位信息中有相同的槽位名如歌手和专辑名,但是对应的槽位词可能不同。例如点播槽位信息中的歌手为“周二珂”,资源槽位信息中的歌手为“王菲”。
S120,依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量。
其中,特征值向量是用于从不同的维度表征点播槽位信息与资源槽位信息之间的关系的向量,特征值向量中可包含的维度可依据实现情况来确定,维度越多,准确度越高,且每个维度特征值的取值范围在0至1之间。
具体的,针对每一匹配资源,可通过计算点播槽位信息中各个槽位信息与资源槽位信息中对应的槽位信息之间的各相似度系数,依据各相似度系数从而确定特征值向量中各个维度的特征值,最终确定该特征值向量。可选的,资源推荐装置中可以包含有特征值确定模块,该模块能够用于依据输入的点播槽位信息和各资源槽位信息,按照设定的规则,计算得到特征值向量。
可选的,特征值向量中可以包括属性类槽位相似度特征值、标签类槽位相似度特征值、整体最大相似度值及指示性特征值等。其中,属性类槽位相似度值特征值用于表征点播槽位信息与资源槽位信息,属性类别方面的相关程度;标签类槽位相似度特征值用于表征点播槽位信息与资源槽位信息,标签类别方面的相关程度;整体最大相似度值用于表征整体字符串的相似度;指示性特征值是一种判断特征值。
为了保证所确定的特征值向量能够准确的反映点播请求与各匹配资源的关系,可选的,特征值向量中的维度还可以包括子整体最大相似度值、子指示性特征值、指示性比例特征值、属性类槽位完全匹配值及槽位类型判断特征值等。后续实施例将介绍特征值向量中各个维度的特征值的实现方案。
S130,依据各特征值向量,确定点播请求对应的目标资源并推荐给用户。
其中,目标资源是各匹配资源中与用户需求最接近的一个或多个匹配资源。
具体的,在确定了点播请求与每个匹配资源的特征值向量之后,可以采用预先训练的机器学习模型或相关相似度算法确定点播请求与各匹配资源的相似度,并依据各相似度确定点播请求对应的目标资源并推荐给用户。
本发明实施例提供的技术方案,依据点播请求获取点播槽位信息和各匹配资源的资源槽位信息,并依据点播槽位信息和各资源槽位信息,从多个角度综合考虑得到包含不同维度特征值的各特征向量,并依据各特征向量来确定点播请求对应的目标资源,该方案能够提供最合适的资源给用户,提升了用户的体验。
示例性的,依据各特征值向量,确定点播请求对应的目标资源并推荐给用户可以通过如下步骤实现:
A、依据各特征值向量,确定点播请求与各匹配资源的相似度。
其中,相似度是指点播请求与匹配资源的匹配程度。具体的,在确定了点播请求与各匹配资源的特征值向量后,可采用预先训练的机器学习模型或相关相似度算法确定点播请求与各匹配资源的相似度。
示例性的,依据各特征值向量,确定点播请求与各匹配资源的相似度可以包括:针对各特征值向量中每个特征值向量,采用逻辑回归模型,得到点播请求与该匹配资源的相似度,其中,逻辑回归模型参数是预先依据样本点播槽位信息及样本资源槽位信息训练得到的。
其中,逻辑回归模型用于对输入的特征值向量进行预测,输出点播请求与匹配资源的相似度,用数学公式可以表示为:
WTX+b=y
其中,X为特征值向量,可以表示为X=[feature1,feature2,...,featureN],N代表特征值向量的维度,维度越大获得的相似度越准确,可根据实际情况进行设置;可选的,N可以取1...n,n为正整数,如4或9;W=[w1,w2,...,wN]为每个特征值对应的权重系数,是一个与特征值向量X包含的特征值维度相同的参数;b为偏置。具体的,可将样本点播槽位信息及样本资源槽位信息作为样本训练集,采用样本标注的方式对逻辑回归模型训练得到模型参数W和b的初始值。可选的,可根据实际的业务需求对W和b进行微调。
需要说明的是,通过情况下,逻辑回归模型主要用于分类,输出结果为预测的类别;而本实施例中通过将特征值向量逻辑回归模型,得到的是点播请求与匹配资源之间的相似度。此外,采用逻辑回归模型相比于现有的相似度计算方案,计算速度快、可干预性强且准确性高。
B、依据各相似度,确定点播请求对应的目标资源并推荐给用户。
其中,目标资源是各匹配资源中相似度最高的一个或多个。
具体的,依据降序排列方式对所确定的相似度值进行排列,将相似度最高的匹配资源作为目标资源,并将该目标资源本身或音频地址发送至用户。为了提升用户的体验,也可以将相似度排列靠前的多个作为目标资源,推送给用户,供用户选择。还可以是依据确定的各相似度和用户的历史数据,从各匹配资源中选择一个匹配资源作为目标资源,并推送至用户。资源推荐装置中可以包含有目标资源推荐模块,该模块能够用于依据各相似度,按照设定的规则确定目标资源,并推送至用户。
本发明实施例提供的技术方案,依据点播请求获取点播槽位信息和各匹配资源的资源槽位信息,并依据点播槽位信息和各资源槽位信息,从多个角度综合考虑得到包含不同维度特征值的各特征向量,依据各特征向量采用逻辑回归模型,使得所确定的各相似度准确度高,从而能够提供最合适的资源给用户,提升了用户的体验。
实施例二
图2为本发明实施例二提供的一种确定特征值向量中属性类槽位相似度特征值方法的流程图,本实施例在上述实施例一的基础上,进一步的对依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量中的属性类槽位相似度特征值进行解释说明。参见图2,该方法具体包括:
S210,针对各匹配资源中每个匹配资源,计算点播槽位信息中的各属性类别槽位词与该匹配资源的资源槽位信息中对应的各属性类别槽位词的各相似度系数。
其中,属性类别可以包括资源名称、关键词、资源类型及资源作者中的至少一个;资源类型可以是音乐、故事、视频或儿歌等。示例性的,点播请求不同,通过语义理解得到的点播槽位信息及获取的匹配资源的资源槽位信息也不同,对应的属性类别也不同。若点播请求为唱歌,属性类别可以包括专辑名、歌手、关键词、歌曲名、作词者、作曲者及音乐等。属性类别槽位词是指某一属性类别下的具体信息,例如属性类别是歌手,属性类别槽位词为歌手下的具体信息,如“王菲”。
需要说明的是,通常情况下,资源槽位信息中的属性类别可以包括点播槽位信息中的属性类别的至少一个。且两者之间相同的属性类别,可能对应的属性类别槽位词不同。
例如用户的点播请求为“唱周二珂的匆匆那年”,经语义理解引擎处理得到的点播槽位信息如下所示:
其中,Slot为槽位,"name"为槽位相应的字段名,该点播槽位信息中含有两个槽位信息,对应的槽位信息分别是"name":"album_name"表示专辑名,"name":"artist"表示歌手,这两个槽位信息均为属性类别。"norm"表示槽位对应的槽位词;"tag":"any"表示"name"中的字段名为推荐得到的,即槽位信息也是推测得到的;而"tag":"ALBUM_NAME"和"name"中的字段名相同,表示该槽位信息是清晰的槽位信息。示例性的,属性类别中还可以包括信息清晰的属性类别和信息模糊的属性类别。其中,信息模糊的属性类别是指槽位信息是推测得到的,可能由于用户对点播资源记忆模糊所导致的。信息清晰的属性类别是指槽位信息是明确的,反映了用户能够准确的表达点播资源。
匹配资源1的资源槽位信息如下所示:
"EsScore":15.608376,
"album_name":["匆匆那年"],
"artist":["王菲"],
"keyword":["知识库","qq音乐","匆匆那年电影同名","匆匆那年"],
"name":["匆匆那年"],
"strongtag":["[校园大陆流行汉语主题曲女歌手]"],
"tag":["[校园大陆流行汉语主题曲女歌手]"],
"category":[音乐],
"lyricist":["林夕"],
"composer":["梁翘柏"].
匹配资源2的资源槽位信息如下所示:
"EsScore":13.602376,
"album_name":["匆匆","热歌"],
"artist":["赵钶",”二珂”],
"keyword":["匆匆"],
"name":["匆匆"],
"strongtag":["[大陆流行汉语主题曲]"],
"tag":["[大陆流行汉语主题曲]"],
“category”:[音乐],
“lyricist”:["赵钶"],
“composer”:["赵钶"].
其中,album_name为专辑名;artist为歌手;keyword为关键词;name为资源名称;strongtag为强标签,该字段下出现的词用于描述资源的特点,如地域和语言等;tag为标签,该字段下出现的词也用于描述资源的特点,与strongtag下的内容可以相同,也可以不同;category表示资源类型,如音乐、故事或者儿歌等;lyricist为作词者;composer为作曲者。这个匹配资源的资源槽位信息中均包括专辑名、歌手、关键词、歌曲名、作词者、作曲者及音乐七类属性类别,两类标签类别分别为强标签和标签。
其中,相似度系数是一种用于衡量两个样本间相似度的指标,也称杰卡德系数,其取值范围为0至1,可以通过两个样本的交集与两个样本的并集做除得到。
具体的,以上述的点播槽位信息和资源2的资源槽位信息为例进行说明,由于点播槽位信息中属性类别包括专辑名和歌手,因此需要分别计算专辑名信息与资源2中专辑名信息的相似度系数,及歌手信息与资源2中歌手信息的相似度系数。
需要说明的是,为了便于计算各相似度系数,且在用户能够清楚或模糊的表达出所要资源两种情况下,都能使搜索得到的匹配资源的相似度分值比较高,可依据点播槽位信息中信息清晰的属性类别与信息模糊的属性类别,将依据属性类别确定的相似度系数分为两类相似度系数,分别为清晰属性类别相似度系数Feature11和模糊属性类别相似度系数Feature12。
以上述的点播槽位信息和资源2的资源槽位信息为例进行说明。对于Feature11,点播槽位信息中信息清晰的属性类别为专辑名,槽位词为“匆匆那年”;对应的,资源槽位信息中属性类别为专辑名的槽位词为“匆匆”和“热歌”,因此可分别计算“匆匆那年”与“匆匆”的相似度系数a1,和“匆匆那年”与“热歌”的相似度系数a2,并将两者中相似度系数最大的作为Feature11。
具体的,“匆匆那年”与“匆匆”交集字符数inter=2;并集字符数union=4;leftscore=inter/length=0.5,length为点播槽位信息中专辑名槽位词“匆匆那年”的字符长度,Normalscore=inter/union=0.5,a1=(leftscore+Normalscore)/2=0.5;由于“匆匆那年”与“热歌”的交集字符数inter=0,所以a2=0。因此,Feature11=0.5。
与上述类似的确定过程,对于Feature12,点播槽位信息中信息模糊的属性类别为歌手,槽位词为“周二珂”;对应的,资源槽位信息中属性类别为歌手的槽位词为“赵珂”和“二珂”。因此可分别计算“赵二珂”与“赵珂”的相似度系数a3,和“赵二珂”与“二珂”的相似度系数a4,并将两者中相似度系数最大的作为Feature12。
具体的,“赵二珂”与“赵珂”交集字符数inter=2;并集字符数union=3;leftscore=inter/length=0.67,length为点播槽位信息中歌手槽位词“赵二珂”的字符长度,Normalscore=inter/union=0.67,a3=(leftscore+Normalscore)/2=0.67;类似的方式得到“赵二珂”与“二珂”的a4=0.64因此,Feature11=0.64。
S220,依据各相似度系数,确定特征值向量中的属性类槽位相似度值特征值。
其中,属性类槽位相似度值特征值用于表征点播槽位信息与资源槽位信息,属性类别方面的相关程度,其取值范围为0至1,可以用Feature1表示;可依据Feature12和Feature11之间的关系来确定Feature1。具体的,若Feature12>Feature11,Feature1=Feature12;否则,Feature1=Feature11。若存在Feature11=Feature12,则Feature1=Feature11。
以上述的点播槽位信息和资源2的资源槽位信息为例进行说明,由于Feature12=0.67,而Feature11=0.5,因此,Feature1=0.67。
需要说明的是,若点播槽位信息中未包含属性类别,则直接将Feature1赋值为0,不需要进行步骤S210和S220的计算过程。
需要说明的是,本实施例中确定特征值向量中属性类槽位相似度特征值的步骤S210和S220也可以在实施例一中依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量这一步骤处执行。
本发明实施例提供的技术方案,在特征值向量中加入属性类槽位相似度值特征值,能够在用户能够清楚或模糊的表达出所要资源情况下,均能使搜索得到的匹配资源的相似度分值比较高。
实施例三
图3为本发明实施例三提供的一种确定特征值向量中标签类槽位相似度特征值方法的流程图,本实施例在上述实施例的基础上,进一步对依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量中的标签类槽位相似度特征值进行解释说明优化。参见图3,该方法具体包括:
S310,针对各匹配资源中每个匹配资源,计算点播槽位信息中的各标签类别槽位词与该匹配资源的资源槽位信息中的各标签类别槽位词的相似度系数。
其中,标签类别包括资源标签和资源强标签中的至少一个;资源标签和资源强标签均用于描述资源的特点,如地域和语言等,两者的槽位词可以相同,也可以不同。标签类别槽位词是指某一标签类别下的具体信息,例如标签类别是标签,标签类别槽位词为标签下的具体信息,如“大陆”。
可选的,对于槽位信息中的标签类别也可以分为信息清晰的标签类别和信息模糊的标签类别,因此点播槽位信息中每个标签类别槽位词与资源槽位信息中对应的标签类别槽位词之间的相似度系数,也可以分别清晰的标签类别相似度系数Feature21和模糊的标签类别相似度系数Feature22。
以上述实施例二中的点播槽位信息和资源2的资源槽位信息为例进行说明。由于点播槽位信息中未包含标签类别,所以Feature21=Feature22=0。
若该点播槽位信息中包括如下标签类别:
"tag":"any"表示"name"中的字段名为推荐得到的,即槽位信息也是推测得到的;而"tag":"tag"和"name"中的字段名相同,表示该槽位信息是清晰的槽位信息。
对于Feature21,点播槽位信息中信息清晰的标签类别为标签,槽位词为“大陆”;对应的,资源槽位信息中标签类别为标签的槽位词为“大陆”、“流行”、“汉语”和“主题曲”,因此可分别计算“大陆”与“大陆”的相似度系数b1,和“大陆”与“流行”的相似度系数b2,“大陆”与“汉语”的相似度系数b3及“大陆”与“主题曲”的相似度系数b4,并将四者中相似度系数最大的作为Feature21。
具体的,“大陆”与“大陆”交集字符数inter=2;并集字符数union=2;leftscore=inter/length=1,length为点播槽位信息中标签槽位词“大陆”的字符长度,Normalscore=inter/union=1,b1=(leftscore+Normalscore)/2=1;基于上述类似计算,得到b2=0;b3=0;b4=0。因此,Feature21=1。
对于Feature22,采用与上述Feature21相同的确定过程,得到Feature22=0。
S320,依据各相似度系数,确定特征值向量中的标签类槽位相似度特征值。
其中,标签类槽位相似度特征值用于表征点播槽位信息与资源槽位信息,标签类别方面的相关程度,其取值范围为0至1,可以用Feature2表示;可依据Feature22和Feature21之间的关系来确定Feature2。具体的,若Feature22>Feature21,Feature2=Feature22;否则,Feature2=Feature21。若存在Feature21=Feature22,则Feature2=Feature21。
以本实施例中的点播槽位信息中的标签类别和实施例二中资源2的资源槽位信息为例进行说明,由于Feature22=0,而Feature21=1,因此,Feature2=1。
需要说明的是,若点播槽位信息中未包含标签类别,则直接将Feature2赋值为0,不需要进行步骤S310和S320的计算过程。通过情况下,若点播槽位信息中未包括标签类别,则可以包括属性类别,即Feature1不为0;点播槽位信息中未包括属性类别,则可以包括标签类别,即Feature2不为0;因此,一般情况下不存在Feature1和Feature2同时为0的情况。
需要说明的是,本实施例中确定特征值向量中标签类槽位相似度特征值的步骤S310和S320也可以在实施例一中依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量这一步骤处执行。也可以与实施例二中确定特征值向量中属性类槽位相似度特征值的步骤同时执行。
本发明实施例提供的技术方案,在特征值向量中加入标签类槽位相似度值特征值,能够在用户能够清楚或模糊的表达出所要资源情况下,均能使搜索得到的匹配资源的相似度分值比较高。
实施例四
图4为本发明实施例四提供的一种确定特征值向量中整体最大相似度值方法的流程图,本实施例在上述实施例的基础上,进一步对依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量中的整体最大相似度值进行解释说明优化。参见图4,该方法具体包括:
S410,将点播槽位信息中各槽位词按照预设顺序拼接,得到第一字符串。
其中,预设顺序是指预先设定的连接顺序,可根据实际情况灵活进行修正。例如,对于点播资源为唱歌的,预设顺序可以为歌手、歌曲名、作词者及作曲者等;也可以是属性类别优先于标签类别。
具体的,将点播槽位信息中所包含的属性类别和标签类别的槽位词按照预设顺序拼接,得到第一字符串str1。以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,由于该点播槽位信息中包括专辑名和歌手,专辑名的槽位词为“匆匆那年”,歌手的槽位词为“周二珂”,将两者拼接得到的字符串str1=“周二珂匆匆那年”。
S420,针对各匹配资源中每个匹配资源,依据该匹配资源的资源槽位信息中属于第一点播属性类别的槽位词,得到第二字符串。
其中,第一点播属性类别是点播槽位信息中信息清晰的属性类别;信息清晰的属性类别是指该属性类别对点播请求进行语义分析后明确得到的。
以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,点播槽位信息中信息清晰的属性类别为专辑名,对应的依据资源槽位信息中专辑名的槽位词得到第二字符串str2=“匆匆那年”。
S430,依据该匹配资源的资源槽位信息中属于第一点播标签类别的槽位词,得到第三字符串。
其中,第一点播标签类别是点播槽位信息中信息清晰的标签类别。信息清晰的标签类别是指该标签类别是依据点播请求搜索后明确得到的。以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,由于该点播槽位信息中未包含标签类槽位信息,因此资源槽位信息中属于第一点播标签类别的槽位词为空,对应的第三字符串为空,即str3=“”。
S440,依据该匹配资源的资源槽位信息中属于第二点播属性类别和第二点播标签类别的槽位词,得到第四字符串。
其中,第二点播属性类别是点播槽位信息中信息模糊的属性类别,第二点播标签类别是点播槽位信息中信息模糊的标签类别。信息清晰与信息模糊相对应,信息模糊的属性类别是指该属性类别对点播请求进行语义分析后推测得到的;信息模糊的标签类别是指该标签类别是依据点播请求搜索后推测得到的。
以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,点播槽位信息中信息模糊的属性类别为歌手;对应的,资源槽位信息中歌手的槽位词为“王菲”。由于该点播槽位信息中未包含标签类槽位信息,所以对应的资源槽位信息中第二点播标签类别的槽位词为空,所以第四字符串str4=“王菲”。
S450,计算第一字符串分别与第二字符串、第三字符串和第四字符串的相似度系数,确定特征值向量中的整体最大相似度值。
其中,整体最大相似度值是整体字符串的相似度,当用户表述不清时,该特征值能够给出相对稳定的相似度,从而保证点播请求与匹配资源的相似度存在,其取值范围为0至1。
具体的,以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明。str1=“周二珂匆匆那年”,str2=“匆匆那年”,str3=“”,str4=“王菲”,分别计算str1与str2的相似度系数c1、str1与str3的相似度系数c2,及str1与str4的相似度系数c3。为了提高整体最大相似度值计算的准确性,还可以计算str1分别与str2+str4的相似度系数c4和str2+str3+str4的相似度系数c5。将其中最大的相似度系数作为整体最大相似度值Feature3。
需要说明的是,str1与其他各字符串间相似度系数的确定过程与上述实施例中确定相似度系数的过程类似,此处不在赘述。且本实施例中确定特征值向量中整体最大相似度值的步骤S410、S420、S430和S440也可以在实施例一中依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量这一步骤处执行。也可以与实施例三中确定特征值向量中标签类槽位相似度特征值的步骤S310和S320以及实施例二中确定特征值向量中属性类槽位相似度特征值的步骤同时执行。
本发明实施例提供的技术方案,在特征值向量中加入整体最大相似度值,能够在用户不能清楚的表达出所要资源情况下,能够保证点播请求与匹配资源的相似度。
为了保证所确定的特征值向量能够准确的反映点播请求与各匹配资源的关系,可选的,特征值向量中的维度还可以包括子整体最大相似度值Feature4。
具体的,若str1中包含非搜索类词如“的”或“唱”等,去除str1中非搜索类词后得到str1/,分别计算str1/与str2的相似度系数、str1/与str3的相似度系数、str1/与str4的相似度系数、str1/与str2+str4的相似度系数和str1/与str2+str3+str4的相似度系数。将其中最大的相似度系数作为子整体最大相似度值Feature4,str1/与其他各字符串间相似度系数的确定过程与上述实施例中确定相似度系数的过程类似,此处不在赘述。可选的,非搜索词由点播槽位信息中的"Oper"字段来确定。
示例性的,特征值向量中的维度还可以包括指示性特征值Feature5。具体的,依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量中指示性特征值可以包括:
A、针对各匹配资源中每个匹配资源,依据该匹配资源的资源槽位信息中属于第一点播属性类别和第二点播属性类别的槽位词,得到第五字符串。
具体的,以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明。点播槽位信息中第一点播属性类为专辑名,第一点播属性类为歌手;对应的,资源槽位信息中专辑名的槽位词为“匆匆那年”,歌手的槽位词为“王菲”,第五字符串为str5=“匆匆那年”和“王菲”。
B、计算第一字符串与第五字符串的相似度系数,并确定特征值向量中的指示性特征值。
其中,指示性特征值是一种判断特征值,其值可以是0或1,当用户正确表述多个关键信息,但互相矛盾时(例如:我想听周杰伦的吻别),该特征值同样能够给出一定的相似度分数供做参考,不至于相似度分数太低。需要说明的是,该指示性特征值是槽位信息中属性类别的指示性特征值。
具体的,以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,str1=“周二珂匆匆那年”,分别计算str1与str5中的“匆匆那年”和“王菲”的相似度系数,将相似度系数最大的值作为指示性特征值Feature5。此处,相似度系数的计算过程可以与上述实施例中确定相似度系数的过程类似,也可以不同。
为例提高计算效率,在不影响准确性的情况下,若str1中包含str5中任一槽位词,可直接取Feature5=1;若不包含,Feature5=0。由于str1中包含str5中的“匆匆那年”,则Feature5=1。
示例性的,特征值向量中的维度还可以包括子指示性特征值Feature6。该槽位信息中标签类别的指示性特征值。具体的,针对各匹配资源中每个匹配资源,依据该匹配资源的资源槽位信息中属于第一点播标签类别和第二点播标签类别的槽位词,得到第六字符串;计算第一字符串与第六字符串的相似度系数,并确定特征值向量中的子指示性特征值。
以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,str1=“周二珂匆匆那年”,由于该点播槽位信息中未包含标签类槽位信息,因此资源槽位信息中属于第一点播标签类别的槽位词和第二点播标签类别的槽位词均为空,对应的第六字符串为空str6=“”,str1与str6的相似度系数为0,则Feature6=0。
示例性的,特征值向量中的维度还可以包括指示性比例特征值Feature7。该特征值用于表示str1中包含str5的槽位词,占str5中所有槽位词的比例。以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,str1中包含str5中的“匆匆那年”,而str5=“匆匆那年”和“王菲”有两个槽位词,则Feature7=1/2=0.5。
示例性的,特征值向量中还可以包括属性类槽位完全匹配值及槽位类型判断特征值等。
其中,属性类槽位完全匹配值用于表征点播槽位信息中信息清晰的属性类别的槽位词与资源槽位信息中对应的属性类别的槽位词之间的匹配率,可用Feature8表示。具体的,针对各匹配资源中每个匹配资源,将第一点播槽位信息中的槽位词与该匹配资源的资源槽位信息中属于第一点播属性类别的槽位词进行匹配,确定Feature8。以上述实施例二中的点播槽位信息和资源1的资源槽位信息为例进行说明,第一点播槽位信息为专辑名,且专辑名的槽位词为“匆匆那年”,对应的资源槽位信息中专辑名的槽位词为“匆匆那年”,因此Feature8=1。此外,需要说明的是,Feature8也可以依据上述实施例中所涉及的确定相似度系数的方式来确定。
槽位类型判断特征值用于表征点播槽位信息中是否含有信息模糊的属性类别和/或信息模糊的标签类别,用Feature9表示,若均未包含,则Feature9=1;若含有其中任意一个,则Feature9=0。
需要说明的是,本实施例中所描述的特征值向量中各特征值的确定过程,也可以在实施例一中依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量这一步骤处执行。
本发明实施例提供的技术方法,依据点播槽位信息和各资源槽位信息,从多个角度综合考虑得到包含不同维度特征值的各特征向量,依据各特征向量采用逻辑回归模型,使得所确定的各相似度准确度高,从而能够提供最合适的资源给用户,提升了用户的体验。
实施例五
图5为本发明实施例五提供的一种资源推荐装置的结构框图,该装置可执行本发明任意实施例所提供的资源推荐方法,具备执行方法相应的功能模块和有益效果。如图5所示,该装置可以包括:
槽位信息获取模块510,用于获取点播请求的短文本的点播槽位信息及点播请求的短文本对应的各匹配资源的资源槽位信息;
特征值向量确定模块520,用于依据点播槽位信息及各资源槽位信息,确定点播请求与各匹配资源的特征值向量;
目标资源推荐模块530,用于依据各特征值向量,确定点播请求对应的目标资源并推荐给用户。
本发明实施例提供的技术方案,依据点播请求获取点播槽位信息和各匹配资源的资源槽位信息,并依据点播槽位信息和各资源槽位信息,从多个角度综合考虑得到包含不同维度特征值的各特征向量,并依据各特征向量来确定点播请求对应的目标资源,该方案能够提供最合适的资源给用户,提升了用户的体验。
示例性的,特征值向量中包括属性类槽位相似度特征值、标签类槽位相似度特征值、整体最大相似度值及指示性特征值。
示例性的,特征值向量确定模块520还可以用于:
针对各匹配资源中每个匹配资源,计算点播槽位信息中的各属性类槽位词与该匹配资源的资源槽位信息中对应的各属性类槽位词的各相似度系数;
依据各相似度系数,确定特征值向量中的属性类槽位相似度特征值,属性类信息包括资源名称、关键词、资源类型及资源作者中的至少一个。
示例性的,特征值向量确定模块520还可以用于:
针对各匹配资源中每个匹配资源,计算点播槽位信息中的各标签类信息与该匹配资源的资源槽位信息中的各标签类信息的相似度系数;
依据各相似度系数,确定特征值向量中的标签类槽位相似度特征值,标签类信息包括资源标签和资源强标签中的至少一个。
示例性的,特征值向量确定模块520还可以用于:
将点播槽位信息中各槽位词按照预设顺序拼接,得到第一字符串;
针对各匹配资源中每个匹配资源,依据该匹配资源的资源槽位信息中属于第一点播属性类别的槽位词,得到第二字符串,其中,第一点播属性类别是点播槽位信息中信息清晰的属性类别;
依据该匹配资源的资源槽位信息中属于第一点播标签类别的槽位词,得到第三字符串,其中,第一点播标签类别是点播槽位信息中信息清晰的标签类别;
依据该匹配资源的资源槽位信息中属于第二点播属性类别和/或第二点播标签类别的槽位词,得到第四字符串,其中,第二点播属性类别是点播槽位信息中信息模糊的属性类别,第二点播标签类别是点播槽位信息中信息模糊的标签类别;
计算所述第一字符串分别与第二字符串、第三字符串和第四字符串的相似度系数,确定特征值向量中的整体最大相似度值。
示例性的,特征值向量确定模块520还可以用于:
针对各匹配资源中每个匹配资源,依据该匹配资源的资源槽位信息中属于第一点播属性类别和第二点播属性类别的槽位词,得到第五字符串;
计算第一字符串与第五字符串的相似度系数,并确定特征值向量中的指示性特征值。
示例性的,目标资源推荐模块530还可以包括:
相似度确定单元,用于依据各特征值向量,确定点播请求与各匹配资源的相似度;
目标资源推荐单元,用于依据各相似度,确定点播请求对应的目标资源并推荐给用户。
示例性的,相似度确定单元具体用于:
针对各特征值向量中每个特征值向量,采用逻辑回归模型,得到点播请求与该匹配资源的相似度,其中,逻辑回归模型参数是预先依据样本点播槽位信息及样本资源槽位信息训练得到的。
实施例六
图6为本发明实施例六提供的一种设备的结构示意图,图6示出了适于用来实现本发明实施例实施方式的示例性设备的框图。图6显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明实施例各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明实施例所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的资源推荐方法。
实施例七
本发明实施例七还提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时可实现上述任意实施例所述的资源推荐方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。