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

MADlib——基于SQL的数据挖掘解决方案(21)——分类之KNN

数据挖掘中分类的目的是学会一个分类函数或分类模型,该模型能把数据库中的数据项映射到给定类别中的某一个。分类可描述如下:输入数据,或称训练集(Training Set),是由一条条数据库记录(Record)组成的。每一条记录包含若干个属性(Attribute),组成一个特征向量。训练集的每条记录还有一个特定的类标签(Class Label)与之对应。该类标签是系统的输入,通常是以往的一些经验数据。一个具体样本的形式可为样本向量:(v1,v2,...,vn;c),在这里vi表示字段值,c表示类别。分类的目的是:分析输入数据,通过在训练集中的数据表现出来的特征,为每一个类找到一种准确的描述或模型。由此生成的类描述用来对未来的测试数据进行分类。尽管这些测试数据的类标签是未知的,我们仍可以由此预测这些新数据所属的类。注意是预测,而不是肯定,因为分类的准确率不能达到百分之百。我们也可以由此对数据中的每一个类有更好的理解。也就是说:我们获得了对这个类的知识。

03
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据不平衡问题

    对于一些二分类问题或者多分类问题,部分类别数据相较于其它类别数据而言是要小得多的,这种现象就是数据不平衡问题。数据不平衡问题会导致什么情况呢?假如是基于一些特征判断病人是否患有该疾病,且该疾病是一个小概率获得的疾病,假设概率为0.0001, 那么表明有10000个来看病的人中只有一个人患有该疾病,其余9999个人都是正常病人。如果用这样的一批数据进行训练模型算法,即使该模型什么都不学,都判定为正常人,其准确率高达0.9999, 完全满足上线要求。但我们知道,这个模型是不科学的,是无用的模型。这种数据分布严重不平衡的情况下,模型将具有严重的倾向性,倾向于数据样本的多的类别,因为模型每次猜样本多对应的类别的对的次数多。因此,如果直接将严重数据不平衡的数据拿来直接训练算法模型,将会遇到上述问题。一般在10倍以上可以判定为数据不平衡问题。

    02
    领券