机器学习基本步骤:
1.数据获取-导入外部数据集housing_price
数据获取: 听着高大上, 实际上就是把内部/外部数据集加载进来
2.数据基本处理-缺失值处理, 分割数据集,
数据基本处理:实际上就是对数据中缺失的数据和异常的数据进行处理, 然后进行数据集分割
3.特征工程-特征预处理,
特征工程:听着高大上, 实际上就是对特征值进行的一系列处理
4.模型训练-使用梯度下降法进行线性回归,
机器学习/模型训练:听着高大上, 实际上就是选择合适的模型, 然后进行训练
5.模型评估-计算预测值,计算准确率, 计算均方误差MSE,
模型评估:听着高大上, 实际上就是对模型的预测结果和评价指标进行一系列评估
# 1.数据获取-导入外部数据集housing_price,
import pandas as pd
boston=pd.read_csv(r"HousingData.csv")
print(boston)
# 2.数据基本处理-缺失值处理, 分割数据集,
# 2.1检查缺失值数量并删除存在缺失值的行
nan=boston.isna().sum()
print("nan:", nan)
if (~nan).any():
print("删除中...")
boston = boston.dropna()
nan=boston.isna().sum()
print("nan:", nan)
# 2.2将数据集分割成训练集特征值, 测试集特征值, 训练集目标值, 测试集目标值
from sklearn.model_selection import train_test_split
x_all= boston.loc[:,boston.columns!="MEDV"] # x_all是指全体特征值, 包括测试集特征值和训练集特征值
y_all= boston.iloc[:,-1] # .loc[]的用法, 能行吗? y_all是指全体目标值, 包括测试集目标值和训练集目标值
x_train, x_test,y_train,y_test = train_test_split(x_all,y_all, test_size=0.2)
# 3.特征工程-特征预处理-各个特征值单位不一致, 进行标准化处理
from sklearn.preprocessing import StandardScaler
scaler=StandardScaler()
x_train=scaler.fit_transform(x_train)
x_test= scaler.fit_transform(x_test)
# 4.模型训练-使用梯度下降法进行线性回归,
from sklearn.linear_model import SGDRegressor
estimator= SGDRegressor(max_iter=1000,learning_rate='constant', eta0=0.001)
# 把学习率设置成常数: estimator= SGDRegressor(max_iter=1000,learning_rate='constant', eta0=0.001)
estimator.fit(x_train,y_train)
# 5.模型评估-计算预测值,计算准确率, 计算均方误差MSE,
# 计算预测值
y_predict=estimator.predict(x_test)
print("Y_predict is:", y_predict)
# 计算准确率
accu_score=estimator.score(x_test, y_test)
print("accuracy:",accu_score)
# 计算均方误差
from sklearn.metrics import mean_squared_error
MSE=mean_squared_error(y_test, y_predict)
print("mean_squared_error:", MSE)
# 扩展1
# 模型评估主要用于监督学习方便, 根据模型不同, 通常使用的评估指标也不同
# 1.分类模型: 准确率, 精确率, 召回率, F1-score, AUC指标
# 2.回归模型: 均方根误差, 相对平方误差, 平均绝对误差, 相绝对误差, 决定系数
# 扩展2
# pycharm中查询显示函数的快捷键有ctrl+p, ctrl+q
# 扩展3
# estimator->estimate->estim(词根), 意思是评估, 估计, 判断
# 扩张4
# loc[], iloc[], array[]的区别
# loc根据行/列名定位, 适合用于多列选择
# iloc根据列索行/引定位, 适合用于多列选择
# array[]根据行列名或者索引定位, 适用于要选择的列数较少的情况
数据集HousingData下载地址:
链接:https://pan.baidu.com/s/1uQiYeN5QYwIBAWj9LG1EgQ
提取码:oem8
作者的唠叨
嘿嘿, 插几句话, 不吐不快啊,
市面上的网盘太多了, 平时想要获取资源, 免不了要跟各种网盘打交道,
需要哪个大佬分享的资源, 就要下载大佬用来分享资源的网盘的app软件, 好烦啊
有没有什么办法, 不通过网盘客户端也能下载大型资源的方式啊?求求啊!
算了, 等着我, 早晚给它鼓捣出来
哦, 对了,
刚刚试了试, 迅雷网盘里面的磁力链接可以通过百度网盘进行下载
感觉百度网盘的会员还是挺良心的,内存够大,
但是你既然这么良心, 为什么不把会员的文件下载/上传的传输速度提上去呀
标签:梯度,nan,print,算法,train,boston,test,波士顿,数据 From: https://blog.csdn.net/JR521314/article/details/142895612