System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 机器学习中的不可学习任务制造技术_技高网

机器学习中的不可学习任务制造技术

技术编号:40403499 阅读:8 留言:0更新日期:2024-02-20 22:27
描述了一种确定任务是否可以通过机器学习来完成的计算机实现的方法。该方法包括以下步骤。首先,获得任务的测试数据。使用测试数据,针对多个机器学习算法确定这些机器学习算法中的任何一个机器学习算法是否能够执行任务以满足性能阈值。在机器学习算法中没有一个机器学习算法执行任务达到性能阈值的情况下,识别一组失败模式并且为每个失败模式确定该失败模式导致无法满足性能阈值的可能性。由此,提供输出,该输出指示该组中的每个失败模式导致无法满足性能阈值的相对可能性。还描述了适用于执行该方法的计算机系统。

【技术实现步骤摘要】
【国外来华专利技术】

本公开涉及机器学习中的不可学习任务。具体地,本公开涉及适于识别和解决机器学习系统不能学习任务的情况的方法和装置。


技术介绍

1、机器学习是一种越来越常见的预测事件和执行复杂任务的技术——它涉及使用通过经验自动改进的计算机算法。机器学习算法从样本数据(称为“训练数据”)建立数学模型,并且然后使用这个数学模型进行预测或决策。机器学习算法被用于其中开发常规算法来执行所需任务是困难或不可行的各种各样的应用中。

2、虽然机器学习提供了一种对事件及其特征进行分类和预测(或预防)的方法,但它并不总是成功的。在《自然机器智能(nature machine intelligence)》第1期第44-48页(2019年)的“可学习性可能是不可判定的(learnability can be undecidable)”中,ben-david等人确立了甚至根本无法证明某些机器学习任务是否可以学习。机器学习可能由于许多因素而失败:数据缺失、数据质量、算法性能差等等。失败可能是由单一因素造成的,也可能是综合因素造成的。

3、在机器学习失败的情况下,通常需要技术人员的人工干预。这是复杂任务的有效自动化的一个障碍。期望以消除这种障碍的方式来管理机器学习失败。


技术实现思路

1、在第一方面,本公开提供了一种确定任务是否可以通过机器学习来完成的计算机实现的方法,该方法包括:获得任务的测试数据;使用该测试数据,针对多个机器学习算法确定机器学习算法中的任何一个机器学习算法是否能够执行该任务以满足性能阈值;在机器学习算法中没有一个机器学习算法执行该任务达到性能阈值的情况下,识别一组失败模式并且为每个失败模式确定该失败模式导致无法满足性能阈值的可能性;以及提供输出,该输出指示该组中的每个失败模式导致无法满足性能阈值的相对可能性。

2、这种方法不仅能够有效地确定机器学习是否能够以其当前形式完成任务,还能够有效地确定它不能完成任务,从而提供对最可能的失败原因的指示。通常,在机器学习算法中的一个机器学习算法执行任务达到性能阈值,则该机器学习算法将被选择来执行该任务。通过使用这种方法,应该可以使用该算法而无需进一步的优化(诸如超参数调整),该算法可以被设置为具有来自确定它能够执行任务的合适超参数的输出。

3、然而,如果没有合适的算法,则识别最可能的失败原因为补救提供了有效的基础,并且因此可以允许在没有专家分析的情况下进行补救。

4、在实施方案中,在获得测试数据之后,可以准备测试数据,使得该测试数据适合由多个机器学习算法中的每个机器学习算法使用。

5、在实施方案中,确定机器学习算法的步骤确定训练和测试机器学习算法至少一次,以确定所训练的机器学习算法的实例是否满足性能阈值。确定机器学习算法的步骤可以包括k折交叉验证,其中对测试数据分成训练数据和评估数据的k个不同部分进行k次机器学习算法的训练和测试,以提供所训练的机器学习算法的k个实例。这个k折交叉验证的过程还可以包括调整机器学习算法的超参数。对于k折交叉验证,可以对所训练的机器学习算法的k个实例中的每个实例的结果进行平均,以确定是否满足性能阈值。

6、性能阈值可以是但不限于以下各项中的一项:准确度指标、精度指标、调用指标、f1得分指标、检测率指标和误报率指标。潜在失败模式可以包括数据不足、数据不平衡和数据缺失中的一种或多种。

7、为每个失败模式确定失败模式导致无法满足性能阈值的可能性的步骤可以包括为每个失败模式生成多个数据集。这种为每个失败模式生成数据集对于每个数据集可以是不同的,以提供失败模式应用于每个数据集的不同可能性。为每个失败模式确定失败模式导致无法满足性能阈值的可能性的步骤包括,为每个失败模式确定失败模式的每个数据集如何执行机器学习算法,并且将测试数据的性能与数据集中的每个数据集进行比较。将测试数据的性能与数据集中的每个数据集进行比较可以包括:建立测试数据位于最小有效数据集与基本上在性能阈值下执行的阈值数据集之间的线性插值上的位置。测试数据在线性插值上的位置可以等同于相关联失败模式导致机器学习失败的可能性。

8、输出可以是按照每个失败模式导致机器学习失败的可能性的顺序排列的失败模式的列表。

9、在第二方面,本公开提供了一种适于管理任务的机器学习的计算系统,该计算系统包括建立计算环境的处理器和存储器,该计算环境包括以下功能元件:数据建立元件,该数据建立元件适于获得任务的测试数据;机器学习测试元件,该机器学习测试元件适于使用测试数据,针对多个机器学习算法确定机器学习算法中的任何一个机器学习算法是否能够执行任务以满足性能阈值;失败模式确定元件,该失败模式确定元件适于在机器学习算法中没有一个机器学习算法执行任务达到性能阈值的情况下,识别一组失败模式并且为每个失败模式确定失败模式导致无法满足性能阈值的可能性;以及输出提供元件,该输出提供元件适于指示该组中的每个失败模式导致无法满足性能阈值的相对可能性。

10、机器学习测试元件可以适于使得在机器学习算法中的一个机器学习算法执行任务达到性能阈值的情况下,该输出提供元件指示该机器学习算法能够执行任务。

11、数据建立元件可以适于使得数据建立元件在获得测试数据之后准备测试数据,以便该测试数据适于由多个机器学习算法中的每个机器学习算法使用。

12、机器学习测试元件可以适用于训练和测试机器学习算法至少一次,以确定所训练的机器学习算法的实例是否满足性能阈值。如果满足,机器学习测试元件适于使用测试数据对每个机器学习算法进行k折交叉验证,其中对测试数据分成训练数据和评估数据的k个不同部分进行k次机器学习算法的训练和测试,以提供所训练的机器学习算法的k个实例,并且其中对所训练的机器学习算法的k个实例中的每个实例的结果进行平均,以确定是否满足性能阈值。

13、失败模式确定元件可以适于使得为每个失败模式确定失败模式导致无法满足性能阈值的可能性包括为每个失败模式生成多个数据集。然后,失败模式确定元件还可以适于使得为每个失败模式生成数据集对于每个数据集是不同的,以提供失败模式应用于每个数据集的不同可能性。然后,失败模式确定元件可以适于为每个失败模式确定失败模式的每个数据集如何执行机器学习算法,并且将测试数据的性能与每个数据集进行比较。失败模式确定元件可以适于通过建立测试数据位于最小有效数据集与基本上在性能阈值下执行的阈值数据集之间的线性插值上的位置,将测试数据的性能与每个数据集进行比较,其中测试数据在线性插值上的位置等于相关联失败模式导致机器学习失败的可能性。

14、输出提供元件可以适于提供按照每个失败模式导致机器学习失败的可能性的顺序排列的失败模式的列表。该输出提供元件还可以适于提供补救策略,该补救策略用于为任务提供机器可学习数据集。

本文档来自技高网...

【技术保护点】

1.一种确定任务是否能够通过机器学习来完成的计算机实现的方法,所述方法包括:

2.根据权利要求1所述的方法,还包括在所述机器学习算法中的一个机器学习算法执行所述任务达到所述性能阈值的情况下,选择所述机器学习算法来执行所述任务。

3.根据权利要求1或权利要求2所述的方法,其中,在获得所述测试数据之后,所述方法还包括准备所述测试数据,使得所述测试数据适合由所述多个机器学习算法中的每个机器学习算法使用。

4.根据任一前述权利要求所述的方法,其中,所述确定机器学习算法的步骤确定训练和测试所述机器学习算法至少一次,以确定所训练的机器学习算法的实例是否满足所述性能阈值。

5.根据权利要求4所述的方法,其中,所述确定机器学习算法的步骤包括k折交叉验证,其中对所述测试数据分成训练数据和评估数据的k个不同部分进行k次机器学习算法的训练和测试,以提供所训练的机器学习算法的k个实例。

6.根据权利要求4所述的方法,其中,所述k折交叉验证的过程还包括调整所述机器学习算法的超参数。

7.根据权利要求5或权利要求6所述的方法,其中,对于所述k折交叉验证,对所训练的机器学习算法的所述k个实例中的每个实例的结果进行平均,以确定是否满足所述性能阈值。

8.根据任一前述权利要求所述的方法,其中,所述性能阈值是以下各项中的一项:准确度指标、精度指标、调用指标、F1得分指标、检测率指标和误报率指标。

9.根据任一前述权利要求所述的方法,其中,潜在失败模式包括数据不足、数据不平衡和数据缺失中的一者或多者。

10.根据任一前述权利要求所述的方法,其中,所述为每个失败模式确定所述失败模式导致无法满足所述性能阈值的可能性的步骤包括为每个失败模式生成多个数据集。

11.根据权利要求10所述的方法,其中,所述为每个失败模式生成数据集对于每个数据集是不同的,以提供所述失败模式应用于每个数据集的不同可能性。

12.根据权利要求10或权利要求11所述的方法,其中,所述为每个失败模式确定所述失败模式导致无法满足所述性能阈值的可能性的步骤包括:为每个失败模式确定所述失败模式的每个数据集如何执行所述机器学习算法,以及将所述测试数据的所述性能与所述数据集中的每个数据集进行比较。

13.根据权利要求12所述的方法,其中,所述将所述测试数据的性能与所述数据集中的每个数据集进行比较包括:建立所述测试数据位于最小有效数据集与基本上在所述性能阈值下执行的阈值数据集之间的线性插值上的位置。

14.根据权利要求13所述的方法,其中,所述测试数据在所述线性插值上的所述位置等于相关联失败模式导致机器学习失败的可能性。

15.根据任一前述权利要求所述的方法,其中,所述输出是按照每个失败模式导致机器学习失败的可能性的顺序排列的所述失败模式的列表。

16.一种适于管理任务的机器学习的计算系统,所述计算系统包括建立计算环境的处理器和存储器,所述计算环境包括以下功能元件:

17.根据权利要求16所述的计算系统,其中,所述机器学习测试元件适于使得在所述机器学习算法中的一个机器学习算法执行所述任务达到所述性能阈值的情况下,所述输出提供元件指示所述机器学习算法能够执行所述任务。

18.根据权利要求16或权利要求17所述的计算系统,其中,所述数据建立元件适于使得所述数据建立元件在获得所述测试数据之后准备所述测试数据,以便所述测试数据适于由所述多个机器学习算法中的每个所述机器学习算法使用。

19.根据权利要求16至18中任一项所述的计算系统,其中,所述机器学习测试元件适用于训练和测试所述机器学习算法至少一次,以确定所训练的机器学习算法的实例是否满足所述性能阈值。

20.根据权利要求19所述的计算系统,其中,所述机器学习测试元件适于使用所述测试数据对每个机器学习算法进行k折交叉验证,其中对所述测试数据分成训练数据和评估数据的k个不同部分进行k次机器学习算法的训练和测试,以提供所训练的机器学习算法的k个实例,并且其中对所训练的机器学习算法的所述k个实例中的每个实例的结果进行平均,以确定是否满足所述性能阈值。

21.根据权利要求16至20中任一项所述的计算系统,其中,所述失败模式确定元件适于使得为每个失败模式确定所述失败模式导致无法满足所述性能阈值的可能性包括为每个失败模式生成多个数据集。

22.根据权利要求21所述的计算系统,其中,所述失败模式确定元件适于使得为每个失败模式生成数据集对于每个数据集是不同的,以提供所述失败模式应用于每个数据集的不同可能性。

23.根据权...

【技术特征摘要】
【国外来华专利技术】

1.一种确定任务是否能够通过机器学习来完成的计算机实现的方法,所述方法包括:

2.根据权利要求1所述的方法,还包括在所述机器学习算法中的一个机器学习算法执行所述任务达到所述性能阈值的情况下,选择所述机器学习算法来执行所述任务。

3.根据权利要求1或权利要求2所述的方法,其中,在获得所述测试数据之后,所述方法还包括准备所述测试数据,使得所述测试数据适合由所述多个机器学习算法中的每个机器学习算法使用。

4.根据任一前述权利要求所述的方法,其中,所述确定机器学习算法的步骤确定训练和测试所述机器学习算法至少一次,以确定所训练的机器学习算法的实例是否满足所述性能阈值。

5.根据权利要求4所述的方法,其中,所述确定机器学习算法的步骤包括k折交叉验证,其中对所述测试数据分成训练数据和评估数据的k个不同部分进行k次机器学习算法的训练和测试,以提供所训练的机器学习算法的k个实例。

6.根据权利要求4所述的方法,其中,所述k折交叉验证的过程还包括调整所述机器学习算法的超参数。

7.根据权利要求5或权利要求6所述的方法,其中,对于所述k折交叉验证,对所训练的机器学习算法的所述k个实例中的每个实例的结果进行平均,以确定是否满足所述性能阈值。

8.根据任一前述权利要求所述的方法,其中,所述性能阈值是以下各项中的一项:准确度指标、精度指标、调用指标、f1得分指标、检测率指标和误报率指标。

9.根据任一前述权利要求所述的方法,其中,潜在失败模式包括数据不足、数据不平衡和数据缺失中的一者或多者。

10.根据任一前述权利要求所述的方法,其中,所述为每个失败模式确定所述失败模式导致无法满足所述性能阈值的可能性的步骤包括为每个失败模式生成多个数据集。

11.根据权利要求10所述的方法,其中,所述为每个失败模式生成数据集对于每个数据集是不同的,以提供所述失败模式应用于每个数据集的不同可能性。

12.根据权利要求10或权利要求11所述的方法,其中,所述为每个失败模式确定所述失败模式导致无法满足所述性能阈值的可能性的步骤包括:为每个失败模式确定所述失败模式的每个数据集如何执行所述机器学习算法,以及将所述测试数据的所述性能与所述数据集中的每个数据集进行比较。

13.根据权利要求12所述的方法,其中,所述将所述测试数据的性能与所述数据集中的每个数据集进行比较包括:建立所述测试数据位于最小有效数据集与基本上在所述性能阈值下执行的阈值数据集之间的线性插值上的位置。

14.根据权利要求13所述的方法,其中,所述测试数据在所述线性插值上的所述位置等于相关联失败模式导致机器学习失败的可能性。

15.根据任一前述权利要求所述的方法,其中,所述输出是按照每个失败模式导致机...

【专利技术属性】
技术研发人员:N·布罗克特C·克拉克M·勃林吉瑞尔
申请(专利权)人:伊顿智能动力有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1