Scikit-learn
Python语言中专门针对机器学习
应用而发展起来的一款开源框架(算法库),可以实现数据预处理、分类、回归、降维、模型选择等常用的机器学习算法
特点
- 集成了机器学习中各类成熟的算法,容易安装和使用,样例丰富,教程和文档也非常详细
- 不支持Python之外的语言,不支持深度学习和强化学习
调用Sklearn求解线性回归问题
# 寻找a、b(y = ax + b)
from sklearn.linear_model import LinearRegression
lr_model = LinearRegression()
lr_model.fit(x,y)
# 展示a、b
a = lr_model.coef_
b = lr_model.intercept_
# 对新数据做预测
predictions = lr_model.predict(x_new)
评估模型表现
#计算y与y'的均方误差(MSE)、R方值(R2_score)
from sklearn.metrics import mean_squared_error,r2_score
MSE = mean_squared_error(y,y_predict)
R2 = r2_score(y,y_predict)
#画图对比y与y',可视化模型表现:
from matplotlib import pyplot as plt
plt.scatter(y,y')
#MSE越小越好,R²分数越接近1越好
#y' vs y集中度越高越好(越接近直线分布)
图形展示
# 画散点图
import matplotlib.pyplot as plt
plt.scatter(x,y)
# 多张图同时展示
fig1 = plt.subplot(211)
plt.scatter(x1,y1)
fig2 = plt.subplot(212)
plt.scatter(x2,y2)
Scikit-learn安装
pip install scikit-learn -i https://pypi.tuna.tsinghua.edu.cn/simple