scikit-learn包如何使用?

本文介绍了如何使用Python的scikit-learn库进行线性回归和逻辑回归。首先导入必要的模块,然后展示如何对数据进行归一化处理,创建并训练SGDRegressor和LogisticRegression模型,以及进行预测。

1.简介

在学习完线性回归后,我们就会想到Python有没有带相关的包让我们开发者更快上手呢?
scikit-learn就是一个功能强大的包,其中提供了回归,分类等等实现接口!!

2.线性回归

导包

import numpy as np
np.set_printoptions(precision=2)
from sklearn.linear_model import LinearRegression, SGDRegressor
from sklearn.preprocessing import StandardScaler
from lab_utils_multi import  load_house_data
import matplotlib.pyplot as plt
dlblue = '#0096ff'; dlorange = '#FF9300'; dldarkred='#C00000'; dlmagenta='#FF40FF'; dlpurple='#7030A0'; 
plt.style.use('./deeplearning.mplstyle')

归一化

X_train, y_train = load_house_data() #读数据
X_features = ['size(sqft)','bedrooms','floors','age']

scaler = StandardScaler()
X_norm = scaler.fit_transform(X_train) #使用z-score标准化所有数据
print(f"Peak to Peak range by column in Raw        X:{np.ptp(X_train,axis=0)}")   
print(f"Peak to Peak range by column in Normalized X:{np.ptp(X_norm,axis=0)}")

创建回归模型

sgdr = SGDRegressor(max_iter=1000) #获取回归模型,迭代1000次
sgdr.fit(X_norm, y_train) #输入模型参数
print(sgdr)
print(f"number of iterations completed: {sgdr.n_iter_}, number of weight updates: {sgdr.t_}")

获取拟合结果

b_norm = sgdr.intercept_ #获取b的拟合值
w_norm = sgdr.coef_ #获取w向量的拟合值
print(f"model parameters:                   w: {w_norm}, b:{b_norm}")
print(f"model parameters from previous lab: w: [110.56 -21.27 -32.71 -37.97], b: 363.16")

预测结果

# make a prediction using sgdr.predict()
y_pred_sgd = sgdr.predict(X_norm)
# make a prediction using w,b. 两种方法预测
y_pred = np.dot(X_norm, w_norm) + b_norm  
print(f"prediction using np.dot() and sgdr.predict match: {(y_pred == y_pred_sgd).all()}") #结果应该是一样的

print(f"Prediction on training set:\n{y_pred[:4]}" )
print(f"Target values \n{y_train[:4]}")

3. 逻辑回归

定义数据

import numpy as np

X = np.array([[0.5, 1.5], [1,1], [1.5, 0.5], [3, 0.5], [2, 2], [1, 2.5]])
y = np.array([0, 0, 0, 1, 1, 1])

创建模型

from sklearn.linear_model import LogisticRegression

lr_model = LogisticRegression()
lr_model.fit(X, y)

预测准确性

y_pred = lr_model.predict(X)

print("Prediction on training set:", y_pred)

其他模块等用到了再继续补充😁

安装 `scikit-learn` 库可以通过多种方式进行,具体取决于你的 Python 环境和使用管理工具。以下是几种常见的安装方法: ### 使用 `pip` 安装 如果你使用的是标准的 Python 环境,推荐使用 `pip` 来安装 `scikit-learn`。打开命令行工具(如 CMD、PowerShell 或终端),并输入以下命令: ```bash pip install scikit-learn ``` 该命令会自动下载并安装最新版本的 `scikit-learn` 及其依赖库(如 NumPy 和 SciPy)[^4]。 ### 使用 `conda` 安装 如果你使用的是 Anaconda 或 Miniconda 环境,可以通过 `conda` 命令来安装 `scikit-learn`: ```bash conda install scikit-learn ``` 该命令会从 Anaconda 的仓库中安装 `scikit-learn`,并确保所有依赖项都得到正确处理。 ### 手动安装依赖(适用于特定版本或受限环境) 在某些情况下,例如使用特定版本的 Python 或无法访问网络的环境中,可能需要手动下载并安装依赖。可以前往 [Christoph Gohlke 的 Python 扩展库页面](http://www.lfd.uci.edu/~gohlke/pythonlibs/) 下载 `.whl` 文件,例如: - `numpy‑1.xx.x+mkl‑cpXX‑cpXXm‑win_amd64.whl` - `scipy‑1.xx.x‑cpXX‑cpXXm‑win_amd64.whl` - `scikit_learn‑x.x.x‑cpXX‑cpXXm‑win_amd64.whl` 下载完成后,将文件放置在指定目录,并在命令行中执行以下命令进行安装: ```bash pip install numpy-1.xx.x+mkl-cpXX-cpXXm-win_amd64.whl pip install scipy-1.xx.x-cpXX-cpXXm-win_amd64.whl pip install scikit_learn-x.x.x-cpXX-cpXXm-win_amd64.whl ``` ### 验证安装 安装完成后,可以通过以下命令验证是否成功安装 `scikit-learn`: ```bash pip show scikit-learn ``` 如果输出中显示了 `scikit-learn` 的版本信息,则说明安装成功 。 ### 示例代码 以下是一个简单的示例,展示如何使用 `scikit-learn` 进行线性回归: ```python from sklearn.linear_model import LinearRegression import numpy as np # 准备数据 X = np.array([[1], [2], [3], [4], [5]]) y = np.array([2, 4, 6, 8, 10]) # 创建模型 model = LinearRegression() # 训练模型 model.fit(X, y) # 进行预测 predictions = model.predict([[6]]) print(predictions) ``` ###
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值