首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

garbage in,garbage out

机器学习模型都遵循“garbage in,garbage out”,背后原因在于机器学习模型其实是一个拟合游戏,拟合data和label的共现。所谓“种瓜得瓜,种豆得豆”。

机器学习模型如同厨师,厨师只有拿到他拿手菜的高质量原材料,才可能做出好的菜。机器学习模型只有输入合理的数据,才能表现优异。

如果厨师做鱼拿手,你给他一块猪肉,他大抵是做不出一盘好菜的;或者你给他一条死了一个星期的鱼,他同样做不出可口的菜。

同理,一个机器学习模型善于处理线性可分的数据,你用它来做线性不可分的任务,那它表现优异才是有鬼了;或者你训练集里把猫标为狗,狗标为猪,却希望它在测试的时候,能将包含猫的图识别为猫,将包含狗的图识别为狗,这无异于缘木求鱼。

那么何谓合理的数据呢?我认为有以下几点:

1、训练数据和测试数据分布与模型先验一致;

2、训练数据分布于测试数据一致;

3、训练数据里label的错误率要控制在一个较低的范围里。

第一点很好理解,机器学习模型是一堆先验的集合,没有先验何来机器学习模型。诸如线性可分、空间相关、时间相关等等,都是先验。既然机器学习模型是一堆先验的集合,那么你手上的数据集只有符合你所选择机器学习模型的先验,机器学习模型才可能表现正常。

就像我们吃鱼会小心翼翼的吃,因为我们对鱼的先验是刺多,如果我们用对肉的先验来吃鱼,肯定会被鱼刺戳得泪流满面。

第二点也好理解。训练数据就像我们平时做的题,测试数据就像考试的题。如果我们平时所做题涉及到的知识点跟考试不一样,那考试成绩八成会不理想。

第三点更好理解。训练数据就像我们平时背的古诗词,测试数据便是考试时的古诗词默写。如果我们平时背的古诗词是错的,那考试的时候怎么能默写对呢?

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180531G20SK800?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券