图片推荐方法及装置与流程

文档序号:16919600 发布日期:2019-02-19 19:14
图片推荐方法及装置与流程

本申请涉及图片处理技术领域,尤其涉及一种图片推荐方法及装置。



背景技术:

目前,各种社交类APP(例如米动圈)在向某一用户推荐图片时,通常是从与该用户具有关联关系(例如用户之间相互点过赞)的用户发布的图片中,选取图片进行推荐。而当不存在与该用户具有关联关系的用户时,就无法向该用户进行有效推荐,例如,对于新用户,由于其与其他用户之间不存在任何关联关系,因此就无法对新用户进行有效的图片推荐。



技术实现要素:

有鉴于此,本申请提供一种图片推荐方法及装置,以解决相关技术中,当不存在与该用户具有关联关系的用户时,就无法向该用户进行有效推荐的问题。

根据本申请实施例的第一方面,提供一种图片推荐方法,所述方法包括:

接收来自客户端的页面请求,所述页面请求包含用户所进入的主题社区对应的主题社区标识;

根据接收到页面请求中的主题社区标识,匹配与所述主题社区标识对应的推荐列表;

将与所述页面请求中的主题社区标识对应的推荐列表中的图片标签对应的图片发送至所述客户端。

根据本申请实施例的第二方面,提供一种图片推荐装置,所述装置包括:

接收模块,用于接收来自客户端的页面请求,所述页面请求包含用户所进入的主题社区对应的主题社区标识;

匹配模块,用于根据接收到页面请求中的主题社区标识,匹配与所述主题社区标识对应的推荐列表;

发送模块,用于将与所述页面请求中的主题社区标识对应的推荐列表中的图片标签对应的图片发送至所述客户端。

根据本申请实施例的第三方面,提供一种服务器,所述设备包括可读存储介质和处理器;

其中,所述可读存储介质,用于存储机器可执行指令、数据;

所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现上述所述的图片推荐方法的步骤。

应用本申请实施例,服务器在接收到来自客户端的页面请求时,匹配与该页面请求包含的主题社区标识对应的推荐列表,并将该推荐列表中的图片标签对应的图片发送至客户端。基于上述描述可知,当用户刷新页面时,服务器可以优先向用户推送推荐列表中的图片,由于推荐列表包含有值得推荐的图片,从而所有用户在刷新页面时,都能够优先看到比较受欢迎的图片,尤其是对于新注册的用户,可以实现有效的图片推荐。

附图说明

图1为本申请根据一示例性实施例示出的一种图片推荐方法的实施例流程图;

图2A为本申请根据一示例性实施例示出的另一种图片推荐方法的实施例流程图;

图2B为本申请根据图2A所示实施例示出的一种第一神经网络结构图;

图3为本申请根据一示例性实施例示出的一种服务器的硬件结构图;

图4为本申请根据一示例性实施例示出的一种图片推荐装置的实施例结构图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的"一种"、"所述"和"该"也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语"和/或"是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。

相关技术中,对于各种社交类APP,在用户登录APP刷新页面时,后台服务器基于该用户的刷新页面请求,从与该用户相关联的用户发布的图片中选取一些点赞数比较高的图片推荐给该用户,由于两用户之间的关联性是基于相互访问或相互点赞建立的,而对于一个新注册的用户,由于与其他用户并没有相互访问浏览或相互点赞的交互,因此其不存在关联用户,从而后台服务器无法对新用户进行有效的图片推荐。

基于此,通过在后台服务器中建立推荐列表,该推荐列表包含值得推荐的图片标签,在接收到来自客户端的页面请求时,根据接收到的页面请求中的用户所进入的主题社区对应的主题社区标识,匹配与所述主题社区标识对应的推荐列表,并将推荐列表中的图片标签对应的图片发送至客户端。基于上述描述可知,当用户刷新页面时,服务器可以优先向用户推送推荐列表中的图片,由于推荐列表包含有值得推荐的图片,所述值得推荐的图片是评估出受该主题社区用户欢迎的图片,从而所有用户在刷新页面时,都能够优先看到比较受欢迎的图片,尤其是对于新注册的用户,可以实现有效的图片推荐。

下面以具体实施例对本申请技术方案进行详细阐述。

图1为本申请根据一示例性实施例示出的一种图片推荐方法的实施例流程图,该图片推荐方法可以应用在服务器上,该服务器可以是社交类APP的后台服务器。如图1所示,该图片推荐方法包括如下步骤:

步骤101:接收来自客户端的页面请求。

在一实施例中,客户端启动应用程序之后,用户通过应用程序(社交类APP)的用户界面进入某一主题社区后,触发刷新页面的页面请求,从而应用程序的服务器可以接收到来自客户端的页面请求。

其中,主题社区指的是应用程序包含的主题板块,例如瑜伽、健身、跑步等主题板块,用户可以进入各个主题板块浏览属于该主题板块的动态信息,因此,页面请求中包含用户所进入的主题社区对应的主题社区标识。

步骤102:根据接收到页面请求中的主题社区标识,匹配与该主题社区标识对应的推荐列表。

在一实施例中,服务器可以预先建立各主题社区的推荐列表,推荐列表中记录有该主题社区中值得推荐的图片标签。

其中,图片标签用于唯一标识一副图片,其可以是图片的ID,也可以是图片的URL(Uniform Resource Locator,统一资源定位符)地址,本申请对此不进行限定。

针对建立各主题社区的推荐列表的过程,可以参见下述图2A所示实施例的描述,在此暂不详述。

步骤103:将与页面请求中主题社区标识对应的推荐列表中的图片标签对应的图片发送至客户端,推荐给客户端使用者。

在一实施例中,在发送图片的同时,还可以将图片对应的文字描述信息发送至客户端,从而用户可以看到有关推荐图片的相关信息。

其中,图片对应的文字描述信息可以包含用户标识、上传时间、地理位置、用户在上传该图片时发表的状态内容等信息。

本申请实施例中,服务器在接收到来自客户端的页面请求时,匹配与该页面请求包含的主题社区标识对应的推荐列表,并将与该页面请求包含的主题社区标识相对应的推荐列表中的图片标签对应的图片发送至客户端。基于上述描述可知,当用户刷新页面时,服务器可以优先向用户推送推荐列表中的图片,由于推荐列表包含有值得推荐的图片,从而所有用户在刷新页面时,都能够优先看到比较受欢迎的图片,尤其是对于新注册的用户,可以实现有效的图片推荐。

图2A为本申请根据一示例性实施例示出的另一种图片推荐方法的实施例流程图,基于上述图1所示实施例的基础上,以如何建立推荐列表为例进行示例性说明。如图2A所示,该图片推荐方法还可包括如下步骤:

步骤201:接收用户上传的图片和该图片对应的主题社区标识。

在一实施例中,客户端启动应用程序之后,用户通过应用程序的用户界面进入某一主题社区,在该主题社区的用户界面中,调用摄像头拍摄图片,并输入针对该图片的文字描述信息,然后触发上传按钮,从而服务器可以接收到该图片和该图片对应的主题社区标识,同时也可以接收到该图片的文字描述信息。

步骤202:将该图片输入预先训练得到的第一神经网络中。

在一实施例中,针对预先训练第一神经网络的过程,可以获取正样本集和负样本集,并将正样本集和负样本集分别输入第一神经网络包含的第二神经网络,所述第二神经网络指的是通用图片分类网络删除最后一个网络层得到的输出为图像特征的神经网络,以通过第二神经网络确定正样本集的图像特征和负样本集的图像特征,然后再利用正样本集的图像特征和正样本集对应的第一标签类型,及负样本集的图像特征和负样本集对应的第二标签类型对第一神经网络包含的回归分类网络进行训练,直至训练次数达到预设数值停止训练。由于第一神经网络的模型训练采用的是迁移学习的方法,即第一神经网络中的第二神经网络采用的是既有网络模型,不需要重新训练进行大量的计算,因此第一神经网络的模型训练效率高,而且比较适合高频率的更新模型。

其中,正样本集指的是值得推荐的图片集,负样本集指的是不值得推荐的图片集,因此可以为正样本集中的每张图片标记第一标签类型,为负样本集中的每张图片标记第二标签类型,第一标签类型为推荐的类型,第二标签类型为不推荐的类型。通用图片分类网络可以采用轻量级的MobileNet神经网络,计算量小,效率高,回归分类网络的输入即为第二神经网络输出的图像特征。在训练过程中,可以采用多轮随机梯度下降法进行训练,例如,每一轮随机从训练集合(包含正样本集和负样本集)中选取100张图片进行训练,每轮的学习率可以是0.01。训练轮数(即训练次数)可以根据实践经验设置,如预设数值可以设置为1000。

在一实施例中,针对获取正样本集和负样本集的过程,可以针对每个主题社区标识,从该主题社区标识对应的图片中获取预设时间段内用户上传的图片和所述图片对应的反馈数,并按照反馈数从高到低对图片进行排序,得到图片的排序结果,然后再从排序结果中确定正样本集和负样本集。

其中,预设时间段可以根据实践经验设置,如设置为45天前至15天前,反馈数可以是点赞数或浏览量。

在一实施例中,针对从排序结果中确定正样本集和负样本集的过程,可以基于排序结果中排在前第一预设数量的图片,确定正样本集,基于排序结果中排在后第二预设数量的图片,确定负样本集。

其中,第一预设数量和第二预设数量可以相等,也可以不相等。例如,可以将排序结果中排在前30%的图片确定为正样本集,排在后30%的图片确定为负样本集。

需要说明的是,由于第一神经网络中的第二神经网络采用的是既有网络模型,不需要重新训练进行大量的计算,因此,可以每隔一段时间,可以重新更新一次第一神经网络中的回归分类网络的模型,如每天更新一次回归分类网络的模型。

在一示例性场景中,如图2B所示,第一神经网络包含第二神经网络和回归分类网络,其中,第二神经网络为通用图片分类网络MobileNet删除最后一层得到的输出为图像特征的神经网络,假设第二神经网络的输出为1001维度的图像特征,那么回归分类网络的输入为1001维度的图像特征,输出为图片的推荐分值。在训练过程中,将正样本集和负样本集中的每张图片分别输入第二神经网络,针对每张图片,第二神经网络输出一组特征F= ,由于正样本集对应推荐的标签类型,负样本集对应不推荐的标签类型,因此结合每张图片对应的标签类型,可得到正样本集和负样本集对应的数据集B=[ , ],从而利用数据集B可以训练得到回归分类网络。

步骤203:通过该第一神经网络确定该图片的推荐分值。

其中,第一神经网络输出的推荐分值的取值可以是0~1。

步骤204:基于该推荐分值,将符合推荐要求的图片对应的图片标签添加到与该图片对应的主题社区标识相对应的推荐列表中。

在一实施例中,如果推荐分值超过预设阈值,表示该图片值得推荐,符合推荐要求,则将该图片的图片标签添加到与该图片主题社区标识相对应的推荐列表中,如果推荐分值未超过预设阈值,表示该图片不值得推荐,不符合推荐要求。

其中,预设阈值可以根据实际需求设置。

需要说明的是,在将图片的图片标签添加到推荐列表中之后,还可以为该图片的图片标签设置一个过期时间,当系统时间到达设置的过期时间时,将该图片标签从推荐列表中删除,从而可以保证通过推荐列表向用户推荐的图片均是近期值得推荐的图片。

本实施例中,通过第一神经网络确定用户上传的图片的推荐分值,并基于推荐分值,将符合推荐要求的图片对应的图片标签添加到与该图片对应的主题社区标识相对应的推荐列表中。由于第一神经网络是通过识别图片内容确定的图片的推荐分值,因此本申请可以实现根据图片内容进行推荐,可以提高推荐准确度,从而吸引更多的用户打开或者停留在应用程序的社区页面,进而提高应用程序的活跃度和用户参与度。另外,对于用户上传的新图片,由于该图片没有被访问浏览过,也没有被点赞过,传统的基于关系的推荐方式是无法对新图片进行有效的推荐,而本申请对于新图片,可以根据图片内容进行有效的推荐。

图3为本申请根据一示例性实施例示出的一种服务器的硬件结构图,该服务器包括:通信接口301、处理器302、机器可读存储介质303和总线304;其中,通信接口301、处理器302和机器可读存储介质303通过总线304完成相互间的通信。处理器302通过读取并执行机器可读存储介质303中与图片推荐方法的控制逻辑对应的机器可执行指令,可执行上文描述的图片推荐方法,该方法的具体内容参见上述实施例,此处不再累述。

本申请中提到的机器可读存储介质303可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

图4为本申请根据一示例性实施例示出的一种图片推荐装置的实施例结构图,所述图片推荐装置可以应用在服务器上,如图4所示,所述图片推荐装置包括:

接收模块410,用于接收来自客户端的页面请求,所述页面请求包含用户所进入的主题社区对应的主题社区标识;

匹配模块420,用于根据页面请求中的主题社区标识,匹配与所述主题社区标识对应的推荐列表;

发送模块430,用于将与所述页面请求中的主题社区标识对应的推荐列表中的图片标签对应的图片发送至所述客户端。

在一可选实现方式中,所述装置还包括(图4中未示出):

推荐列表建立模块,具体用于接收用户上传的图片和所述图片对应的主题社区标识;将所述图片输入预先训练得到的第一神经网络中;通过所述第一神经网络确定所述图片的推荐分值;基于所述推荐分值,将符合推荐要求的图片对应的图片标签添加到与所述图片对应的主题社区标识相对应的推荐列表中。

在一可选实现方式中,所述装置还包括(图4中未示出):

训练模块,具体用于获取正样本集和负样本集;将所述正样本集和所述负样本集分别输入所述第一神经网络包含的第二神经网络,所述第二神经网络为通用图片分类网络删除最后一个网络层得到的输出为图像特征的神经网络;通过所述第二神经网络确定所述正样本集的图像特征和所述负样本集的图像特征;利用所述正样本集的图像特征和所述正样本集对应的第一标签类型,及所述负样本集的图像特征和所述负样本集对应的第二标签类型对所述第一神经网络包含的回归分类网络进行训练,直至训练次数达到预设数值停止训练。

在一可选实现方式中,所述训练模块,还具体用于在获取正样本集和负样本集过程中,针对每个主题社区标识,从该主题社区标识对应的图片中获取预设时间段内用户上传的图片和所述图片对应的反馈数;按照所述反馈数从高到低对所述图片进行排序,得到所述图片的排序结果;从所述排序结果中确定正样本集和负样本集。

在一可选实现方式中,所述训练模块,还具体用于在从所述排序结果中确定正样本集和负样本集过程中,基于所述排序结果中排在前第一预设数量的图片,确定正样本集;基于所述排序结果中排在后第二预设数量的图片,确定负样本集。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

还需要说明的是,术语"包括"、"包含"或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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