如何将经典算法与人工智能结合?NeurIPS 2021

AI算法与图像处理

共 11444字,需浏览 23分钟

 ·

2021-11-11 18:54

点击下方AI算法与图像处理”,一起进步!

重磅干货,第一时间送达

目前的监督学习模型是基于label作为学习目标,那么是否可以添加经典算法(如排序)来作为约束?

深度学习可以不断优化,很重要的一点是有“”,通过梯度回传不断优化,那么本文的大部分内容在将如何在加入经典算法之后,如何利用数学方法转换,让模型同样拥有“反馈”的能力!!!

文章很长,共一万多字。花了三个晚上才完成,希望能帮忙转发一下,谢谢啦

本文是来自 NeurIPS 2021 上的工作介绍,具体的报告视频已上传到 B 站

https://www.bilibili.com/video/BV1sb4y187YV/

下面的内容我也是第一次见到,试着翻译成人话,理解有误的地方还请见谅


论文:https://arxiv.org/pdf/2110.05651.pdf

代码:https://github.com/Felix-Petersen/algovision

标题:Learning with Algorithmic Supervision via Continuous Relaxations

摘要

最近,将算法组件集成到神经体系结构中得到了越来越多的关注,因为它允许使用新形式的监督(如排序约束或轮廓)来训练神经网络,而不是使用grouth真值标签。该领域的许多方法关注于特定任务的持续放松,并在这方面显示出有希望的结果。但对单个任务的关注也限制了所提出概念在狭窄应用范围内的适用性。在这项工作中,我们基于这些想法提出了一种方法,允许将算法集成到基于离散条件的一般近似的端到端可训练神经网络结构中。为此,我们在控制结构(如条件语句、循环和索引)中放宽这些条件,以便生成的算法是平滑可微的。为了获得有意义的梯度,通过logistic分布对每个相关变量进行扰动,并近似该扰动下的期望值。我们在四个挑战性任务上评估了所提出的连续松弛法模型,并表明它能够跟上为每个单独任务专门设计的放松。


1、简介

人工神经网络已显示出其解决各种问题的能力,从计算机科学中的经典任务(如机器翻译[1]和目标检测[2])到科学中的许多其他主题(如蛋白质折叠[3])。同时,存在经典算法,其通常基于给定输入和预定义控制结构(例如排序、最短路径计算等)来解决预定义任务。最近,通过将算法概念集成到神经网络结构中,研究开始将这两个要素结合起来。这些方法允许使用替代监督策略训练神经网络,例如通过可微渲染器学习3D表征[4],[5]或使用排序信息训练神经网络[6],[7]。我们将这些将算法整合到训练目标中的替代监督策略统一为算法监督

定义 1 (Algorithmic Supervision)

在算法监督中,将算法应用于模型的预测,并监督算法的输出。相反,在直接监督中,模型的预测是直接监督的。这如图1所示。

一般来说,为了允许使用集成算法对神经架构进行端到端训练,挑战在于估计各个算法的梯度,例如,通过可微近似。

在这里,大多数解决方案都是针对特定问题定制的,例如,可微排序或渲染。但最近也提出了更通用的框架,用于估计组合优化器的梯度。此类方法的示例包括Vlastelica等人[8]提出的黑盒组合解算器的微分,以及Berthat等人[9]提出的通过随机扰动输入来微分优化器。这两种方法都集中于一个问题,即需要估计算法的梯度,以便对包括它在内的神经结构进行端到端的训练。为了解决这个问题,Vlastelica等人[8]通过一步线性化方法估计优化器的梯度,该方法考虑了与优化器输出相关的梯度,从而可以集成任何现成的组合优化器。Berthet等人[9]通过随机噪声干扰离散解算器的输入来估计梯度。

在此背景下,我们提出了一种使算法可微并估计其梯度的方法。具体来说,我们提出了不同算法概念的连续松弛(continuous relaxations),如比较器、条件语句、有界和无界循环以及索引。为此,我们在离散算法中通过logistic分布扰动这些变量,我们要计算梯度。这使我们能够估计算法输出采样自由和封闭形式的预期值,例如,与通过蒙特卡罗采样方法(例如[9])近似分布的方法相比。为了保持计算的可行性,我们通过在条件块序列中合并每个条件块之后的计算路径来近似期望值。对于嵌套的条件块,我们计算准确的期望值,而不合并条件情况。这种折衷允许定期合并路径,从而减少了跟踪所有可能路径组合的需要。当我们在访问变量时对其扰动进行建模时,所有分布都是独立的,这与建模输入扰动的情况形成对比,在这种情况下,所有计算路径都必须单独处理。

为了演示实际方面,我们将所提出的方法应用于四项任务中,这四项任务利用算法监督来训练神经网络,即排序监督[6]、[7]、[10]、最短路径监督[8]、[9]、轮廓监督(可微渲染)[4]、[5]、[11],最后是Levenshtein距离监控。虽然前三个设置基于该领域现有的基准,但我们介绍了第四个实验,以展示该思想在可微动态规划领域的新算法任务中的应用。在后者中,来自EMNIST数据集[12]的两个串联字符序列之间的Levenshtein距离受到监督,而单个字母保持无监督状态。我们表明,所提出的系统能够在排序监督方面优于当前最先进的方法,而在最短路径监督和轮廓监督方面则具有可比性。


2、相关工作

在下文中,我们将重点关注那些为本工作中考虑的任务提供“放松(relaxations)”的工作。最后,我们回顾了一些关于平滑程序解释的早期工作。

Sorting Supervision

Grover等人首先提出了用分类监督训练神经网络的任务[6]。在这种情况下,给出了一组基于串联MNIST数字[29]的四位数,任务是找到从图像到标量的保序映射。这里,CNN应该为n个四位数中的每一个预测一个标量,这样它们的顺序在预测的标量中保持不变。对于训练,仅以输入图像的grouth真值顺序的形式给出排序监督,而其绝对值保持无监督。Grover等人[6]通过将置换矩阵放松为双随机矩阵来解决这一问题。Cuturi等人[7]在基准测试中发现了这一点,并通过使用正则化最优传输算法近似排序问题,提出了一种可微指标。

Silhouette Supervision

计算机视觉中的一项工作是三维无监督三维重建的可微渲染器。在这里,最近的方法已经提出了可微渲染器,用于在13类ShapeNet数据集[30]上仅使用二维轮廓监督的三维网格重建[4],[5]。Kato等人[5]提出了一种渲染器,在该渲染器中,光栅化的代理梯度被近似化,以通过轮廓监控以及3D样式转换执行3D网格重建。Liu等人[4]通过使用可微聚合过程,提出了一种无代理梯度的可微渲染器,并将其应用于三维网格重建以及姿势/形状优化。

Shortest-Path Supervision

Vlastelica等人[8]和Berthet等人[9]提出的两项工作提出了估算现成优化器梯度的方法。在这种情况下,Vlastelica等人[8]提出了一个最短路径监控实验,在该实验中,针对每种类型的地形,以不同的代价给出地形图像,任务是预测从左上角到相反角的最短路径。将最短路径算法集成到神经结构中,可以使神经网络生成最短路径算法用于预测最短路径的地形的成本嵌入。Vlastelica等人[8]通过发现Dijkstra算法的线性化[31]来解决这一问题,他们可以对其进行区分。Berthat等人[9]研究了这个问题,通过随机扰动最短路径优化问题的输入,为Dijkstra算法生成梯度估计。

Smooth Interpretation

在计算机辅助验证领域的另一项工作中,Chaudhuri等人[32],[33]提出了一种基于高斯分布随机扰动程序输入的程序平滑方法。这里,通过程序变换传播初始高斯扰动,并通过高斯混合近似扰动输出的最终分布。然后使用无梯度Nelder-Mead优化方法对平滑函数进行优化。我们的方法的主要区别在于,我们用逻辑分布扰动所有相关变量(而不是输入),并将其用于基于梯度的优化。


3、方法

为了不断放松算法,从而使其可微,我们放松了所有想要微分的值logistic分布。我们选择logistic分布,因为它提供了两个独特的特性,使其特别适合于手头的任务:

(1)logistic分布比正态分布有更大的尾部,这允许更大的概率质量,因此当两个比较值彼此远离时,有更大的梯度。

(2) logistic分布的累积密度函数(CDF)是logistic-sigmoid函数,可解析计算,其梯度易于计算。这与正态分布的CDF形成对比,正态分布没有闭合形式,通常通过多项式近似

具体地说,我们“放松“任何值 x(要计算梯度的值), 是通过添加服从logistic 分布的随机变量方式:

其中β是逆温度参数,对于

基于此,我们可以放松一个离散条件语句,例如,基于条件x<c和常数c∈ R、 详情如下:

式中,σ是logistic(sigmoid)函数σ(x)=1/(1+e)^−xβ)。在本例中,随着x的增加,结果从y平滑过渡到z。因此,结果的导数wrt。x定义为

因此,如果if案例减少了损失,梯度下降法可以影响条件(˜x<c)保持,或者如果else案例减少了损失函数,则影响条件失败。

在本例中,y和z不仅可以是标量值,还可以是算法的结果或算法本身的一部分。这引入了松弛程序流的递归形式,其中算法的部分通过凸组合进行组合:

其中,f和g表示函数、算法或语句序列,这些函数、算法或语句通过值调用对所有变量集s进行操作,并返回所有变量集s。此操作的结果可能会覆盖所有变量集(s:=[…]),也可能会在嵌套的条件语句中使用。

在引入上述if-else语句之后,我们将这一思想扩展到循环,从而将松弛程序流的形式主义扩展到图灵完整性。在固定循环中,即具有预定义迭代次数的循环中,由于只有一条计算路径,因此不需要松弛,因此,可以通过展开来处理固定循环。

更复杂的情况是条件无界循环,即While循环,只要条件成立就执行。为此,让我∈N是应用i乘以循环内容后所有变量的序列。也就是说,对于所有变量s的初始集,s0=s,并且si=f(si−1) ,其中f是循环的内容,即函数、算法或语句序列。设a,b分别表示s的访问变量,即s[a],s[b]。通过递归地应用if-else语句的规则,我们获得了无界循环的以下规则:

这里,(a)是达到第i次迭代的概率,(b)是不超过i次迭代的概率。(a)和(b)合在一起是指在应用i乘以f(即si)之后,有i次迭代对所有变量的状态进行加权的概率。在计算上,我们评估无穷级数,直到执行概率(a)在数值上变得可以忽略,或者达到预定义的最大迭代次数。同样,结果可以覆盖所有变量集(s:=[…]),也可以用于嵌套的条件语句中。

Complexity and Merging of Paths

为了计算一个算法在其变量的logistic扰动下的精确期望值,必须单独计算所有计算路径,以考虑依赖性。然而,这将导致指数复杂性。因此,我们计算嵌套条件块的精确期望值,但对于连续条件块,我们在每个块的末尾合并计算路径。这使得顺序条件块的数量具有线性复杂性,而只有嵌套条件块的最大深度才具有指数复杂性。请注意,顺序条件块的数量通常远大于条件块的深度,例如,数百或数千个顺序块,最大深度仅为2− 在我们的实验中。依赖关系的一个例子是表达式a:=(f(x),如果i<0,则为g(x));b:=(如果a<0,则为0;如果a<0,则为a2),它包含两个连续条件块之间的依赖关系,这在我们的近似中引入了误差。一般来说,我们的形式主义也支持对顺序条件块之间的依赖关系进行建模,但实际上,对于整个算法来说,它可能变得很难处理。此外,如果算法依赖于特定的依赖关系,则可以明确地考虑相关的依赖关系。

Perturbations of Variables vs. Perturbations of Inputs

注意,变量扰动建模与输入扰动建模不同。差异变得明显的一种情况是,例如,(˜x<x)。在对输入扰动进行建模时,该条件将具有很强的隐式条件依赖性,其计算概率为0%。然而,在这项工作中,我们没有对输入的扰动进行建模,而是在每次访问变量时对变量的扰动进行建模,以便两次访问一个变量是独立同分布的(iid)。因此,˜x<x)的概率为50%。为了最小化松弛的近似误差,仅应松弛需要梯度的变量。

3.1 Relaxed Comparators

到目前为止,我们只考虑了比较器 <. > 通过交换参数进行跟踪

Relaxed Equality

对于相等算子=,我们考虑两个分布 a˜ ∼ Logistic(a, 1/β) 和b˜ ∼ Logistic(b, 1/β) ,我们要检查相似性/相等性。给定值a,我们计算a是来自 b˜ 而不是 的样本的可能性。如果a从a和b中提取的可能性相等,则a和b相等。如果a不太可能从b中提取,则a和b是不相等的。为了计算a从 b˜中提取的可能性是否相等,我们取a从b˜中提取的概率(flog(a;b,1/β))和a从a˜中提取的概率(flog(a;a,1/β))之间的比率:

这些松弛比较器如图2所示。为了计算合取概率(即and)或析取概率(即or),我们分别使用乘积或概率和。这对应于独立事件的交集/并集。式9的另一种推导是¬(a<b)和¬(a>b)的归一化连接。

Relaxed Maximum

为了比较两个以上的元素并放松arg max函数,我们使用多项式logistic分布,也称为softmax分布。

为了放松max操作,我们使用arg max/softmax的乘积和相应的向量。

Comparing Categorical Variables

比较分类概率分布 X ∈ [0, 1]^n 具有分类概率分布y,我们考虑两种情况:如果y∈ {0,1}^n,即Y是one-hot,我们可以使用X和Y的内积来获得它们的联合概率。然而,如果Y /∈ {0, 1}^n,,即Y不是one-hot,即使X=Y内积也不能是1,但如果X=Y,则希望概率为1。因此,我们(L2)在取内积之前对X和Y进行归一化,内积对应于余弦相似性。比较分类概率分布的应用示例见第4.4节中的Levenshtein距离实验。

3.2 Relaxed Indexing

由于向量、数组和张量对于算法和机器学习是必不可少的,我们还将松弛索引形式化。为此,我们介绍了实值索引和分类索引。

Real-Valued Indexing

在松弛算法中,指数可以从实数集合中提取,因为它们可以是计算的凸组合或实值输入。这是一个挑战,因为它需要在多个值之间进行插值。直接方法是网格采样,使用双线性或双三次插值来插值。例如,神经图灵机使用线性插值进行实值索引[35]。然而,在双线性或双三次插值中,超出阵列中直接(或下一个)邻域的关系不建模,也不建模逻辑扰动。因此,我们用i值索引n维张量A∈ R n通过logistic扰动,通过应用与logistic滤波器g的卷积,得到结果为(g ∗ A)(i)  。张量a与逻辑滤波器g的卷积(不要与神经网络中的离散卷积混淆)产生在点 i 处计算的函数t i ∈ R^n。我们选择logistic滤波器而不是双线性和双三次滤波器,因为我们对logistic扰动进行建模,另外,因为双线性和双三次滤波器只有紧支撑,而logistic滤波器提供无限支撑。这使得建模关系超越了下一个邻居,并且更灵活,因为逆温度β可以针对各自的应用进行调整。为了稳定性,我们对用于插值各个索引值的系数进行归一化,使其总和为1:

式中,j是张量A的所有有效指数。为了防止优化算法利用混叠效应,我们仅在前向传递中将系数除以其和,但在后向传递(梯度计算)中忽略这一点。实值索引显示在图3中,将其与硬索引进行比较

Relaxed Categorical Indexing

如果给出了索引上的分类概率分布,例如,由argmax或其松弛softmax计算,则可以使用分类索引。这里,边缘分类分布被用作索引张量的权重

请注意,实值索引假设索引数组遵循语义顺序,例如时间序列、图像或网格中的位置。相反,如果数组包含分类信息(如图的节点),则应使用分类索引对值进行索引,因为它们的邻域是任意的。

3.3 Complexity and Runtime Considerations

在运行时间方面,必须注意,运行时间优化算法(例如Dijkstra)通常不会改善松弛的运行时间,因为对于建议的连续松弛,必须执行算法中的所有情况。因此,减少计算成本的附加条件不会改善运行时,因为两种(所有)情况都会执行。相反,如果一个算法以一个固定的执行顺序来解决一个问题,它将变得非常有益。另一方面,针对运行时优化算法会导致在最快的执行路径之间进行插值。这种优化不能改善梯度,而是降低梯度,因为它是一种额外的近似,并产生与运行时启发式相关的梯度。例如,当放松Dijkstra最短路径算法时,在访问节点的不同顺序之间存在插值,这是使Dijkstra快速的启发式方法。然而,如果我们必须遵循所有路径(计算松弛度),它可能导致组合爆炸。此外,通过在这些可选顺序之间插值,引入了大量的不确定性,并且梯度也将取决于访问节点的顺序,这两者都是不可取的。此外,执行相当严格的算法可以在GPU上并行执行,这样它们可以比CPU上运行时优化的顺序算法更快。因此,从运行时和梯度质量的角度来看,我们更喜欢执行结构基本固定且没有运行时优化的简单算法。

4、实验

我们在各种算法监督实验中评估了所提出的方法,其概述如图4所示。对于每个实验,我们首先简要描述任务和各自的输入数据以及使用的松弛算法。为了允许应用于各种任务,我们需要为每个算法找到合适的逆温度β。作为启发,我们从β =√k,其中k是算法中松弛变量的出现次数,这是良好近似和充分松弛之间的平衡,以获得良好的梯度估计。对于每个任务,我们在验证集上调优此参数。所有算法的伪代码以及关于松弛和逆温度参数的附加信息可在补充材料中找到。


4.1 Sorting Supervision

在排序监督实验中,给出了一组基于级联MNIST数字[29]的四位数字,任务是找到从图像到标量的保序映射。CNN学习为n个四位数中的每一个预测一个标量,这样它们的顺序在预测的标量中保持不变。为此,仅以输入图像的基本真值顺序的形式提供排序监督,而其绝对值保持无监督。这遵循Grover等人[6]和Cuturi等人的协议。

举个例子:

使用我们的方法,我们放松了成熟的稳定排序算法Bubble sort[37],该算法通过迭代遍历列表并交换任意两个相邻元素(如果它们的顺序不正确),直到在一次迭代中不再有交换操作为止。我们包含一个变量,如果发生交换操作,通过将输入序列设置为true来跟踪输入序列的顺序是否正确。由于松弛,该变量是一个介于0和1之间的浮点数,对应于预测正确排序的概率(在变量扰动下)。我们用这个概率作为损失函数。该变量等于不需要交换操作的概率,因此L=1− Q p∈P(1)− p) 对于每个潜在交换p的概率p∈ P.这样,训练目标就变成对输入序列进行排序,因此,神经网络预测的分数对应于监督偏序。事实上,冒泡排序中的交换数对应于肯德尔τ系数,它指示序列的排序程度。请注意,例如,快速排序没有此属性,因为即使序列已排序,它也会执行交换。

我们强调,经过训练的神经网络的任务不是对序列进行排序,而是预测每个元素的得分,从而使排序/排名与监督排序/排名相对应。虽然松弛算法可以正确排序输入,但在评估时,在[6]和[7]设置之后,我们使用argsort方法测试神经网络产生的输出是否符合基本真值偏序。我们使用与[6]和[7]相同的网络体系结构。这里,我们只对n=5的逆温度进行优化,得到β=8,并对所有其他n进行修正。对于培训,我们使用学习率为10的Adam优化器[38]−4用于1.5·105和1.5·106之间的迭代。

我们使用与Grover等人[6]和Cuturi等人[7]相同的网络体系结构和评估指标,针对最先进的手工放松排序操作,评估我们的方法。如选项卡中所示。1,我们的一般公式优于state-of-the-art  的手工放松分拣操作,用于排序监督。

4.2 Shortest-Path Supervision

对于2D地形上的最短路径监控,我们遵循Vlastelica等人[8]和Berthet等人[9]的设置,并使用10000块大小为96×96的魔兽世界地形(代表大小为12×12的地形网格)的数据集。给定地形图像(例如,图5第一),目标是根据隐藏成本矩阵(例如,图5第三)预测最短路径(例如,图5第三)。为此,监督最短路径的12×12二元矩阵,而隐代价矩阵仅用于确定最短路径。在他们的工作中,Vlastelica等人[8]和Berthet等人[9]表明,集成和区分最短路径算法可以通过允许神经网络预测成本矩阵来改进结果,通过该算法可以计算最短路径。这比ResNet基线的性能要好得多,在ResNet基线中,最短路径只能由神经网络预测(见表2)。

对于这项任务,我们将Bellman-Ford算法[39]放松为8邻域、节点权重和路径重建,补充材料中给出了详细信息。对于监督最短路径和松弛Bellman-Ford算法产生的路径之间的损失,我们使用`2损失。为了说明通过我们的方法创建的最短路径,并将其与Berthet等人[9]通过扰动优化器创建的最短路径进行比较,我们在图5中显示了两个反向温度的追溯最短路径示例(从中到右)。

我们使用与Vlastelica等人[8]和Berthet等人[9]相同的ResNet网络体系结构,并且还训练50个epoch,batch大小为70。我们使用β=25的逆温度。

如选项卡中所示。2,我们的松弛在预测到的最优最短路径的成本比上优于所有基线,并且在最短路径精确匹配精度上达到了仅次于扰动优化器的次优结果

4.3 Silhouette Supervision

从单个二维图像重建三维模型是计算机视觉中的一项重要任务。最近的工作[4],[5]采用可微渲染器,通过反馈重建轮廓是否与输入图像匹配来训练三维重建网络。具体而言,最近的工作已经在ShapeNet[30]的13个对象类的数据集上进行了基准测试[4]、[5]、[11],这些对象类是从24个方位角以64×64[5]的分辨率渲染的。对于轮廓监督学习,单个图像由神经网络处理,神经网络返回3D网格。该网格的轮廓由可微渲染器从两个视点渲染,渲染网格和预测网格之间的交集过并用作更新神经网络的训练目标[4],[5]。对于训练,我们也使用与Kato等人[5]和Liu等人[4]相同的神经网络结构。请注意,虽然渲染器可以渲染完整的RGB图像,但在这些实验中,只有轮廓用于监督三维几何体重建。具体而言,[4]、[5]的公共实现仅使用轮廓监视。

对于这项任务,我们放松了两种轮廓渲染算法。算法按如下方式栅格化3D网格:对于网格的每个像素和每个三角形,如果像素位于三角形内,则输出图像中像素的值设置为1。像素是否位于三角形内的条件以两种可选方式进行检查:(1)通过三个嵌套的if条件检查像素位于每条边的哪一侧。(2) 通过检查像素和三角形之间的有向欧几里德距离是否为正。注意,通过使用我们的框架放松这些算法,我们获得了非常接近(1)的Pix2Vex[40]和(2)的SoftRas[4]的可微渲染器。图6中显示了松弛轮廓渲染的示例和来自数据集的示例图像。

由于简单轮廓渲染器没有任何优化,例如丢弃远离三角形或被其他三角形遮挡的三角形的像素,因此效率不高。因此,由于资源有限,我们只能以2的最大批量进行培训,而以前的工作使用64的批量。因此,为了进行公平比较,我们仅在2个批次上复制了Liu等人[4]最近表现最好的作品。对于有向欧氏距离,我们使用β=2000的逆温度;对于三条边,β=10000。

我们在表3中报告平均值和类级3D IoU结果。3.我们的松弛性能优于Yan等人[11]的检索基线,即使我们使用的批次大小仅为2。与批量大小为2的SoftRas渲染器直接比较,我们的松弛实现了13个对象类中5个的最佳精度。然而,平均而言,我们的方法虽然没有表现出比SoftRas更好的性能,但显示出可比的性能,仅下降1%。值得注意的是,有向欧几里德距离方法的性能优于三边方法。由于计算有向欧几里德距离比三个嵌套if子句(即使在宽松的情况下)更昂贵,因此三边方法的速度要快3倍

4.4 Levenshtein Distance Supervision

在Levenshtein距离监督实验中,我们通过只监督长度为32的两个手写字符串之间的编辑距离来监督手写EMNIST字母的分类器[12]。作为编辑距离,我们使用Levenshtein距离LD,其定义为:


我们使用经典的动态规划算法放松Levenshtein距离。图7显示了示例Levenshtein距离矩阵及其松弛。


为了便于学习,给出了32个手写字符a、b的图像串对以及地面真值Levenshtein距离LD(ya、yb)。我们从2个或4个字符的字母表中抽取一对字符串a、b。对于给定第一个字符串的第二个字符串的采样,我们统一选择两个或四个插入和删除操作。因此,使用两个不同字符的字符串的平均编辑距离为4.25,四个字符的平均编辑距离为5。我们使用CNN处理每个字母,CNN返回字母的分类分布,然后将其反馈给算法。基于{a,C,G,T}的一对字符串的示例是and。我们的培训目标是最大限度地减少预测距离和grouth真实距离之间的l 2损失:



表4表明,在所有情况下,我们的方法在这两个指标上都始终优于基线。字符组合AB、BC、CD、DE和EF是随机组合的标准选择。IL所代表的字符是两个字母最难的组合,因为它们甚至经常被有监督的神经网络所混淆[12],人类也无法区分。字符OX代表了最简单的情况,因为有监督的分类器可以在测试数据集上完全区分它们[12]。对于两个字母组合,我们在57%(IL)和96%(OX)之间实现了顶级精度。即使是四个字母组合(ACGT和OSXL),我们也能达到最高48.7%的顶级精度。注意,当我们使用长度为32的字符串时,在Levenshtein算法中,超过1000条语句被放松。

5、结论

我们提出了一种算法的连续松弛方法,允许将其集成到端到端可训练神经网络结构中。为此,我们使用平滑函数参数化的算法执行路径的凸组合。我们证明了我们提出的通用框架可以在各种算法监督任务上与特定算法的SOTA连续松弛以及梯度估计方法竞争。此外,我们证明了我们的公式成功地放松了即使是最短路径算法或渲染器等复杂算法。我们希望激励研究界在我们的框架基础上进一步探索算法监控和算法增强神经网络架构的潜力。


努力分享优质的计算机视觉相关内容,欢迎关注:

交流群


欢迎加入公众号读者群一起和同行交流,目前有美颜、三维视觉计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群


个人微信(如果没有备注不拉群!
请注明:地区+学校/企业+研究方向+昵称



下载1:何恺明顶会分享


AI算法与图像处理」公众号后台回复:何恺明,即可下载。总共有6份PDF,涉及 ResNet、Mask RCNN等经典工作的总结分析


下载2:终身受益的编程指南:Google编程风格指南


AI算法与图像处理」公众号后台回复:c++,即可下载。历经十年考验,最权威的编程规范!



下载3 CVPR2021

AI算法与图像处公众号后台回复:CVPR即可下载1467篇CVPR 2020论文 和 CVPR 2021 最新论文


浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报