中文 英语
系统与设计
的意见

ML和UVM有相同的缺陷

确定完整性的度量是不完整的和有偏见的。

受欢迎程度

许多人肯定对UVM和机器学习(ML)有什么共同之处感到困惑,以至于它们可以被描述为具有相同的缺陷。在这两种情况下,在某种意义上都是一种疏忽的缺陷。

让我们从ML开始,特别是物体识别。十年前,Alexnet与图形处理器相结合,成功击败了所有依赖于传统技术的物体检测系统。从那天起,情况稳步改善。模型变得更大更复杂,其结果已经超过了人类的准确性。类似的情况可能与过去依赖于定向测试的验证有关。然后,引入有约束的随机测试模式生成,接着是SystemVerilog和UVM,允许更大程度的覆盖。

但有两个问题。ML的第一个问题是,你永远不知道是否已经用足够多的图像训练了网络,以及这些图像是否都有用。约束随机测试模式生成的概念有一个明显的共同点。两者都没有办法定义补全,而且用于功能验证的模式——就像用于ML的图像集一样——远远不够高效。人们花费了大量的时间和金钱来为ML定义既完整又无偏见的良好数据集,但大多数时候它们都失败了。

也许你认为功能性刺激是没有偏见的,但这也不是真的。它倾向于每个团队都意识到的问题,最近绊倒他们的问题,或者新领域——更不用说那些最有可能导致复苏的问题。几乎可以肯定的是,很少有测试会寻找性能问题、电源问题、安全问题,以及许多其他更容易被掩盖的问题。

完整性的概念已经通过功能验证和包含覆盖率来解决,但是这些度量是不完整的和有偏见的。它们是不完整的,因为达到100%的功能覆盖率并不能说明你的设计验证得有多好。它只显示朝着任意目标前进的过程。我曾多次被告知,功能覆盖往往倾向于那些容易发现的问题,而不是真正代表设计的状态空间。

另一方面,物体识别没有任何真实的度量标准。他们只计算规模,而不真正衡量质量。例如,自动驾驶需要能够识别街道标志。2013年,他们创建了一个数据库,其中包含在不同天气条件和时间拍摄的约900张图像和1200个交通标志。2016年,另一个数据库已经以更高的分辨率增长到大约10万张图像。但它是完整的吗?谁知道呢?

基于新数据库的检测系统会好到哪里去?正如perceptor首席执行官Steven Teig在他的DAC 2022主题演讲中指出的那样,仅仅通过注入一些噪音,他们仍然很容易被愚弄。但这只是对他们进行对抗性攻击的一种形式。他们自己经常会完全搞错。

这就引出了他们的第二个也是最大的缺陷。ML本身就是不值得信任的。众所周知,汽车会撞上停着的紧急车辆,或者无故紧急停车,从而导致事故。当它们被认为比人类更擅长区分各种狗的品种时,这怎么可能发生呢?这是因为他们没有重要性或关键性的概念。每一张照片,每一个认可,都被平等对待。虽然平均而言,它们比人类优秀,但人类不太可能犯同样的灾难性错误。有人能指出模型哪里有问题吗,或者训练集中应该有什么图像吗?不。所以ML本质上仍然不值得信任。

这与功能验证有什么关系?我们也没有办法衡量重要性或严重性。每个掩体都是平等的。团队将在达到99.99%的覆盖率时停止,但如果最后一个覆盖点实际上是一个致命的缺陷呢?仅仅因为随机验证没有成功激活并不会降低它的重要性。是的,通过验证计划,覆盖点可能会随着时间的推移而被添加,这样在进行更模糊的功能之前,功能级别就可以被验证。但我不知道有哪家公司对此有一套正式的方法。

ML和UVM都无法定义什么是重要的,什么是关键的,这就是ML不值得信任的原因——也是验证经理晚上睡不着觉的原因。使用用例场景是朝着正确方向迈出的一步,因为它允许我们定义什么是重要的,但这实质上是将我们带回到定向测试。它是受约束的随机的,允许创建更多的测试用例,并使设计进入没有人可能想到要为其创建测试的状态,但在这样做的过程中,我们失去了焦点、重要性和效率的概念。

现在是时候重新思考完成和在功能验证和机器学习中的重要性,同时制定一种有效定义闭包的方法。



1评论

路易斯·斯特恩伯格 说:

很高兴看到你还在比赛,布莱恩。信息量大,见解深刻,总是一本好书

留下回复


(注:此名称将公开显示)

Baidu