Sklearn学习

本文详细介绍了Sklearn库中的多个机器学习模型,包括朴素贝叶斯、k近邻、感知器、决策树、集成模型(如随机森林)、逻辑回归、线性回归和支持向量机等。对每个模型的参数、方法和使用场景进行了阐述,帮助读者深入理解并应用这些模型。
摘要由CSDN通过智能技术生成

朴素贝叶斯

1、sklearn.naive_bayes.GaussianNB(priors=None)高斯朴素贝叶斯,主要用于连续值特征分类

priors: 类的先验概率,默认是None,可以不传递,算法内部会帮我们计算;如果指定了,算法内部就不会计算而是使用我们给的先验概率

分类器具有的属性:

clf.class_prior_: 每个类的先验概率

clf.class_count_: 每个类包含的训练数据

clf.theta_: 每个类每个特征的均值

clf.sigma_: 每个类每个特征的方差

2、sklearn.naive_bayes.MultinomialNB(alpha=1.0, fit_prior=True, class_prior=None)多项式朴素贝叶斯,主要用于离散特征分类,例如文本分类单词统计,以出现的次数作为特征值

alpha: 拉普拉斯平滑参数,默认为1.0

fit_prior: 表示是否学习先验概率,参数为False表示所有类标记具有相同的先验概率

class_prior: 类的先验概率

3、sklearn.naive_bayes.BernoulliNB(alpha=1.0, binarize=0.0, fit_prior=True,class_prior=None)伯努利朴素贝叶斯,类似于多项式朴素贝叶斯,也主要用户离散特征分类,和MultinomialNB的区别是:MultinomialNB以出现的次数为特征值,BernoulliNB为二进制或布尔型特性

4、上述三个分类器共有的方法

fit(X,Y): 接受参数为训练集和训练集的label

predict(X): 接受参数为测试集,直接输出测试集的标签

predict_proba(X): 接受参数为测试集,输出测试集对于每个类别的概率

score(X,Y): 接受参数为测试集和测试集标签,输出分类的准确率

参考: https://blog.csdn.net/kancy110/article/details/72763276


k近邻

1、sklearn.neighnors.KNeighborsClassifier(n_neighbors=5, weights='uniform', algrithm='auto', leaf_size=30, matric='minkowski', p=2, metric_params=None, n_jobs=1): k近邻分类器,一般来说默认参数就很好用了。

n_neighbors=5, k的数目,即考虑预测点最近k个点的类别,默认是5个

weights='uniform', 不同近邻点的权重,默认是权重相等

algrithm='auto', 算法会自动从'ball_tree':球树、'kd_tree':kd树、'brute':暴力搜索中选择合适的算法

leaf_size=30, 叶子结点的大小

matric='minkowski', 距离度量,默认是闵氏距离

p=2, 闵氏距离中的参数p,默认是2

metric_params=None, 距离度量函数的额外关键字参数,一般不用管,默认为None

n_jobs=1,并行运算的线程数量

其中具有的方法:

fit(X,Y): 接受参数为训练集和训练集的label

predict(X): 接受参数为测试集,直接输出测试集的标签

predict_proba(X): 接受参数为测试集,输出测试集对于每个类别的概率

score(X,Y): 接受参数为测试集和测试集标签,输出分类的准确率

kneighbors(X, n_neighbors, return_distance): 接受参数为需要寻找最近邻的样本,需要寻找的近邻个数以及是否返回距离 

2、sklearn.neighbors.KNeighborsRegressor(n_neighbors=5): k近邻回归器

n_neighbors=5, k的数目,即考虑预测点最近k个点的类别,默认是5个

其中具有的方法:

fit(X,Y): 接受参数为训练集和训练集的label

predict(X): 接受参数为测试集,直接输出测试集的标签

score(X,Y): 接受参数为测试集和测试集标签,输出回归任务的性能,->1代表性能越好,->0表示预测值接近于训练标签的平均值,即不好

参考: https://www.cnblogs.com/xiaotan-code/p/6680438.html


感知器

1、sklearn.linear_model.Perceptron(penalty=None, alpha=0.0001, max_iter=None,  eta0=1.0)感知器分类器

penalty: 惩罚项,选用的正则化方法

alpha: 正则化系数

max_iter: 算法最大的迭代次数

eta0: 学习率

感知器一般不选用正则化方法,主要调整最大迭代次数和学习率以获得学习效果

fit(X,Y): 接受参数为训练集和训练集的label

predict(X): 接受参数为测试集,直接输出测试集的标签

score(X,Y): 接受参数为测试集和测试集标签,输出分类的准确

参考:

http://sklearn.apachecn.org/cn/latest/modules/generated/sklearn.linear_model.Perceptron.html#sklearn.linear_model.Perceptron


决策树

1、sklearn.tree.DecisionTreeClassifier(criterion=’gini’, max_depth=None, min_samples_split=2, min_samples_leaf=1,  max_features=None, random_state=None, max_leaf_nodes=None, class_weight=None): 决策树分类器

class_weight: 类别的权重,默认是None,表示每个类别的权重都是1

criterion: 判断准则,默认是'gini',表示使用gini系数选择特征&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值