一种基于目标检测和度量学习的跨域商品匹配方法与流程

文档序号:32117062发布日期:2022-11-09 06:18阅读:58来源:国知局
一种基于目标检测和度量学习的跨域商品匹配方法与流程

1.本发明涉及数据处理技术领域,特别是涉及一种基于目标检测和度量学习的跨域商品匹配方法。


背景技术:

2.现行的商品匹配方法多是在已知待匹配商品的情况下,匹配该商品的同款商品,例如:单电商平台下不同店铺间的相同商品匹配,不同电商平台间的相同商品匹配。在这些场景下,待匹配商品的标题,商品属性以及商品图像都是已知的。同时,在电商领域下,商品的信息往往会具有某种程度的一致性,例如:商品的标题往往带有商品品牌、产地、型号、功效等共通信息。单个商品的图像也会突出该款商品以加深消费者的印象。因此现行方法会使用已知商品的标题、属性、图像等各个维度的信息进行商品匹配。
3.现行的商品匹配方法是在已知待匹配商品信息情况下,进行的商品匹配。这些方法是建立在消费者对商品信息已有初步了解的假设之上的。但很多情况下,消费者是不知道商品的具体信息的。消费者可能只是在图像中看到了该商品,却不知道该商品的具体信息。消费者想通过这张图像去找到特定的商品,以确定商品的品牌/款式等具体信息。现行的匹配方法没有办法满足这些需求。


技术实现要素:

4.本发明所要解决的技术问题是,克服现有技术的缺点,提供一种基于目标检测和度量学习的跨域商品匹配方法。
5.为了解决以上技术问题,本发明的技术方案如下:一种基于目标检测和度量学习的跨域商品匹配方法,包括,建立已知商品的数据集合,所述已知商品的数据集合中包括已知商品的表征向量;对于包括含待匹配商品的图像,获取图像中待匹配商品所在区域的集合,并判断该集合的长度是否大于0,若集合的长度等于0,则匹配流程结束,若集合的长度大于0,则基于待匹配商品所在区域的集合获取待匹配商品的表征向量集;计算待匹配商品的表征向量集与已知商品的数据集合中已知商品表征向量的欧式距离;对于待匹配商品x,筛选出与其距离最近的k个已知商品的表征向量;将筛选出的表征向量所对应的商品集合作为待匹配商品x的匹配结果。
6.作为本发明所述基于目标检测和度量学习的跨域商品匹配方法的一种优选方案,其中:所述建立已知商品的数据集合包括,建立已知商品的数据集合p={pi| p
i =(idi,imgi)},其中,idi是商品pi的唯一标识,imgi是商品pi的图像,且imgi中仅包含单一商品pi;采用目标检测模型mo获取imgi中商品所在区域集合ap={api|api=(x1i,y1i,x2i,
y2i)},其中,(x1i,y1i)为区域api左上角的坐标,(x2i,y2i)为区域api右下角的坐标,然后根据api对imgi进行裁剪,得到裁剪后的图像集合imgp={imgpi};采用商品表征模型mr获取图像集合imgp的表征向量集vp={vpi};将已知商品的数据集合p扩充为p={pi| p
i =(idi,imgi,api,vpi)}。
7.作为本发明所述基于目标检测和度量学习的跨域商品匹配方法的一种优选方案,其中:所述对于包括含待匹配商品的图像,获取图像中待匹配商品所在区域的集合包括,对于包括含待匹配商品的图像img
unkown
,采用目标检测模型mo获取待匹配商品所在区域集合au={aui|aui=(x1i,y1i,x2i,y2i)},m=size(au),其中,(x1i,y1i)为区域aui左上角的坐标,(x2i,y2i)为区域aui右下角的坐标,m为集合au的长度。
8.作为本发明所述基于目标检测和度量学习的跨域商品匹配方法的一种优选方案,其中:所述基于待匹配商品所在区域的集合获取待匹配商品的表征向量集包括,根据au对进行img
unkown
裁剪,得到裁剪后的图像集合imgu={imgui},i∈[1,m];采用商品表征模型mr获取图像集合imgu的表征向量集vu={vui},i∈[1,m]。
[0009]
作为本发明所述基于目标检测和度量学习的跨域商品匹配方法的一种优选方案,其中:在所述筛选出与其距离最近的k个已知商品的表征向量之后,还包括,根据距离阈值排除欧式距离过远的筛选结果,得到最终的个表征向量。
[0010]
本发明还公开了一种基于目标检测和度量学习的跨域商品匹配装置,包括,数据库模块,用于储存已知商品的数据;模型训练模块,用于对已知商品的数据进行筛选、加工以及数据标注,以获得目标检测模型和商品表征模型的训练数据,并使用训练数据分别训练目标检测模型和商品表征模型,并保存训练好的模型;数据预处理模块,用于使用训练完成的目标检测模型和商品表征模型计算出所述数据库模块中已知商品的表征向量,并将其储存至所述数据库模块中;商品匹配模块,用于使用训练完成的目标检测模型和商品表征模型计算待匹配商品的表征向量,并使用该表征向量与所述数据库模块中已知商品的表征向量作相似度计算,并根据相似度进行商品匹配,返回匹配结果。
[0011]
作为本发明所述基于目标检测和度量学习的跨域商品匹配装置的一种优选方案,其中:所述已知商品的数据包括商品标题、商品图像、商品id。
[0012]
本发明还公开了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述基于目标检测和度量学习的跨域商品匹配方法任一项所述的方法。
[0013]
本发明还公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述基于目标检测和度量学习的跨域商品匹配方法任一项所述的方法。
[0014]
本发明的有益效果是:本发明能够在未知商品的属性信息的情况下,使用包含该未知商品的图片实现非电商领域和电商领域间跨域的商品匹配。并且,若该图片中同时包含其他的未知商品,也能够通过目标检测模型和表征模型进行匹配。
附图说明
[0015]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0016]
图1为本发明提供的基于目标检测和度量学习的跨域商品匹配方法的流程示意图;图2为本发明提供的基于目标检测和度量学习的跨域商品匹配方法中步骤s101的具体流程示意图;图3为本发明提供的基于目标检测和度量学习的跨域商品匹配方法的另一种流程示意图;图4为本发明提供的基于目标检测和度量学习的跨域商品匹配装置的结构示意图;图5为本发明提供的计算机设备的结构示意图。
具体实施方式
[0017]
为使本发明的内容更容易被清楚地理解,下面根据具体实施方式并结合附图,对本发明作出进一步详细的说明。
[0018]
图1为本技术实施例提供的基于目标检测和度量学习的跨域商品匹配方法的流程示意图。该方法包括步骤s101~步骤s106,具体步骤说明如下:步骤s101:建立已知商品的数据集合,所述已知商品的数据集合中包括已知商品的表征向量。
[0019]
具体的,参见图2,该步骤包括以下步骤:步骤s101a:建立已知商品的数据集合p={pi| p
i =(idi,imgi)},其中,idi是商品pi的唯一标识,imgi是商品pi的图像,且imgi中仅包含单一商品pi。
[0020]
步骤s101b:采用目标检测模型mo获取imgi中商品所在区域集合ap={api|api=(x1i,y1i,x2i,y2i)},其中,(x1i,y1i)为区域api左上角的坐标,(x2i,y2i)为区域api右下角的坐标,然后根据api对imgi进行裁剪,得到裁剪后的图像集合imgp={imgpi}。
[0021]
步骤s101c:采用商品表征模型mr获取图像集合imgp的表征向量集vp={vpi}。
[0022]
步骤s101d:将已知商品的数据集合p扩充为p={pi| p
i =(idi,imgi,api,vpi)}。
[0023]
步骤s102:对于包括含待匹配商品的图像,获取图像中待匹配商品所在区域的集合,并判断该集合的长度是否大于0,若集合的长度等于0,则匹配流程结束,若集合的长度大于0,则基于待匹配商品所在区域的集合获取待匹配商品的表征向量集。
[0024]
具体的,对于包括含待匹配商品的图像img
unkown
,采用目标检测模型mo获取待匹配商品所在区域集合au={aui|aui=(x1i,y1i,x2i,y2i)},m=size(au),其中,(x1i,y1i)为区域aui左上角的坐标,(x2i,y2i)为区域aui右下角的坐标,m为集合au的长度。
[0025]
若m=0,则表明img
unkown
中不包含待检测商品,则返回空值,匹配流程结束。若m》0,则根据待匹配商品所在区域集合au对进行img
unkown
裁剪,得到裁剪后的图像集合imgu={imgui},i∈[1,m]。对于集合imgu,采用商品表征模型mr将其转化为待匹配商品的表征向量
集vu={vui},i∈[1,m]。
[0026]
步骤s103:计算待匹配商品的表征向量集与已知商品的数据集合中已知商品表征向量的欧式距离。即计算vu与p中商品表征向量vp的欧式距离dist
up
={dist
ij
},其中,dist
ij
表示vui与vpj之间的欧式距离。
[0027]
步骤s104:对于待匹配商品x,筛选出与其距离最近的k个已知商品的表征向量。
[0028]
具体的,对于待匹配商品x的表征向量vu
x
,x∈[1,m],选出与距离最近的k个已知商品的表征向量vp
y1
,vp
y2

···
vp
yk

[0029]
步骤s105:根据距离阈值排除欧式距离过远的筛选结果,得到最终的个表征向量。即根据距离阈值dist
thresh
排除距离过远的结果,得到最终的个表征向量vp
y1
,vp
y2

···

[0030]
步骤s106:将筛选出的表征向量所对应的商品集合作为待匹配商品x的匹配结果。即将商品集合={ vp
y1
,vp
y2

···
}作为待匹配商品x的匹配结果。
[0031]
图3为本技术实施例提供的基于目标检测和度量学习的跨域商品匹配方法的另一种流程示意图。
[0032]
由此,上述匹配方法能够在未知商品的属性信息的情况下,使用包含该未知商品的图片实现非电商领域和电商领域间跨域的商品匹配。并且,若该图片中同时包含其他的未知商品,也能够通过目标检测模型和表征模型进行匹配。
[0033]
图4为本实施例提供的基于目标检测和度量学习的跨域商品匹配装置的结构示意图。该装置包括数据库模块、模型训练模块、数据预处理模块以及商品匹配模块。
[0034]
具体的,数据库模块用于储存已知商品的数据。需要说明的是,本实施例中的已知商品的数据可分为两个部分,分别是商品图像数据和标注信息。
[0035]
其中,商品图像数据主要包含商品图像以及对应的商品id信息。商品图像数据又可以分为两个部分:商家商品图像和消费者商品图像。商家商品图像由商家拍摄,拍摄质量较高,且集中突出单款商品的特征,冗余信息较少。消费者商品图像由消费者拍摄,平均拍摄质量较低,且会包含无关商品,背景复杂,冗余信息较多。
[0036]
标注信息也主要包含两个部分,分别是商品所在区域的信息和商品的类目信息。其中,商品所在区域的信息以以bounding box的形式展现,boundingbox的格式为(x1,y1,x2,y2),其中(x1,y1)为bounding box左上角的坐标,(x2,y2)为bounding box右下角的坐标。 商品的类目信息,商品的类目信息和bounding box一一对应,表明商品所属类目。因此,标注信息的格式为[(x1,y2,x2,y2),category]。
[0037]
模型训练模块用于对已知商品的数据进行筛选、加工以及数据标注,以获得目标检测模型和商品表征模型的训练数据,并使用训练数据分别训练目标检测模型和商品表征模型,并保存训练好的模型。
[0038]
其中,目标检测模型是一个神经网络模型,该模型的输入是原始商品图片,输出是图片中商品类别,以及其在图中所处位置的坐标信息;一张原始商品图片可以包含多个目标商品,目标检测模型也会输出多个目标商品的类别和位置信息,且这些商品彼此不重合。目标检测模型一方面能够减少图片中的冗余信息,商品匹配的准确性;另一方面,通过图像截取,能够有效的减小数据量级,减小硬件负担,提升模型推理速度。
[0039]
商品表征模型也是一个神经网络模型。商品表征模型的输入是根据一组截取后的商品图像。它的输出是商品在表征空间的一组向量以及商品的类目。在训练时,输出的商品类目将被用于训练分类任务;表征向量则被用于对比学习的训练。通过两类任务的联合训练,提升商品匹配的准确性。
[0040]
数据预处理模块用于使用训练完成的目标检测模型和商品表征模型计算出所述数据库模块中已知商品的表征向量,并将其储存至数据库模块中,并与商品id形成一一对应的关系,以便后续进行商品匹配。
[0041]
商品匹配模块用于使用训练完成的目标检测模型和商品表征模型计算待匹配商品的表征向量,并使用该表征向量与所述数据库模块中已知商品的表征向量作相似度计算,并根据相似度进行商品匹配,返回匹配结果。
[0042]
参见图5,本实施例还提供了一种计算机设备,计算机设备的组件可以包括但不限于:一个或者多个处理器或者处理单元,系统存储器,连接不同系统组件(包括系统存储器和处理单元)的总线。
[0043]
总线表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0044]
计算机系统/服务器典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0045]
系统存储器可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)和/或高速缓存存储器。计算机设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统可以用于读写不可移动的、非易失性磁介质。可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线相连。存储器可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0046]
具有一组(至少一个)程序模块的程序/实用工具,可以存储在例如存储器中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本发明所描述的实施例中的功能和/或方法。
[0047]
计算机设备也可以与一个或多个外部设备例如键盘、指向设备、显示器等)通信。这种通信可以通过输入/输出(i/o)接口进行。并且,计算机设备还可以通过网络适配器与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。
[0048]
处理单元通过运行存储在系统存储器中的程序,从而执行本发明所描述的实施例中的功能和/或方法。
[0049]
上述的计算机程序可以设置于计算机存储介质中,即该计算机存储介质被编码有计算机程序,该程序在被一个或多个计算机执行时,使得一个或多个计算机执行本发明上
述实施例中所示的方法流程和/或装置操作。
[0050]
随着时间、技术的发展,介质含义越来越广泛,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载等。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0051]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0052]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0053]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0054]
除上述实施例外,本发明还可以有其他实施方式;凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1