在规则系统或任何通过前向链接推理规则推断事实的推理系统中,您将如何修剪“不必要的”分支?我不确定正式术语是什么,但我只是想了解人们在推理问题时如何能够限制他们的思路,而我见过的所有语义推理机似乎都无法做到这一点。

例如,在约翰·麦卡锡的论文中 自然语言理解及其引发的人工智能问题的一个例子, ,他描述了让程序智能回答有关《纽约时报》新闻文章问题的潜在问题。在第 4 节“非单调推理的需要”中,他讨论了在推理故事时使用奥卡姆雷蛇来限制事实的包含。他使用的示例故事是关于强盗袭击家具店老板的故事。

如果一个程序被要求在谓词演算中形成故事的“最小完成”,它可能需要包括原始故事中没有直接提到的事实。然而,它还需要某种方式知道何时限制其推导链,以免包含不相关的细节。例如,它可能想包括参与该案的警察的确切人数,但文章省略了这一点,但它不想包括每个警察都有母亲的事实。

有帮助吗?

解决方案

好问题。

从你的问题来看,我认为你所说的“修剪”是执行的模型构建步骤 事前--即,限制可用于构建模型的算法的输入。机器学习中使用的术语“修剪”指的是不同的东西—— 事后 步, 模型构建并在模型本身上运行 不是 关于可用的输入。(在 ML 领域,术语“剪枝”可能有第二个含义,但我不知道。)换句话说,剪枝确实是一种“限制其推导链”的技术,如下所示:你这么说,但它确实如此 事后, ,通过删除完整(工作)模型的组件,而不是限制用于创建该模型的输入。

另一方面,隔离或限制可用于模型构建的输入(我认为您可能已经想到了这一点)确实是机器学习的一个关键主题;显然,它是许多最新 ML 算法(例如支持向量机)卓越性能的一个因素(SVM 的基本原理是仅从一小部分数据构建最大裕度超平面,即“支持向量”)和多自适应回归样条(一种回归技术,其中不尝试通过“通过它绘制一条连续曲线”来拟合数据,而是拟合数据的离散部分,一个是一,对每个部分(即“样条线”)使用有界线性方程,因此数据最优划分的谓词步骤显然是该算法的关键)。

修剪能解决什么问题?

至少在我实际编码和使用的特定机器学习算法(决策树、MARS 和神经网络)上进行剪枝 过拟合模型 (与训练数据非常吻合的模型,无法泛化(准确预测新实例)。在每种情况下,修剪都涉及一一删除边缘节点(DT、NN)或回归方程(MARS)中的项。

第二, 为什么修剪是必要/可取的?

准确地设置收敛/分裂标准不是更好吗?这并不总是有帮助。修剪工作是“自下而上”进行的;该模型是从上到下构建的,因此调整模型(以实现与修剪相同的好处)不仅消除了一个或多个决策节点,还消除了子节点(例如修剪一棵更靠近树干的树)。因此,消除边缘节点也可能消除从属于该边缘节点的一个或多个强节点,但建模者永远不会知道这一点,因为他/她的调整消除了在该边缘节点处的进一步节点创建。修剪是从另一个方向进行的——从最下级(最低级别)的子节点向根节点的方向向上。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top