极不可能有一个单一的自动分类系统可以满足您的所有要求。此外,我认为 bug finder 应用程序超出了此类系统的范围,因为在该领域中成功使用的方法主要围绕句法分析、数据流分析和其他针对软件错误问题高度定制的算法方法。尽管在那里进行了机器学习研究,但该领域的分类系统主要用于增强而不是替代分析方法(据我所知)。
对于大多数非平凡的分类问题,通常需要仔细选择和细化问题表示,以便通过机器学习获得有用和有效的结果。简单地使用现有的“原始”数据对象模型而没有对状态空间进行某种定制转换,往往会导致输入数据值分布的不完整覆盖和/或学习分类器的泛化能力差。此外,特定于正在使用的机器学习方法的其他参数可能需要反复试验才能获得给定问题的体面结果。并非所有方法都有这样的参数,但很多方法都有,例如神经网络、遗传算法、贝叶斯推理方法等。
您所要求的是一种几乎通用的机器学习方法,这不是目前存在的东西。我能看到的最可行的替代方案是(1)找到一个不同问题的子集,这不是所需的能力/复杂程度,或者(2)创建一个不仅使用一种分类技术,而是使用一种分类技术的系统。有一个不同方法的工具箱,它会针对给定的问题自动测试,然后使用在监督学习机制下产生最佳分类结果的方法。然而,后者仍然是一个相当大的挑战,要有效地完成,它并没有消除如何表示/转换数据模型的状态空间的问题。