发布信息

人工智能医疗器械软件可靠性评测研究进展及挑战

作者:软荐小编      2024-07-13 10:05:02     139

人工智能医疗器械软件可靠性评价研究进展

随着计算机技术在医疗领域的广泛应用,软件在医疗服务中的地位和作用日益凸显,对公众生命健康、财产、信息安全的影响也日益增大。同时,人工智能技术与医疗器械软件的结合使得产品有效性和安全性的评价日趋复杂,其中可靠性是衡量人工智能医疗器械软件质量的重要维度。

一方面,当前软件规模和内部架构日趋复杂,计算框架、组件、数据充满变化,保证产品的可靠性愈加困难。据国外公布的数据,每年因软件原因发生的医疗器械召回事件达数百起,影响产品临床验收的同时也为监管质量评价敲响了警钟;另一方面,临床应用场景对软件运行的可靠性要求越来越高。随着软件智能化、自主化的提升,软件可靠性对患者和操作人员安全和权益的影响也越来越大。医疗器械软件可靠性评价已成为人工智能医疗器械软件质量评价的重要环节之一。本文旨在概述人工智能医疗器械软件可靠性评价的现状,为业界提供参考。

人工智能医疗设备软件可靠性概念

按照2020年起草的行业标准《人工智能医疗器械质量要求与评价第1部分:术语》中的定义,可靠性是指系统或部件在规定的时间间隔、规定的条件下,完成规定功能的能力。人工智能医疗器械软件的可靠性重点关注产品在规定的条件、规定的时间间隔内,完成规定的临床功能的能力。其中,规定条件是指使用该软件的计算机系统的状态以及与软件运行直接相关的软件输入条件,或统称软件运行时的外界输入条件;规定时间间隔是指软件实际运行的时间间隔;规定临床功能是指向用户提供给定的医疗服务。

人工智能医疗器械软件功能可靠性包括成熟度、可用性、容错性和可恢复性等。成熟度是指软件产品在满足要求或其他特殊条件(如在一定的负载压力下)的软/硬件环境中使用时,向用户提供相应服务的能力,如软件的故障密度、缺陷严重程度、完整性等级等。可用性是指软件在使用时可被操作和访问的程度,是成熟度、容错性和可恢复性的综合。容错性是指当软件因非法数据、非法操作、误操作等原因导致软件无法正常运行、出现参数传输错误时软件 可靠性,软件仍能为用户提供相应临床功能服务的能力。可恢复性是指在软件发生故障时,能够采取措施重建向用户提供相应临床服务的能力,恢复直接受到影响的医疗器械数据。

AI医疗器械算法的可靠性强调算法在规定条件下的可重复性,即对相同输入的响应和输出保持不变。据相关文献报道,聚类分析、深度学习等算法分支均报告了可重复性问题,因此在测试阶段需引起重视,不可掉以轻心。

人工智能医疗器械软件可靠性技术实现

人工智能医疗器械软件的可靠性基于以下四项活动和相关技术:

(1)软件可靠性分析:软件可靠性需求分析、指标分配、故障树分析、故障模式与影响分析、软件开发过程中软件可靠性特性分析等;

可靠性软件开发_可靠性软件北航_软件 可靠性

(2)软件可靠性设计与实现:错误预防设计、容错设计、错误检测设计、错误纠正设计、故障恢复设计、软件可靠性增长等;

(3)软件可靠性测量、测试与评估:进行软件生命周期各阶段与软件可靠性设计、制造和管理有关的属性测量,开展软件可靠性测试、软件可靠性预计、软件可靠性估计、软件可靠性验证等;

(4)软件可靠性管理:识别影响软件可靠性的因素,对软件开发各阶段与软件可靠性相关的过程和产品制定必要的设计和实施指南和要求,根据相关测试数据和分析结果控制和改进开发过程,进行兼顾安全性等技术风险的风险管理,对购买或重复使用的第三方软件进行可靠性管理。

上述活动还包括对AI算法模型本身的可靠性评估,厂商需在研发及产品验证阶段根据临床应用场景评估AI算法正确发挥临床功能的运行时间、运行条件,并积累先验数据。

人工智能医疗器械软件可靠性测试路径

人工智能医疗器械软件的可靠性验证方法是在给定的统计置信水平下,验证软件当前的可靠性水平是否满足临床用户的要求。即临床用户在收到软件时,判断其是否满足软件规范中规定的可靠性指标。该方法一般在软件验收阶段进行软件 可靠性,由软件需求方参与实施。其主要过程是利用软件供需双方认可的可靠性验收模型,根据实际临床使用场景中测试的故障情况,对可靠性进行定量评估,判断软件是否达到了其需求规范中约定的可靠性。

人工智能软件可靠性测试活动包括:构建操作配置文件、选择测试用例、准备测试环境、运行可靠性测试、数据收集、数据分析和故障纠正。

(1)构建运行概况:软件的运行概况一般是指对软件使用条件的定义,在可能的输入范围内,按照时间分布或者其发生概率的分布来定义软件的输入。由于人工智能算法的特殊性,软件的输入样本需要考虑数据的格式、内容、计算能力的消耗和临床典型性,同时考虑阴性样本、阳性样本以及流行病学统计数据。

粗略地说,操作剖面用于描述软件的实际使用情况。操作剖面是否能表示和表征软件的实际使用情况,取决于可靠性工程人员对软件的系统模式、功能、任务需求和相应的输入刺激的分析,以及对用户使用这些系统模式、功能和任务的概率的理解。操作剖面构建的好坏将对测试分析结果是否可信产生最直接的影响。

(2)测试用例的选取:软件可靠性测试是按照运行概况对软件进行可靠性测试的方法。因此,可靠性测试所用的测试用例是根据运行概况随机选取的,最好按照标准化的测试集进行抽样。

软件 可靠性_可靠性软件开发_可靠性软件北航

(3)测试环境准备:为了得到最真实的可靠性测试结果,可靠性测试应在真实的临床环境中进行。但很多时候,在真实环境中进行软件可靠性测试并不现实,因此需要开发软件可靠性模拟测试环境。例如,对于智能硬件产品中所包含的嵌入式软件,与之交联的环境的开发往往同步甚至滞后于软件的开发,因此无法及时开展软件可靠性测试。在某些软件中,交联环境非常昂贵,不能用于需要大量运行的可靠性测试。

(4)可靠性测试运行:即利用根据运行概况生成的测试用例,在真实测试环境或者可靠性模拟测试环境中对软件进行测试。

(5)数据收集:所收集的数据包括故障分析和回归测试所需的软件输入数据和输出结果;软件运行时间数据,可以是CPU执行时间、日历时间、时钟时间等;可靠性故障数据包括每次故障发生的时间或一段时间内发生的故障次数。故障数据可以通过实时分析获得,也可以在分析后获得。数据收集的质量对最终的可靠性分析结果有很大影响。应尽可能采用自动化手段收集数据,提高效率、准确性和完整性。

(6)数据分析:主要包括故障分析和可靠性分析。故障分析是根据运行结果,判断软件是否发生故障,以及故障的后果和原因;而可靠性分析主要是指根据故障数据,估计软件的可靠性水平,预测可能达到的水平,评估产品是否达到了要求的可靠性水平。

(7)故障修正:如果软件的运行结果与要求不一致,就称该软件发生故障。通过故障分析,发现并修正程序中引起故障的缺陷,从而实现软件可靠性增长。软件可靠性增长测试是对软件进行测试,以满足用户对软件可靠性的要求,提高软件可靠性水平。它是对软件进行测试——可靠性分析——修改——再测试——再分析——再修改的循环过程,以满足软件的可靠性指标要求。

人工智能医疗器械软件可靠性测试的挑战

开展人工智能医疗器械软件可靠性测试的关键是建立测试模型,但目前尚无统一的标准。迄今为止,软件可靠性模型的研究已有几十年的历史,国内外已发表了近百种软件可靠性模型。但由于软件可靠性模型的研究尚处于起步阶段,软件可靠性模型的分类方法较多。笔者采用综合模型假设、测试环境和数理统计的分类方法,将模型大致分为:随机过程模型和非随机过程模型。随机过程模型包括马尔可夫过程二项式模型、非齐次泊松过程模型等分支,非随机过程模型包括利用贝叶斯估计的模型、基于输入域的模型和其他方法模型。对于具体的人工智能产品,软件固有错误个数、错误间的相关性、错误间间隔时间、软件失效率等关键参数还处于积累过程中。可靠性测试的理论模型目前尚不唯一,是质量评估的薄弱环节。 软件可靠性模型的不完善也导致软件可靠性模型无法全面描述软件的故障行为。

由于人工智能算法的复杂性、随机性,软件故障具有离散性和偶发性,部分软件产品缺乏直观的测试准则。此时可靠性评估可以基于输入与输出的关系,如蜕变测试等,来验证和捕捉算法缺陷,作为上述方法的补充。

人工智能医疗器械软件可靠性是产品安全性、有效性的关键要素之一,影响产品未来使用质量。本文总结了人工智能医疗器械软件可靠性实施及检测现状,为评价活动提供参考。鉴于目前行业技术现状,评价规范的建立和实施还存在一些问题,将在产品质量研究过程中进一步完善。

相关内容 查看全部