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

在尝试为一个监督学习问题设计合适的特征时,我有了一个想法,并想知道这个想法是否合理,如果合理的话,该如何用算法来表达它。

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

我想实现以下模型

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

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

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

这引出了一个一般问题

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

以及一个具体问题

在我的描述设置中,我的启发式想法是否合理?在算法的哪个阶段应该使用这些信息?如果我想在文献中搜索类似的想法,推荐的文献或关键词是什么?


回答:

这引出了一个一般问题:

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

你在这里真正问的问题并不清楚。你所说的“算法单独学习”是什么意思?“联合信息”又是什么?首先,问题太宽泛了,没有所谓的“通用监督学习模型”,每个模型至少在某种程度上工作方式不同,大多数可以分为三类:

  • 构建某种回归模型,将输入数据映射到输出,然后聚合结果进行分类(如线性回归、人工神经网络)
  • 构建数据的几何分离(如支持向量机、分类自组织映射等)
  • 直接(或多或少)估计给定类的概率(如朴素贝叶斯、分类受限玻尔兹曼机等)

在每种情况下,特征的“联合信息”都以某种方式被编码——分类函数就是它们的联合信息。在某些情况下,这很容易解释(如线性回归),而在另一些情况下几乎不可能(如深度玻尔兹曼机,一般所有深度架构)。

以及一个具体问题:

在我的描述设置中,我的启发式想法是否合理?在算法的哪个阶段应该使用这些信息?如果我想在文献中搜索类似的想法,推荐的文献或关键词是什么?

据我所知,这个概念相当值得怀疑。许多模型在数据不相关的情况下学习和工作得更好,而你却试图做相反的事情——将所有东西与某个特定特征相关联。这引出了一个主要担忧——你为什么要这样做?是为了强迫模型主要使用这个特征吗?

  • 如果这个特征如此重要——也许监督学习不是一个好主意,也许你可以直接建模你的问题,通过基于这个特定特征的一组简单规则来实现?
  • 如果你知道这个特征很重要,但你也意识到在某些情况下其他因素也很重要,并且你无法对它们建模,那么你的问题将是多大程度上加权你的特征。应该只是distance*other_feature吗?为什么不sqrt(distance)*featurelog(distance)*feature怎么样?可能性 countless,寻找最佳加权方案可能比找到一个更好的机器学习模型要昂贵得多,后者可以从其原始特征中学习你的数据。
  • 如果你只是怀疑这个特征的重要性,最好的选择可能是……不要相信这种信念。许多研究表明,机器学习模型在选择特征方面比人类做得更好。事实上,这是非线性模型的全部意义所在。

在文献中,你试图解决的问题通常被称为将专家知识纳入学习过程。有成千上万的例子,其中有些知识无法直接编码在数据表示中,但又太宝贵而不能忽略。你应该研究“机器学习专家知识”及其可能的同义词等术语。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注