智能助手错误定位与评估方法解析
1. 智能助手评估与软件测试的关联
智能助手输出的正误评估可映射到软件测试领域。依据最新标准,测试是在特定条件下运行系统或组件、观察记录结果并对其某方面进行评估的过程,即按特定方式运行程序并评估输出。智能助手虽也是程序,但它部分是自动生成的。以文本分类助手为例,机器学习专家先编写助手框架和学习算法并验证,再用初始训练数据自动生成助手的首个版本,之后部署到终端用户桌面。
此时,助手的主要工作是读取输入(未标记文本)并产生输出(文本标签),同时它还需从用户操作中收集新训练数据以学习更好的逻辑,相当于自动生成新程序。由于部署后机器学习专家不再进行测试,终端用户成为唯一能测试该程序的人。
在这样的程序中,许多软件测试概念可直接应用。测试用例是输入(未标记文本)和输出(标签)的组合,测试是终端用户对测试用例输出是否正确的明确判断。若用户认为输出不正确,这在用户眼中就是助手推理存在缺陷的证据。
测试不能对所有可能的输入/输出对逐一进行,因为可能的输入空间通常极大甚至无限。一种解决方案是使用覆盖率概念来衡量测试是否充分。可通过某种相似性度量将输入划分为“相似”组,一个测试用例可覆盖当前和未来输入与该测试用例输入在同一组且输出相同的所有输入/输出对。
系统测试与临时测试有两个重要区别:系统测试有衡量程序“测试程度”的指标(覆盖率),并能确定哪些测试用例可提高该指标。在电子表格范式中,终端用户的系统测试比临时测试更有效。
测试和调试虽相关但不同。测试评估程序输出的正误,调试则是实际修复程序。测试有助于调试的两个阶段:发现缺陷阶段,通过展示程序失败的实例;验证阶段,确认程序是否不再以该方式失败。
超级会员免费看
订阅专栏 解锁全文

1160

被折叠的 条评论
为什么被折叠?



