python数据分析和数据挖掘的区别,Python数据挖掘算法
长期以来,python一直是机器学习领域的热门话题。你知道我们用Python学习机器技术的时候,使用的方法和内容和一般的是一样的吗?想必你认识的朋友一定知道他们有什么,不知道的也不用担心。如果你刚好在学机器技术,那就来看看下面的内容吧,肯定对大家有帮助~
一、KNN算法
二、算法过程
1.读取数据集
2.处理数据集的数据清洗,用hold-out法拆分数据集:训练集和测试集。
三、实现KNN算法类:
1)遍历训练数据集,用偏差平方和计算各点之间的距离。
2)对每个点的距离数组进行排序,根据输入的K值取对应的K个点。
3)在k个点中,统计每个点出现的次数,权重是距离的导数得到值,值的指标就是我们计算的判断类别。
四、kNN的python实现
importnumpyasnp
#最简单的KNN之一
classKNN():
def__init__(self):
Self.model={}#存储每个类别的训练样本的特征,key作为类别标签,value作为列表,elements作为样本的特征向量。
Self.training_sample_num={}#存储训练数据中每个类别的数量。
#训练模型,输入的是标签列表,以及相应的输入数据列表。
deffit(self,X,Y):
foriinrange(len(Y)):
#根据类别对培训数据进行分组
ifY[i]inself.model
self.model[Y[i]]。追加(X[i])
else:
self.model[Y[i]]=[X[i]]
#每个类别的样本总数
self . training _ sample _ num[Y[I]]=self . training _ sample _ num . get(Y[I],0) 1
#预测/判断样本的类别。这里我们模仿sklearn的风格,允许单个样本或者多个样本输入。嗯,这是关于分类算法的使用。如果你对机器学习很感兴趣,可以好好了解一下这些内容~
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。