首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >半监督滑雪板学习

半监督滑雪板学习
EN

Stack Overflow用户
提问于 2015-03-27 15:44:41
回答 1查看 2K关注 0票数 1

我有一个大型的多维无标签汽车数据集(价格,里程,马力,.)我想找出离群点。我决定使用sklearn来构建决策边界,并且我的方法有两个主要问题:

  • 我的数据集包含了很多缺失的值。是否有一种方法使svm将缺失功能的数据分类为inlier,如果缺失功能的任何可能值都是inlier?
  • 现在,我想添加一个手动调节异常值的反馈循环。人工调整数据可以提高支持向量机的分类。我读过半监督学习的LabelSpreading模型。当人工验证了足够数量的记录时,将OneClassSVM的分类输出输入到LabelSpreading模型并重新训练该模型是否可行?
EN

回答 1

Stack Overflow用户

发布于 2016-01-15 11:19:26

第一个问题。您可以使用sklearn.preprocessing.imputer按平均值或中值计算缺失的值:

http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.Imputer.html

您可以添加一些布尔功能,如果其他一些功能具有NaNs,则可以重新编码。因此,如果您有功能X_1,X_2,则添加布尔功能

X_1_was_NaN和X_2_was_NaN

如果是X_1==NaN或X_2==NaN,则为1。如果X是您的原始pd.DataFrame,您可以通过

代码语言:javascript
复制
 X = pd.DataFrame()
 # Create your features here 

 # Get the locations of the NaNs
 X_2 = 1.0 * X.isnull()

 # Rename columns
 X_2.rename(columns=lambda x: str(x)+"_has_NaN", inplace=True)

 # Paste them together
 X = pd.concat([X, X_2], axis=1)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29304705

复制
相关文章

相似问题

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