Machine learning 监督学习中的特征组合/联合特征

Machine learning 监督学习中的特征组合/联合特征,machine-learning,computer-vision,Machine Learning,Computer Vision,当我试图为一个有监督的学习问题提出合适的特征时,我有以下想法,并且想知道它是否有意义,如果有,如何从算法上表述它 在一幅图像中,我想对两个区域进行分类,即两种“类型”的像素。假设我有一些有界的结构,让我们圈出一个圈,我知道我可以把我的搜索空间限制在这个圆上。在这个圆内,我想找到一个分割轮廓,也就是说,一个将我的像素分为内部a类和外部B类的轮廓 我想实现以下模型: 我知道靠近边界圆的像素更可能位于外部类别B中 当然,我可以使用与边界圆的距离作为特征,然后算法将学习内轮廓与边界圆的平均距离 但是:我

当我试图为一个有监督的学习问题提出合适的特征时,我有以下想法,并且想知道它是否有意义,如果有,如何从算法上表述它

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

我想实现以下模型

我知道靠近边界圆的像素更可能位于外部类别B中

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

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

这就引出了一个一般性问题:

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

对于一个具体的问题:

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

这引出了一个一般性问题:

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

现在还不清楚你到底在问什么。你所说的“通过算法单独学习”是什么意思?什么是“joinint信息”?首先,问题太广泛了,没有“通用监督学习模型”这样的东西,每个模型的工作方式都至少略有不同,大多数分为三类:

  • 建立某种回归模型,将输入数据映射到输出,然后对结果进行分类(线性回归、人工神经网络)
  • 构建数据的几何分离(如支持向量机、分类SOM等)
  • 直接(或多或少)估计给定类的概率(如朴素贝叶斯、分类受限玻尔兹曼机器等)
在每一个特征中,都有某种编码的关于特征的“联合信息”——分类功能就是它们的联合信息。在某些情况下很容易解释(线性回归),在某些情况下几乎不可能解释(深层玻尔兹曼机器,通常都是深层结构)

针对一个具体问题:

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

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

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

在文献中,您试图解决的问题通常被称为将专家知识纳入学习过程。有成千上万的例子,其中有一些知识无法直接编码到数据表示中,但它们太有价值了,不能忽略。你应该研究诸如“机器学习专家知识”之类的术语及其可能的概要。

有相当多的工作将你正在研究的问题(称为分段)作为一种优化来处理,这可以通过GraphCut等图论方法来解决。一些例子是微软研究院的Pushmeet Kohli的工作(试纸)

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

缺点是你需要一个相当强的数学背景来尝试这一点;我不知道你的项目规模有多大