0

在尝试为监督学习问题提出适当的特征时,我有以下想法,并想知道它是否有意义,如果是,如何通过算法制定它。

在图像中,我想对两个区域进行分类,即两种“类型”的像素。假设我有一些有界结构,让我们画一个圆圈,我知道我可以将我的搜索空间限制在这个圆圈内。在那个圆圈内,我想找到一个分割轮廓,即将我的像素分为内部类 A 和外部类 B 的轮廓。

我想实现以下模型

我知道靠近边界圆的像素更有可能属于外部 B 类。

当然,我可以使用与边界圆的距离作为特征,然后算法将学习内轮廓与边界圆的平均距离。

但是:我想知道我是否可以以更聪明的方式利用我的模型假设。一个启发式的想法是通过这个距离来衡量其他特征,也就是说,如果离边界圆更远的像素想要属于外部 B 类,它必须具有非常令人信服的其他特征。

这导致了一个普遍的问题

如何利用算法先前单独学习的特征的联合信息?

对于一个特定的问题

在我概述的设置中,我的启发式想法有意义吗?在算法的哪一点应该使用这些信息?如果我想在文献中搜索类似的想法,推荐的文献或流行语会是什么?

4

2 回答 2

1

有大量工作将您正在查看的问题(称为分段)视为要在马尔可夫随机场上执行的优化,这可以通过 GraphCut 之类的图论方法来解决。一些例子是微软研究院的 Pushmeet Kohli 的工作(试试这篇论文)。

您所描述的是,在该框架中,节点成员资格的先验,其中 p(B) 与到边缘的距离成反比(除了您想要施加的任何其他连接性约束之外,通常还有一个连接性约束,并且肯定是像素强度的似然项)。这样做的好处是,如果您可以将所有内容表示为概率模型,则无需依赖启发式算法,并且可以使用标准机制进行推理。

缺点是您需要相当强大的数学背景才能尝试此操作;我不知道你提议的项目规模有多大,但如果你想要快速获得结果或者你缺乏必要的背景,这将是相当令人生畏的。

于 2013-08-19T12:46:57.230 回答
1

这就引出了一个普遍的问题:

如何利用算法先前单独学习的特征的联合信息?

目前还不清楚你在这里真正问的是什么。您所说的“由算法单独学习”是什么意思,什么是“联合信息”?首先,问题太广泛了,没有“通用监督学习模型”之类的东西,它们每个的工作方式至少略有不同,大部分分为三类:

  • 建立某种回归模型,将输入数据映射到输出,然后汇总结果以进行分类(线性回归、人工神经网络)
  • 建立数据的几何分离(如支持向量机、分类-soms 等)
  • 直接(或多或少)估计给定类的概率(如朴素贝叶斯、分类受限的 Boltzmann 机等)

在它们中的每一个中,都以某种方式编码了关于特征的“联合信息”——分类功能是它们的联合信息。在某些情况下很容易解释(线性回归),而在某些情况下几乎是不可能的(深度 Boltzmann 机器,通常是所有深度架构)。

对于一个特定的问题:

在我概述的设置中,我的启发式想法有意义吗?在算法的哪一点应该使用这些信息?如果我想在文献中搜索类似的想法,推荐的文献或流行语会是什么?

据我所知,这个概念是非常值得怀疑的。如果您的数据不相关,许多模型往往会更好地学习和工作,而您正在尝试做相反的事情 - 将所有内容与某些特定功能相关联。这导致了一个主要问题——你为什么要这样做?强制模型主要使用此功能?

  • 如果它如此重要 - 也许监督学习不是一个好主意,也许您可​​以通过应用基于此特定功能的一组简单规则来直接建模您的问题?
  • 如果您知道该功能很重要,但您知道在某些情况下其他事情很重要,并且您无法对其进行建模,那么您的问题将是对您的功能加权多少。应该是公正的distance*other_feature吗?为什么不sqrt(distance)*feature呢?怎么样log(distance)*feature?有无数种可能性,寻找最佳的加权方案可能成本更高,然后找到更好的机器学习模型,它可以从原始特征中学习你的数据。
  • 如果您只怀疑该功能的重要性,那么最好的选择是……不要相信这种信念。大量研究表明,机器学习模型在选择特征方面比人类更好。事实上,这就是非线性模型的全部意义所在。

在文献中,您试图解决的问题通常被称为将专家知识融入学习过程。有数以千计的例子,其中有某种知识不能直接编码在数据表示中,但太有价值而不能省略。您应该研究诸如“机器学习专家知识”之类的术语及其可能的同义词。

于 2013-08-19T06:05:45.840 回答