一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于分布外检测的似然比的制作方法

2022-03-02 07:36:43 来源:中国专利 TAG:

用于分布外检测的似然比
1.相关申请
2.本技术要求于2019年6月5日提交的美国临时专利申请号62/857,774的优先权和权益。美国临时专利申请号62/857,774在此通过引用整体地并入本文。
技术领域
3.本公开通常涉及机器学习。更具体地,本公开涉及用于对分布外输入的改进检测的系统和方法。术语“分布内(in-distribution)”用于描述来自某个数据分布的样本的数据集。该分布可以与多个“分布内类”相关联,这些“分布内类”描述可能的分布内数据集的空间的相应部分。相比之下,术语“分布外”(out-of-distribution,odd)是指不是来自分布的样本的数据集。该分布可以例如是已用于训练机器学习系统的训练示例的分布。数据集可以是通过对真实世界尤其是真实世界中的物理、生物、医学或化学物体或事件的观察结果和/或测量结果所获得的数据集。例如,它们可以是对在真实世界中观察到的核酸序列进行编码的数据集和/或对由一个或多个传感器(例如包括视频摄像头和/或麦克风的相机)捕获的传感器数据(例如图像或声音)进行编码的数据集。


背景技术:

4.对于许多机器学习系统,能够检测异常的或与训练中使用的数据明显不同的数据对维持安全且可靠的预测可能至关重要。这对于已表明以高置信度错误地将ood输入分类成分布内类的深度神经网络分类器来说特别重要。这种行为在预测通知诸如医学诊断的真实世界决策时可能具有严重后果,例如,错误地将健康样本分类为致病样本或者反之亦然可能具有极高成本。因此,处理ood输入(也称为分布转移)的重要性,已被认为是ai安全性的一个重要问题。
5.其中ood检测是重要的一个示例子问题是细菌识别和许多其他类型的医学诊断的子问题。例如,对诸如败血症的传染病的诊断和治疗依赖于对血液中细菌感染的准确检测。已开发了若干机器学习方法通过对已知基因组序列进行分类来执行细菌识别,包括最新型的深度学习方法。
6.然而,即使神经网络分类器实现了如通过交叉证实所测量的高准确性,部署它们也是有挑战性的,因为真实数据高度可能的包含来自训练数据中不存在的未见类的基因组。特别地,多年来持续逐渐地发现不同的细菌类,并且据估计60%-80%的基因组序列属于尚不为人知的细菌。因此,在现有细菌类上训练分类器并部署它可能导致ood输入被以高置信度错误地分类为来自训练数据中的类之一。另外,ood输入还可以是来自诸如人类、植物、真菌等的细菌宿主基因组的污染,这些也需要被检测并从预测中排除。因此,具有用于准确地检测ood输入的方法对使得能够将机器学习方法实际应用于此重要问题至关重要。除了此示例子问题之外,上述动态和挑战可推广到许多不同的场景/问题,包括可以存在ood输入并且对此类ood输入的错误分类会有问题的任何场景。
7.在当前技术水平下,一种用于检测ood输入的流行策略是在训练数据上训练生成
模型并且在测试时间使用该生成模型来检测ood输入。然而,最近的研究已表明,在图像数据集上训练的深度生成模型能够向ood输入指配更高的似然度(也就是说,深度生成模型可以使用比深度生成模型指配给分布内输入更高的似然度错误地将ood输入分类为在分布内类之一中)。因此,这些现有方法在一些场景中可能提供明显错误且不可靠的结果。


技术实现要素:

8.本公开的实施例的各方面和优点将在以下描述中部分地阐述,或者能够从说明书中学习,或者能够通过实施例的实践来学习。
9.本公开的一个示例方面涉及一种执行分布外检测的计算系统。该计算系统包括一个或多个处理器和一种或多种非暂时性计算机可读介质。一种或多种非暂时性计算机可读介质共同地存储在包括多个分布内训练示例的分布内训练数据集(即,训练数据是来自分布的样本)上训练的机器学习生成语义模型。机器学习生成语义模型被配置成接收并处理数据输入以生成该数据输入的第一似然值。第一似然值作为数据输入是来自分布的样本的似然度的第一指示。一种或多种非暂时性计算机可读介质共同地存储在包括多个背景训练示例的背景训练数据上训练的机器学习生成背景模型。已通过多个分布内训练示例中的一个或多个分布内训练示例的扰动生成了多个背景训练示例中的一个或多个背景训练示例。机器学习生成背景模型被配置成接收并处理数据输入以生成该数据输入的第二似然值。第二似然值作为数据输入是来自背景分布的样本的似然度的第二指示。一种或多种非暂时性计算机可读介质共同地存储指令,当由一个或多个处理器执行时,这些指令使计算系统执行操作,所述操作包括:至少部分地基于由机器学习生成语义模型生成的第一似然值和由机器学习生成背景模型生成的第二似然值来确定数据输入的似然比值;以及至少部分地基于似然比值来预测数据输入是否是分布外输入。
10.本公开的另一示例方面涉及一种用于执行分布外检测的计算机实现的方法。该方法包括由一个或多个计算设备获得包括多个分布内训练示例的分布内训练数据集。该方法包括由一个或多个计算设备使用分布内训练数据集来训练机器学习生成语义模型。该方法包括由一个或多个计算设备扰动多个分布内训练示例中的一个或多个分布内训练示例以生成一个或多个背景训练示例。该方法包括由一个或多个计算设备使用包括一个或多个背景训练示例的背景训练数据集来训练机器学习生成背景模型。该方法包括由一个或多个计算设备将数据输入输入到已在分布内训练数据集上训练的机器学习生成语义模型中。该方法包括由一个或多个计算设备接收数据输入的第一似然值作为机器学习生成语义模型的输出。该方法包括由一个或多个计算设备将数据输入输入到已在背景训练数据集上训练的机器学习生成背景模型中。该方法包括由一个或多个计算设备接收数据输入的第二似然值作为机器学习生成背景模型的输出。该方法包括由一个或多个计算设备至少部分地基于由机器学习生成语义模型生成的第一似然值和由机器学习生成背景模型生成的第二似然值来确定数据输入的似然比值。该方法包括至少部分地基于似然比值来预测数据输入是否是分布外输入。
11.本公开的其他方面涉及各种系统、装置、非暂时性计算机可读介质、用户界面和电子设备。
12.参考以下描述和所附权利要求,本公开的各种实施例的这些及其他特征、方面和
优点将变得被更好地理解。被并入在本说明书中并构成本说明书的一部分的附图图示本公开的示例实施例,并且与说明书一起用来说明相关原理。
附图说明
13.在参考附图的说明书中阐述了针对本领域的普通技术人员的实施例的详细讨论,在附图中:
14.图1a描绘了根据本公开的示例实施例的示例计算系统的框图。
15.图1b描绘了根据本公开的示例实施例的示例计算设备的框图。
16.图1c描绘了根据本公开的示例实施例的示例计算设备的框图。
17.图2描绘了根据本公开的示例实施例的示例ood检测和分类系统的框图。
18.图3描绘了根据本公开的示例实施例的用于生成ood检测系统的示例方法的流程图。
19.跨多个图重复的附图标记旨在标识各种实施方式中的相同特征。
具体实施方式
20.概述
21.通常,本公开涉及用于执行对分布外(ood)输入的改进检测的系统和方法。特别地,用于ood检测的当前基于深度生成模型的方法显著地受到与分布内示例相关的语义内容的负面影响,并且难以从与分布内示例相关的语义内容中区分种群水平背景统计(即,区分以下两部分:对于将输入分类成多个类中的对应类来说相关或者特定于将输入分类成多个类中的对应类的分布内输入的一部分(“语义内容”),以及对于变成这种类的分类来说无关或者不太特定于变成这种类的分类并且可能与ood输入有共同之处的分布内输入的一部分(“背景统计”)。事实上,甚至已经在实验中观察到这种方法以向ood输入指配更高的似然度,而这与所期望的行为相反。为了解决此问题,本公开提出了一种用于深度生成模型的似然比方法,该方法有效地校正这些混杂背景统计。
22.具体地,所提出的似然比方法能够利用学习分布内训练示例的语义特征的语义模型和学习校正训练示例的背景统计的背景模型这两者。特别地,能够在分布内训练示例集上训练语义模型,同时能够在背景训练示例集上训练背景模型,其中背景训练示例中的至少一些是通过破坏(corruption)分布内训练示例的语义内容(例如,通过分布内训练示例的扰动(perturbation))而生成的。
23.在训练之后,能够基于从由针对数据输入的语义模型和背景模型输出的相应似然值生成的似然比值来执行针对给定数据输入的ood检测。以这种方式使用背景模型能够增强ood检测的分布内特定特征,从而导致ood检测的最先进的性能。
24.所提出的方法已经在实验中表明在深度生成模型对图像数据集进行的ood检测方面显著地优于原始似然度。作为示例,通过完全引用并入到本公开中并形成本公开的一部分的美国临时专利申请no.62/857,774和jie ren等人的“分布外检测的似然比(likelihood ratios for out-of-distribution detection)”,arxiv:1906.02845,包含了演示所提出的方法在改进ood检测中的功效的示例实验结果。
25.本公开的系统和方法提供许多技术效果和益处。作为一个示例,所提出的技术有
效地校正背景分量,从而显著地改进对多个输入数据模态进行ood检测的准确性。通过改进ood检测,能够改进系统的基础准确性,例如,通过防止ood输入被下游分类器误分类。因此,所提出的技术能够改进执行输入的分类的系统的准确性,从而导致更完善的系统性能。
26.作为一个示例,在执行细菌识别或其他类型的医学诊断的系统中,能够减少不准确诊断(例如,假阳性)的数目,从而改进基于所提供的诊断提供的医学护理的功效并且减少与不必要和/或不正确的医学处置相关联的成本。因此,能够以降低的成本来实现完善的卫生保健结果。
27.作为另一示例技术效果和益处,通过改进ood检测,能够将机器学习系统的部署扩展到分类准确性至关重要的新用途和场景。因此,通过减少对ood输入的误分类,能够改进ai安全性,从而允许带来机器学习系统的好处以承受新问题领域或现有挑战。此外,能够增加公众对机器学习应用的信心。
28.作为另一示例技术效果和益处,通过使用本公开的经改进的ood检测系统来在由下游系统组件(例如,分类器)处理之前筛选输入,能够减少由这种下游组件对ood输入的不必要且不合需要的处理。因此,能够保存诸如处理器使用、存储器使用、网络带宽等计算资源。换句话说,通过在处理流水线的早期阶段识别和筛选ood输入,能够减少下游资源对这种ood输入的浪费应用。
29.现在将更详细地讨论本文描述的技术的示例实施方式。
30.示例表示法和问题陈述
31.假设存在根据分布p
*
(x,y)采样的(x,y)对的分布内数据集其中,x是所提取的特征向量或原始输入并且是将成员资格指配给k个分布内类之一的标签。为了简单,本讨论将输入假定为离散的,例如,对于基因组序列xd∈{a,c,g,t}而对于图像xd∈{0,...,255},其中,d是整数并且xd表示x的第d个分量。
32.一般而言,ood输入是根据除p
*
(x,y)以外的基础分布生成的样本(x,y)。如本文所使用的,如果也就是说,类y不属于k个分布内类之一,则输入(x,y)被认为是ood。ood检测系统的一个目标是准确地检测输入x是否是ood。
33.现有生成模型方法的失败
34.某些现有方法涉及使用在分布内数据上训练的判别分类器(的集合)的预测来计算统计数据,例如,采取预测分布p(y|x)的置信度或熵。
35.替代方案是使用基于生成模型的方法,这些方法有吸引力是因为它们不需要标记数据并且直接对输入分布进行建模。这些方法将生成模型p(x)拟合到输入数据,然后评价新输入在该模型下的似然度(即,从p(x)中提取新输入的似然度)。然而,最近的工作已经强调这种方法在图像上进行ood检测的显著问题,表明诸如glow和pixelcnn的深度生成模型有时向ood指配比分布内输入更高的似然度。
36.类似地,美国临时专利申请no.62/857,774和jie ren等人的“分布外检测的似然比(likelihood ratios for out-of-distribution detection)”,arxiv:1906.02845中包含的示例实验演示了基于密度估计的方法对于基因组学中的ood检测显示出类似的失败。特别地,这些示例实验表明在模型下的对数似然严重地受到序列的gc含量影响。gc含量被定义为作为g或c的碱基的百分比,并且在基因组研究中被广泛地用作用于描述整体基因组
组成的基本统计,并且研究已表明细菌具有惊人的基因组gc含量的多样性,从16.5%到75%。
37.来自类似群体的细菌往往在种群水平下具有类似的gc含量,但是它们也具有能够很好地将它们彼此区分开的特征生物模式。gc含量的混杂效果使似然度作为用于ood检测的分数变得不太可靠,因为ood输入可以产生比分布内输入更高的似然度,因为它具有高gc含量,而不一定是因为它包含特定于分布内细菌类的特征模式。
38.因此,更一般地,可以说现有生成模型方法的失败归因于生成模型无法学习以区分待分析的新输入中的背景内容和包括在分布内示例中的语义内容。
39.用于ood检测的示例似然比
40.本部分首先提供高级概念概述,然后描述如何使它适应深度生成模型的示例。
41.示例高级概念概述
42.假定输入x由如下两个分量组成:(1)由种群水平背景统计表征的背景分量,以及(2)由特定于分布内数据的模式表征的语义分量。例如,能够将图像建模为背景加上物体;能够将文本认为是高频无用词加上语义词的组合;能够将基因组建模为背景序列加上基序;和/或能够将其他模态的数据分叉成语义内容和背景内容。
43.更正式地,对于d维输入x=x1,...,xd,本公开的各方面假定存在没有观察到的变量z=z1,...,zd,其中zd∈{b,s}指示输入xd的第d维是从背景分量还是语义分量生成的。对语义部分和背景部分进行分组,能够将输入因式分解为x={xb,xs},其中xb={xd|zd=b,d=1,...,d}。为了简单,假定背景和语义组件是独立地生成的。然后可以将似然度分解如下,
44.p(x)=p(xb)p(xs)。
ꢀꢀꢀ
(1)
45.训练并评价深度生成模型的现有方法未在似然度上区分这两项。然而,本公开认识到可以优选仅仅使用语义似然度p(xs)来避免似然项受到背景项支配(例如,使得如果输入是具有相同背景分量但不同语义分量的ood输入,则似然度是类似的)。在实践中,仅观察到x,并且将输入拆分成背景和语义部分{xb,xs}并不总是那么容易。
46.因此,作为实用的替代方案,本公开提出通过扰动输入来训练背景模型。向输入添加适量的扰动能够破坏数据中的语义结构,因此在扰动输入上训练的模型仅捕获种群水平背景统计。
47.更具体地,假定p
θ
(
·
)是使用分布内数据训练的模型,并且是捕获一般背景统计的背景模型。本公开提供被定义如下的似然比统计:
[0048][0049]
其中,使用来自等式1的因式分解。
[0050]
假定(i)的两个模型同样好地捕获背景信息,即并且(ii)p
θ
(xs)比更多峰(例如,预测更大且更频繁的似然度),因为前者是在包含语义信息的数据上训练的,然而后者模型θ0是使用具有噪声扰动的数据来训练的。然后,能够将似然比近似为
[0051][0052]
因此,通过采取该比,背景分量xb的似然度被抵消,而仅剩下语义分量xs的似然度。因此,所提出的方法产生与背景模型相比捕获语义的重要性的背景对比分数。
[0053]
似然比对自回归模型的示例应用
[0054]
自回归模型是用于生成诸如基因组学、药物分子、音频和文本的图像和序列数据的流行选择之一。在自回归模型中,能够将输入的对数似然度表达为其中x
<d
=x1...x
d-1
。将对数似然度分解成背景部分和语义部分,我们具有
[0055][0056]
类似的自回归分解也能够被用于背景模型假定两个模型同样好地捕获背景信息,
[0057][0058]
似然比被近似为
[0059][0060]
用于训练背景模型的示例技术
[0061]
能够执行任何数目的不同技术来扰动分布内训练示例以破坏其语义数据,从而生成背景训练示例。
[0062]
作为一种示例技术,能够向训练示例添加噪声以扰动它。作为一个特定示例,如果训练示例是离散的(例如,)(例如,对于基因组序列对于图像对于文本内容对于音频内容),能够通过执行以下操作来添加噪声:
[0063][0064]
因此,作为一种示例技术,在训练示例包括dna字符的序列的实施方式中,计算系统能够通过遵循速率为μ的独立且相同的伯努利分布随机地选择x1...xd中的位置并且按相等概率用其他字符之一取代原始字符来向输入数据添加扰动。该程序的灵感来自基因突变。
[0065]
速率μ是超参数并且能够使用少量证实ood数据集(例如,其与感兴趣的实际ood数据集不同)来容易地调谐。在证实ood数据集不可用的情况下,也能够使用模拟的ood数据来调谐μ。在实践中,μ∈[0.1,0.2]已经表明在经验上实现良好的性能。
[0066]
作为另一示例技术,包含在输入(例如,输入图像)中的语义内容能够被显式地识别(例如,使用语义分段模型)和破坏(例如,从图像中移除并用噪声替换或者简单地裁掉)。
[0067]
作为对输入数据的扰动的补充或替代,其他技术也能够改进模型泛化并防止模型记忆。作为一个示例,向模型权重添加系数为λ的l2正则化能够帮助训练好的背景模型。事实上,向输入添加噪声相当于在一些条件下向模型权重添加l2正则化。作为另一示例,执行背景模型的训练的早期停止(例如,在没有扰动和/或附加正则化项的情况下)能够产生有效地取消背景统计的背景模型。除上述方法之外,添加其他类型的噪声或正则化方法也会示出类似的效果。
[0068]
示例设备和系统
[0069]
图1a描绘了根据本公开的示例实施例的执行ood检测的示例计算系统100的框图。系统100包括通过网络180通信地耦合的用户计算设备102、服务器计算系统130和训练计算系统150。
[0070]
用户计算设备102可以是任何类型的计算设备,诸如例如个人计算设备(例如,膝上型计算机或台式计算机)、移动计算设备(例如,智能电话或平板)、游戏机或控制器、可穿戴计算设备、嵌入式计算设备或任何其他类型的计算设备。
[0071]
用户计算设备102包括一个或多个处理器112和存储器114。一个或多个处理器112可以是任何合适的处理设备(例如,处理器核心、微处理器、asic、fpga、控制器、微控制器、等)并且可以是一个处理器或在操作上连接的多个处理器。存储器114能够包括一种或多种非暂时性计算机可读存储介质,诸如ram、rom、eeprom、eprom、闪存存储器设备、磁盘等及其组合。存储器114能够存储数据116和指令118,所述指令118由处理器112执行以使用户计算
设备102执行操作。
[0072]
在一些实施方式中,用户计算设备102能够存储或包括一个或多个机器学习模型120。例如,机器学习模型120可以是或者能够以其他方式包括诸如神经网络(例如,深度神经网络)的各种机器学习模型或其他类型的机器学习模型,包括非线性模型和/或线性模型。神经网络能够包括前馈神经网络、循环神经网络(例如,长短期记忆循环神经网络)、卷积神经网络或其他形式的神经网络。
[0073]
在一些实施方式中,一个或多个机器学习模型120能够通过网络180从服务器计算系统130接收,被存储在用户计算设备存储器114中,然后由一个或多个处理器112使用或以其他方式实现。在一些实施方式中,用户计算设备102能够实现单个机器学习模型120的多个并行实例(例如,以跨数据输入的多个实例执行并行的ood检测)。在一些实施方式中,处理器112能够实现指令118以基于来自(多个)模型120的输出来确定数据输入的似然比值并且基于该似然比值来检测数据输入是否是ood。
[0074]
附加地或替换地,一个或多个机器学习模型140能够被包括在服务器计算系统130中或者由服务器计算系统130以其他方式存储和实现,所述服务器计算系统130根据客户端-服务器关系与用户计算设备102进行通信。例如,机器学习模型140能够由服务器计算系统140实现为web服务(例如,ood检测服务)的一部分。因此,一个或多个模型120能够被存储和实现在用户计算设备102处和/或一个或多个模型140能够被存储和实现在服务器计算系统130处。
[0075]
用户计算设备102还能够包括接收用户输入的一个或多个用户输入组件122。例如,用户输入组件122可以是对用户输入物体(例如,手指或手写笔)的触摸敏感的触敏组件(例如,触敏显示器或触摸板)。触敏组件能够用来实现虚拟键盘。其他示例用户输入组件包括麦克风、传统键盘或用户能够通过其提供用户输入的其他手段。
[0076]
服务器计算系统130包括一个或多个处理器132和存储器134。一个或多个处理器132可以是任何合适的处理设备(例如,处理器核心、微处理器、asic、fpga、控制器、微控制器等)并且可以是一个处理器或在操作上连接的多个处理器。存储器134能够包括一种或多种非暂时性计算机可读存储介质,诸如ram、rom、eeprom、eprom、闪存存储器设备、磁盘等及其组合。存储器134能够存储数据136和指令138,所述指令138由处理器132执行以使服务器计算系统130执行操作。
[0077]
在一些实施方式中,服务器计算系统130包括一个或多个服务器计算设备或者由一个或多个服务器计算设备以其他方式实现。在服务器计算系统130包括多个服务器计算设备的实例中,这种服务器计算设备能够根据顺序计算架构、并行计算架构或其某种组合操作。
[0078]
如上所述,服务器计算系统130能够存储或以其他方式包括一个或多个机器学习模型140。例如,模型140可以是或者能够以其他方式包括各种机器学习模型。示例机器学习模型包括神经网络或其他多层非线性模型。示例神经网络包括前馈神经网络、深度神经网络、循环神经网络和卷积神经网络。
[0079]
在一些实施方式中,处理器132能够实现指令138以基于来自(多个)模型140的输出来确定数据输入的似然比值并且基于该似然比值来检测数据输入是否是ood。
[0080]
用户计算设备102和/或服务器计算系统130能够经由与通过网络180通信地耦合
的训练计算系统150的交互来训练模型120和/或140。训练计算系统150可以与服务器计算系统130分开或者可以是服务器计算系统130的一部分。
[0081]
训练计算系统150包括一个或多个处理器152和存储器154。一个或多个处理器152可以是任何合适的处理设备(例如,处理器核心、微处理器、asic、fpga、控制器、微控制器等)并且可以是一个处理器或在操作上连接的多个处理器。存储器154能够包括一种或多种非暂时性计算机可读存储介质,诸如ram、rom、eeprom、eprom、闪存存储器设备、磁盘等及其组合。存储器154能够存储数据156和指令158,所述指令158由处理器152执行以使训练计算系统150执行操作。在一些实施方式中,训练计算系统150包括一个或多个服务器计算设备或者由一个或多个服务器计算设备以其他方式实现。
[0082]
训练计算系统150能够包括模型训练器160,该模型训练器160使用各种训练或学习技术(诸如例如误差的反向传播)来训练存储在用户计算设备102和/或服务器计算系统130处的机器学习模型120和/或140。在一些实施方式中,执行误差的反向传播能够包括执行截断的随时间反向传播。模型训练器160能够执行许多泛化技术(例如,权重衰减、漏失等)以改进被训练的模型的泛化能力。
[0083]
特别地,模型训练器160能够基于一组训练数据162来训练机器学习模型120和/或140。训练数据162能够包括例如图像数据、文本数据、音频数据、基因组数据、传感器数据等。
[0084]
在一些实施方式中,模型训练器160能够执行本文描述的数据扰动技术中的一些或全部。
[0085]
在一些实施方式中,如果用户已提供同意,则训练示例能够由用户计算设备102提供。因此,在这种实施方式中,提供给用户计算设备102的模型120能够由训练计算系统150在从用户计算设备102接收到的用户特定数据上训练。在一些实例中,此过程能够被称为使模型个性化。
[0086]
模型训练器160包括被利用来提供期望功能性的计算机逻辑。能够在控制通用处理器的硬件、固件和/或软件中实现模型训练器160。例如,在一些实施方式中,模型训练器160包括存储在存储设备上、加载到存储器中并且由一个或多个处理器执行的程序文件。在其他实施方式中,模型训练器160包括被存储在诸如ram硬盘或光学或磁介质的有形计算机可读存储介质中的一个或多个计算机可执行指令集。
[0087]
网络180可以是任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,因特网)或其某种组合并且能够包括任何数目的有线或无线链路。一般而言,网络180上的通信能够使用各式各样通信协议(例如,tcp/ip、http、smtp、ftp)、编码或格式(例如,html、xml)和/或保护方案(例如,vpn、安全http、ssl)来经由任何类型的有线和/或无线连接来承载。
[0088]
图1a图示了能够用于实现本公开的一个示例计算系统。也能够使用其他计算系统。例如,在一些实施方式中,用户计算设备102能够包括模型训练器160和训练数据集162。在这种实施方式中,能够在用户计算设备102处在本地既训练又使用模型120。在这种实施方式中的一些中,用户计算设备102能够将模型训练器160实现成基于用户特定数据使模型120个性化。
[0089]
图1b描绘了根据本公开的示例实施例执行的示例计算设备10的框图。计算设备10
可以是用户计算设备或服务器计算设备。
[0090]
计算设备10包括许多应用(例如,应用1至n)。每个应用包含它自己的机器学习库和(多个)机器学习模型。例如,每个应用能够包含机器学习模型。示例应用包括文本消息传送应用、电子邮件应用、听写应用、虚拟键盘应用、浏览器应用等。
[0091]
如图1b所图示的,每个应用能够与计算设备的诸如例如一个或多个传感器、上下文管理器、设备状态组件和/或附加组件的许多其他组件进行通信。在一些实施方式中,每个应用能够使用api(例如,公用api)来与每个设备组件进行通信。在一些实施方式中,由每个应用使用的api特定于该应用。
[0092]
图1c了描绘根据本公开的示例实施例执行的示例计算设备50的框图。计算设备50可以是用户计算设备或服务器计算设备。
[0093]
计算设备50包括许多应用(例如,应用1至n)。每个应用与中央智能层通信。示例应用包括文本消息传送应用、电子邮件应用、听写应用、虚拟键盘应用、浏览器应用等。在一些实施方式中,每个应用能够使用api(例如,跨所有应用的公用api)与中央智能层(和存储在其中的(多个)模型)进行通信。
[0094]
中央智能层包括许多机器学习模型。例如,如图1c所图示的,能够为每个应用提供相应的机器学习模型(例如,模型)并由中央智能层管理它。在其他实施方式中,两个或更多个应用能够共享单个机器学习模型。例如,在一些实施方式中,中央智能层能够为所有应用提供单个模型(例如,单个模型)。在一些实施方式中,中央智能层被包括在计算设备50的操作系统内或者由计算设备50的操作系统以其他方式实现。
[0095]
中央智能层能够与中央设备数据层进行通信。中央设备数据层可以是用于计算设备50的数据的集中式储存库。如图1c所图示的,中央设备数据层能够与计算设备的诸如例如一个或多个更多传感器、上下文管理器、设备状态组件和/或附加组件的许多其他组件进行通信。在一些实施方式中,中央设备数据层能够使用api(例如,专用api)来与每个设备组件进行通信。
[0096]
示例模型布置
[0097]
图2描绘了根据本公开的示例实施例的ood检测系统200的框图。该检测系统能够包括语义模型202和背景模型203。
[0098]
可能已在包括多个分布内训练示例的分布内训练数据集上训练了语义模型202。语义模型202能够被配置成接收并处理数据输入204以生成数据输入204的第一似然值206。
[0099]
可能已在包括多个背景训练示例的背景训练数据集上训练了背景模型203。在一些实施方式中,可能已通过多个分布内训练示例中的一个或多个分布内训练示例的扰动生成了多个背景训练示例中的一个或多个背景训练示例。背景模型203能够被配置成接收并处理数据输入204以生成数据输入204的第二似然值208。
[0100]
在一些实施方式中,语义模型202和背景模型203中的一个或两个可以是生成模型。在一些实施方式中,语义模型202和背景模型203中的一个或两个可以是自回归模型。在一些实施方式中,语义模型202和背景模型203中的一个或两个可以是诸如循环神经网络和/或卷积神经网络的神经网络。
[0101]
ood检测系统200(例如,如由一个或多个计算设备实现)能够至少部分地基于由语义模型202生成的第一似然值206和由背景模型203生成的第二似然值208来确定数据输入
204的似然比值210。系统200能够至少部分地基于似然比值210来生成指示数据输入204是否是分布外输入的ood预测212。
[0102]
在一些实施方式中,确定数据输入204的似然比值210能够包括确定第一似然值206除以第二似然值208的对数。在一些实施方式中,至少部分地基于似然比值210生成预测212能够包括将似然比值与阈值进行比较并且在似然比值210小于阈值时预测数据输入204是ood。阈值可以是用户指定的或由系统学习的超参数。
[0103]
在一些实施方式中,当预测到数据输入204不是ood时,系统200能够将数据输入204提供给一个或多个附加分析组件214,诸如例如用于相对于多个分布内类进行分类的机器学习分类器模型。
[0104]
示例方法
[0105]
图3描绘了用于根据本公开的示例实施例执行的示例方法的流程图。尽管图3出于图示和讨论的目的描绘以特定次序执行的步骤,但是本公开的方法不限于特别图示的次序或布置。在不背离本公开的范围的情况下,能够以各种方式省略、重新布置、组合和/或适配方法300的各种步骤。
[0106]
在302处,计算系统能够获得包括多个分布内训练示例的分布内训练数据集。作为示例,分布内训练示例可以是图像、基因组数据、音频数据、文本数据、传感器数据和/或类似物。
[0107]
在304处,计算系统能够使用分布内训练数据集来训练机器学习生成语义模型。
[0108]
在306处,计算系统能够扰动多个分布内训练示例中的一个或多个分布内训练示例以生成一个或多个背景训练示例。
[0109]
在一些实施方式中,用于生成一个或多个背景训练示例的一个或多个分布内训练示例的扰动能够包括向一个或多个分布内训练示例添加噪声。
[0110]
在一些实施方式中,多个分布内训练示例中的每一个分布内训练示例能够包括与和分布内训练数据集相关联的多个分布内类中的至少一个分布内类有关的语义内容;并且扰动一个或多个分布内训练示例以生成一个或多个背景训练示例能够包括破坏包括在一个或多个分布内训练示例中的语义内容。
[0111]
在一些实施方式中,一个或多个分布内训练示例中的每一个分布内训练示例能够包括dna字符的相应基因组序列,并且扰动一个或多个分布内训练示例以生成一个或多个背景训练示例能够包括将dna字符的每个相应基因组序列的一个或多个字符随机地突变为一个或多个替代dna字符。
[0112]
在一些实施方式中,一个或多个分布内训练示例中的每一个分布内训练示例包括含有多个像素的相应图像,并且扰动一个或多个分布内训练示例以生成一个或多个背景训练示例能够包括,对于每个相应图像,随机地改变多个像素中的一个或多个像素的相应像素值。
[0113]
在308处,计算系统能够使用包括一个或多个背景训练示例的背景训练数据集来训练机器学习生成背景模型。
[0114]
在一些实施方式中,能够在304处使用第一损失函数来训练机器学习生成语义模型,并且能够在308处使用等于第一损失函数加上附加l2正则化项的第二损失函数来训练机器学习生成背景模型。
[0115]
在一些实施方式中,能够在304处训练机器学习生成语义模型达第一训练迭代次数,并且能够在308训练机器学习生成背景模型达少于第一迭代次数的第二迭代次数。例如,第二迭代次数可以少于第一训练迭代次数的50%、60%、70%、80%或90%。
[0116]
附加公开
[0117]
本文讨论的技术参考服务器、数据库、软件应用和其他基于计算机的系统,以及所采取的动作和往返于这种系统发送的信息。基于计算机的系统的固有灵活性允许在组件之间且在组件当中实现任务和功能性的各种可能的配置、组合和划分。例如,本文讨论的过程能够使用单个设备或组件或相结合地工作的多个设备或组件来实现。数据库和应用能够被实现在单个系统上或者跨多个系统分布。分布式组件能够顺序地或并行地操作。
[0118]
虽然已经关于本主题的各种特定示例实施例详细地描述了本主题,但是每个示例是通过对本公开的说明而非限制的方式提供的。本领域的技术人员在获得对前文的理解后,能够容易地产生这种实施例的变更、变化和等同物。因此,本主题公开不排除包括如对本领域的普通技术人员而言将是容易地显而易见的对本主题的这种修改、变化和/或添加。例如,作为一个实施例的一部分图示或描述的特征能够与另一实施例一起使用以产生再一个实施例。因此,本公开旨在涵盖这种变更、变化和等同物。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献