首页> 中国专利> 估计机器学习解决方案的可行性和努力

估计机器学习解决方案的可行性和努力

摘要

提供了一种用于评估与开发至少一个机器学习(ML)解决方案相关联的成功可能性的方法、计算机系统和计算机程序产品。本发明可以包括基于原始训练数据集生成问题集。本发明还可以包括基于与所生成的问题集中的每个问题对应的回答计算可行性评分。本发明然后可以包括:响应于确定所计算出的可行性评分满足阈值,计算与开发至少一个ML解决方案以解决问题相关的努力水平。本发明可以进一步包括向用户呈现与评估至少一个ML解决方案成功的可能性相关联的多个结果。

著录项

  • 公开/公告号CN112215361A

    专利类型发明专利

  • 公开/公告日2021-01-12

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN202010632525.2

  • 申请日2020-07-02

  • 分类号G06N20/00(20190101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人邸万奎

  • 地址 美国纽约阿芒克

  • 入库时间 2023-06-19 09:32:16

说明书

背景技术

本发明总体上涉及计算领域,并且更具体地涉及机器学习(ML)的开发。

人工智能(AI)项目的成功可能取决于多种条件,例如标记训练数据的可用性、标记技术和轻量域知识。

发明内容

本发明的实施例公开一种用于评估与开发至少一个机器学习(ML)解决方案相关联的成功可能性的方法、计算机系统和计算机程序产品。本发明可以包括基于原始训练数据集生成问题集。本发明还可以包括基于与所生成的问题集中的每个问题对应的回答计算可行性评分。本发明然后可以包括:响应于确定所计算出的可行性评分满足阈值,计算与开发至少一个ML解决方案以解决问题相关的努力水平。本发明可以进一步包括向用户呈现与评估至少一个ML解决方案成功的可能性相关联的多个结果。

附图说明

本发明的这些和其他目的、特征和优点将从下面结合附图对其示例性实施例的详细说明中变得显而易见。附图的各种特征不是按比例绘制的,因为附图是为了清晰起见,便于本领域技术人员结合具体实施方式理解本发明。在附图中:

图1示出了根据至少一个实施例的联网计算机环境;

图2是示出根据至少一个实施例的用于评估与开发至少一种机器学习(ML)解决方案相关联的成功可能性的过程的操作流程图;

图3是根据至少一个实施例的图1所示的计算机和服务器的内部和外部组件的框图;

图4是根据本公开的实施例的包括图1所示的计算机系统的说明性云计算环境的框图;以及

图5是根据本公开的实施例的图4的说明性云计算环境的功能层的框图。

具体实施方式

本文公开了所要求保护的结构和方法的详细实施例;然而,可以理解,所公开的实施例仅是可以以各种形式体现的所要求保护的结构和方法的说明。然而,本发明可以以许多不同的形式实施,并且不应被解释为限于本文阐述的示例性实施例。相反,提供这些示例性实施例,使得本公开将是彻底和完整的,并且将本发明的范围充分传达给本领域技术人员。在说明书中,可以省略众所周知的特征和技术的细节,以避免不必要地混淆所呈现的实施例。

在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言、Python编程语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。

这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

下面描述的示例性实施例提供了一个用于开发至少一个机器学习(ML)解决方案的系统、方法和程序产品。因此,本实施例具有通过估计参与ML解决方案开发的可行性评分(score)和努力水平(level)来改进ML解决方案的技术领域的能力。更具体地说,成功评估程序可能会收到原始训练数据集。接下来,成功评估程序可以生成一系列问题,以及对该系列问题的相应的回答,然后计算可行性评分,并与阈值进行比较。如果可行性评分满足阈值,则比较努力水平,并将结果呈现给用户。

正如前面所描述的,人工智能(AI)项目的成功可能取决于多种条件,例如标记训练数据、标记技术和轻量域知识的可用性。

如果有的话,最差的体验可能在于当任何这些条件中断或不存在时,却要开发成功的ML解决方案。然而,这些条件经常会在业务应用程序领域出现中断。例如,在业务解决方案领域,只有少数标记数据可用,标记不实用或主题专家(SME)无法执行标记,训练和建模将包括高极的领域知识。因此,与开发成功的ML解决方案相关的成功可能性较小,特别是对于上述业务解决方案领域。

此外,在开发ML解决方案时,增加或大量的人类劳动可能导致最小的结果(如果有的话),从而降低成功的可能性。因此,提高成功可能性的有效方法是提供一种早期评估解决方案的可行性,手段,以及早期评估可行的解决方案可能涉及的努力水平。

因此,除其他事项外,开发一种成功可能性评估方法可能是有利的,该方法用于通过估计在挑战性业务领域条件下(例如在只有少数标记数据可用、标记可能不太实用(例如,执行标记的SME有限),并且训练和建模涉及领域知识的情况下)的可行性评分和努力水平来评估与开发至少一个成功的ML解决方案相关的成功可能性。

根据至少一个实施例,成功评估程序可以从规则集中引导(bootstrap)学习过程,以及基于主题专家(SME)定义的规则增强学习。在本实施例中,成功评估程序可以从共享经验池中执行ML算法。可以从多个项目收集数据集,并将潜在的新ML解决方案划分为可行或不可行,然后根据与过去解决方案类别或分类的相似性或距离,将潜在的新ML解决方案与努力(effort)范围进行比较。

根据至少一个实施例,成功评估程序可以确定特定ML解决方案的可行性。通过确定可行性,成功评估程序可以为评估项目产生的问题的每个回答分配一个数值评分(例如,“是”被分配一个数值评分1以及“否”被分配一个数字评分0)。与每个生成的问题的回答相关的分配的数字评分之和可以用来计算可行性评分。在另一个实施例中,成功评估程序可以更改问题的数值评分,并为计算可行性评分加上更多的值和/或提供更复杂的功能(例如,加权和)。

根据至少一个实施例,成功评估程序可以估计努力水平。如果生成的问题的回答是“是”或肯定的,那么成功评估程序可以为评估需要努力(例如,低、中或高)的问题提供更细粒度的选项。然后,成功评估程序可以应用一个函数(例如,加权和)来确定努力的水平。

根据至少一个实施例,成功评估程序可以包括特定的设计元素,即包括定义的系统业务价值指标、获得与ML解决方案相关联的未用测试集的能力、原始训练数据中真实生活数据的表示、大约30个预标签示例、统计估计的标注的准确性、持续标注的可能性以及比特征(如果获得通用化模型)多十倍的数据。

根据至少一个实施例,成功评估程序可以包括模型开发,即从原始训练数据中自动重新学习(例如,整个数据管道可以自动化)。对于对象,可能存在获取数据管道每个阶段特征的映射,并且可能提供完整的超参数列表(例如,对于每个超参数,如果作为自动数据管道的一部分自动搜索最佳值,则未搜索的每个超参数都会降低成功的可能性)。本实施例可包括使用高级统计估计性能(至少k倍交叉验证)的技术开发的模型。此外,可以为所有平均值开发一个或多个非参数置信区间,并且可在数据管道开发期间做出明确的统计假设,并在部署时实施适当的检查。例如,两个要素可以是相关的,其中一个要素被删除。在部署时,成功评估程序可以检查这两个要素是否仍然相关。

根据至少一个实施例,成功评估程序可以包括测试和部署。测试可以针对一个或多个真实数据(ground truth)集进行,这些真实数据可能永远不会用于使用高级统计技术(如引导和非参数置信区间)进行学习。可以对一个或多个真实数据集进行分片,以确定弱点(例如正在开发的资产),并在开发阶段开发统计假设。

参照图1,示出了根据一个实施例的示例性的联网计算机环境100。联网的计算机环境100可以包括带有处理器104的计算机102和启用运行软件程序108和成功评估程序110a的数据存储设备106。联网的计算机环境100还可以包括服务器112,该服务器能够运行成功评估程序110b,该程序可以与数据库114和通信网络116进行交互。联网的计算机环境100可以包括多台计算机102和服务器112,只显示其中一台。通信网络116可包括各类通信网络,如广域网(WAN)、局域网(LAN)、电信网、无线网络、公共交换网和/或卫星网络。应该注意的是,图1只提供了一个实现的说明,并不意味着在实施不同实施例的环境方面有任何限制。可以基于设计和实现要求对描述的环境进行多种修改。

客户端计算机102可以通过通信网络116与服务器计算机112进行通信。通信网络116可以包括诸如有线、无线通信链路或光纤电缆之类的连接。如将参考图3所讨论的,服务器计算机112可以分别包括内部组件902a和外部组件904a,并且客户端计算机102可以分别包括内部组件902b和外部组件904b。服务器计算机112还可以在云计算服务模型中运行,云计算服务模型例如软件即服务(SaaS)、分析即服务(AaaS)、平台即服务(PaaS)或基础设施即服务(IaaS)。服务器112也可以位于云计算部署模型中,例如私有云、共有云、公共云或混合云。客户计算机102可以是例如移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机或能够运行程序、访问计算机的任何类型的计算设备。根据本实施例的各种实现,成功评估程序110a、110b可以与数据库114交互,数据库114可以嵌入到各种存储设备中,例如但不限于计算机/移动设备102、网络服务器112或云存储服务。

根据本实施例,使用客户端计算机102或服务器计算机112的用户可以分别通过估计可行性评分和努力水平来使用成功评估程序110a、110b来开发至少一个ML解决方案。下面参照图2更详细地解释成功评估方法。

现在参考图2,示出了根据至少一个实施例的由成功评估程序110a、110b使用的说明示例性机器学习(ML)解决方案开发过程200的操作流程图。

在202处,接收原始训练数据集。利用用户设备(例如,用户计算机102)上的软件程序108,可以经由通信网络116自动接收至少原始训练数据集作为对成功评估程序110a、110b的输入。原始训练数据集可以包括与报告、文档、执行日志和/或源代码相关联的现实生活数据,以及用于存储的其他媒体和/或与特定任务相关联的传输数据(例如,用于识别不良事件的健康记录和/或医学试验,用于确定是否应由放射科医师和/或人类专家进行检查和/或乳房X线检查的X射线,用于确定测试失败是执行环境中的问题还是基础测试中的软件问题所致的软件测试执行日志)。在至少一个实施例中,用户可以将原始训练数据集手动上载到成功评估程序110a、110b中。

例如,目前正在对600名患者进行一项关于高血压的新药物的临床试验。临床试验的一位研究科学家建议使用机器学习(ML)解决方案,根据原始训练数据,即与临床试验中每个患者相关的医疗报告,来确定新药的不良事件(或副作用)。研究科学家进一步决定利用成功评估程序110a、110b来评估与用于识别不良事件的ML解决方案相关联的成功可能性。

接下来,在204处,生成问题集。这些问题可以会捕获最佳实践,并在收到的原始训练数据集中找出缺陷(shortfall)。在至少一个实施例中,可以手动定义问题,并且在一些其他实施例中,可以自动提取问题。成功评估程序110a、110b可以训练机器学习(ML)模型,该机器学习(ML)模型获取与成功和不成功ML模型相关联的输入数据。然后,可以通过开发应用于所接收的原始训练数据集的特定ML模型的阶段来聚合问题。

在至少一个实施例中,成功评估程序110a、110b可以包括测试和部署。测试可在一个或多个基本真实数据集上执行,这些真实数据可用于使用高级统计技术(例如引导和非参数置信区间)学习。可以分割该一个或多个真实数据集以识别弱点(例如,正在开发的资产),并且可以在开发阶段开发统计假设。

在至少一个实施例中,问题可以由提取器产生。通过利用自然语言处理技术(例如,分类、情感、实体提取、主题建模),提取器可以解析所接收的原始训练数据集,以识别和提取所接收的原始训练数据集中的用于为用户生成问题的任何最佳实践或缺陷。

在本实施例中,成功评估程序110a、110b可产生至少一个问题。但是,生成的问题可能有一个最大限制(例如,生成的问题的默认最大限制是20)。在一些实施例中,成功评估程序110a、110b对于生成的问题的数量没有最大限制。例如,成功评估程序110a、110b可基于与所接收的原始训练数据集相关联的已识别的缺陷和最佳实践,生成尽可能多的问题。

此外,成功评估程序110a、110b可以向用户呈现生成的问题。例如,成功评估程序110a、110b可以通过对话框或聊天机器人屏幕呈现生成的问题。可以提示用户以肯定应答(例如,通过在每个问题下面的命令框中写上“是”,通过单击每个问题下面的绿色或选择标记按钮)或否定应答(例如,通过在每个问题下面的命令框中写上“否”,通过单击每个问题后面的红色或“X”标记按钮)来回答每一个生成的问题。在至少一个实施例中,成功评估程序110a、110b可以单独呈现问题。一旦问题的回答被呈现并由用户回答,成功评估程序110a、110b就可以生成另一个问题供用户响应。

在一些实施例中,成功评估程序110a、110b可以立即向用户呈现生成的问题列表。在每个问题的下面,成功评估程序110a、110b可以包括供用户提供对每个生成问题的回答的空间(例如,命令框,或肯定应答按钮和否定应答按钮)。

在至少一个实施例中,在用户回答最后生成的问题后,成功评估程序110a、110b可以向用户呈现一条消息(例如,“问题成功回答”、“谢谢您的回答)确认收到回答。

在至少一个实施例中,可以将生成的问题和相应的回答保存并存储在数据库114中。

在另一个实施例中,成功评估程序110a、110b可以包括“不知道”值或按钮(例如,用按钮上的问号或按钮上的短语“不知道”表示)作为生成问题的回答。

在至少一个实施例中,用户可以识别超参数并自动搜索所需值(即可行性评分),以及用户可以对ML性能度量应用置信区间,这可以反映在生成的问题中。

继续前面的例子,与临床试验相关的医疗专业人员,即由科学家、医生、护士、营养师、社会工作者和精神病学家组成的研究团队,之前向每位患者提供了15个问题的清单以供回答。然后,成功评估程序110a、110b向每位患者提示之前提供的15个问题中的每一个,并进一步提示每位患者对每一个问题给出“是”或“否”的回答。成功评估程序110a、110b然后将与每个患者相关的问题和相应回答保存在数据库114中。一旦病人完成了这15个问题,成功评估程序110a、110b会被呈现一条命令“谢谢你的回答”,表示病人已成功响应了问题。

然后,在206处,计算一个可行性评分。成功评估程序110a、110b可以基于对生成问题的回答生成可行性评分,其中可行性评分决定生成问题的回答生成的数据对开发ML解决方案是否足够或实际。回答可以是二进制形式(例如,“是”或“否”)。对生成的问题的每个回答都可以分配一个数值(例如,“是”分配1,“否”分配0),然后将分配的数值相加在一起,分配的数值的总和可以作为可行性评分。

在至少一个实施例中,成功评估程序110a、110b的用户可以是开发ML模型的人员。

在至少一个实施例中,成功评估程序110a、110b可以有“不知道”的第三个回答选项“不知道”(即,可以包括“不知道”的一种或多种变体,如“不确定”、“不肯定”)。“不知道”的回答可以被计为“-1”或类似的值,以表明在继续使用特定的ML解决方案之前,进一步的思考或分析可能是有益的。

在另一个实施例中,成功评估程序110a、110b可以改变每个问题的评分,其中某些问题的回答可以比其他回答的权重更大。因此,成功评估程序110a、110b可以利用加权和来计算可行性评分。

在一个实施例中,当计算多个可行性评分时,成功评估程序110a、110b可以按照先前确定的顺序(例如,从高到低、从低到高)对可行性评分进行排序。在一些实施例中,成功评估程序110a、110b可以利用与原始训练数据集(其与可行性评分相关联)的用户和/或主题相关联的其他数据来对可行性评分进行排序。例如,如果ML解决方案包括针对不同年龄组的问题的处理,那么可行性评分可以按照与用于计算可行性评分的原始训练数据集相关的人的年龄升序或降序来排序。

在一个实施例中,不良事件分类器可用于识别由成功评估程序110a、110b接收的原始训练数据集中发生的不良事件。通过识别一个或多个不良事件,不良事件分类器可经由通信网络116发送一个或多个不良事件到成功评估程序110a、110b以计算可行性评分。

继续前一个例子,对于临床试验中600名患者出现的例如幻觉、头晕、四肢麻木等每一个不良事件,计算一个可行性评分。每个“是”响应被分配“1”,每个“否”响应被分配“0”。因此,不良事件可获得的最高可行性评分为“15”。成功评估程序110a、110b计算每个不良事件的可行性评分,范围从1到15。成功评估程序110a、110b进一步识别与原始训练数据集中的每个人相关的数据,例如每个人的年龄、性别、病史和疾病、典型饮食和国籍。

然后,在208,将可行性评分与阈值进行比较。成功评估程序110a、110b可将可行性评分与先前确定的阈值水平(例如,默认水平为100%中的75%、1中的0.75、10中的7.5、100中的75或类似值的一些标准化值)进行比较。

在至少一个实施例中,阈值可以由人(例如,管理员或用户)预先确定,其中人可以配置阈值水平。例如,用户可以点击位于主屏幕右下角的“设置”按钮。然后,然后用具有不同设置主题或选项的列表的第一个对话框提示用户。当用户点击“阈值”按钮时,第一个对话框可以消失,第二个对话框出现。第二个对话框包括先前选定阈值的列表,以及第二个对话框底部的给用户的文本框,以包含新的阈值水平。每个先前选择的阈值水平都包括先前选择的阈值左侧的按钮,在该按钮中,用户可以单击以选择先前选择的阈值水平。完成阈值选择后,用户可以单击位于第二个对话框底部文本框下方的“提交”按钮。第二个对话框将消失,新的阈值级别将立即实现。

在一些实施例中,阈值水平可以由成功评估程序110a、110b基于学习方法自动确定。成功评估程序110a、110b可以利用各种阈值设置技术(例如,通过使用历史数据将数据和比例比率与过去的类似时间段的进行比较,在给定时间段内将绝对数量的案例增加一倍或三倍,越过预定义阈值,通过时间序列分析技术对历史数据进行建模,这些技术可以说明数据的趋势和季节性,并通知可以影响数据的任何近期变化)。阈值设置技术可以基于成功评估程序110a、110b可以实现的数据,为特定任务识别最合适的阈值。

继续先前的示例,科学家研究团队先前选择“11”作为临床试验可行性评分的阈值水平。在患者经历的800例不良事件中,只有150例不良事件满足阈值水平(或可行性评分高于11)。

然后,在210,成功评估程序110a、110b确定可行性评分是否满足阈值。然后,成功评估程序110a、110b可以评估可行性评分以确定可行性评分是否小于、等于或大于先前确定的阈值。基于可行性评分是否满足阈值,成功评估程序110a、110b可以利用分类器将ML解决方案识别为成功(例如,可行性评分满足阈值)还是不成功(例如,可行性评分不满足阈值)。

在至少一个实施例中,成功评估程序110a、110b可以通过利用可视化向用户呈现可行性评分是否满足阈值。例如,成功评估程序110a、110b用立即显示出可行性评分小于、等于或大于阈值的指示符或量表指示器来呈现可行性评分是否满足阈值。在另一个实施例中,成功评估程序110a、110b可以结合颜色编码(例如,红色或绿色)和/或向上和向下箭头以指示可行性评分是否满足阈值。

在一些实施例中,成功评估程序110a、110b可以利用图和/或图表(例如,条形图、饼图、线图、柱形图、数据透视表、面积图、散布图和/或气泡图)以显示可行性评分。

在至少一个实施例中,用户可以事先确定可行性评分可视化是否可以在可行性评分与阈值进行比较后、或稍后由成功评估程序110a、110b向用户呈现。在本实施例中,成功评估程序110a、110b可以基于用户以前可以选择的可视化效果确定如何呈现可行性评分。在一些实施例中,成功评估程序110a、110b可以根据各种因素自动确定如何呈现可行性评分是否满足阈值(例如,可行性评分的数量和阈值的数量、可行性评分和阈值、用户偏好之间的差异)。用户偏好可以包括用户基于与可行性评分和阈值相关的因素的以前的选择。

在至少一个实施例中,成功评估程序110a、110b可以利用ML模型来学习根据过去的训练数据、与可行性评分和阈值相关的因素,以及用户是否修改和/或更改了任何先前和连续的可行性评分和阈值,如何可视化是否可行性评分满足阈值。

在至少一个实施例中,成功评估程序110a、110b可以根据与接收的原始训练数据集相关的每个人或事件相关的数据识别成功开发ML模型的可能性。成功评估程序110a、110b还可以生成图(graph)和/或图表(chart),其可以基于年龄、性别、国籍、典型饮食和病史和疾病,为对不同群体开发ML解决方案时对带来的不同成功可能性可视化。例如,如果大多数数据是针对青少年的,而且老年人的数据不足,那么为青少年开发解决方案的成功可能性很高,老年人的成功的可能性会很低。

继续前面的例子,满足阈值水平的150个不利事件中的每个事件都会收到一个绿色计量指示符,显示计算的可行性评分大于阈值水平。但是,对于不符合阈值水平的650个不利事件(或可行性评分等于或小于11)的每个事件,开发ML模型的用户将收到一个红色计量指示符,显示计算的可行性评分等于或小于阈值水平。

在210,如果成功评估程序110a、110b确定可行性评分没有满足(或不满足)阈值,则成功评估程序110a、110b结束。在至少一个实施例中,成功评估程序110a、110b可以通知(例如通过对话框)用户可行性评分未满足先前确定的阈值水平。成功评估程序110a、110b可以进一步确定建议(例如,用户可以搜索更多的原始训练数据集,重新定义学习目标,或进一步检查生成了用户提供了“否”和/或“不知道”的回答的问题)。该建议可以分析多个因素(例如回答、学习目标、原始训练数据集),这些因素可以影响可行性评分,从而影响ML解决方案解决相关问题的成功。例如,每个建议都可以包含一个超链接。如果用户点击了与建议对应的超链接,那么成功评估程序110a、110b可以会扩展对话框,以包含与所选超链接相关的更多细节。

在至少一个实施例中,可以基于包含更少的类别来改变或重新定义学习目标。例如,当想象一个分类疾病严重程度的任务,其中可以有10个严重级别时,学习目标可以改变为将任务分成两类,如任意严重程度的疾病或无疾病。

例如,如果用户点击与搜索更多的原始训练数据集相对应的超链接,那么成功评估程序110a、110b可以提供额外的来源,用户可以通过这些来源获得更多的原始训练数据集。如果用户点击与重新定义学习目标对应的超链接,则成功评估程序110a、110b可以提供一个推荐学习目标列表供用户查看和选择。如果用户点击与检查生成问题的回答相对应的超链接,则成功评估程序110a、110b会提供用户回答“不”和/或“不知道”的问题的列表。

继续前面的例子,成功评估程序110a、110b检查对应于可行性评分未达到阈值水平的650个不良事件的每一个的“否”回答的问题。成功评估程序110a、110b进一步要求二级提取器利用NLP技术分析与这些650例不良事件患者相关的医学报告,以识别医学报告中包括的可以解释低可行性评分的任何数据。

然而,在210,如果成功评估程序110a、110b确定可行性评分满足阈值,那么在212计算努力水平。努力水平可以基于对原始训练数据集的分析编写ML模型的规则的估计的人工时间、领域专业知识水平和/或软件工程专业知识水平。然后,用户可以根据估计的人工时间确定努力水平是高、中还是低。在至少一个实施例中,估计人工时间和/或领域专业知识水平和软件工程专业知识水平的基线可以由主题专家(SME)确定,以编写一些规则和度量,然后进行推断。

在至少一个实施例中,努力水平可以基于为开发成功的ML解决方案或增加开发ML解决方案的成功可能性而执行的计算任务和/或资源的数量。

在至少一个实施例中,可基于开发ML模型的重要性和/或在该领域和/或主题中编码ML模型的平均时间来自动确定努力水平。然后,成功评估程序110a、110b可以确定努力水平是高、中还是低。

在一个实施例中,可以基于在类似的ML解决方案中投入的努力通过利用学习方法来估计努力的水平(即,可以利用关于先前ML解决方案的数据来确定当前ML解决方案的还将投入的努力以及其他特征)。开发ML模型的努力水平也可以基于对生成的问题的“否”和/或“不知道”的回答的数量。

在一些实施例中,基于学习方法或人类/主题专家(SME)的数据标记和验证,可以单独给出开发基于规则的部分的努力水平。因此,努力水平可以基于开发用于分解或分类问题的基于规则的部分以确定ML解决方案是否可以工作,或者ML解决方案是否不可以工作,基于对问题的回答,可以利用主题专家和/或人类来提供问题的规则。

在另一实施例中,成功评估程序110a、110b可以利用最小可行产品(MVP)方法来估计不同维度的努力水平。MVP方法可以指导用户对生成的问题提供回答。例如,用户可以获取并标记第一个原始训练数据集,然后将该原始训练数据集与另一人接收的或自动获得的第二个原始训练数据集进行比较,以估计第一个原始训练数据集预期的标记精度。

在另一实施例中,成功评估程序110a、110b可以利用学习方法,其中维度可以被视为元特征,并且可以训练分类器以确定ML解决方案是成功的还是不成功的。在一些实施例中,成功评估程序110a、110b可以在开发了非学习部分(例如基于规则和基于逻辑)的地方收集历史数据。例如,可以定义系统的特性等特征,以及例如,基于软件静态分析的规则复杂性的特性。学习的目标将是投入的人力时间和精力,这在过去的例子中是可用的。结果可用于更好地估计涉及系统开发成功的可能性。例如,如果规则需要高水平的领域专业知识和几个月的主题专家时间,则可能不可用,并且可能导致成功的可能性很低。

继续前面的示例,为成功评估程序110a、110b开发ML模型的用户利用三种不同的SME基于对规则进行编码以开发150ML模型的时间量来确定达到阈值的150件不良事件。根据SME,估计的编码时间从38小时到59小时不等。用户确定努力水平是中等的。

然后,在214,呈现结果。成功评估程序110a、110b可以向用户呈现计算出的可行性评分、努力估计(即,计算出的努力水平)以及与所比较的努力水平相关联的系统分解。在至少一个实施例中,结果(例如,数据结果)可以被呈现在表格和/或列表中。在另一个实施例中,可以用可以将结果连接到结果源的超链接来呈现结果。在一个实施例中,成功评估程序110a、110b可以实施颜色编码或阴影以确认所计算的可行性评分是否满足阈值。例如,成功评估程序110a、110b以绿色突出显示满足阈值的计算出的可行性评分,而以红色突出显示未能满足阈值的计算出的可行性评分。

继续先前的例子,成功评估程序110a、110b为表提供了计算出的可行性评分、努力估计以及与600个患者中800个不良事件的每个的比较的努力水平相关的系统分解。对于其中计算出的可行性评分不能满足阈值水平的每个不良事件,成功评估程序110a、110b用浅灰色阴影显示出计算出的可行性评分,并且满足阈值水平的计算出的可行性评分保持不变,没有阴影。

成功评估程序110a、110b可以改善计算机的功能,因为成功评估程序110a、110b可以在开发之前评估涉及开发机器学习(ML)解决方案的成功可能性。另外,成功评估程序110a、110b可以评估原始训练数据是否适合所城呈现的问题,并且可以将值与原始训练数据如何良好地(或有效地)适合所提出的问题相关联。此外,成功评估程序110a、110b可以改善计算机的功能,而不管数据是否已被标记,因为成功评估程序110a、110b考虑了其中某些区域可能适合成功的ML解决方案的分解。

成功评估程序110a、110b可在实施ML解决方案之前,通过利用可行性评分和努力水平来确定开发成功的ML解决方案的机会。

可以理解,图2仅提供了一个实施例的图示,并且不暗示关于可以如何实现不同实施例的任何限制。可以基于设计和实施要求对所描绘的实施例进行许多修改。

图3是根据本发明的说明性实施例的图1所示的计算机的内部和外部组件的框图900。应当理解,图3仅提供了一种实现方式的图示,并且不暗示关于可以实现不同实施例的环境的任何限制。可以基于设计和实现要求对所描绘的环境进行多种修改。

数据处理系统902、904代表任何能够执行机器可读程序指令的电子设备。数据处理系统902、904可以代表智能手机、计算机系统、PDA或其他电子设备。数据处理系统902、904可能代表的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、厚客户端、手持设备或笔记本电脑设备、多处理器系统、基于微处理器的系统、网络PC、微型计算机系统以及包含上述任何系统或设备的分布式云计算环境。

用户客户端计算机102和网络服务器112可包括图3所示的各自的内部组件集902a、b和外部组件904a、b。每个内部组件集902a、b包括一个或多个处理器906、一个或多个计算机可读ROM 908和一个或多个计算机可读ROM 912、一个或多个操作系统914和一个或多个计算机可读有形存储设备916。一个或多个操作系统914、软件程序108和客户端计算机102中的成功评估程序110a以及网络服务器112中的成功评估程序110b可存储在一个或多个计算机可读有形存储设备上916上,以便由一个或多个处理器906通过一个或多个RAM908(通常包括缓存内存)执行。在图3所示的实施例中,每个计算机可读的有形存储设备916都是内部硬盘驱动器的磁盘存储设备。或者,每个计算机可读的有形存储设备916都是半导体存储设备,如ROM 910、EPROM、闪存或任何其他可以存储计算机程序和数字信息的计算机可读的有形存储设备。

每个内部组件集902a、b还包括一个R/W驱动器或接口918以读取和写入一个或多个便携式计算机可读有形存储设备920,如CD-ROM、DVD、记忆棒、磁带、磁盘、光盘或半导体存储设备。软件程序,如软件程序108和成功评估程序110a、110b可以存储在一个或多个相应的便携式计算机可读有形存储设备920,通过各自的R/W驱动器或接口918读取,并加载到各自的硬盘驱动器916中。

每个内部组件集902a、b也可以包括网络适配器(或交换机端口卡)或接口922,如TCP/IP适配器卡、无线Wi-Fi接口卡、或3G或4G无线接口卡或其他有线或无线通信链路。软件程序108和客户端计算机102的成功评估程序110a以及网络服务器计算机112的成功评估程序110b可以通过网络(例如互联网、局域网或其他广域网)和相应的网络适配器或接口922从外部计算机(例如服务器)下载。从网络适配器(或交换机端口适配器)或接口922,软件程序108和在客户端计算机102中的成功评估程序110a以及在网络服务器计算机112中的成功评估程序110b加载到各自的硬盘驱动器916中。该网络可能包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。

每个外部组件集904a、b可以包括计算机显示监视器924、键盘926和计算机鼠标928。外部组件904a、b还可以包括触摸屏、虚拟键盘、触摸板、指向设备等人机界面设备。每个内部组件集902a、b还包括设备驱动程序930,以接口到计算机显示监视器924、键盘926和计算机鼠标928。设备驱动程序930、R/W驱动器或接口918和网络适配器或接口922包括硬件和软件(存储在存储设备916和/或ROM910中)。

首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。

云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。

特征包括:

按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。

广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。

资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象水平上指定位置(例如国家、州或数据中心),因此具有位置无关性。

迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。

可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象水平的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。

服务模型如下:

软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。

平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。

分析即服务(AaaS):向消费者提供的能力是使用基于Web或基于云的网络(即基础架构)来访问分析平台。分析平台可以包括对分析软件资源的访问,或者可以包括对相关数据库、语料库、服务器、操作系统或存储器的访问。消费者不管理或控制底层的基于Web或基于云的包括数据库、语料库、服务器、操作系统或存储器的基础结构,但可以控制已部署的应用程序以及可能的托管环境配置的应用程序。

基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。

部署模型如下:

私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。

共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。

公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。

混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。

云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。

现在参考图4,其中显示了示例性的云计算环境1000。如图所示,云计算环境1000包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点100,本地计算设备例如可以是个人数字助理(PDA)或移动电话1000A、台式电脑1000B、笔记本电脑1000C、和/或汽车计算机系统1000N。云计算节点100之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点100进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境1000提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图4显示的各类计算设备1000A-N仅仅是示意性的,云计算节点100以及云计算环境1000可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。

现在参考图5,示出了由云计算环境1000提供的一组功能抽象层1100。首先应当理解,图5中所示的组件、层以及功能仅是示意性的,本发明的实施例不限于此。如图所示,提供了以下层和对应功能:

硬件和软件层1102包括硬件和软件组件。硬件组件的例子包括:主机1104、基于RISC(精简指令集计算机)架构的服务器1106、服务器1108、刀片服务器1110、存储设备1112;网络和网络组件1114。在一些实施例中,软件组件包括网络应用服务器软件1116和数据库软件1118。

虚拟层1120提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器1122、虚拟存储1124、虚拟网络1126(包括虚拟私有网络)、虚拟应用程序和操作系统1128、以及虚拟客户端1130。

在一个示例中,管理层1132可提供下述的功能。资源供应功能1134:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能1136:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能1138:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能1140:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能1142:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。

工作负载层1144提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航1146、软件开发及生命周期管理1148、虚拟教室的教学提供1150、数据分析处理1152、交易处理1154、以及与开发ML解决方案相关的成功评估1156。成功评估程序110a、110b提供了一种通过估计可行性评分和努力水平来开发至少一个ML解决方案的方法。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号