您的当前位置:首页正文

python数据挖掘中的分类算法有哪些?

2024-08-01 来源:伴沃教育

一直以来,对于机器学习领域,Python都是人们津津乐道的话题,大家知道我们在用python学习机器技术时候,用到的方法内容和一般情况下的是一样的吗?想必,了解过的小伙伴一定是知道有哪些的,不知道的小伙伴也不必担心,如果刚好你正在学习机器技术,那就来看下以下内容,对大家一定有帮助哦~

一、KNN算法

二、算法过程

1.读取数据集

2.处理数据集数据 清洗,采用留出法hold-out拆分数据集:训练集、测试集

三、实现KNN算法类:

1)遍历训练数据集,离差平方和计算各点之间的距离

2)对各点的距离数组进行排序,根据输入的k值取对应的k个点

3)k个点中,统计每个点出现的次数,权重为距离的导数,得到值,该值的索引就是我们计算出的判定类别

四、kNN的python实现

import numpy as np
 
#一个最简单的KNN
class KNN():
    
    def __init__(self):
        self.model = {}#存储各个类别的训练样本的特征,key为类别标签,value是一个list,元素为样本的特征向量
        self.training_sample_num = {}#存储训练数据中,各个类别的数量
    
    #训练模型,输入是标签列表,和对应的输入数据列表
    def fit(self, X, Y):
        for i in range(len(Y)):
            #将训练数据按照类别分组
            if Y[i] in self.model:
                self.model[Y[i]].append(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的风格,允许输入单个样本,也允许输入多个样本

好啦,这就是关于分类算法的使用了,如果大家对机器学习非常感兴趣的话,就可以好好学习关于这些内容了哦~

显示全文