服务器及媒资混合推荐方法与流程

文档序号:29265260发布日期:2022-03-16 13:42阅读:109来源:国知局
服务器及媒资混合推荐方法与流程

1.本技术涉及互联网技术领域,尤其涉及一种服务器及媒资混合推荐方法。


背景技术:

2.智能电视是一种可实现双向人机交互功能,集影音、娱乐、数据等多种功能于一体的电视产品。智能电视的用户界面被用于其与用户之间进行交互和信息交换的媒介,为满足用户多样化的需求,对应显示有影音、娱乐等多种应用程序。
3.通常情况下,智能电视所连接的后台服务器可以为用户推荐媒资。智能电视上的频道栏包含电影、电视剧、综艺、动漫等频道,每个频道中均包含隶属于当前频道的推荐栏目,该推荐栏目通常是根据用户的历史观看行为,运用人工智能(ai,artificial intelligence)算法为用户推荐其感兴趣内容。然而,频道栏中还包含有推荐频道,在该频道下需要为用户展示任一其他频道下的媒资,即进行混合推荐。目前,通常是在推荐频道下融合其他频道中推荐栏目内所推荐排行较高的内容。
4.上述在推荐频道进行混合推荐时,由于需要融合各个频道下的推荐结果,势必存在排序的问题。如,对于同一媒资可能在不同推荐栏目下所计算出的推荐概率不同,导致最终根据推荐概率进行融合时与其他媒资之间的排序出现问题,从而无法精准为用户进行混合推荐。


技术实现要素:

5.本技术提供了一种服务器及媒资混合推荐方法,以解决现有技术中无法精准为用户进行混合推荐的技术问题。
6.第一方面,本技术提供了一种服务器,所述服务器被配置为:
7.根据用户的身份标识获取特征数据,其中,所述特征数据是根据用户数据、媒资数据以及上下文数据确定的,所述用户数据基于用户的播放行为进行获取,所述媒资数据基于对媒资的内容理解进行获取,所述上下文数据基于用户对媒资动作时间进行获取;
8.将所述特征数据输入至已训练好的媒资推荐模型,得到用户对多个媒资的点击概率值,其中,所述媒资推荐模型用于预估用户对媒资的点击概率值,在所述媒资推荐模型中通过向用户对各媒资的偏好分配权重得到点击概率值;
9.将点击概率值最高的n个媒资推荐至显示设备,以使显示设备在相应的推荐位上展示出媒资。
10.第二方面,本技术提供了一种媒资混合推荐方法,包括:
11.根据用户的身份标识获取特征数据,其中,所述特征数据是根据用户数据、媒资数据以及上下文数据确定的,所述用户数据基于用户的播放行为进行获取,所述媒资数据基于对媒资的内容理解进行获取,所述上下文数据基于用户对媒资动作时间进行获取;
12.将所述特征数据输入至已训练好的媒资推荐模型,得到用户对多个媒资的点击概率值,其中,所述媒资推荐模型用于预估用户对媒资的点击概率值,在所述媒资推荐模型中
通过向向偏好概率分配权重得到点击概率值;
13.将点击概率值最高的n个媒资推荐至显示设备,以使显示设备在相应的推荐位上展示出媒资。
14.与现有技术相比,本技术的有益效果为:
15.本技术提供了一种服务器及媒资混合推荐方法,服务器在采集特征数据时,基于用户的播放行为获取到用户数据,基于对媒资的内容理解获取到媒资数据,并基于用户对媒资动作时间获取到上下文数据,通过对用户数据、媒资数据以及上下文数据进行处理,得到特征数据,利用特征数据训练媒资推荐模型。服务器在为用户进行媒资混合推荐时,根据用户的身份标识获取相应的特征数据,将特征数据输入至训练好的媒资推荐模型,经由媒资推荐模型输出用户对多个媒资的点击概率值,点击概率值反映了用户对媒资的偏好程度,点击概率值越大,说明用户喜欢该媒资的可能性越大。本技术中,在媒资推荐模型中,能够计算出用户对任何类型的媒资的点击概率值,并且点击概率值是通过向用户对各媒资的偏好分配权重得到,提高点击概率值的精准度,通过媒资推荐模型为用户进行精准混合推荐。
附图说明
16.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
17.图1中示例性示出了根据一些实施例的显示设备与控制装置之间操作场景的示意图;
18.图2中示例性示出了根据一些实施例的控制装置100的硬件配置框图;
19.图3中示例性示出了根据一些实施例的显示设备200的硬件配置框图;
20.图4中示例性示出了根据一些实施例的显示设备200中软件配置示意图;
21.图5中示例性示出了根据一些实施例的显示设备200中电影频道下推荐栏目的显示效果示意图;
22.图6中示例性示出了根据一些实施例的显示设备200中推荐频道下推荐栏目的显示效果示意图;
23.图7中示例性示出了根据一些实施例的媒资推荐模型的训练流程示意图;
24.图8中示例性示出了根据一些实施例特征数据向量化的网络结构图;
25.图9中示例性示出了根据一些实施例的媒资推荐模型的网络结构图;
26.图10中示例性示出了根据一些实施例的媒资混合推荐方法的流程示意图。
具体实施方式
27.为使本技术的目的和实施方式更加清楚,下面将结合本技术示例性实施例中的附图,对本技术示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本技术一部分实施例,而不是全部的实施例。
28.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和
通常的含义理解。
29.本技术中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
30.术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
31.术语“模块”是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
32.图1为根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过智能设备300或控制装置100操作显示设备200。
33.在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。
34.在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。
35.在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。
36.在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。
37.图2示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。
38.图3示出了根据示例性实施例中显示设备200的硬件配置框图。
39.在一些实施例中,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。
40.在一些实施例中控制器包括处理器,视频处理器,音频处理器,图形处理器,ram,rom,用于输入/输出的第一接口至第n接口。
41.在一些实施例中,显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控ui界面。
42.在一些实施例中,显示器260可为液晶显示器、oled显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。
43.在一些实施例中,通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与外部控制设备100或服务器400建立控制信号和数据信号的发送和接收。
44.在一些实施例中,用户接口,可用于接收控制装置100(如:红外遥控器等)的控制信号。
45.在一些实施例中,检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。
46.在一些实施例中,外部装置接口240可以包括但不限于如下:高清多媒体接口接口(hdmi)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(cvbs)、usb输入接口(usb)、rgb端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
47.在一些实施例中,调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及epg数据信号。
48.在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
49.在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示ui对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。
50.在一些实施例中,所述对象可以是可选对象中的任何一个,例如超链接、图标或其他可操作的控件。与所选择的对象有关操作有:显示连接到超链接页面、文档、图像等操作,或者执行与所述图标相对应程序的操作。
51.在一些实施例中控制器包括中央处理器(central processing unit,cpu),视频处理器,音频处理器,图形处理器(graphics processing unit,gpu),ram random access memory,ram),rom(read-only memory,rom),用于输入/输出的第一接口至第n接口,通信总线(bus)等中的至少一种。
52.cpu处理器,用于执行存储在存储器中操作系统和应用程序指令,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。cpu处理器,可以包括多个处理器。如,包括一个主处理器以及一个或多个子处理器。
53.在一些实施例中,图形处理器,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。图形处理器包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象;还包括渲染器,对基于运算器得到的各种对象,进行渲染,上述渲染后的对象用于显示在显示器上。
54.在一些实施例中,视频处理器,用于将接收外部视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等视频处理,可得到直接可显示设备200上显示或播放的信号。
55.在一些实施例中,视频处理器,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。其中,解复用模块,用于对输入音视频数据流进行解复用处理。视频解码模块,用于对解复用后的视频信号进行处理,包括解码和缩放处理等。图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的gui信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。帧率转换模块,用于对转换输入视频帧率。显示格式化模块,用于将接收帧率转换后视频输出信号,改变信号以符合显示格式的信号,如输出rgb数据信号。
56.在一些实施例中,音频处理器,用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等处理,得到可以在扬声器中播放的声音信号。
57.在一些实施例中,用户可在显示器260上显示的图形用户界面(gui)输入用户命令,则用户输入接口通过图形用户界面(gui)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
58.在一些实施例中,“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphic user interface,gui),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、widget等可视的界面元素。
59.在一些实施例中,显示设备的系统可以包括内核(kernel)、命令解析器(shell)、文件系统和应用程序。内核、shell和文件系统一起组成了基本的操作系统结构,它们让用户可以管理文件、运行程序并使用系统。上电后,内核启动,激活内核空间,抽象硬件、初始化硬件参数等,运行并维护虚拟内存、调度器、信号及进程间通信(ipc)。内核启动后,再加载shell和用户应用程序。应用程序在启动后被编译成机器码,形成一个进程。
60.参见图4,在一些实施例中,将系统分为四层,从上至下分别为应用程序(applications)层(简称“应用层”),应用程序框架(application framework)层(简称“框架层”),安卓运行时(android runtime)和系统库层(简称“系统运行库层”),以及内核层。
61.在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(window)程序、系统设置程序或时钟程序等;也可以是第三方开发者所开发的应用程序。在具体实施时,应用程序层中的应用程序包不限于以上举例。
62.框架层为应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处理中心,这个中心决定让应用层中的应用程序做出动作。应用程序通过api接口,可在执行中访问系统中的资源和取得系统的服务。
63.如图4所示,本技术实施例中应用程序框架层包括管理器(managers),内容提供者
(content provider)等,其中管理器包括以下模块中的至少一个:活动管理器(activity manager)用与和系统中正在运行的所有活动进行交互;位置管理器(location manager)用于给系统服务或应用提供了系统位置服务的访问;文件包管理器(package manager)用于检索当前安装在设备上的应用程序包相关的各种信息;通知管理器(notification manager)用于控制通知消息的显示和清除;窗口管理器(window manager)用于管理用户界面上的括图标、窗口、工具栏、壁纸和桌面部件。
64.在一些实施例中,活动管理器用于管理各个应用程序的生命周期以及通常的导航回退功能,比如控制应用程序的退出、打开、后退等。窗口管理器用于管理所有的窗口程序,比如获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕,控制显示窗口变化(例如将显示窗口缩小显示、抖动显示、扭曲变形显示等)等。
65.在一些实施例中,系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系统运行库层中包含的c/c++库以实现框架层要实现的功能。
66.在一些实施例中,内核层是硬件和软件之间的层。如图4所示,内核层至少包含以下驱动中的至少一种:音频驱动、显示驱动、蓝牙驱动、摄像头驱动、wifi驱动、usb驱动、hdmi驱动、传感器驱动(如指纹传感器,温度传感器,压力传感器等)、以及电源驱动等。
67.在一些实施例中的硬件或软件架构可以基于上述实施例中的介绍,在一些实施例中可以是基于相近的其他硬件或软件架构,可以实现本技术的技术方案即可。
68.基于上述显示设备200,为了给用户推荐最中意的媒资,服务器400会为用户进行媒资推荐。显示设备200在主页面上展示媒资时,通常是根据媒资类型的不同,分不同的频道进行展示。图5中示例性示出了根据一些实施例的显示设备200中电影频道下推荐栏目的显示效果示意图。结合图5,频道栏中设置有“我的”、“推荐”、“电影”、“电视剧”、“综艺”、“少儿”等多个频道。每个频道中均包含隶属于当前频道的推荐栏目,该推荐栏目通常是服务器根据用户的历史观看行为为用户推荐其感兴趣内容。如,图5中“精彩连连看”部分,服务器400将推荐的多部影片反馈至显示设备200,显示设备200将接收到的多部影片展示在“电影”频道下的多个推荐位上。图6中示例性示出了根据一些实施例的显示设备200中推荐频道下推荐栏目的显示效果示意图。如图6所示,目前对于“推荐”频道下的推荐内容来说,通常融合其他频道中推荐栏目内所推荐排行较高的内容,在进行融合时容易出现排序问题,无法精准为用户进行混合推荐。
69.为了解决上述问题,本技术一些实施例中提供了一种服务器400,所述服务器400配置为执行媒资混合推荐的过程。在进行媒资混合推荐之前,可先训练出媒资推荐模型。
70.下面结合附图对媒资推荐模型的训练过程进行说明。
71.图7中示例性示出了根据一些实施例的媒资推荐模型的训练流程示意图。结合图7所示,所述媒资推荐模型的训练过程如下:
72.s701:采集特征数据,并分别对特征数据进行向量化,得到特征向量。
73.在一些实施例中,服务器400采集样本特征数据,特征数据包括用户数据(user)、媒资数据(item)以及上下文数据(context)。其中,所述用户数据基于用户的播放行为进行获取,所述媒资数据基于对媒资的内容理解进行获取,所述上下文数据基于用户对媒资动作时间进行获取。
74.在一些实施例中,服务器400构建监督样本时,分别为样本打上label(标签),
label为0或1,分别表示用户在上下文环境下是否对媒资进行了点击。若用户点击了媒资,则为其标记为1,说明用户喜欢该媒资,反之,为其标记0,说明用户不喜欢该媒资。
75.在一些实施例中,用户数据主要基于用户认知,以用户画像、用户播放媒资的序列特征以及用户播放行为的统计类特征构建,其中,用户画像用于表征用户在各个频道上的兴趣偏好,序列特征用于表征用户近期播放行为,所述统计类特征用于表征用户观看媒资的播放时长及占比。这里,对于显示设备200上的注册用户,其一系列的浏览、观看行为被统计为一些类型,将这些类型称之为用户画像,如,根据小孩的浏览观看行为,将其统计为少儿。在此,通过用户画像侧重构建用户在各个频道上的长期与短期兴趣偏好,主要以对应点击、播放的媒资的属性及标签特征为主,其中,所述媒资的属性包括媒资所属频道及媒资类型,所述媒资的标签包括所述媒资的国别、演员及导演等。例如,某一类用户经常观看xx主演的动作片,则可为该类用户打上标签xx及动作片,后续通过该类用户画像的标签特征即可得知该类用户画像的兴趣偏好。媒资的序列特征指的是用户最近播放的10个媒资特征。统计类特征指的是用户在周末与工作日观看媒资的播放时长及占比。
76.在一些实施例中,媒资数据包括各类媒资的属性及标签,其中,所述媒资的属性包括媒资所属频道及媒资类型,所述媒资的标签包括所述媒资的国别、演员及导演,例如,电影、恐怖片、惊悚类、x国、导演张xx、演员刘xx。
77.在一些实施例中,上下文数据指的是用户曝光媒资或点击媒资的时间点,此处可具体到秒,通过上下文数据可反馈出用户每天在什么时刻具体打开过什么媒资进行观看。
78.在一些实施例中,服务器400中设有整合所有标签的预设标签索引表,在所述标签索引表中可以查找到各类标签相对应的索引,其中,标签类型可以是媒资的一级、二级、三级分类,媒资所属的国别,导演及演员等。另外,服务器400中还预设有融合所有可能标签索引的特征(embedding)矩阵e,利用相应的索引可将对应的特征从特征矩阵e中转化为向量。
79.在一些实施例中,服务器400采集的所述特征数据的数据类型包括:数值型特征(numeric)、单值离散特征(onehot)以及多值离散特征。
80.对于数值型特征,可直接用来计算,在此可不进行处理。例如,用户数据中的统计类特征,即电影时长等数据。
81.对于单值离散特征,根据预设标签索引表查询所述单值离散特征的第一标签索引,并根据所述第一标签索引从特征矩阵中检索相对应的第一向量值。例如某媒资的属性是单值离散特征,该单值离散特征在预设标签索引表中对应的标签索引是3,假设特征矩阵e为100行16列,则从中查找到第3行,将该单值离散特征向量化为16位的向量。
82.对于多值离散特征,根据所述预设标签索引表分别查询所述多值离散特征的第二标签索引,并利用多个所述第二标签索引分别从所述特征矩阵中检索相对应的第二向量值,将多个所述第二向量值加和池化,得到第二向量总值。例如,某影片包含的演员有n个,其对应的标签索引为1,2,

,n,通过特征矩阵e分别检索第1,2,

,n行得到相对应的向量w1,w2,

,wn,再加和池化为该特征的最终向量,表示为
83.以上,对采集到的特征数据进行向量化。
84.s702:将多种特征向量进行拼接,得到输入层数据。
85.图8中示例性示出了根据一些实施例特征数据向量化的网络结构图。结合图8,将
所述数值型特征、所述第一向量值以及所述第二向量总值进行拼接,即将向量化的用户数据(user)、媒资数据(item)以及上下文数据(context)进行拼接,得到最终的输入层数据input向量x,在此表示为x=concat(user,item,context)。
86.s703:将输入层数据输入至第一多层神经网络,得到第一输出层数据,其中,所述第一输出层数据表征用户对各媒资的偏好。
87.在一些实施例中,所述第一多层神经网络(dnn,deep neural networks)用于表征用户对媒资在某个一级大类(所属频道)的兴趣抽取,可以包含两层隐藏层,第一层隐藏层可以包含256个神经元,第二层隐藏层可以包含128个神经元。这里,神经网络结构可以根据业务评估进行个性化设置,在此不做限制。
88.在一些实施例中,所述第一多层神经网络包含多个第一子神经网络,将输入层数据分别输入至多个第一子神经网络中得到多个第一输出层数据。在服务器400中,可将第一多层神经网络称之为专家网络模块(export),每一专家网络模块包含多个专家网络子模块exporti,每一专家网络子模块分别对应频道栏中的多个频道。例如,专家网络模块包含6个专家网络子模块export1—export6,分别对应电视剧、电影、综艺、动漫、幼儿、纪录片这六大类的内容。需要说明的是,多个第一子神经网络具有相同的神经网络结构,如均包含两层隐藏层,每层分别包含256个和128个神经元,但是各个神经元之间的连接权重不同。
89.将input向量x输入至exporti中,得到fi。
90.s704:将所述输入层数据输入至第二多层神经网络,得到第二输出层数据,其中,所述第二输出层数据用于为所述第一输出层数据分配权重。
91.在一些实施例中,所述第二多层神经网络用于将输入层数据对齐到每个第一子神经网络中所表达的用户对大类的偏好中,相当于为每个第一子神经网络的输出分配了不同的权重,每个第一子神经网络输出的加权结果作为用户最终的偏好表达。
92.在一些实施例中,在服务器400中,可以将第二多层神经网络称之为gate门控单元,gate门控单元可以包含两层隐藏层,第一层隐藏层可以包含256个神经元,第二层隐藏层可以包含128个神经元。这里,神经网络结构可以根据业务评估进行个性化设置,在此不做限制。
93.将input向量x输入至gate中,得到g,需要说明的是,g与fi维度一致,便于后期计算。
94.s705:利用所述第二输出层数据为所述第一输出层数据分配权重,得到具备权重的偏好数据。
95.在一些实施例中,服务器400将所述第二输出层数据分别与多个所述第一输出层数据进行内积,得到多个内积值。即分别计算g与f1,f2,f3,

,fi之间的内积值vi,表达为vi=《g,fi》。服务器400将多个所述内积值经由softmax函数进行归一化,计算g对fi的权重gi,使多个内积值加和为1。表达为:gi=softmax(vi)。服务器400将归一化后的多个内积值分别与相应的第一输出层数据相乘后取和,得到具备权重的偏好数据,即得到到最终用户对媒资的兴趣表达user_interest。表达为:
96.s706:将所述偏好数据输入至第三多层神经网络并经由sigmoid层激活后得到所述媒资推荐模型。
97.在一些实施例中,所述第三多层神经网络为tower模型,经由tower模型输出用户
对媒资的点击概率值,所述第三多层神经网络可以包含两层隐藏层,第一层隐藏层可以包含64个神经元,第二层隐藏层可以包含1个神经元,以使输出一个单值。
98.下面结合附图进一步解释上述媒资推荐模型的训练过程。
99.图9中示例性示出了根据一些实施例的媒资推荐模型的网络结构图。如图9所示,服务器400采集用户数据、媒资数据和上下文数据,并分别将采集到的原始数据输入至向量化单元,以使原始数据向量化。原始数据向量化后进行拼接得到输入层数据。首先将输入层数据输入至第一多层神经网络中的多个第一子神经网络,得到多个第一输出层数据。然后将输入层数据输入至第二多层神经网络中,得到第二输出层数据。随后用第二输出层数据为多个第一输出层数据分配权重,得到具备权重的偏好数据,也就是最终用户对媒资的兴趣表达。最后将偏好数据输入至第三层神经网络,并经由激活函数激活后得到媒资推荐模型。
100.在一些实施例中,在所述媒资推荐模型的训练过程中,所述服务器400利用对数损失函数检测预测值和真实值之间的差距,如下公式所示:
[0101][0102]
式中,pi为媒资推荐模型的输出值,yi是真实值。
[0103]
在一些实施例中,在所述媒资推荐模型的训练过程中,所述服务器400利用adam优化器进行训练。
[0104]
图10中示例性示出了根据一些实施例的媒资混合推荐方法的流程示意图。服务器400被配置为执行图10所示的媒资混合推荐过程。结合图10所示,所述媒资混合推荐过程如下:
[0105]
s1001:根据用户的身份标识获取特征数据,其中,所述特征数据是根据用户数据、媒资数据以及上下文数据确定的,所述用户数据基于用户的播放行为进行获取,所述媒资数据基于对媒资的内容理解进行获取,所述上下文数据基于用户对媒资动作时间进行获取。
[0106]
s1002:将所述特征数据输入至已训练好的媒资推荐模型,得到用户对多个媒资的点击概率值,其中,所述媒资推荐模型用于预估用户对媒资的点击概率值,在所述媒资推荐模型中通过向用户对各媒资的偏好分配权重得到点击概率值。
[0107]
在一些实施例中,服务器400训练好媒资推荐模型后,在需要为用户进行推荐媒资时,可利用用户的身份标识获取相对应的特征数据,并将获取到的特征数据输入至已训练好的媒资推荐模型,由媒资推荐模型输出用户对每个媒资的点击概率值。
[0108]
s1003:将点击概率值最高的n个媒资推荐至显示设备,以使显示设备在相应的推荐位上展示出媒资。
[0109]
在一些实施例中,服务器400通过媒资推荐模型输出用户对每个媒资的点击概率值后,将媒资按照点击概率值的大小进行排序,点击概率值越大,则说明用户越偏好相对应的媒资。服务器400按照与显示设备200协商好的数量向显示设备200反馈点击概率top n个媒资。显示设备200接收服务器400推送的媒资,并将媒资展示在相应的推荐位上。
[0110]
本技术中,在媒资推荐模型中,能够计算出用户对任何类型的媒资的点击概率值,并且点击概率值是通过向用户对各媒资的偏好分配权重得到,提高点击概率值的精准度,
通过媒资推荐模型为用户进行精准混合推荐。
[0111]
与上述服务器相对应的,本技术还提供了一种媒资混合推荐方法,包括:服务器400根据用户的身份标识获取特征数据,其中,所述特征数据是根据用户数据、媒资数据以及上下文数据确定的,所述用户数据基于用户的播放行为进行获取,所述媒资数据基于对媒资的内容理解进行获取,所述上下文数据基于用户对媒资动作时间进行获取。服务器400将所述特征数据输入至已训练好的媒资推荐模型,得到用户对多个媒资的点击概率值,其中,所述媒资推荐模型用于预估用户对媒资的点击概率值,在所述媒资推荐模型中通过向用户对各媒资的偏好分配权重得到点击概率值。服务器400将点击概率值最高的n个媒资推荐至显示设备,以使显示设备在相应的推荐位上展示出媒资。
[0112]
在一些实施例中,服务器400中媒资推荐模型的训练过程包括:采集特征数据,并分别对特征数据进行向量化,得到特征向量。将多种特征向量进行拼接,得到输入层数据。将输入层数据输入至第一多层神经网络,得到第一输出层数据,其中,所述第一输出层数据表征用户对各媒资的偏好。将所述输入层数据输入至第二多层神经网络,得到第二输出层数据,其中,所述第二输出层数据用于为所述第一输出层数据分配权重。利用所述第二输出层数据为所述第一输出层数据分配权重,得到具备权重的偏好数据。将所述偏好数据输入至第三多层神经网络并经由sigmoid层激活后得到所述媒资推荐模型。
[0113]
由于以上实施方式均是在其他方式之上引用结合进行说明,不同实施例之间均具有相同的部分,本说明书中各个实施例之间相同、相似的部分互相参见即可。在此不再详细阐述。
[0114]
需要说明的是,在本说明书中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或暗示这些实体或操作之间存在任何这种实际的关系或顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的电路结构、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种电路结构、物品或者设备所固有的要素。在没有更多限制的情况下,有语句“包括一个
……”
限定的要素,并不排除在包括要素的电路结构、物品或者设备中还存在另外的相同要素。
[0115]
本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本技术的其他实施方案。本技术旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由权利要求的内容指出。
[0116]
以上的本技术实施方式并不构成对本技术保护范围的限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1