Scikit-learn快速入门教程和实例(一)

image.png

一,什么是SKlearn

SciKit learn的简称是SKlearn,是一个python库,专门用于机器学习的模块。
以下是它的官方网站,文档等资源都可以在里面找到http://scikit-learn.org/stable/#。
SKlearn包含的机器学习方式:
分类,回归,无监督,数据降维,数据预处理等等,包含了常见的大部分机器学习方法。
关于SKlearn的安装,网上教程很多,再次不赘述。建议使用Anaconda,可以方便的安装各种库。
Anaconda教程:http://python.jobbole.com/87522/
SKlearn给出了如何选择正确的方法:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7BuZ91ds-1574331016532)(https://morvanzhou.github.io/static/results/sklearn/2_1_1.png)]
官网清晰图:
http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html
图表对于什么样的问题,采用什么样的方法给出了清晰的描述,包括数据量不同的区分。

二,SKlearn的强大数据库

数据库网址:http://scikit-learn.org/stable/modules/classes.html#module-sklearn.datasets
里面包含了很多数据,可以直接拿来使用。
image.png
例如:

1.鸢尾花数据集

打开里面的鸢尾花数据集,我们可以看到页面上同样有调用示例:

#调用模块
from sklearn.datasets import load_iris
data = load_iris()
#导入数据和标签
data_X = load_data.data
data_y = load.data.target

2.波士顿房价数据集

#换种方式调用模块,注意区别
from sklearn import datasets
loaded_data = datasets.load_boston()
#导入数据
data_X = loaded_data.data
data_y = loaded_data.target

而且在SKlearn官网,对于每一个数据集,在后面都给出了,使用该数据集的示例,例如Boston房价数据集:
image.png

三,通用学习模式

SKlearn中学习模式的调用,有很强的统一性,很多都是类似的,学会一个,其他基本差不多。

1.鸢尾花数据集

针对上述已经导入的鸢尾花数据集,继续对其进行分析。

#导入模块
from sklearn.model_selection import train_test_split
from sklearn import datasets
#k近邻函数
from sklearn.neighbors import KNeighborsClassifier
iris = datasets.load_iris()
#导入数据和标签
iris_X = iris.data
iris_y = iris.target
#划分为训练集和测试集数据
X_train, X_test, y_train, y_test = train_test_split(iris_X, iris_y, test_size=0.3)
#print(y_train)
#设置knn分类器
knn = KNeighborsClassifier()
#进行训练
knn.fit(X_train,y_train)
#使用训练好的knn进行数据预测
print(knn.predict(X_test))
print(y_test)

2.波士顿房价数据集

这里,我们调用房价数据集,然后使用线性回归的方法对其进行预测

#同样首先,我们调用模块
#matplotlib是python专门用于画图的库
import matplotlib.pyplot as plt
from sklearn import datasets
#调用线性回归函数
from sklearn.linear_model import LinearRegression

#导入数据集
#这里将全部数据用于训练,并没有对数据进行划分,上例中
#将数据划分为训练和测试数据,后面会讲到交叉验证
loaded_data = datasets.load_boston()
data_X = loaded_data.data
data_y = loaded_data.target

#设置线性回归模块
model = LinearRegression()
#训练数据,得出参数
model.fit(data_X, data_y)

#利用模型,对新数据,进行预测,与原标签进行比较
print(model.predict(data_X[:4,:]))
print(data_y[:4])
  • 45
    点赞
  • 375
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linxid

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值