掌桥专利:专业的专利平台
掌桥专利
首页

一种服务器和负样本采样方法

文献发布时间:2023-06-19 18:29:06


一种服务器和负样本采样方法

技术领域

本公开涉及机器学习技术领域,尤其涉及一种服务器和负样本采样方法。

背景技术

随着机器学习的发展,模型规模变大,深度也有所增大,为了加速模型收敛,如何选取训练所用到样本,尤其是负样本,成为模型训练过程中重点关注的问题。目前负样本采样通常选用静态负采样,例如从样本数据集中按照均匀分布采样得到负样本,但是静态负采样得到的负样本质量较低,影响模型训练的效率。

发明内容

为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种服务器和负样本采样方法,可以提高负样本的质量,提升模型训练的效率。

为了实现上述目的,本公开实施例提供的技术方案如下:

第一方面,本公开提供一种服务器,该服务器包括:

控制器,被配置为:获取初始样本集,初始样本集中包括多个样本数据对;

将初始样本集中任一样本数据对作为正样本,其余样本数据对作为负样本;分别将正样本,以及负样本中的第一负样本数据对输入到初始模型中,得到初始模型输出的对应于正样本的第一相似度分值,以及对应于第一负样本数据对的第二相似度分值;

根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,第一训练困难度用于表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;

根据负样本中每个负样本数据对的训练困难度,确定非均匀概率分布,并根据非均匀概率分布进行负采样得到目标负样本集。

第二方面,本公开提供一种负样本采样方法,包括:

获取初始样本集,初始样本集中包括多个样本数据对;

将初始样本集中任一样本数据对作为正样本,其余样本数据对作为负样本;分别将正样本,以及负样本中的第一负样本数据对输入到初始模型中,得到初始模型输出的对应于正样本的第一相似度分值,以及对应于第一负样本数据对的第二相似度分值;

根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,第一训练困难度用于表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;

根据负样本中每个负样本数据对的训练困难度,确定非均匀概率分布,并根据非均匀概率分布进行负采样得到目标负样本集。

第三方面,本公开提供了一种计算机可读存储介质,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第二方面所示的负样本采样方法。

第四方面,本公开提供了一种计算机程序产品,该计算机程序产品包括计算机程序,当该计算机程序在计算机上运行时,使得计算机实现如第二方面所示的负样本采样方法。

本公开实施例提供的技术方案与现有技术相比具有如下优点:

本公开实施例提供一种服务器和负样本采样方法,其中该服务器的控制器被配置为:首先获取用于模型训练的初始样本集,选取初始样本集中的任一样本数据对作为正样本,将除该正样本之外的所有样本数据对作为负样本,并将正样本,以及负样本中的第一负样本数据对输入至初始模型,得到初始模型输出的正样本所对应的第一相似度分值,以及负样本中第一负样本数据对所对应的第二相似度分值,进而根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,该第一训练困难度表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;进一步的,根据负样本中每个数据对的训练困难度确定用于负采样的非均匀概率分布,从而根据该非均匀概率分布进行负采样得到目标负样本集。实现根据初始样本集和初始模型计算用于负样本采样的非均匀概率分布,以更新用于模型训练的负样本,提升了负样本的质量,并且能够跟随模型变化进行负样本采样,从而有利于加速模型收敛,提高模型质量。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本公开实施例提供的一些实施例中的场景示意图;

图2为本公开实施例中控制装置的配置框图;

图3为本公开实施例中服务器的硬件配置框图;

图4是本公开实施例提供的一种服务器的结构示意图;

图5为本公开实施例提供的服务器的软件配置示意图;

图6为本公开实施例提供的一种负样本采样方法的流程示意图;

图7为本公开实施例获取初始样本数据集的示意图;

图8为本公开实施例提供的初始模型输出第一相似度分值的示意图;

图9为本公开实施例提供的初始模型输出第一相似度分值和第二相似度分值的示意图;

图10为本公开实施例提供的正样本和负样本的示意图。

具体实施方式

为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。

基于一定的策略构造与正例相对的负例的过程,称为负采样(NegativeSampling)。训练模型时需要将每个正样本与负样本进行比较,以学习到充分的、全面的信息,从而准确区分出正样本,提升样本的泛化能力,因此负样本的高质量采样能够保证模型的训练效果。

目前常用的负采样方法是静态负采样(Static Negative Sampling),静态负采样是从数据集中根据样本权重进行采样。例如,均匀负采样(Uniform Negative Sampling)和流行度负采样(Popularity-biased Negative Sampling,PNS);其中,均匀负采样是在样本数据集中随机选择得到负样本;流行度负采样是基于样本频次(frequency)或度(degree)从样本数据集中采样得到负样本,流行度越高的样本,被当作负样本的概率就越大。但是,静态负采样得到的负样本质量不高,并且静态负采样时每个样本权重不跟随模型训练发生变化,无法在模型训练过程中挑选出更难的样本帮助模型收敛。

另外,还有对式负采样或基于图的负采样方法,但是这两种负采样方法计算复杂,影响模型训练的速度。

为解决上述提到的部分或全部的技术问题,本公开实施例提供一种服务器和负采样方法,其中该服务器的控制器被配置为:首先获取用于模型训练的初始样本集,选取初始样本集中的任一样本数据对作为正样本,将除去该正样本之外的所有样本数据对作为负样本,并将正样本,以及负样本中第一负样本数据对输入至初始模型,得到初始模型输出的正样本所对应的第一相似度分值和负样本中第一负样本数据对所对应的第二相似度分值,进而根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,该第一训练困难度表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;进一步的,根据负样本中每个数据对的训练困难度确定用于负采样的非均匀概率分布,从而根据该非均匀概率分布在样本数据集中进行采样得到目标负样本集。实现根据初始样本集和初始模型计算用于负样本采样的非均匀概率分布,以更新用于模型训练的负样本,提升了负样本的质量,并且能够跟随模型变化进行负样本采样,从而有利于加速模型收敛,提高模型质量,提升模型训练的效果。

图1为本公开实施例提供的一些实施例中的场景示意图。如图1所示,图中包括控制装置100、显示设备200、智能设备300以及服务器400。用户可通过智能设备300或控制装置100操作显示设备200,在显示设备200上搜索音视频资源。

参考图1所示的场景,以用户通过控制装置100控制显示设备200为例,用户通过控制装置100在显示设备200输入查询语句,显示设备200基于该查询语句生成查询请求,发送至服务器400,以由服务器400响应于该查询请求,将该查询语句输入信息检索模型,以得到该信息检索模型输出得到的交互信息,并将该交互信息反馈给显示设备200。交互信息中包括但不限于:查询语句对应的音视频资源、查询语句关联的推荐资源。

其中,信息检索模型是预先训练得到的收敛的模型,针对该信息检索模型的训练过程中,负样本的挖掘和采样步骤如下:

服务器400首先获取用于模型训练的初始样本集,选取初始样本集中的任一样本数据对作为正样本,将除去该正样本之外的所有样本数据对作为负样本,以挖掘采样得到初始的负样本。进而利用初始的负样本先进行模型训练,在此过程中仍保持负样本采样,以对负样本进行更新。具体的,将正样本,以及负样本中第一负样本数据对输入至初始模型,得到初始模型输出的正样本所对应的第一相似度分值,以及负样本中第一负样本数据对所对应的第二相似度分值,再根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,该第一训练困难度表征第一负样本数据对相较于正样本的难易程度,需要说明的是,选取一定量的训练困难度较大的负样本有利于模型的训练。

与计算第一负样本数据对的第一训练困难度的过程相同,遍历初始样本集得到负样本中每个负样本数据对的训练困难度;进一步的,根据负样本中每个数据对的训练困难度确定用于负采样的非均匀概率分布,从而根据该非均匀概率分布在样本数据集中进行采样得到目标负样本集。

服务器400通过上述步骤采样得到目标负样本,上述负采样过程伴随模型训练过程,能够根据模型参数的变化得到不同的用于负采样的非均匀概率分布,实现高效、便捷地采样得到高质量的负样本,有利于加速模型收敛,提升模型训练效果。

在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信、蓝牙协议通信,无线或其他有线方式来控制显示设备200。用户可以通过遥控器上按键,语音输入、控制面板输入等输入用户指令,来控制显示设备200。在一些实施例中,也可以使用移动终端、平板电脑、计算机、笔记本电脑、和其他智能设备以控制显示设备200。

在一些实施例中,智能设备300可与显示设备200安装软件应用,通过网络通信协议实现连接通信,实现一对一控制操作的和数据通信的目的。也可以将智能设备300上显示音视频内容传输到显示设备200上,实现同步显示功能显示设备200还与服务器400通过多种通信方式进行数据通信。可允许显示设备200通过局域网(Local Area Network,LAN)、无线局域网(Wireless Local Area Network,WLAN)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。显示设备200,可以液晶显示器、有机发光半导体(Organic Light-Emitting Diode,OLED)显示器、投影显示设备。显示设备200除了提供广播接收电视功能之外,还可以附加提供计算机支持功能的智能网络电视功能。

图2为本公开实施例中控制装置的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。通信接口130用于和外部通信,包含WIFI芯片,蓝牙模块,NFC或可替代模块中的至少一种。用户输入/输出接口140包含麦克风,触摸板,传感器,按键或可替代模块中的至少一种。

图3为本公开实施例中服务器的硬件配置框图。如图3所示,服务器400包括:通信器210、检测器220、外部装置接口230、存储器240、控制器250、供电电源等。

其中,控制器250包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),随机存取存储器(RandomAccess Memory,RAM),只读存储器(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口,通信总线(Bus)等。检测器220用于采集外部环境或与外部交互的信号。

在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,来控制服务器400的工作和响应用户的操作。控制器250控制服务器400的整体操作。

通信器210,用于根据各种通信协议类型与其它设备进行通信。例如:通信器可以包括无线保真(Wireless Fidelity,Wi-Fi)模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。服务器400可以通过通信器210与其它设备建立控制信号和数据信号的发送和接收。

外部装置接口230可以包括但不限于如下:高清多媒体接口(High DefinitionMultimedia Interface,HDMI)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(Composite Video Broadcast Signal,CVBS)、通用串行总线输入接口(Universal SerialBus,USB)、RGB端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。

本公开实施例提供一种服务器400,该服务器400包括:

控制器250,被配置为:获取初始样本集,初始样本集中包括多个样本数据对;

将初始样本集中任一样本数据对作为正样本,其余样本数据对作为负样本;分别将正样本,以及负样本中的第一负样本数据对输入到初始模型中,得到初始模型输出的对应于正样本的第一相似度分值,以及对应于第一负样本数据对的第二相似度分值;

根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,第一训练困难度用于表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;

根据负样本中每个负样本数据对的训练困难度,确定非均匀概率分布,并根据非均匀概率分布进行负采样得到目标负样本集。

上述服务器首先按照均匀分布进行负采样作为初始的负样本用于模型训练,并在模型训练的过程中根据模型输出的相似度分值,确定初始的负样本中各个负样本数据对的训练困难度,训练困难度越大表明对应的负样本数据对的是难样本的概率越大,需要说明的是模型训练过程中适当选取难样本进行训练有利于加速模型收敛。在得到各个负样本数据对的训练困难度之后,计算非均匀概率分布,以得到各个负样本数据对被采样成为负样本的概率,进而更新用于模型训练的负样本得到目标负样本集,提升了负样本的质量,有利于提升模型的训练效果。

在一些实施例中,控制器250,根据负样本中每个负样本数据对的训练困难度,确定非均匀概率分布,具体被配置为:根据负样本中每个负样本数据对的训练困难度,确定累积权重均值和累积权重二阶矩;根据累积权重均值和累积权重二阶矩,计算累积方差;根据累积权重均值和累积方差,计算非均匀概率分布。

在一些实施例中,控制器250,根据非均匀概率分布对样本数据集进行负采样得到目标负样本之后,还被配置为:

基于正样本和目标负样本对初始模型进行训练,计算损失函数值;

在损失函数值大于预设阈值的情况下,更新初始模型的参数,以对参数更新后的初始模型进行下一轮的训练;

在损失函数值小于或等于预设阈值的情况下,训练得到收敛的目标模型。

在一些实施例中,控制器250,根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,具体被配置为:

计算第一相似度分值和第二相似度分值之间的差值;

根据差值确定第一负样本数据对的第一训练困难度,第一训练困难度与差值成正相关。

在一些实施例中,控制器250,获取初始样本集,具体被配置为:

获取样本数据集;

按照均匀分布对样本数据集进行采样,得到初始样本集。

在一些实施例中,控制器250,根据非均匀概率分布进行负采样得到目标负样本,具体被配置为:

根据非均匀概率分布对样本数据集进行负采样得到难样本集;

根据均匀分布对样本数据集进行负采样得到易样本集;

按照第一预设比例从难样本集中采样得到难样本数据对,按照第二预设比例从易样本集中采样得到易样本数据对,组合难样本数据对和易样本数据对得到目标负样本集。

在一些实施例中,控制器250,将初始样本集中任一样本数据对作为正样本,其余样本数据对作为负样本,具体被配置为:

将初始样本集划分为N个初始子样本集;

将N个初始子样本集中任一初始子样本集的任一样本数据对作为正样本,将任一初始子样本集中除任一样本数据对之外的样本数据对,以及任一初始子样本集之外的其余初始子样本集作为负样本。

在一些实施例中,正样本中包括第一查询样本和第一查询样本对应的第一交互样本;第一负样本数据对中包括第二查询样本和第二查询样本对应的第二交互样本;

控制器250,分别将正样本,以及负样本中的第一负样本数据对输入到初始模型中,得到初始模型输出的对应于正样本的第一相似度分值和对应于第一负样本数据对的第二相似度分值,具体被配置为:

将正样本输入到初始模型中,初始模型根据第一查询样本得到第一交互预估值,并计算第一交互预估值和第一交互样本的第一相似度分值;

将第一负样本数据对输入到初始模型中,初始模型根据第二查询样本得到第二交互预估值,并计算第二交互预估值和第二交互样本的第二相似度分值。

图4是本公开实施例提供的一种服务器的结构示意图。参见图4服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器,还可以是云服务器。本公开实施例中提供的服务器400可以向显示设备200提供各种内容和互动。

本公开实施例提供的服务器400包括中央处理器(Central Processing Unit,CPU)401、包括随机存取存储器(Random Access Memory,RAM)402和只读存储器(Read-OnlyMemory,ROM)403的系统存储器404,以及连接系统存储器404和中央处理单元401的系统总线405。服务器400还包括帮助计算机内的各个器件之间传输信息的基本输入/输出(Input/Output,I/O)系统406,和用于存储操作系统413、应用程序414和其他程序模块415的大容量存储设备407。

基本输入/输出系统406包括有用于显示信息的显示器408和用于用户输入信息的诸如鼠标、键盘之类的输入设备409。其中显示器408和输入设备409都通过连接到系统总线405的输入/输出控制器410连接到中央处理单元401。基本输入/输出系统406还可以包括输入/输出控制器410以用于接收和处理来自键盘、鼠标或电子触控笔等多个其他设备的输入。类似地,输入/输出控制器410还提供输出到显示屏、打印机或其他类型的输出设备。

大容量存储设备407通过连接到系统总线405的大容量存储控制器(未示出)连接到中央处理单元401。大容量存储设备407及其相关联的计算机可读介质为服务器400提供非易失性存储。也就是说,大容量存储设备407可以包括诸如硬盘或只读光盘(CompactDiscRead-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。

系统存储器404和大容量存储设备407可以统称为存储器。

根据本公开的各种实施例,服务器400还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器400可以通过连接在系统总线405上的网络接口单元411连接到网络412,或者说,也可以使用网络接口单元411来连接到其他类型的网络或远程计算机系统(未示出)。

如图5所示,图5为本公开实施例提供的服务器的软件配置示意图,如图5所示,将系统分为四层,从上至下分别为应用程序(Applications)层(简称“应用层”),应用程序框架(Application Framework)层(简称“框架层”),安卓运行时(Android runtime)和系统库层(简称“系统运行库层”),以及内核层。

在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(Window)程序、系统设置程序或时钟程序等;也可以是第三方开发者所开发的应用程序。在具体实施时,应用程序层中的应用程序包不限于以上举例。

框架层为应用程序提供应用编程接口(Application Programming Interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处理中心,这个中心决定让应用层中的应用程序做出动作。应用程序通过API接口,可在执行中访问系统中的资源和取得系统的服务。

本公开实施例中应用程序框架层包括管理器(Managers),内容提供者(ContentProvider)等,其中管理器包括以下模块中的至少一个:活动管理器(Activity Manager)用与和系统中正在运行的所有活动进行交互;位置管理器(Location Manager)用于给系统服务或应用提供了系统位置服务的访问;文件包管理器(Package Manager)用于检索当前安装在设备上的应用程序包相关的各种信息;通知管理器(Notification Manager)用于控制通知消息的显示和清除。活动管理器用于管理各个应用程序的生命周期以及通常的导航回退功能,比如控制应用程序的退出、打开、后退等。

在一些实施例中,系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系统运行库层中包含的C/C++库以实现框架层要实现的功能。

在一些实施例中,内核层是硬件和软件之间的层。如图5所示,内核层至少包含以下驱动中的至少一种:蓝牙驱动、WIFI驱动、USB驱动、HDMI驱动以及电源驱动等。

为了更加详细的说明本方案,以下将以示例性的方式结合图6进行说明,可以理解的是,图6中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本公开实施例中提供的负样本采样方法为准。

如图6所示,图6为本公开实施例提供的一种负样本采样方法的流程示意图,该方法包括如下步骤S601~S604:

S601、获取初始样本集。

其中,初始样本集中包括多个样本数据对,每个数据对包括一个查询样本以及与该查询样本对应的交互样本。

一些实施例中,服务器首先使用目前已经成熟的技术收集样本数据集D={(c,k)},其中,c表示查询样本,k表示查询样本c对应的交互样本;然后按照均匀分布对样本数据集D进行采样,得到

示例性的,图7为本公开实施例获取初始样本数据集的示意图,如图7所示,首先获取样本数据集D,然后按照均匀分布从样本数据集中采样得到|C|个样本数据对,按照均匀分布表明样本数据集D中每个样本数据对被采样的概率是相同的,将得到的|C|个样本数据对作为初始样本集C放入采样池。

S602、将初始样本集中任一样本数据对作为正样本,其余样本数据对作为负样本;分别将正样本,以及负样本中的第一负样本数据对输入到初始模型中,得到初始模型输出的对应于正样本的第一相似度分值,以及对应于第一负样本数据对的第二相似度分值。

其中,初始模型可以是包括双编码器的信息检索模型,也可以是包括双塔模型的推荐系统模型,以上仅为示例性说明,本公开并不限定初始模型的种类。需要说明的是,本公开实施例中所提及的初始模型是未训练完成的、不收敛的模型,是训练过程中改变模型参数过程中的任意一轮训练对应的模型,也即初始模型是预设模型参数变化至最终收敛的模型参数这中间过程中的任意一个模型,并不特指第一轮或第一次训练的模型。

初始模型的输入是样本数据对,输出是样本数据对中交互样本与预估交互值的相似度分值,可以用S

一些实施例中,将初始样本集C中任一样本数据对(c

示例性的,参考图8所示,图8为本公开实施例提供的初始模型输出第一相似度分值的示意图,将正样本输入初始模型,正样本是初始样本集C中的任意一个样本数据对,该样本数据对包括第一查询样本和第一交互样本,将第一查询样本和第一交互样本经由初始模型中的神经网络计算处理之后得到第一交互预估值,然后初始模型将第一交互预估值和第一交互样本进行比较,计算两者的第一相似度分值。

将负样本中任意一个负样本数据对作为第一负样本数据对输入初始模型,初始模型输出得到第二相似度分值的过程与上述相同或相似,本公开在此不做赘述。

如图9所示,图9为本公开实施例提供的初始模型输出第一相似度分值和第二相似度分值的示意图。从初始样本集C中选择任意一个样本数据对作为正样本,则其余样本数据对作为负样本,然后将正样本输入初始模型,得到初始模型输出的第一相似度分值,以及将负样本中任意一个负样本数据(第一样本数据对)对输入初始模型,得到初始模型输出的第二相似度分值。本公开实施例在将正样本以及第一负样本数据输入初始模型,是初始模型训练的一部分,可以计算损失函数值,调整初始模型的参数,同时根据更新后的初始模型进行新的负样本采样。计算损失函数值,调整初始模型的参数的过程将在后续步骤中进行介绍,在此不做赘述。

一些实施例中,参考图10所示,图10为本公开实施例提供的正样本和负样本的示意图。将初始样本集C划分为N个初始子样本集,针对N个初始子样本集中任意一个初始子样本集R,将初始子样本集R中任意一个样本数据对(c

S603、根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度。

其中,第一训练困难度用于表征第一负样本数据对相较于正样本的难易程度,第一训练困难度越大表明该第一负样本数据对是难样本的概率较大。需要说明的是,在使用样本数据对模型进行训练的过程中,那些模型无法正确识别的训练样本能够产生更大的反向传播误差,由于该误差是模型更新参数的决定性依据,因此这类样本在模型参数更新过程中起到关键性作用,称其为难样本。

一些实施例中,计算第二相似度分值和第一相似度分值之间的差值,进而根据该差值确定第一负样本数据对的第一训练困难度,该第一训练困难度与该差值成正相关。

可选的,按照如下公式(1)计算第一负样本数据对的第一训练困难度:

w(j|c

其中,w(j|c

与计算第一训练困难度的方法相同,本公开遍历初始样本集,得到负样本中每个负样本数据对的训练困难度。

S604、根据负样本中每个负样本数据对的训练困难度,确定非均匀概率分布,并根据非均匀概率分布进行负采样得到目标负样本集。

一些实施例中,根据负样本中每个样本数据对的训练困难度,确定累积权重均值,可选的,本公开实施例中按照如下公式(2)确定累积权重均值v

v

其中,α是滑动平均的超参数,α∈[0,1]。

根据负样本中每个样本数据对的训练困难度,确定累积权重二阶矩,可选的,本公开实施例中按照如下公式(3)确定累积权重二阶矩m

m

进一步的,根据累积权重均值和累积权重二阶矩计算累积方差,可选的,本公开实施例中按照如下公式(4)确定累积方差d

更进一步的,根据累积权重均值、累积方差计算用于负样本采样的非均匀概率分布,可选的,本公开实施例中按照如下公式(5)计算非均匀概率分布:

得到样本数据集中每个样本数据对被选为负样本的概率。

在确定上述非均匀概率分布之后,根据该非均匀概率分布对样本数据集D进行采样,得到目标负样本集。

一些实施例中,按照上述非均匀概率分布对样本数据集进行负采样先得到难样本集(hard),并按照均匀分布对样本数据集进行负采样得到易样本集(easy),进一步的按照第一预设比例从难样本集中采集得到难样本数据对,按照第二预设比例从易样本集中采样得到易样本数据对,组合难样本数据对和易样本数据对得到目标负样本集。

示例性的,第一预设比例设置为30%,第二预设比例为70%。按照非均匀概率分布从样本数据集D中采样得到难样本集,按照均匀概率分布从样本数据集D中采样得到易样本集,进而根据30%的第一预设比例从难样本集中有放回地采样得到难样本数据对,根据70%的第二预设比例从易样本集中有放回地采样得到易样本数据对,组合作为目标负样本集,更新采样池中初始的负样本,提升负样本质量。

一些实施例中,在根据非均匀概率分布采样得到目标负样本集之后,基于正样本和目标负样本集对初始模型进行训练,需要说明的是,正样本是之前按照均匀分布采集得到的,本公开主要进行负样本采样,不改变初始的正样本,以避免破坏正样本的原始分布影响训练效果。利用正样本和目标负样本集进行训练的过程中,计算损失函数值,损失函数可以是改进后的归一化指数(softmax)交叉熵函数,本公开对此不做限定。判断损失函数值是否小于或等于预设阈值,在损失函数值小于预设阈值的情况下,则训练得到收敛的目标模型,利用根据非均匀概率分布采样到的目标负样本集进行训练,由于目标负样本数据集的质量较高,提升了模型训练的效率,也提升了模型训练的效果。而在损失函数值大于预设阈值的情况下,表示模型并未收敛,需要进行梯度回传,更新模型的参数,进行下一轮的模型训练,直至模型收敛或者达到预先设置最大训练轮数。

综上,本公开实施例提供一种负样本采样方法,其中该服务器的控制器被配置为首先获取用于模型训练的初始样本集,选取初始样本集中的任一样本数据对作为正样本,将除去该正样本之外的所有样本数据对作为负样本,并将正样本和负样本中第一负样本数据对输入至初始模型,得到初始模型输出的正样本对应的第一相似度分值和负样本中第一负样本数据对所对应的第二相似度分值,进而根据第一相似度分值和第二相似度分值计算第一负样本数据对的第一训练困难度,该第一训练困难度表征第一负样本数据对相较于正样本的难易程度;遍历初始样本集得到负样本中每个负样本数据对的训练困难度;进一步的,根据负样本中每个数据对的训练困难度确定用于负采样的非均匀概率分布,从而根据该非均匀概率分布在样本数据集中进行采样得到目标负样本集。实现根据初始样本集和初始模型计算用于负样本采样的非均匀概率分布,以更新用于模型训练的负样本,提升了负样本的质量,并且能够跟随模型变化进行负样本采样,从而有利于加速模型收敛,提高模型质量,提升模型训练的效果。

本公开实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述负样本采样方法执行的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

其中,该计算机可读存储介质可以为只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。

本公开提供一种计算机程序产品,该计算机程序产品中包括计算机程序,当该计算机程序在计算机上运行时,使得所述计算机实现上述的负样本采样方法。

本领域技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。

本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本公开中,处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

本公开中,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。

本公开中,计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述在一些实施例中讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。

相关技术
  • 一种样本采样方法、样本采样装置、服务器和存储介质
  • 一种金融电销场景中对负样本做消减的采样方法
技术分类

06120115585498