python分类算法有哪些_Python机器学习10:机器学习中的六种分类算法及实现(上)...

本文介绍了在机器学习中选择最佳分类算法的过程,包括逻辑回归和线性判别分析两种线性模型的scikit-learn实现。通过在相同数据集上进行10倍交叉验证比较模型的准确度,以确定最合适的算法。后续文章将涵盖K-NearestNeighbors、朴素贝叶斯、决策树和支持向量机等非线性模型。
摘要由CSDN通过智能技术生成

在机器学习中,可以使用多种算法模型解决同一个问题,那么如何从中选择出最佳的算法模型呢?

当然,这个问题没有一种固定的答案,需要根据不同的问题,尝试使用多种机器学习方法,比较各种算法模型在该问题上的效果,最终才能决定究竟选择哪一种模型。

本文将会介绍六种常见的机器学习分类算法及其scikit-learn实现,当你在处理分类问题时,可以尝试使用这些算法。比较不同算法在具体问题上的效果,然后选择一种最佳算法。

37d12f2eb9389b500b68ff66ecc948d9e6116e6b.jpeg?token=0c027cdbee4d677e506ddf68d25f5ce1&s=9FB6DEA2D6BABBEF4E7D143303001058

引言

本教程分为三部分,分别如下所示。本文将会介绍前二部分,第三部分将会在后面的文章中介绍。

1、模型选择概述

2、二种线性分类算法:

Logistic回归线性判别分析3、四种非线性分类算法:

K-Nearest Neighbors朴素贝叶斯决策树支持向量机每种算法都在同一个数据集上进行演示 。本文使用的数据集是一个二分类问题的数据集,该数据集的所有特征都是数值型。

每种算法都是完整、独立的,这意味着可以将对应算法的实现代码运用到自己的项目中。本文使用10倍交叉验证检查每种机器学习算法的平均准确度,以此来衡量算法性能。

模型选择概述

通常,你无法预先知道哪种算法最适合你当前的数据集。你必须反复试验来找出在该数据集上效果较好的算法,然后进一步调整对应算法模型参数。

首先,可以大概猜测哪些算法可能对当前数据集会有较好的效果,再选定了几个待测试算法后,就可以开始在该数据集上实验这些算法了。

选择的待测试算法之间最好能够有所不同,例如:选取线性模型和非线性模型,然后观察不同类型的模型对数据集的学习能力。

下面,将以分类问题为例,介绍如何从六种分类模型中选择最佳模型。

二种线性分类模型

1、 逻辑回归

Logistic Regression,也称逻辑回归,是在假定训练数据符合高斯分布的前提下,用于二分类问题。可以使用scikit-learn中的LogisticRegression类构建逻辑回归模型。

下面代码演示了如何进行训练逻辑回归模型。

42166d224f4a20a420b7b660f8ae3526700ed0e9.png?token=cbc3d0c7c54be134b6bc9d6a8d0d3619&s=B8BA8C1A87706C211EFD51D8030050B0

2、线性判别分析

Linear Discriminant Analysis,也称线性判别分析,是在假定训练数据符合高斯分布的前提下,用于二分类问题。

基本原理是将高维的模式样本投影到最佳可区分的矢量空间,利用线性关系去拟合数据特征。可以使用scikit-learn中的LinearDiscriminantAnalysis类构建LDA模型。(注意,这里的LDA并非指潜在语义主题模型)

5bafa40f4bfbfbedf3948573100c5a32adc31fe9.png?token=8983c3e65adb307c33bce026e5046a08&s=E87A8C1A87744C210AD511D8030050B0

后面的4种非线性模型将在下一篇文章中介绍,敬请期待。

38dbb6fd5266d01642c1d7b7fed7790337fa3551.jpeg?token=8f38463320555a49e58ac54bd9c3c660&s=435D3BC2AA2384CE17CC50330200C0C2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值