导言对抗性攻击:测试模型有助于发现可能的攻击。与其让这种攻击在生产环境中发生,不如在部署模型之前用对抗性实例对其进行测试,以提高其稳健性。数据完整性和偏差:从大多数来源收集到的数据通常都是非结构化的,可能会反映出人类的偏见,可以在训练过程中加以模拟。这种偏见可能是针对特定群体的,如性别、种族、宗教或性取向,根据使用规模的不同,会对社会造成不同的影响。在评估过程中,偏见可能会被忽略。发现失败模式:在
2024-03-31/2240 人阅读/2 人点赞

深度学习模型仍然需要测试,但是许多常见的测试方法并不适用于此。而如果使用正确的方法,您就可以确保您的管道产生良好的结果。软件是复杂的,作为开发人员,我们都了解构建一个良好的质量保证(QA)过程的必要性。然而,训练深度学习模型并在生产中实施这些模型会给测试质量带来新的挑战。许多众所周知的测试方法并不直接适用于深度学习模型。本博文将为您提供一些关于完整深度学习管道的QA流程的实用见解。QA在深度学习中
2024-03-31/1950 人阅读/0 人点赞

我决定以正确的方式编写一些框架,按部就班的选择一种语言(和版本…),选择正确的范例,进行TDD,创建在提交PR后自动触发的CI/CD流水线,同时也可以在本地运行(当然还有设置github/azdo/bitbucket/其他),选择一个license,并进行更多没有意识到的操作。唯一不关心的就是代码覆盖率。这一切都是在编写一行代码之前完成的。然后我编写了以下完全无关的脚本$vim~/bin/aur​
2024-03-31/1796 人阅读/0 人点赞

当有人问我做什么工作时,我会说我是一名数据质量保证(QA)工程师。他们并不真正理解我的意思。“嗯,我做数据测试,”我试图解释,但常常无济于事。我有一些从事技术和软件开发的朋友,他们不太了解数据测试是什么,为什么它是必要的,或者它在编程世界中的位置。这是可以理解的,因为数据科学是一个全新的领域,即使是每天与数据打交道的人也必须对处理工作方式的任何变化保持开放的态度。要了解数据测试的工作原理,必须首先
2024-03-31/1878 人阅读/0 人点赞

在StackOverflow成立之初,我们只是一个快速、精简运行的网站。Stackoverflow.com是由开发人员为开发人员创建的小型初创公司。像所有初创公司一样,我们优先考虑对我们来说最重要的质量属性,而忽视了许多其他属性,包括根据最佳实践进行单元测试。网站是为开发人员而建的,我们发现很多用户都很乐意报告错误,并在我们修复错误的同时解决它们。几年前,我们推出了StackOverflowfor
2024-03-31/1769 人阅读/0 人点赞

测试是每个从事技术工作的人日常生活中都会遇到的事情,但是,对于一些开发人员来说,当他们听到“QA正在测试“这句话时,他们就知道很可能会在周五下午5点收到一条信息,要求他们修复一个找不到的bug。我写这篇文章就是为了帮你避免或者至少减少这种情况的发生。为什么需要测试?我们已经知道测试的重要性,但是,为什么在软件开发中测试如此重要呢?为什么我的团队需要一个人来做这件事(QA、测试员)?要理解这一点,我
2024-03-24/1793 人阅读/9 人点赞

作为开发人员,我们努力编写准确无误的代码,但实际上没有人这样做,因为……bug。为了在这些讨厌的bug对我们的应用程序造成严重破坏之前将其捕获,我们依赖于自动化测试。正向测试可以确保我们的代码按照预期运行,而负向测试则在验证我们的应用程序是否足够强大,在处理意外输入和边缘情况方面发挥着至关重要的作用。我正在开发Pythagora,这是一款开源工具,它可以自己编写自动化集成测试(当然,GPT-4也会
2024-03-24/1790 人阅读/6 人点赞

质量保证(QA)是软件开发生命周期中一个重要过程,意在满足所有需求,并提高客户体验。QA通过提升效率,降低缺陷来帮助提高质量,降低成本。如同软件产品和服务趋向于复杂,也需要更多综合性的测试来寻找缺陷并进行必要的修复后才能进行对外发布。QA过程中需要制定计划并且监控才能获得成功。最有效的方法是使用经过深思熟虑后产生的指标。在描述相关流程的重要信息中,指标是非常重要的数字。它可以展示出有关流程是如何运
2024-03-16/1753 人阅读/0 人点赞

(在我的同事DougHoffman、MichaelBolton、KenPugh、CemKaner、BretPettichord、JimBatterson和GeoffSutton以及许多参加过“雷区辩论”的学生的帮助下,作为我测试课的一部分。这个"雷区"比喻的灵感来自BrianMarick的演讲《经典测试错误》)在测试中查找bug就像在雷区中寻找地雷。如果你只是一遍又一遍地在雷区中走同一条路,你就不
2024-03-16/1777 人阅读/0 人点赞

开发组织常常面临的一个标准问题是,代码实现往往需要与原始设计和架构更加一致。这个问题很常见,尤其是在大型项目中。软件架构对于代码库的可理解性、可变性和遵循软件质量目标至关重要。就代码库而言,有三个重要的软件架构目标:可维护性、可替代性、可扩展性。要使软件系统保持良好的状态,就必须确保它是模块化的,相互依赖关系尽可能小且正确,从而实现高内聚和低耦合。这些目标可以通过引入特定的模式和代码约定来实现,并
2024-03-16/1804 人阅读/0 人点赞