首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >适用于给定输入数据的ML算法(无论其给定还是未给定)?

适用于给定输入数据的ML算法(无论其给定还是未给定)?
EN

Stack Overflow用户
提问于 2019-10-22 08:35:11
回答 2查看 75关注 0票数 1

我正在寻找一个机器学习算法,可以处理输入数据,有丢失的参数。

示例:使用包含10个输入参数的数据对模型进行培训。利用具有NaN值的10个参数中的2个参数进行预测。

是否有任何机器学习算法可以用这些数据进行预测,或者我是否必须首先处理NaN值?是否有一种机器学习算法具有处理NaN值的内置函数?

也许我的问题还不够明确。我确实拥有训练模型所需的所有数据,而且我知道如何在培训之前处理数据中缺失的值。我的问题有不同的意思。一旦我对模型进行了训练,并且我将在生产、实时数据中使用该模型,并且发生了这样的情况,例如,在我训练该模型的10个特性中,只有8个特性的值,还有一个算法仍然可以执行预测吗?我的第一个想法是为这10个值中的每一个设置一个默认值,并设置这个值(如果我要接收一个Nan ),但是我希望有一个能够自己处理这个值的算法。这样,模型就能够用最适合的替换(均值、回填或其他任何东西)来替换Nan值。

EN

回答 2

Stack Overflow用户

发布于 2019-10-22 13:12:24

是的,ML算法仍然可以对可用数据进行预测,但是您应该考虑处理丢失的数据,以便模型更好地进行训练。

在培训模型之前,有几种方法可以处理数据中缺少的值。您可以尝试的一些方法包括

inplace=True)

  • for

  • 忽略数据行

  • 回填或转发填充以分别传播下一个或以前的值:用于回填dataframe.fillna的
  • (method=‘bfill’, forward-fill dataframe.fillna(method='ffill',inplace=True)

)

  1. 替换为固定值范围以外的常量值-999,-1等
  2. 替换为平均值,中值
  3. isnull特性添加新功能isnull,指示哪些行缺少此功能的值。通过这样做,基于树的方法现在可以理解存在一个缺失的值。缺点是我们的功能数量增加了一倍。
票数 0
EN

Stack Overflow用户

发布于 2019-10-22 15:42:12

这取决于您使用的软件包以及如何表示您的特性。NaN可能在不同的机器学习包中被不同的解释(scikit学习,weka,元音wabbit,tensorflow等)

您基本上是在描述一个有点稀疏的数据集。您可以尝试外推/插值这些值(如果有可能的话),也可以将它们设置为0。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58500162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档