Visual Interpretability for Deep Learning: a Survey

Visual Interpretability for Deep Learning: a Survey----《深度学习的视觉可解释性:综述》

摘要

  本文回顾了最近在理解神经网络表示以及学习具有可解释性/解耦的中间层表示的神经网络方面的研究。尽管深度神经网络在各种任务中表现出了优越的性能,但可解释性始终是深度神经网络的致命弱点。目前,深度神经网络获得了高辨别力,但代价是其黑箱表示的低可解释性。我们相信高模型可解释性可以帮助人们打破深度学习的几个瓶颈,例如,通过极少的注释学习、在语义层面上通过人机交流学习、以及在语义层面上调试网络表示。我们专注于卷积神经网络(CNN),并重新审视CNN表示的可视化,我们专注于卷积神经网络(CNN),并重新审视了CNN表示的可视化、诊断预训练CNN表示的方法、解耦预训练CNN表示的方法、具有解耦表示的CNN的学习,以及基于模型可解释性的端到端学习。最后,我们讨论了可解释人工智能的未来趋势。

引言

  卷积神经网络(CNN)在许多视觉任务中取得了优异的性能,如对象分类和检测。然而,端到端学习策略使CNN表示成为一个黑盒子。除了最终的网络输出,人们很难理解隐藏在网络内部的CNN预测的逻辑。近年来,越来越多的研究人员认识到模型的高可解释性在理论和实践中都具有重要价值,并开发了具有可解释性知识表示的模型。
  在这篇论文中,我们对当前理解神经网络表示和学习具有可解释/解耦表示的神经网络的研究进行了调查。我们可以将综述的范围大致定义为以下六个研究方向。

  • 中间网络层CNN表示的可视化。 这些方法主要合成了一个图像,该图像最大化了预训练CNN中给定单元的得分,或者将卷积层的特征图反转回输入图像。详细讨论请参见第2节。
  • CNN表征的诊断。 相关研究可能会诊断出CNN针对不同对象类别的特征空间,或者发现卷积层中潜在的表示缺陷。详情请参阅第3节。
  • CNN滤波器中“混合模式”的解耦。 这些研究主要是将卷积层中的复杂表示分解,并将网络表示转化为可解释的图。详情请参阅第4节。
  • 建立可解释的模型。 我们在第 5 节中讨论了可解释的 CNN [Zhang et al, 2017c]、胶囊网络 [Sabour et al, 2017]、可解释的 R-CNN [Wu et al, 2017] 和 InfoGAN [Chen et al, 2016]。
  • 通过人机交互进行语义级中端学习。 CNN 表示的清晰语义解开可能会进一步实现弱监督神经网络的“中端”学习。第 7 节介绍了通过人机交互学习新模型的方法 [Zhang et al, 2017b] 和在非常有限的人类监督下主动问答 [Zhang et al, 2017a]。

  其中,CNN表示的可视化是探索网络表示最直接的方式。网络可视化还为许多诊断 CNN 表征的方法提供了技术基础。预训练 CNN 特征表示的解耦和可解释网络表示的学习对最先进的算法提出了更大的挑战。最后,可解释或解耦的网络表示也是弱监督中端学习的起点。
  模型可解释性的值: 高卷积层中清晰的语义可以帮助人们信任网络的预测。正如 [Zhang et al, 2018b] 中所讨论的,考虑到数据集和表示偏差,测试图像的高精度仍然不能确保 CNN 能够编码正确的表示。例如,CNN 可能使用不可靠的上下文(眼睛特征)来识别面部图像的“口红”属性。因此,人们通常无法完全信任网络,除非 CNN 能够在语义上或视觉上解释其逻辑,例如使用什么模式进行预测。
  此外,基于可解释或解开的网络表示的神经网络的中端学习或调试也可以显着减少对人工注释的需求。此外,基于网络的语义表示,未来有可能在语义层面将多个CNN合并成一个通用网络(即为不同任务编码通用知识表示的网络)。
  在以下部分中,我们回顾上述研究方向并讨论技术发展的潜在未来。

CNN 表示的可视化

  CNN 中滤波器的可视化是探索隐藏在神经单元内部的视觉模式的最直接方法。已经开发了不同类型的网络可视化方法。
  首先,基于梯度的方法是网络可视化的主流。这些方法主要是计算给定CNN单元相对于输入图像的分数的梯度。他们使用梯度来估计最大化单位分数的图像外观。[Olah 等人,2017] 提供了一个现有技术的工具箱,用于可视化预训练 CNN 的不同卷积层中编码的模式。
  其次,上卷积网络是另一种可视化 CNN 表示的典型技术。上卷积网络将 CNN 特征图反转为图像。我们可以将上卷积网络视为间接说明特征图对应的图像外观的工具,尽管与基于梯度的方法相比,上卷积网络无法在数学上确保可视化结果准确反映 CNN 中的实际表示。类似地,[Nguyen et al, 2017]进一步向对抗性生成网络引入了一个额外的先验,它控制合成图像的语义。我们可以使用 CNN 特征图作为可视化的先验。
  此外,[Zhou et al,2015]提出了一种精确计算特征图中神经激活的图像分辨率感受野的方法。神经激活的实际感受野小于使用滤波器大小计算的理论感受野。感受野的准确估计有助于人们理解滤波器的表示。

CNN 表征的诊断

  有些方法超越了 CNN 的可视化,还可以诊断 CNN 表示,以获得对 CNN 中编码的特征的深入理解。我们将所有相关研究大致分为以下五个方向。
  第一个方向的研究从全局的角度分析CNN的特征。第二个研究方向提取直接为标签/属性提供网络输出的图像区域,以解释标签/属性的 CNN 表示。CNN 特征空间中的脆弱点估计也是诊断网络表示的一个流行方向。第四个研究方向是基于网络特征空间分析来细化网络表示。第五个研究方向是 CNN 潜在的、有偏差的表示。

将 CNN 表示分解为解释图和决策树

将 CNN 表示分解为解释图

  与前面章节中网络表示的可视化和诊断相比,将 CNN 特征分解为人类可解释的图形表示(即解释图)可以为网络表示提供更彻底的解释。[张等人,2018a; [Zhang et al, 2016] 提出了预训练 CNN 的卷积层中的解耦特征,并使用图形模型来表示隐藏在 CNN 内部的语义层次结构。
  如图 2 所示,CNN 高卷积层中的每个滤波器通常代表模式的混合。例如,过滤器可以由对象的头部和尾部两者激活。因此,为了提供预训练 CNN 中如何组织视觉知识的全局视图,[Zhang 等人,2018a;张等人,2016]旨在回答以下三个问题:
在这里插入图片描述

  1. CNN 的每个卷积滤波器可以记忆多少种视觉模式?
  2. 共同激活哪些模式来描述对象部分?
  3. 两个共同激活模式之间的空间关系是什么?

  如图3所示,解释图解释了CNN内部隐藏的知识语义。解释图解开了卷积层的每个过滤器特征图中的部分模式的混合,并使用每个图节点来表示一个部分。
在这里插入图片描述

  • 解释图有多层。每个图层对应于 CNN 的特定卷积层。
  • 卷积层中的每个过滤器可以代表不同对象部分的外观。该算法自动解开在单个过滤器中编码的部分模式的混合,并使用解释图中的节点来表示每个部分模式。
  • 解释图中的每个节点通过不同的图像一致地表示相同的对象部分。我们可以使用节点来定位输入图像相应的部分。在某种程度上,节点对形状变形和姿态变化具有鲁棒性。
  • 每条边都编码相邻层中两个节点之间的协同激活关系和空间关系。
  • 我们可以将解释图视为卷积层特征图的压缩。CNN 有多个卷积层。每个卷积层可能有数百个过滤器,每个过滤器可能会产生具有数百个神经单元的特征图。我们可以用解释图中的数万个节点来表示这些特征图中所有数千万个神经单元所包含的信息,即通过哪些部分模式激活特征图,以及部分模式在输入图像中的定位位置。
  • 就像字典一样,每个输入图像只能触发解释图中部分模式(节点)的一小部分。每个节点描述了一个具有高可移植性的公共部分模式,该模式由数百或数千个训练图像共享。

  图 4 列出了说明图中不同节点对应的排名最高的图像块。图 5 可视化了解释图第 L 层中前 50% 的节点推断出的对象部分的空间分布,推断得分最高。图 6 显示了由单个节点推断的对象部分。
在这里插入图片描述

将CNN表示分解为决策树

  [Zhang et al ., 2018c]进一步提出了一种决策树来编码全连通层中的决策模式。决策树不是为分类而设计的。相反,决策树用于定量解释每个 CNN 预测的逻辑。即给定输入图像,我们使用 CNN 进行预测。决策树告诉人们卷积层中的哪些过滤器用于预测以及它们对预测的贡献有多大。
如图7所示,该方法挖掘全连接层中存储的潜在决策模式。决策树以由粗到细的方式组织这些潜在的决策模式。此外,本研究使用 [Zhang et al, 2017c] 的方法来解开顶部卷积层中滤波器的表示,即使每个滤波器代表特定的对象部分。这样,人们就可以使用决策树在语义层面解释每个 CNN 预测的基本原理,即 CNN 使用哪些对象部分来进行预测。
在这里插入图片描述

学习具有可解释/解耦表示的神经网络

  前面几节中提到的几乎所有方法都侧重于对预训练网络的理解。在本节中,我们回顾了学习神经网络解耦表示的研究,其中中间层的表示不再是黑匣子,而是具有清晰的语义含义。与理解预训练网络相比,具有解耦表示的学习网络提出了更多挑战。到目前为止,在这个方向上发表的研究仅有少数。

可解释的卷积神经网络

  如图 8 所示,[Zhang et al, 2017c] 开发了一种修改普通 CNN 的方法,通过向卷积层中的每个滤波器添加损失来获得高卷积层中的解耦表示。损失用于将特征图正则化为特定对象部分的表示。
在这里插入图片描述
  请注意,人们不需要注释任何对象部分或纹理来监督可解释 CNN 的学习。相反,损失在端到端学习过程中自动为每个过滤器分配一个对象部分。如图9所示,该方法设计了一些模板。每个模板Tμi都是一个具有相同大小特征图的矩阵。Tμi描述了当目标部分主要触发特征图中的第i个单元时特征图激活的理想分布。
在这里插入图片描述
  给定将特征图拟合到模板的联合概率,滤波器的损失被公式化为特征图和模板之间的互信息。这种损失促进了类别间激活的低熵,即卷积层中的每个过滤器都被分配到特定的类别。如果输入图像属于目标类别,则损失期望滤波器的特征图与模板很好地匹配;否则,过滤器需要保持停用状态。此外,这种损失还导致神经激活空间分布的熵变低。 当输入图像属于目标类别时,特征图应该专门适合单个模板。换句话说,过滤器需要激活特征图上的单个位置。
  这项研究假设,如果过滤器重复激活各种特征图区域,那么该过滤器更有可能描述低级纹理(例如颜色和边缘),而不是高级部分。例如,左眼和右眼可以由不同的滤波器来表示,因为两只眼睛的上下文是对称的,但不相同。
  图 10 显示了可解释 CNN 的不同滤波器生成的特征图。每个过滤器通过各种图像一致地表示相同的对象部分。
在这里插入图片描述

可解释的 R-CNN

  [Wu et al, 2017] 提出了一种基于 R-CNN 的对象检测的定性可解释模型学习方法。其目标是在对象检测过程中自动展开对象部分的潜在配置。该方法的学习不使用任何部分注释进行监督。[Wu et al., 2017] 使用一个自顶向下的层次和组合语法,即一个 And-Or 图(AOG),来模拟对象部分的潜在配置。这个方法使用基于 AOG 的解析操作符来替代 R-CNN 中使用的 RoI-Pooling 操作符。基于 AOG 的解析利用了对象的可解释的组合结构,并保持了 R-CNN 的区分能力。这个想法与解开局部的、自底向上的和自顶向下的信息组件进行预测的概念相关[Wu et al, 2007; Yang et al, 2009; Wu and Zhu, 2011]。
  在检测过程中,边界框被解释为动态地从AOG派生的最佳解析树。在学习过程中,采用折叠-展开方法对AOG和R-CNN进行端到端训练。
  图11表示了对象检测的示例。所提出的方法检测对象边界框。该方法还确定对象的潜在解析树和部分配置作为检测中的定性提取原理。
在这里插入图片描述

胶囊网络

  [Sabour et al, 2017] 设计了新颖的神经单元,即胶囊,以替代传统的神经单元来构建胶囊网络。每个胶囊输出一个活动向量而不是标量。活动向量的长度表示胶囊的激活强度,活动向量的方向编码实例化参数。较低层中的活动胶囊向相邻较高层中的胶囊发送消息。该方法使用迭代协议路由机制为低层胶囊分配更高的权重,其输出更好地适合高层胶囊的实例化参数。
  实验表明,当人们使用 MNIST 数据集 [LeCun 等人,1998b] 训练胶囊网络时,胶囊会编码特定的语义概念。胶囊活动向量的不同维度控制不同的特征,包括1)尺度和厚度,2) 局部部分,3) 笔划粗细,3) 局部倾斜,以及 4) 宽度和平移。

信息最大化生成对抗网络

  信息最大化生成对抗网络[Chen et al, 2016],即InfoGAN,是生成对抗网络的扩展。信息最大化生成对抗网络[Chen et al, 2016],即InfoGAN,是生成对抗网络的扩展。InfoGAN 将生成器的输入变量分为两种类型,即不可压缩噪声 z 和潜在代码 c。本研究旨在学习潜在代码 c 以无监督的方式编码某些语义概念。
  InfoGAN 已使用 MNIST 数据集 [LeCun 等人,1998b]、CelebA 数据集 [Liu 等人,2015]、SVHN 数据集 [Netzer 等人,2011]、3D 人脸数据集 [Paysan 等人,2009] 进行训练,以及 3D 椅子数据集 [Aubry et al, 2014]。实验表明,潜在代码成功编码了 MNIST 数据集中的数字类型、旋转和数字宽度、SVHN 数据集中的光照条件和车牌上下文、方位角、是否存在眼镜、发型、以及 CelebA 数据集中的情感,以及 3D 面部和椅子数据集中的宽度和 3D 旋转。

网络可解释性的评估指标

  模型可解释性的评估指标对于可解释模型的开发至关重要。这是因为与传统的明确定义的视觉应用(例如对象检测和分割)不同,网络可解释性更难以定义和评估。网络可解释性的评价指标可以帮助人们定义网络可解释性的概念,指导学习可解释网络表示的发展。迄今为止,只有很少的研究讨论了网络可解释性的评估。提出一个有前景的评估指标对于最先进的算法来说仍然是一个巨大的挑战。在本节中,我们简单介绍了CNN滤波器可解释性的两个最新评估指标,即[Bau et al,2017]提出的滤波器可解释性和[Zhang et al,2018a]提出的位置不稳定性。

滤波器的可解释性

  [Bau et al, 2017] 为 CNN 过滤器定义了六种类型的语义,即对象、零件、场景、纹理、材质和颜色。过滤器可解释性的评估需要人们在像素级别的测试图像上注释这六种语义。评估指标衡量滤波器神经激活的图像分辨率感受野与图像上的像素级语义注释之间的适合度。

位置不稳定

  另一个评估指标是位置不稳定。该指标由 [Zhang et al, 2018a] 提出,用于评估 CNN 过滤器和对象部分表示之间的适应性。

中端学习的网络可解释性

  根据第 4 节和第 5 节中讨论的研究,人们可以解开预训练 CNN 的表示,或者学习具有可解释、解开表示的新网络。这种可解释/解耦的网络表示可以进一步实现语义级别的中端模型学习,而无需强监督。我们简要回顾了两项典型研究[Zhang et al, 2017a;张等人,2017b]的中端学习如下。

主动问答学习与或图

  基于 [Zhang et al, 2016] 提出的语义与或表示,[Zhang et al, 2017a] 开发了一种使用主动问答对预训练 CNN 的卷积层中的神经模式进行语义化的方法,建立分层对象理解的模型。
  如图 13 所示,CNN 已针对对象分类进行了预训练。该方法旨在提取四层可解释的与或图(AOG)来解释隐藏在 CNN 中的语义层次结构。AOG 编码四层语义,涵盖特征图上的语义部分(OR 节点)、部分模板(AND 节点)、潜在模式(OR 节点)和神经单元(终端节点)。在 AOG 中,AND 节点表示零件的组成区域,OR 节点对局部零件的替代模板/变形候选者列表进行编码。顶部部件节点(OR 节点)使用其子节点来表示部件的一些模板候选。第二层中的每个部分模板(AND 节点)使用子潜在模式来表示其组成区域。第三层(OR 节点)中的每个潜在模式自然对应于滤波器特征图中的一定范围的单元。潜在模式选择此范围内的单位来解释其几何变形。
在这里插入图片描述
  为了学习 AOG,[Zhang et al, 2017a] 允许计算机主动识别和询问当前 AOG 无法解释其神经模式的对象。如图14所示,在主动问答的每个步骤中,当前AOG用于在所有未注释图像中定位对象部分。该方法主动选择不能很好地拟合AOG的对象,即无法解释的对象。该方法预测询问每个无法解释的对象的潜在收益,从而确定最佳的问题序列(例如询问模板类型和无法解释的对象部分的边界框)。通过这种方式,该方法使用答案来完善现有零件模板或挖掘新对象零件模板的潜在模式,以增长 AOG 分支。图 15 比较了不同方法的部分定位性能。基于 QA 的学习比其他基线表现出显着更高的效率。该方法使用大约 1/6-1/3 的零件注释进行训练,但与 fast-RCNN 方法相比,实现了类似或更好的零件定位性能。
在这里插入图片描述

CNN 模式的交互式操作

  使用对象边界框的注释对 CNN 进行预训练以进行对象分类。[Zhang et al, 2017b] 探索了一种交互式方法来诊断 CNN 的知识表示,以便将 CNN 模式转移到模型对象部分。与需要大量训练样本的传统​​ CNN 端到端学习不同,该方法在单次/多次学习场景中从 CNN 中挖掘对象部分模式。
  更具体地说,该方法使用很少(例如三个)对象图像上的部分注释进行监督。给定一个部分的边界框注释,所提出的方法首先使用 [Zhang et al, 2016] 从 CNN 的卷积层中挖掘与注释部分相关的潜在模式。AOG 用于组织所有挖掘的模式作为目标部分的表示。该方法将挖掘的潜在模式可视化,并要求人们交互式地删除与目标部分无关的潜在模式。通过这种方式,人们可以简单地从 AOG 分支中删除不正确的潜在模式来完善 AOG。图 16 可视化了最初挖掘的模式和人类交互后剩余的模式。在人类交互的指导下,[Zhang et al,2017b]表现出了卓越的零件定位性能。
在这里插入图片描述

未来趋势和结论

  本文综述了网络可解释性范围内的几个研究方向。在早期,神经单元模式的可视化是理解网络表示的起点。随后,人们逐渐发展出分析神经网络特征空间和诊断神经网络内部潜在表征缺陷的方法。目前,将卷积层的混沌表示分解为图模型和/或符号逻辑已成为打开神经网络黑匣子的新兴研究方向。将预训练的 CNN 转换为解释图的方法已被提出,并在知识转移和弱监督学习方面表现出显着的效率。
  端到端学习可解释神经网络,其中间层编码可理解的模式,也是一种未来趋势。 可解释的 CNN 已经开发出来,其中高卷积层中的每个过滤器代表一个特定的对象部分。
  此外,基于 CNN 模式的可解释表示,语义级中端学习被提出来加速学习过程。 与传统的端到端学习相比,中端学习允许人类交互来指导学习过程,并且可以用很少的注释进行监督。
  未来,我们相信中端学习仍将是一个基础研究方向。此外,基于可解释网络的语义层次结构,在语义级别调试 CNN 表示将创建新的视觉应用程序。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/187768.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ 之 Work Queues 工作队列

目录 一、轮训分发消息 1、抽取工具类 2、启动两个工作线程 3、生产者代码 4、结果展示 二、消息应答 1、概念 2、自动应答 3、消息应答的方法 4、Multiple 的解释 5、消息自动重新入队 6、消息手动应答代码 (1)生产者 (2&#…

@ConfigurationProperties使用

一直有个疑问,在使用ConfigurationProperties注解作用一个配置类时,如果该配置类继承了一个父类,那么父类的那些配置字段是否可以读取配置信息。 答案是可以的,前提是父类对应字段的set方法是public。 BaseProperties.java Getter Setter public class BasePropert…

什么是证书管理

在自带设备和物联网文化的推动下,数字化使连接到互联网的设备数量空前加速。在企业网络环境中,每个在线运行的设备都需要一个数字证书来证明其合法性和安全运行。这些数字证书(通常称为 X.509 证书)要么来自称为证书颁发机构 &…

Android---MVP 中 presenter 声明周期的管理

我们经常在 Android MVP 架构中的 Presenter 层做一些耗时操作,比如请求网络数据,然后根据请求后的结果刷新 View。但是,如果按返回结束 Activity,而 Presenter 依然在执行耗时操作。那么就有可能造成内存泄漏,严重时甚…

RustRover里使用AI通义灵码来写代码

AI通义灵码我选择RustRover里的 plugin进行下载使用 然后我们就提问好了&#xff1a;让他用c语言写一个冒泡排序程序 #include <stdio.h>void bubble_sort(int arr[], int size) {int i, j, temp;for (i 0; i < size - 1; i) {for (j 0; j < size - i - 1; j) {i…

Hololens开发笔记

1、关闭阴影 2、将相机渲染改为后向。因为默认是Forward&#xff0c;当在场景里面想使用点光源时&#xff0c;运行起来三角面会翻倍&#xff0c;影响软件运行流畅度。 3、第三人称同步相关。开启Host/Sever/Client前&#xff0c;需要将所有挂有NetworkObject/NetworkTransfor…

VINS-Mono-后端优化 (三:视觉雅可比推导)

用逆深度是因为这样可以在优化中从优化3个变量降低到1个&#xff0c;降低优化的维度加快求解速度 用逆深度是因为当距离很远的时候&#xff0c; 1 x \frac{1}{x} x1​ x x x 就会无穷大&#xff0c;而3D点很近的情况也一般不会有&#xff0c;这也是为了数值稳定性 用逆深度的…

Android 图层列表 、 LayerDrawable 、 layer-list \ 改变 seekbar thumb 滑块 的颜色

android 官网 &#xff1a; 图层列表 LayerDrawable / layer-list LayerDrawable 是管理其他可绘制对象数组的可绘制对象。列表中的每个可绘制对象均按照列表顺序绘制。列表中的最后一个可绘制对象绘于顶部。 每个可绘制对象均由单个 <layer-list> 元素内的 <item>…

树之二叉排序树(二叉搜索树)

什么是排序树 说一下普通二叉树可不是左小右大的 插入的新节点是以叶子形式进行插入的 二叉排序树的中序遍历结果是一个升序的序列 下面是两个典型的二叉排序树 二叉排序树的操作 构造树的过程即是对无序序列进行排序的过程。 存储结构 通常采用二叉链表作为存储结构 不能 …

内网如何使用Python第三方库包(举例JustinScorecardPy)

内网如何使用Python第三方库包 一、下载python whl文件(官网有的) 1、第一种方法 要直接下载whl文件&#xff0c;你可以按照以下步骤操作&#xff1a; 首先&#xff0c;访问 https://pypi.org/ 或 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 网站。这两个都是Python的官方…

光刻掩膜版怎么制作的?

光掩膜版基本上是 IC 设计的“主模板”。掩模版有不同的尺寸。常见尺寸为 6 x 6 英寸一般的掩膜版由石英或玻璃基板组成。光掩膜版涂有不透明薄膜。更复杂的掩模版使用其他材料。 一般来说&#xff0c;术语“photo mask”用于描述与 1X 步进机或光刻系统一起使用的“主模板”。…

希尔排序原理

目录&#xff1a; 一、希尔排序与插入排序 1&#xff09;希尔排序的概念 2&#xff09;插入排序实现 二、希尔排序实现 一、希尔排序与插入排序 1&#xff09;希尔排序的概念 希尔排序(Shells Sort)是插入排序的一种又称“缩小增量排序”&#xff08;Diminishing Incremen…

ElasticSearch7.x - HTTP 操作 - 索引操作

创建索引 对比关系型数据库,创建索引就等同于创建数据库 在 Postman 中,向 ES 服务器发 PUT 请求 :http://192.168.254.101:9200/shopping 说明 {"acknowledged"【响应结果】: true, # true 操作成功"shards_acknowledged"【分片结果】: true, # 分片操…

紧急事件,停电导致安森美韩国厂全线停工 | 百能云芯

11月9日的消息报道&#xff0c;全球半导体公司安森美遭遇了一场意外的停电事故&#xff0c;发生在位于韩国的富川晶圆厂&#xff0c;导致整个工厂陷入停工状态&#xff01; 停电事件发生在11月5日&#xff0c;导致富川晶圆厂的产线暂时停工&#xff0c;停电持续了大约20分钟。由…

Mac电脑Visio文件编辑查看软件推荐Visio Viewer for Mac

mac版Visio Viewer功能特色 在Mac OS X上查看Visio绘图和图表 在Mac OS X上轻松查看MS Visio文件 在Mac上快速方便地打开并阅读Visio文件&#xff08;.vsd&#xff0c;.vsdx&#xff09;。 支持通过放大&#xff0c;缩小&#xff0c;旋转&#xff0c;文本选择和复制&#xff0…

DSP开发例程(4): logbuf_print_to_uart

目录 DSP开发例程: logbuf_print_to_uart新建工程源码编辑app.cfgos.cmain.c 调试说明 DSP开发例程: logbuf_print_to_uart SYS/BIOS 提供了 xdc.runtime.Log, xdc.runtime.LoggerBuf 和 xdc.runtime.LoggerSys 这几个模块用于日志记录. 日志信息在 应用程序调试和状态监控中非…

第二十九章 目标检测中的测试模型评价指标(车道线感知)

前言 近期参与到了手写AI的车道线检测的学习中去&#xff0c;以此系列笔记记录学习与思考的全过程。车道线检测系列会持续更新&#xff0c;力求完整精炼&#xff0c;引人启示。所需前期知识&#xff0c;可以结合手写AI进行系统的学习。 介绍 自动驾驶的一大前提是保证人的安全…

中国智能驾驶的“突围赛”打响,这家本土厂商为何能成为“先行者”?

中国本土厂商正在成为全球智能汽车产业链的“核心力量”。 根据《高工智能汽车研究院》数据显示&#xff0c;今年1-6月&#xff0c;自主品牌标配L2&#xff08;含L2&#xff09;级辅助驾驶交付新车155.34万辆。其中&#xff0c;搭载中国本土智能驾驶解决方案提供商&#xff08…

Nacos使用指南

Nacos使用指南 1.认识Nacos Nacos是SpringCloudAlibaba的一个组件&#xff0c;遵循SpringCloud规范 2.Nacos的优势 1.支持服务端主动检测服务提供者状态。临时实例采用心跳检测&#xff0c;非临时实例采用主动检测 2.Nacos支持服务列表变更消息推送&#xff0c;消息更加及…

C++入门篇3(类和对象【重点】)

文章目录 C入门篇3&#xff08;类和对象【重点】&#xff09;1、面向过程和面向对象2、类的引入3、类的定义4、类的访问限定符及封装4.1、访问限定符4.2、封装 5、类的作用域6、类的实例化&#xff08;对象&#xff09;7、类对象模型7.1、类对象的存储方式7.2、结构体&#xff…