朴素贝叶斯是解决分类任务的好起点,线性回归是解决回归任务的好起点。

简单线性回归

将数据拟合成一条直线。

y = ax + b , a 是斜率, b是直线截距

原始数据如下:

使用LinearRegression评估器来拟合数据

除了简单的直线拟合,还可以处理多维度的线性回归模型。

基函数回归

使用基函数 对原始数据进行变换,从而将变量间的线性回归模型 转换为非线性回归模型。

一维的输入变量x 转换成了 三维变量 x1 x2 x3.

转换后的模型仍然是一个线性模型。将一维的x投影到了高维空间

  • 多项式基函数

    多项式投影非常有用。 使用PloynomialFeatures转换器。



    转换器通过指数函数,将一维数组转换成了三维数组,这个新的高维数组之后可以放在多项式回归模型中。

使用管道实现这些过程。

  • 高斯基函数

阴影部分代表不同规模的基函数。把他们放在一起是就会产生平滑的曲线。

正则化

在线性回归引入基函数会让模型变得灵活,但是也更容易过拟合,



当 基函数 重叠的时候,通常就表明出现了过拟合: 相邻基函数的系数相互抵消。 这显然是有问题的。如果对较大的模型参数进行惩罚, penalize .从而一直模型的剧烈波动。这个惩罚机制 被称为 正则化。

  • 岭回归 L2范数正则化

    正则化最常见的形式就是 岭回归 ridge regression. 处理方法是 对模型系数 平方和进行惩罚,

a 是一个自由参数,用来控制惩罚力度,这种带惩罚项的模型内置在Scikit-Learn的Ridge评估器中。



  • Lasso正则化

    其处理方法是堆模型系数绝对值的和 进行惩罚。



    通过lasso回归惩罚,大多数基函数的系数都变成了0. 所以模型变成了原来基函数的一小部分

案列:预测自行车流量

数据源自不同天气 季节和其他条件通过 美国 西雅图 的一座桥的自行车流量

Python数据科学手册-机器学习:线性回归的更多相关文章

  1. Python数据科学手册-机器学习介绍

    机器学习分为俩类: 有监督学习 supervised learning 和 无监督学习 unsupervised learning 有监督学习: 对数据的若干特征与若干标签之间 的关联性 进行建模的过 ...

  2. Python数据科学手册-机器学习:朴素贝叶斯分类

    朴素贝叶斯模型 朴素贝叶斯模型是一组非常简单快速的分类方法,通常适用于维度非常高的数据集.因为运行速度快,可调参数少.是一个快速粗糙的分类基本方案. naive Bayes classifiers 贝 ...

  3. Python数据科学手册-机器学习之特征工程

    特征工程常见示例: 分类数据.文本.图像. 还有提高模型复杂度的 衍生特征 和 处理 缺失数据的填充 方法.这个过程被叫做向量化.把任意格式的数据 转换成具有良好特性的向量形式. 分类特征 比如房屋数 ...

  4. Python数据科学手册-机器学习之模型验证

    模型验证 model validation 就是在选择 模型 和 超参数 之后.通过对训练数据进行学习.对比模型对 已知 数据的预测值和实际值 的差异. 错误的模型验证方法. 用同一套数据训练 和 评 ...

  5. Python数据科学手册-机器学习: k-means聚类/高斯混合模型

    前面学习的无监督学习模型:降维 另一种无监督学习模型:聚类算法. 聚类算法直接冲数据的内在性质中学习最优的划分结果或者确定离散标签类型. 最简单最容易理解的聚类算法可能是 k-means聚类算法了. ...

  6. Python数据科学手册-机器学习: 流形学习

    PCA对非线性的数据集处理效果不太好. 另一种方法 流形学习 manifold learning 是一种无监督评估器,试图将一个低维度流形嵌入到一个高纬度 空间来描述数据集 . 类似 一张纸 (二维) ...

  7. Python数据科学手册-机器学习: 主成分分析

    PCA principal component analysis 主成分分析是一个快速灵活的数据降维无监督方法, 可视化一个包含200个数据点的二维数据集 x 和 y有线性关系,无监督学习希望探索x值 ...

  8. Python数据科学手册-机器学习: 决策树与随机森林

    无参数 算法 随机森林 随机森林是一种集成方法,集成多个比较简单的评估器形成累计效果. 导入标准程序库 随机森林的诱因: 决策树 随机森林是建立在决策树 基础上 的集成学习器 建一颗决策树 二叉决策树 ...

  9. Python数据科学手册-机器学习: 支持向量机

    support vector machine SVM 是非常强大. 灵活的有监督学习算法, 可以用于分类和回归. 贝叶斯分类器,对每个类进行了随机分布的假设,用生成的模型估计 新数据点 的标签.是属于 ...

随机推荐

  1. 6. RDD综合练习:更丰富的操作

    集合运算练习 union(), intersection(),subtract(), cartesian() 内连接与外连接 join(), leftOuterJoin(), rightOuterJo ...

  2. 论文阅读 GloDyNE Global Topology Preserving Dynamic Network Embedding

    11 GloDyNE Global Topology Preserving Dynamic Network Embedding link:http://arxiv.org/abs/2008.01935 ...

  3. @RequestMapping注解的属性,将请求约束精细化

    package com.atguigu.controller; import org.springframework.stereotype.Controller; import org.springf ...

  4. Python: 列表、数组及迭代器切片的区别及联系

    1. 对列表和数组进行切片 1.1 切片索引 众所周知,Python中的列表和numpy数组都支持用begin: end语法来表示[begin, end)区间的的切片索引: import numpy ...

  5. 【docker专栏6】详解docker容器状态转换管理命令

    docker容器有三种状态运行.停止.暂停,镜像可以创建.运行容器,镜像和容器也可以转换成tar压缩包进行存储.本文为大家介绍容器的状态转换命令及镜像创建运行容器.tar包导入导出相关的命令及使用场景 ...

  6. 各大厂的语音识别Speech To Text API使用体验

    最近发现有声读物能极大促进我的睡眠,但每个前面都有一段开场语,想把它剪掉,但是有多个开场语,所以就要用到语音识别判断一下再剪. 前两年在本地搭建过识别的环境,奈何识别准确率不行,只能找找API了,后面 ...

  7. Solution -「HNOI」EVACUATE

    Sol. 可以发现人的移动除了不能穿墙以外没有别的限制.也就是说人的移动多半不是解题的突破口. 接下来会发现出口的限制很强,即出口每个时刻只能允许一个人出去. 每个时刻? 不难想到对于每一个时刻每一个 ...

  8. .net 温故知新:【6】Linq是什么

    1.什么是Linq 关于什么是Linq 我们先看看这段代码. List<int> list = new List<int> { 1, 1, 2, 2, 3, 3, 3, 5, ...

  9. ACWing93.递归实现组合型枚举

    题面 \93. 递归实现组合型枚举 从 1∼n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案. 输入格式 两个整数 n,m ,在同一行用空格隔开. 输出格式 按照从小到大的顺序输出所有方案 ...

  10. python将命令输出写入文件或临时缓存

    python将命令输出写入文件 将文件写入到对应文件,方便后期处理或保存 def write_file(file_path): with open(file=file_path, mode=" ...