sklearn 回归分析

机器学习的基本问题1.有监督学习:通过已知的输入和输出,寻找它们之间的关系,对未知输出的输入预测其输出。1)回归问题:对连续形式的输出进行预测2)分类问题:对离散形式的输出进行预测2.无监督学习:在未知输出的前提下,根据输入数据内部的规则进行类别划分。1)聚类问题2)成分分析:降低维度,从多个特征中筛选部分最重要的特征1.线性回归介绍略,线性回归大家学过一点统计学的应该都知道吧可能要导入的包imp...
摘要由CSDN通过智能技术生成

机器学习的基本问题
1.有监督学习:通过已知的输入和输出,寻找它们之间的关系,对未知输出的输入预测其输出。
1)回归问题:对连续形式的输出进行预测
2)分类问题:对离散形式的输出进行预测
2.无监督学习:在未知输出的前提下,根据输入数据内部的规则进行类别划分。
1)聚类问题
2)成分分析:降低维度,从多个特征中筛选部分最重要的特征

1.线性回归

介绍略,线性回归大家学过一点统计学的应该都知道吧

可能要导入的包

import pickle
import numpy as np
import sklearn.linear_model as lm
import sklearn.metrics as sm
import matplotlib.pyplot as mp
sklearn中的linear_model可以帮我们直接计算出模型来,下面是用训练-预测-保存模型的过程

# 创建线性回归器对象
model = lm.LinearRegression()
# 用训练数据集训练线性回归器对象
model.fit(x, y)
# 预测输出
pred_y = model.predict(x)
# 平均绝对值误差
print(sm.mean_absolute_error(y, pred_y))
# 平均平方值误差
print(sm.mean_squared_error(y, pred_y))
# 中位绝对值误差
print(sm.median_absolute_error(y, pred_y))
# R2评分
print(sm.r2_score(y, pred_y))
# 保存线性回归器对象
with open('../../data/linear.pkl', 'wb') as f:
    pickle.dump(model, f)

加载模型

# 从文件加载线性回归器对象
with open('../../data/linear.pkl', 'rb') as f:
    model = pickle.load(f)

2.岭回归

线性回归的主要问题是对异常值非常敏感。在真实世界的数据收集过程中,经常会遇到错误的度量结果,而线性回归使用的普通最小二乘法,其目标是使平方误差最小化。这时,由于异常值误差的绝对值较大,因此会导致模型参数的明显偏移,降低模型对正常样本的适用度。为了避免这个问题,通过在成本函数中引入正则化项,借助不同样本的阈值权重,削弱少数异常值对回归效果的影响,这就是岭回归。
回归分析中常用的最小二乘法是一种无偏估计。对于一个适定问题,X通常是列满秩的
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值