一种精选图片的自动确定方法和系统与流程

文档序号:21105134发布日期:2020-06-16 21:12阅读:234来源:国知局
一种精选图片的自动确定方法和系统与流程

本说明书涉及数据处理领域,特别涉及一种精选图片的自动确定方法和系统。



背景技术:

近年来,随着人工智能以及大数据技术的快速发展,越来越多的产品通过用户上传的图片和文字获取用户建议。服务人员需要从大量用户上传图片中获取信息,基于图片中的信息改进产品或服务。用户上传的图片数据量大、重复性高、可用性图片较少,需要从海量图片中筛选出优质的图片。

因此,需要提供一种自动确定精选图片的方法和系统。



技术实现要素:

本说明书的一个方面提供一种精选图片的自动确定方法。所述方法包括:获取图片,基于所述图片利用聚类算法确定至少一个图片类别;对于所述至少一个图片类别中的每一个,确定每张图片的综合评分,所述综合评分至少包括图片质量评分、图片内容丰富度评分和/或图片新鲜度评分,所述图片质量评分表示图片的清晰维度和/或内容完整维度,所述图片内容丰富度评分表示图片中包含内容的类别数量,所述图片新鲜度评分表示图片的时间维度;基于所述图片的所述综合评分,确定精选图片。

在一些实施例中,所述基于所述图片利用聚类算法确定至少一个图片类别包括:利用预设算法对所述图片进行编码;基于编码后的图片计算图片距离,所述图片距离反映图片之间的相似程度;基于所述图片距离,利用聚类算法确定至少一个图片类别。

在一些实施例中,所述图片距离包括余弦距离。

在一些实施例中,所述对于所述至少一个图片类别中的每一个,确定每张图片的综合评分包括:对于所述至少一个图片类别中的每一个,利用图片质量评价模型确定每张图片的图片质量评分;利用图片内容丰富度评价模型确定每张图片的图片内容丰富度评分;基于图片上传时间确定每张图片的图片新鲜度评分;基于所述图片的所述图片质量评分、图片内容丰富度评分和图片新鲜度评分确定所述图片的所述综合评分。

在一些实施例中,所述基于所述图片的所述图片质量评分、图片内容丰富度评分和图片新鲜度评分确定所述图片的所述综合评分包括:根据预设权重值,基于所述图片的所述图片质量评分、图片内容丰富度评分和图片新鲜度评分确定所述图片的所述综合评分。

在一些实施例中,所述图片质量评价模型通过以下方式获得:获取样本图片;基于所述样本图片的清晰度和/或内容完整度标注所述样本图片的质量分值;将标注的样本图片输入第一初始模型进行训练,确定图片质量评价模型。

在一些实施例中,所述图片内容丰富度评价模型通过以下方式获得:获取样本图片;基于所述样本图片中包含内容的类别数量标注所述样本图片的内容丰富度分值;将标注的样本图片输入第二初始模型进行训练,确定图片内容丰富度评价模型。

在一些实施例中,所述方法还包括:对所述图片进行预处理,清洗所述图片中清晰度较低、内容不完整的图片。

本说明书的另一方面提供一种精选图片的自动确定系统。所述系统包括:聚类模块,所述聚类模块被配置用于获取图片,基于所述图片利用聚类算法确定至少一个图片类别;图片评价模块,所述图片评价模块被配置用于对于所述至少一个图片类别中的每一个,确定每张图片的综合评分,所述综合评分至少包括图片质量评分、图片内容丰富度评分和/或图片新鲜度评分,所述图片质量评分表示图片的清晰维度和/或内容完整维度,所述图片内容丰富度评分表示图片中包含内容的类别数量,所述图片新鲜度评分表示图片的时间维度;选择模块,所述选择模块被配置用于基于所述图片的所述综合评分,确定精选图片。

本说明书的另一方面提供一种精选图片的自动确定系统,其中,所述系统包括处理器以及存储器;所述存储器用于存储指令,所述指令被所述处理器执行时,导致所述装置实现如前所述的方法。

本说明书的另一方面提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如前所述的方法。

附图说明

本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:

图1是根据本说明书的一些实施例所示的精选图片自动确定系统的应用场景示意图;

图2是根据本说明书的一些实施例所示的精选图片自动确定系统的模块图;

图3是根据本说明书的一些实施例所示的精选图片自动确定方法的示例性流程图;

图4是根据本说明书的一些实施例所示图片质量评价模型确定方法的示例性流程图;以及

图5是根据本说明书的一些实施例所示的图片内容丰富度评价模型确定方法的示例性流程图。

具体实施方式

为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。

如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。

虽然本说明书对根据本说明书的实施例的系统中的某些模块或单元做出了各种引用,然而,任何数量的不同模块或单元可以被使用并运行在客户端和/或服务器上。所述模块仅是说明性的,并且所述系统和方法的不同方面可以使用不同模块。

本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

图1是根据本说明书的一些实施例所示的精选图片自动确定系统的应用场景示意图。

精选图片自动确定系统100可以从海量图片中筛选出清晰度高、内容完整且丰富的图片。精选图片自动确定系统100可以是一个线上平台,包括服务器110、网络120、用户终端130和数据库140。服务器110可以包括一个处理器112。

在一些实施例中,服务器110可以是一个单个的服务器或者一个服务器群。服务器群可以是集中式的或分布式的(例如,服务器110可以是一分布式的系统)。在一些实施例中,服务器110可以是本地的或远程的。例如,服务器110可以通过网络120访问储存于用户终端130和/或数据库140中的信息和/或数据。再例如,服务器110可以直接连接到用户终端130和/或数据库140以访问储存的信息和/或数据。在一些实施例中,服务器110可以在一个云端平台上实现。仅仅作为示例,云端平台可以包括私有云、公共云、混合云、社区云、分布云、跨云、多云等或上述举例的任意组合。在一些实施例中,服务器110可以在一个计算设备上实现,该计算设备可以包括一个或多个部件。

在一些实施例中,服务器110可以包括一个处理器112。处理器112可以处理与精选图片确定相关的信息和/或数据以执行本说明书中描述的一个或多个功能。例如,处理器112可以基于从用户终端130和/或数据库140获取的图片数据进行计算。在一些实施例中,处理器112可以包括一个或多个处理器(例如,单晶片处理器或多晶片处理器)。仅仅作为示例,处理器112可以包括一个或多个硬件处理器,例如中央处理器(cpu)、专用积体电路(asic)、专用指令集处理器(asip)、图像处理单元(gpu)、物理运算处理单元(ppu)、数位讯号处理器(dsp)、现场可编程门阵列(fpga)、可编程逻辑装置(pld)、控制器、微控制器单元、精简指令集电脑(risc)、微处理器等或上述举例的任意组合。

网络120可以促进信息和/或数据的交换。在一些实施例中,精选图片确定系统100中的一个或多个部件(例如,服务器110、用户终端130和数据库140)可以通过网络120向精选图片自动确定系统100中的其他部件发送信息和/或数据。例如,服务器110可以通过网络120从数据库140获取图片数据。在一些实施例中,网络120可以是有线网络或无线网络中的任意一种,或其组合。仅仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、远端通信网络、内联网、互联网、局域网(lan)、广域网(wan)、无线局域网(wlan)、城域网(man)、广域网(wan)、公共开关电话网络(pstn)、蓝牙网络、zigbee网络、近场通信(nfc)网络等或上述举例的任意组合。在一些实施例中,网络120可以包括一个或多个网络交换点。例如,网络120可以包括有线或无线网络交换点,如基站和/或互联网交换点120-1、120-2、……,通过交换点,精选图片确定系统100的一个或多个部件可以连接到网络120以交换数据和/或信息。

在一些实施例中,用户可以是用户终端130的使用者。在一些实施例中,用户可以通过用户终端130获取系统精选的图片。例如,用户可以使用用户终端130对应用程序进行操作(如点击、搜索等)以获取系统精选的图片。又例如,系统可以获取用户经常输入的搜索关键词,以确定用户感兴趣的图片类别,进而从图片数据中筛选出相关的精选图片推荐给用户。在一些实施例中,系统可以通过用户终端130获取用户输入的图片,以确定需要精选的图片类别。例如,系统可以从用户终端130获取的图片中筛选出精选图片。在一些实施例中,用户终端130的使用者可以是除第一用户以外的其他人。例如,用户终端130的使用者a可使用用户终端130为使用者b进行图片搜索。在一些实施例中,用户终端130可以从服务器110接收信息和/或指令,如接收服务器110推荐的精选图片。

在一些实施例中,用户终端130可以包括移动装置130-1、平板电脑130-2、膝上型电脑130-3、车辆内建装置130-4等或上述举例的任意组合。在一些实施例中,移动装置130-1可以包括智能家居装置、可穿戴装置、智能移动装置、虚拟现实装置、增强现实装置等或上述举例的任意组合。在一些实施例中,智能家居装置可以包括智能照明装置、智能电器的控制装置、智能监测装置、智能电视、智能摄影机、对讲机等或上述举例的任意组合。在一些实施例中,可穿戴装置可以包括手环、鞋袜、眼镜、头盔、手表、衣物、背包、智能配饰等或上述举例的任意组合。在一些实施例中,智能移动装置可以包括移动电话、个人数字助理、游戏装置、导航装置、pos机、膝上型电脑、台式电脑等或上述举例的任意组合。在一些实施例中,虚拟现实装置和/或增强现实装置可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等或上述举例的任意组合。例如,虚拟现实装置和/或增强现实装置可以包括googleglasstm、oculusrifttm、hololenstm、gearvrtm等。在一些实施例中,车辆内建装置130-4可以包括车载电脑、车载电视等。

数据库140可以储存数据和/或指令。在一些实施例中,数据库140可以储存从用户终端130获得的数据,如文本、图片等。在一些实施例中,数据库140可以储存供服务器110执行或使用的数据和/或指令,服务器110可以通过执行或使用所述数据和/或指令以实现本说明书描述的示例性方法。在一些实施例中,数据库140可以包括大容量存储器、可以移动存储器、挥发性读写存储器、只读存储器(rom)等或上述举例的任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性的可以移动存储器可以包括快闪驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性的挥发性只读存储器可以包括随机存储器(ram)。示例性的随机存储器可以包括动态随机存储器(dram)、双倍速率同步动态随机存储器(ddrsdram)、静态随机存储器(sram)、闸流体随机存储器(t-ram)和零电容随机存储器(z-ram)等。示例性的只读存储器可以包括掩蔽型只读存储器(mrom)、可编程只读存储器(prom)、可清除可编程只读存储器(perom)、电子可抹除可编程只读存储器(eeprom)、压缩磁盘只读存储器(cd-rom)和数位通用磁盘只读存储器等。在一些实施例中,数据库140可以在一个云端平台上实现。仅仅作为示例,云端平台可以包括私有云、公共云、混合云、社区云、分布云、跨云、多云等或上述举例的任意组合。

在一些实施例中,数据库140可以与网络120连接以与精选图片自动确定系统100中的一个或多个部件(例如,服务器110、用户终端130等)通信。精选图片自动确定系统100中的一个或多个部件可以通过网络120访问储存于数据库140中的数据或指令。在一些实施例中,数据库140可以直接与精选图片自动确定系统100中的一个或多个部件(例如,服务器110、用户终端130等)连接或通信。在一些实施例中,数据库140可以是服务器110的一部分。

在一些实施例中,精选图片自动确定系统100的一个或多个部件(例如,服务器110、用户终端130等)可以拥有存取数据库140的许可。在一些实施例中,当满足一个或多个条件时,精选图片自动确定系统100的一个或多个部件可以获取或确定与精选图片相关的信息。例如,获取图片数据后,服务器110可以对从用户终端130获取的图片进行编码。

在一些实施例中,精选图片自动确定系统100中的一个或多个部件的信息交互可以通过请求一个服务的方式实现。所述服务请求的客体可以是任何产品。在一些实施例中,所述产品可以是一个有形产品或一个无形产品。有形产品可以包括食品、医药、商品、化学产品、电器、衣物、小汽车、房屋、奢侈品等或上述举例的任意组合。无形产品可以包括服务产品、金融产品、知识产品、互联网产品等或上述举例的任意组合。互联网产品可以包括个人主机产品、网站产品、行动互联网产品、商业主机产品、嵌入式产品等或上述举例的任意组合。行动互联网产品可以用于行动终端的软件、编程、系统等或上述举例的任意组合。行动终端可以包括平板电脑、膝上型电脑、行动手机、掌上电脑(pda)、智能手表、pos机、车载电脑、车载电视、可穿戴装置等或上述举例的任意组合。例如,所述产品可以是用于电脑或行动电话中的任意的软件和/或应用编程。软件和/或应用编程可以与社交、购物、交通、娱乐、学习、投资等或上述举例的任意组合相关。

图2是根据本说明书的一些实施例所示的精选图片自动确定系统的模块图。

如图2所示,处理器112可以包括聚类模块210、图片评价模块220、选择模块230和训练模块240。模块可以是所有或部分处理器112的硬件电路。模块也可以是由处理器读取及执行的应用程序或一组指令。此外,模块可以是硬件电路与应用程序/指令的组合。例如,当处理器执行应用程序/该组指令时,模块可以是处理器112的一部分。

聚类模块210可以用于对图片进行分类。在一些实施例中,聚类模块210可以利用聚类算法确定至少一个图片类别。在一些实施例中,聚类模块210可以包括获取单元203、计算单元205和聚类单元207。获取单元203可以用于获取图片。在一些实施例中,获取单元203可以从用户终端130和/或数据库140获取图片。在一些实施例中,获取单元203可以通过网络120从存储设备(如数据库140)中获取图片。计算单元205可以用于计算图片距离。在一些实施例中,计算单元205可以利用编码算法对图片特征向量进行编码,并根据编码后的图片计算图片间的距离。聚类单元207可以用于将图片划分为一个或多个图片类别。在一些实施例中,聚类单元207可以基于图片距离,使用聚类算法将图片划分为至少一个图片类别。关于对图片聚类的更多内容可以参见本说明书其他地方(如图3中步骤310-步骤330及其相关描述),在此不再赘述。

图片评价模块220可以用于对图片进行评分。在一些实施例中,对于至少一个图片类别中的每一个,图片评价模块220可以确定每张图片的综合评分。在一些实施例中,综合评分可以包括图片质量评分、图片内容丰富度评分和/或图片新鲜度评分等。关于对图片进行评分的更多内容可以参见本说明书其他地方(如步骤340及其相关描述),在此不再赘述。

选择模块230可以用于基于图片的综合评分,确定精选图片。关于确定精选图片的更多内容可以参见图3中步骤350及其相关描述,在此不再赘述。

训练模块240可以用于确定图片质量评价模型和/或图片内容丰富度评价模型。在一些实施例中,训练模块250可以对获取的样本图片进行标注,基于标注的样本图片确定图片质量评价模型和/或图片内容丰富度评价模型。关于图片质量评价模型和图片内容丰富度评价模型的更多内容可以参见本说明书其他地方(如图4、图5及其相关描述),在此不再赘述。

应当理解,图2所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上对于处理器112及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,图2中披露的聚类模块210、图片评价模块220、选择模块230和训练模块240可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。又例如,处理器112还可以包括通信模块,用来与其他部件通信,如将精选图片确定系统生成的精选图片发送至服务端或用户终端。处理器112中各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。

图3是根据本说明书的一些实施例所示的精选图片自动确定方法的示例性流程图。

步骤310,获取图片。具体的,该步骤可以由聚类模块210(如获取单元203)实现。

在一些实施例中,图片可以包括用户上传的图片。在一些实施例中,上传的图片可以包括个人意见/建议、搜索/查找内容、评价(如差评、好评等)、咨询等中的一种或其任意组合。例如,用户可以将对某应用程序使用过程中的页面截图通过用户终端130进行上传,向服务后台反馈应用程序和/或服务平台的“页面跳转较慢”、“交互功能欠缺”等问题。又例如,用户可以将某图片通过用户终端130上传,用于搜索与该图片类似或相关信息的内容。在一些替代性实施例中,图片也可以包括其他可以公开获取的图片,例如,从开源数据库中获取的个人或单位公开发表的图片,本说明书对此不做限制。在一些实施例中,图片中可以包括人文、社科、体育、动物、植物等中的一种或其任意组合。在一些实施例中,基于获取的用户上传图片可以向用户提供感兴趣的信息推荐。例如,可以根据用户输入的图片向用户推荐相关的新闻、文章、视频等内容。在一些实施例中,基于获取的用户上传图片可以向用户提供更好的服务。例如,可以根据用户输入的“交互功能欠缺”相关的反馈图片,改善应用程序的交互功能。可以理解,本说明书所列举的内容仅作为示例,并不能把本说明书限制在所举实施例范围之内。在一些实施例中,聚类模块210(如获取单元203)可以从用户终端130和/或数据库140中获取图片。在一些实施例中,获取单元203可以通过网络120从存储设备中(如数据库140)获取图片。在一些替代性实施例中,获取单元203可以从开源数据库中获取图片。在一些实施例中,获取的图片可以为多张。在一些实施例中,获取的多张图片可以为同一类别或不同类别。

步骤320,计算图片距离。具体的,该步骤可以由聚类模块210(如计算单元205)实现。

图片距离可以用于反映图片之间包含内容的接近程度。在一些实施例中,图片距离值越小,图片之间包含的内容越接近。在一些实施例中,计算单元205可以利用预设算法对图片进行编码,基于编码后的图片计算图片距离。编码可以是信息从一种形式或格式转换为另一种形式的过程。例如,将文本转化为文本向量的过程,图片转换为图片向量的过程等。在一些实施例中,预设算法可以包括但不限于bert模型(bidirectionalencoderrepresentationfromtransformers)、imagenet模型、长短期记忆网络(lstm,longshort-termmemory)、词向量编码、elmo模型、gpt模型等一种或多种的组合。通过对图片进行编码,可以将图片转换为向量,以方便系统对其进行处理(如距离计算、聚类等)。在一些实施例中,计算单元205可以通过提取图片特征,基于图片特征进行图片编码。例如,计算单元205可以通过使用基于imagenet的模型提取图片的特征并对图片进行编码。imagenet数据集包含来自1000个类别的120万个图像的标记集,基于imagenet数据集的模型提取到的特征不但具有尺度不变性及代表性,而且更加全面丰富。例如,计算单元205可以直接将图片输入基于imagenet的模型,得到输出的高维图片特征向量(即编码后的图片)。

在一些实施例中,计算单元205可以通过计算编码后的图片间的余弦距离计算图片距离。余弦距离是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量,主要通过两个向量之间的角度的余弦值确定两个向量是否大致指向相同的方向,而对绝对的数值不敏感。例如,对于两张图片x和y,当两张图片的向量夹角趋于0,余弦值接近1,表明两张图片越接近,当两张图片的向量夹角趋于90度,余弦值接近于0,两张图片越不接近。对于获取到的图片,挑选其中的精选图片更关注的是不同图片在内容指向上的相对差异(如两张图片包含的内容是否相似),使用余弦距离可以提高精选图片确定的准确性。在一些实施例中,图片距离可以为任意合理的数值范围。例如,图片距离的范围可以为余弦距离的范围[0,1]。其中余弦距离为1表示两个向量之间距离很接近(即不同图片之间包含的内容较为接近),余弦距离为0表示两个向量之间距离较远(即不同图片之间包含的内容差异性较大)。在一些实施例中,图片距离也可以通过其他距离算法确定,本说明书对此不做限制。例如,距离算法也可以为欧式距离算法、jaccard距离算法、曼哈顿距离算法、编辑距离算法等一种或多种的组合。在一些实施例中,图片距离可以包括获取到的图片中两两图片间的距离、相邻图片之间的距离和/或相关图片之间的距离(如未聚类图片与聚类中心图片之间的距离)。例如,对于图片a、b、c,计算单元205可以分别计算a和b、a和c、b和c之间的距离,或分别计算a和b、b和c之间的距离,或只计算a和b(或a和c、或b和c)之间的距离。在一些实施例中,图片距离和图片相似度的数值之和为1。例如,若图片相似度值为0,则图片距离可以为1;若图片相似度值为0.6,则图片距离可以为0.4。

在一些实施例中,聚类模块210可以对图片进行预处理。通过预处理可以清洗图片中清晰度较低、内容不完整的图片,对图片进行标准化(如将图片缩放到统一大小)等,以方便图片的后续处理。在一些实施例中,图片预处理方法可以包括人工处理和/或机器处理。例如,聚类模块210可以基于边缘分析法、变换域法和/或像素统计信息法等方式,通过设置图片清晰度阈值过滤掉图片中清晰度较低的图片。

步骤330,基于图片距离利用聚类算法确定至少一个图片类别。具体的,该步骤可以由聚类模块210(如聚类单元207)实现。

在一些实施例中,聚类单元207可以基于图片距离利用聚类算法将图片划分为至少一个图片类别。每个图片类别内部的子集图片之间相似性较高(包含的内容更加接近),每个图片类别之间的图片之间相似性较低(包含的内容相差较大)。在一些实施例中,每个图片类别的子集数量可以相同或不同。例如,一个图片类别包含的图片数量可以为5,另一个图片类别包含的图片数量可以为7。又例如,两个图片内容类别包含的图片数量可以都为6。在一些实施例中,聚类算法可以包括dbscan(densitybasedspatialofapplicationswithnosie)聚类、k-means(k均值)聚类、optics(orderingpointstoidentifytheclusteringstructure)聚类、hdbscan(hierarchicaldensity-basedspatialclusteringofapplicationswithnoise)聚类等中的一种或其任意组合。

优选的,聚类单元207可以使用hdbscan聚类算法实现图片聚类。hdbscan聚类是dbscan聚类算法的优化算法。hdbscan聚类与dbscan聚类的最大不同在于无须事先知道或指定聚类的簇的半径和簇的个数,因此可以处理密度不同的聚类问题。本说明书实施例中提出的确定精选图片的方法在对图片进行聚类时,无法预知要划分的簇的数量和半径(即要划分的图片类别的数量和每个类别的大小),使用hdbscan聚类可以增加聚类算法对噪声点的鲁棒性,去除不必要的图片,使得图片更符合需求,从而提高精选图片确定的准确率和高效性。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。

步骤340,对于至少一个图片类别中的每一个,确定每张图片的综合评分。具体的,该步骤可以由图片评价模块220实现。

在一些实施例中,图片的综合评分可以包括图片质量评分、图片内容丰富度评分、图片新鲜度评分等中的一种或其任意组合。在一些实施例中,图片评价模块220可以利用图片质量评价模型确定每张图片的质量评分。在一些实施例中,图片质量评价模型可以包括深度学习模型。例如,深度学习模型可以包括但不限于循环神经网络模型、卷积神经网路模块、长短期记忆网络模型等。更多关于图片质量评价模型的内容可以参见本说明书其他地方(如图4及其相关描述),在此不再赘述。在一些实施例中,图片质量评分可以表示图片的清晰维度和/或图片内容完整维度。在一些实施例中,图片质量评分可以在0-10的范围内。图片质量评分越高,图片质量越高。例如,清晰且内容完整的图片其质量评分可以为10分。在一些实施例中,将聚类后的图片输入图片质量评价模型,可以输出图片对应的图片质量评分。

在一些实施例中,图片评价模块220可以利用图片内容丰富度评价模型确定每张图片的图片内容丰富度评分。在一些实施例中,图片内容丰富度评分可以表示图片中包含内容的类别数量。图片中包含的内容的种类越多,图片内容丰富度评分越高。例如,同时包含动物、植物、建筑物的图片的内容丰富度评分高于仅包含动物或植物或建筑物的图片的内容丰富度评分。在一些实施例中,图片内容丰富度评价模型可以包括深度学习模型。例如,深度学习模型可以包括但不限于循环神经网络模型、卷积神经网路模块、长短期记忆网络模型等。更多关于图片内容丰富度评价模型的描述可以参见本说明书其他地方(如图5及其相关描述),在此不再赘述。

在一些实施例中,图片评价模块220可以基于图片上传时间确定每张图片的图片新鲜度评分。图片的上传时间距离当前时间越近,图片新鲜度评分越高。例如,4月15日上传的图片其新鲜度评分高于4月5日上传的图片的新鲜度评分。在一些实施例中,图片评价模块220可以基于图片的图片质量评分、图片内容丰富度评分和图片新鲜度评分确定图片的综合评分。在一些实施例中,图片评价模块220可以根据预设权重值,基于图片的图片质量评分、图片内容丰富度评分和图片新鲜度评分确定图片的综合评分。例如,可以设置图片质量评分的权重值为50%,图片丰富度评分的权重值为30%,图片新鲜度评分的权重值为20%。在一些实施例中,预设权重值可以为任意合理的值,本说明书对此不做限制。

步骤350,基于图片的综合评分,确定精选图片。具体的,该步骤可以由选择模块230实现。

在一些实施例中,对于至少一个图片类别中的每一个,选择模块230可以将每个类别中综合评分最高的图片确定为精选图片。在一些实施例中,对于至少一个图片类别中的每一个,选择模块230可以基于图片的综合评分的排序结果确定精选图片。例如,选择模块230可以将所有图片的综合评分由大到小排序,选取前l个图片作为这一类图片的精选图片。其中,l为任意整数值,如3、5、7等。在一些实施例中,排序方式可以包括排序模型、人工排序以及规则排序等方式,本说明书对此不做限制。在一些实施例中,选择模块230可以基于预设的评分阈值确定精选图片。例如,可以设置图片的综合评分阈值为8分,将每个类别中综合评分高于8分的图片确定为精选图片。

通过将图片分类后再对每个类别中的图片进行评分,选出每个类别中评分高的图片作为该类别的精选图片,可以降低精选图片的重复度。例如,针对手机公交出行服务(即用户可以通过在手机中下载电子公交卡实现公交、地铁的刷卡乘坐),对于不同区域用户上传的支付失败或刷卡失败的手机截图,系统可以将其划分为类别a,对于不同用户上传的定位失败相关的截图,系统可以将其划分为另一个类别b,并分别挑选出类别a和类别b中的精选图片。通过此种方式,确定的精选图片中可以同时包含类别a和类别b。在一些实施例中,确定的精选图片可以用于改善应用程序和/或服务平台的服务性能。例如,对于从上述类别a和/或类别b挑选出的精选图片,可以提取该精选图片中用户反馈的问题“支付异常”和/或“定位异常”,基于此改进手机公交出行服务的支付和/或定位方面的问题,进而为用户提供更好的服务。可以理解,上述关于精选图片的应用场景仅作为示例,并非对本说明书的限制。在一些替代性实施例中,精选图片可以用于其他任何合理的场景,例如,基于用户的个人特征向用户推荐相关的精选图片。

应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,步骤310中可以先对图片进行初步聚类,然后计算聚类中心图片与其他图片之间的距离,基于该距离进行精确聚类。

图4是根据本说明书的一些实施例所示图片质量评价模型确定方法的示例性流程图。具体的,该步骤可以由训练模块240实现。

步骤410,获取样本图片。

在一些实施例中,样本图片可以包括精选图片和/或非精选图片。在一些实施例中,样本图片可以包括可公开访问的数据集中的图片。在一些实施例中,样本图片可以包括风景、人物、动物、植物、球类、棋类等一种或多种类别组合的图片。在一些实施例中,训练模块240可以从用户终端130和/或数据库140获取样本图片。在一些实施例中,训练模块240可以通过网络120从存储设备(如数据库140)中获取样本图片。在一些实施例中,训练模块240可以从开源数据库获取样本图片。

步骤420,对样本图片进行标注。

在一些实施例中,训练模块240可以基于样本图片的清晰度、内容完整度等一种或多种的组合对样本图片进行标注。在一些实施例中,训练模块240可以基于样本图片的清晰度、内容完整度标注样本图片的质量分。在一些实施例中,样本图片的质量分可以在0-10的范围内。例如,图片清晰且内容完整则可以被标注为10分,图片较为清晰但内容不完整可以标注为7分,图片不清晰且内容不完整可以标注为3分。在一些替代性实施例中,样本图片的质量分的范围可以为任意合理的值,如0-5分,本说明书对此不做限制。在一些实施例中,样本图片的标注方式可以包括人工标注和/或计算机标注。例如,人工判断图片的清晰度和内容完整度。又例如,通过图像处理算法判断图片的清晰度和内容完整度。又例如,人工判断图片清晰度,图像处理算法确定图片的内容完整度。在一些实施例中,系统可以将标注之后的样本数据(即样本图片)按照一定比例随机划分为训练集以及测试集。在一些实施例中,划分比例可以是训练集80%、测试集20%,或是其他任意比例。训练集可以用于训练确定图片质量评价模型;测试集可以用于对训练获得的图片质量评价模型进行测试。

步骤430,将标注的样本图片输入第一初始模型进行训练,确定图片质量评价模型。

在一些实施例中,第一初始模型可以包括机器学习模型。例如,机器学习模型可以包括rnn(循环神经网络)模型、cnn(卷积神经网络)模型等一种或多种的组合。在一些实施例中,训练模块240可以将标注的样本图片作为第一初始模型的输入,将标注结果作为参考标注对第一初始模型进行训练。在一些实施例中,训练模块240可以利用预训练模型对训练集进行预处理。在一些实施例中,训练模块240可以直接将训练集输入机器模型进行训练。在一些实施例中,图片质量评价模型的输出可以为图片的质量评分值。

应当注意的是,上述有关流程400的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程400进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。

图5是根据本说明书的一些实施例所示的图片内容丰富度评价模型确定方法的示例性流程图。

步骤510,获取样本图片。

在一些实施例中,训练模块240可以从用户终端130和/或数据库140获取样本图片。在一些实施例中,训练模块240可以通过网络120从存储设备(如数据库140)中获取样本图片。在一些实施例中,训练模块240可以从开源数据库获取样本图片。关于样本图片获取的更过内容可以参见本说明书其他地方(如图4及其相关描述),在此不再赘述。

步骤520,对样本图片进行标注。

在一些实施例中,训练模块240可以基于样本图片中包含的内容对样本图片进行标注。在一些实施例中,训练模块240可以基于样本图片中包含内容的类别数量对样本图片进行标注。在一些实施例中,训练模块240可以基于样本图片中包含的内容的类别数量将样本图片标注为不同的分值。在一些实施例中,样本图片的标注分值可以在0-10范围内。在一些实施例中,样本图片中包含内容的类别数量越多,样本图片的标注分值越高。例如,同时包含文字、图标、符号的图片的可以标注为7分,包含图标的图片可以标注为3分,包含图标和文字的图片可以标注为5分。又例如,包含人物、动物、植物、建筑物的图片可以标注为5分,包含人物、植物、动物的图片可以标注为3分,包含人物、植物的图片可以标注为2分,只包含人物的图片标注为1分等。在一些替代性实施例中,样本图片的标注分值可以为任意合理的值,如0-5分、0-3分等,本说明书对此不做限制。在一些实施例中,标注方式可以包括人工标注和/或计算机标注。该步骤中样本图片标注方式与步骤520中样本图片的标注方式类似,在此不再赘述。

步骤530,将标注的样本图片输入第二初始模型进行训练,确定图片内容丰富度评价模型。

在一些实施例中,第二初始模型可以包括机器学习模型。例如,机器学习模型可以包括rnn(循环神经网络)模型、cnn(卷积神经网络)模型等一种或多种的组合。在一些实施例中,训练模块240可以将标注的样本图片作为第二初始模型的输入,将标注结果作为参考标注对第二初始模型进行训练。图片内容丰富度评价模型训练方式与图片质量评价模型的训练方式类似,更多内容可以参见步骤430,在此不再赘述。

应当注意的是,上述有关流程500的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程500进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。

本说明书实施例可能带来的有益效果包括但不限于(1)利用算法实现精选图片的确定,可以自动化的、快速的生成精选图片,提高了精选图片的挑选效率和准确率;(2)通过先聚类再评分的方式确定精选图片,可以将主题相似的图片划分到一个类别,降低了精选图片的重复率。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。

同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。

此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。

计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。

本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c++、c#、vb.net、python等,常规程序化编程语言如c语言、visualbasic、fortran2003、perl、cobol2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。

此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。

针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。

最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。

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