Python 用5行代码学机器学习—线性回归

数据预处理——fit()函数,transform()函数,fit_transform()函数 fit()函数,transform()函数,fit_transform()函数 阅读详情


之前介绍的一些文章所使用到的机器学习模型,读者在第一次阅读的时候可能完全不了解或不会使用。

为了解决这样的问题,我准备使用scikit-learn给大家介绍一些模型的基础知识,今天就来讲讲线性回归模型。

1.准备

开始之前,你要确保Python和pip已经成功安装在电脑上噢,

Windows环境下打开Cmd(开始—运行—CMD),苹果系统环境下请打开Terminal(command+空格输入Terminal),准备开始输入命令安装依赖。

当然,我更推荐大家用VSCode编辑器,把本文代码Copy下来,在编辑器下方的终端运行命令安装依赖模块,多舒服的一件事啊。

在终端输入以下命令安装我们所需要的依赖模块:

pip install scikit-learn

2.简单的训练集

冬天快到了,深圳这几天已经准备开始入冬了。

从生活入手,外界温度对是否穿外套的影响是具有线性关系的:

外界温度是否穿外套
30度不
25度不
20度不
15度是
10度是


现在,考虑这样的一个问题:如果深圳的温度是12度,我们应不应该穿外套?

这个问题很简单,上述简单的训练集中,我们甚至不需要机器学习就能轻易地得到答案:应该。但如果训练集变得稍显复杂一些呢:

你能看出其中x1, x2, x3和y之间的规律吗?

比较难,但是如果你有足够的数据(比如100个),机器学习能够迅速解决这个问题。

为了方便展示机器学习的威力,我们在这里生产100个这样的训练集(公式为: y=x1 + 2*x2 + 3*x3):

from random import randint
TRAIN_SET_LIMIT = 1000
TRAIN_SET_COUNT = 100


TRAIN_INPUT = list()
TRAIN_OUTPUT = list()
for i in range(TRAIN_SET_COUNT):
    a = randint(0, TRAIN_SET_LIMIT)
    b = randint(0, TRAIN_SET_LIMIT)
    c = randint(0, TRAIN_SET_LIMIT)
    op = a + (2*b) + (3*c)
    TRAIN_INPUT.append([a, b, c])
    TRAIN_OUTPUT.append(op)

然后让线性回归模型使用该训练集(Training Set)进行训练(fit),然后再给定三个参数(Test Data),进行预测(predict),让它得到y值(Prediction),如下图所示。


3.训练和测试

为什么我使用sklearn?因为它真的真的很方便。像这样的训练行为,你只需要3行代码就能搞定:

from sklearn.linear_model import LinearRegression


predictor = LinearRegression(n_jobs=-1)
predictor.fit(X=TRAIN_INPUT, y=TRAIN_OUTPUT)


需要注意线性回归模型(LinearRegression)的参数:

n_jobs:默认为1,表示使用CPU的个数。当-1时,代表使用全部CPU

predictor.fit 即训练模型,X是我们在生成训练集时的TRAIN_INPUT,Y即TRAIN_OUTPUT.

训练完就可以立即进行测试了,调用predict函数即可:

X_TEST = [[10, 20, 30]]
outcome = predictor.predict(X=X_TEST)
coefficients = predictor.coef_


print('Outcome : {}\nCoefficients : {}'.format(outcome, coefficients))


这里的 coefficients 是指系数,即x1, x2, x3.

得到的结果如下:

Outcome : [ 140.]
Coefficients : [ 1. 2. 3.]


验证一下:10 + 20*2 + 30*3 = 140 完全正确。

如何,机器学习模型,用起来其实真的没你想象中的那么难,大部分人很可能只是卡在了安装 scikit-learn 的路上...

顺便给大家留个小练习,将下列欧式距离,使用线性回归模型进行表示。

解决思路和本文的方案其实是类似的,只不过需要变通一下。

文末福利

各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。

这个是一份Python代码速查表

下面的宝藏图片是2张(windows && Mac)高清的PyCharm快捷键一览图

怎样获取呢?可以添加我们的AI派团队的程序媛姐姐

一定要备注【高清图】哦

????????????????????

➕我们的程序媛小姐姐微信要记得备注【高清图】哦

来都来了,喜欢的话就请分享、点赞、在看三连再走吧~~~

python机器学习-线性回归(LinearRegression)算法 用python进行线性回归分析非常方便,如果看代码长度你会发现真的太简单。但是要灵活运用就需要很清楚的知道线性回归原理及应用场景。现在我来总结一下用python来做线性回归的思路及原理。 线性回归应用场景 线性回归介绍 机器学习中的线性回归 简单的线性回顾实例 线性回归应用场景 线性回归介绍 ——线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系... 阅读详情

相关推荐

机器学习:线性回归与Python代码实现

前言:本篇博文主要介绍线性回归模型(linear regression),首先介绍相关的基础概念和原理,然后通过Python代码实现线性回归模型。特别强调,其中大多理论知识来源于《统计学习方法_李航》和斯坦福课程翻译笔记以及Coursera机器学习课程。

huakai16的博客 1万+

Raspberry Pi Pico使用CricuitPython---(1)

将Circuitpyhton加载到Raspberry Pi Pico上学习Python物联网实验.

weixin_45616112的博客 1095

Python 机器学习 线性回归算法

线性回归是一种预测数值型数据的监督学习算法。线性回归是统计学和机器学习中最基础且广泛应用的预测模型之一。实现在建立自变量(X)和因变量(Y)之间的线性关系。在 Python 的机器学习库 scikit-learn 中,可以方便地使用线性回归模型进行数据分析和预测。

weixin_42098295的博客 1792

python编写选项_pymterm 在python中实现多个选项卡的终端模拟器

pymtermA multiple tab terminal emulator implemented in pythonRender system can using native, opengl, will first try opengl when available otherwise fall back to native render OpenGL renderpygame backe...

weixin_39901203的博客 159

Python机器学习——线性回归案例(一)

引入披萨问题 1.将这两组数据散点图可视化,观察它们之间的关系 ① 导入绘图工具 # 导入绘图工具 import matplotlib.pyplot as plt ② 绘制散点图 # 导入数据 X = [[6],[8],[10],[14],[18]] y = [[7],[9],[13],[17.5],[18]] # 绘制散点图 plt.scatter(X,y) # 绘制网格 plt.grid...

lucky_shi的博客 5353

在C#中像Python一样编写TensorFlow机器学习代码

机器学习是一个激动人心的领域,一直有新的技术突破。研究人员不断推动机器智能的提升,教机器如何看,听,读,写和听——这些曾经是我们人类专属领域的技能。 机器学习的首选语言是Python,最受欢迎的库是Google的TensorFlow。几乎所有的代码示例都是用Python编写的,并且依赖于TensorFlow和NumPy库。对C#和.NET开发人员来说,我们面临着一个严峻的选择 - 要么学习Pyth...

SciSharp Stack 6032

Python学习之:pycharm 运行没问题但是 terminal(终端)运行却各种 module 问题

pycharm 可以运行程序但通过终端就报错 no module

qq_42902997的博客 3215

机器学习笔记一:使用LinearRegression实现Boston房价线性回归

一、LinearRegression类 sklearn.linear_model.LinearRegression(fit_intercept=True, normalize=False, copy_X=True, n_jobs=None) 参数 含义 fit_intercept 是否有截据,如果没有则直线过原点 normalize 是否将数据归一化 copy_X 默认为True,当为True时,X会被copi

耐心的小黑的博客 2783

python terminal模块_python命令行解析模块argparse

一、argparse模块python标准库模块argparse用于解析命令行参数,编写用户友好的命令行界面,该模块还会自动生成帮助信息,并在所给参数无效时报错。首先看一个例子:#arg_parse.py#coding:utf-8import argparseparser = argparse.ArgumentParser(description='Process some integers.')p...

weixin_29133959的博客 313

GitHub漏洞挖掘与CVE提交实战指南:从发现到编号的完整链路

GitHub开源项目是现代软件供应链的核心节点,其安全漏洞直接影响全球数百万系统的机密性、完整性与可用性。理解漏洞本质需回归CIA三元组原理,而真实可利用性依赖对协议解析层、配置加载区和依赖传递链等高危模块的精准识别。技术价值在于将模糊的‘可疑逻辑’转化为符合MITRE CVE标准的可验证事件,支撑SDL流程、威胁情报建设与供应链风险管理。典型应用场景包括甲方安全工程师推动供应商修复、独立研究者参与负责任披露,以及DevSecOps团队构建自动化风险坐标系。本文基于27次CVE提交经验,聚焦GitHub代码

weixin_33646989的博客 653

【RTOS】 Vxworks 653 第一章 —— 初识 vx653 3.x

。。不是很重要,自己搜吧鲁棒分区是一种确保共享计算资源中独立运行功能实现​​时空隔离​​的机制,其目标是为集成模块中的混合临界性应用提供与联邦式部署(federated implementation)同等级别的功能隔离保障。具体表现为:​​多关键性共存​​:支持不同安全等级应用(如飞控系统A级与娱乐系统D级)在同一模块中协同运行。​​抗干扰能力​​:防止未授权或意外的时空干扰(如内存越界、时间窗口冲突),确保应用间互不影响。​​。

qq_38183694的博客 1280

python terminal模块_Python 用5行代码学机器学习—线性回归

之前介绍的一些文章所使用到的机器学习模型,读者在第一次阅读的时候可能完全不了解或不会使用。为了解决这样的问题,我准备使用scikit-learn给大家介绍一些模型的基础知识,今天就来讲讲线性回归模型。1.准备开始之前,你要确保Python和pip已经成功安装在电脑上噢,Windows环境下打开Cmd(开始—运行—CMD),苹果系统环境下请打开Terminal(command+空格输入Te...

weixin_39887386的博客 112

基于RK3588与Gstreamer的端侧实时视频流AI推理系统构建

本文详细介绍了基于RK3588芯片与Gstreamer框架构建端侧实时视频流AI推理系统的完整方案。通过硬件选型、环境配置、OpenCV编译优化、视频流处理实战及模型部署等关键环节的深入解析,展示了如何利用RK3588的6TOPS NPU算力与Gstreamer的低延迟特性,实现工业质检、智能交通等场景下的高效边缘计算。特别针对RTSP推拉流优化、RKNN模型转换等核心技术难点提供了实用解决方案。

weixin_30516243的博客 384

cmd装b专用代码_Python 用5行代码学机器学习—线性回归

我准备使用scikit-learn给大家介绍一些模型的基础知识,今天就来讲讲线性回归模型。1. 准备开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章:超详细Python安装指南 进行安装。如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—AnacondaWindows环境下打开Cmd(开始—运行—CMD),...

weixin_39880623的博客 586

12、控件使用之录入英文、阿拉伯数字删除增加功能及二维码显示

控件使用之录入英文、阿拉伯数字删除增加功能及二维码显示1、用到的控件2、添加控件2.1、添加【文本录入】控件2.1、添加【文本显示】控件2.1、添加【QR 二维码】控件3、保存工程及生成文件4、下载文件 1、用到的控件   需要用的显示控件为【文本显示】控件和【QR二维码】控件,以及触控控件【文本录入】控件。 2、添加控件 2.1、添加【文本录入】控件   【文本录入】控件也叫【ASCI 文本录入】,是用来录入ASCI 字符,打开 DGUS 软件,点击【触控控件】—【文本录入】,用鼠标框选一个区域,即可在右

嵌入式羊圈 629

2023年03月CCF-GESP编程能力等级认证Scratch图形化编程一级真题解析

以下不属于计算机输入设备的有( )?A:键盘B:音响C:鼠标D:传感器。

人生就是一个不断学习的过程 1112

4.机器学习-十大算法之一线性回归算法(LinearRegression)案例讲解

线性回归是一种用于预测数值型数据的统计学分析方法,它通过建立一个或多个自变量与因变量之间的线性关系来进行预测。线性回归的基本思想是通过拟合最佳直线(也就是线性方程),来描述自变量和因变量之间的关系。这条直线被称为回归线,其目的是使得所有数据点到这条直线的垂直距离(即残差)的平方和最小。这个最小化过程通常称为最小二乘法。以山河作礼。🎖️🎖️:Python领域新星创作者,优快云实力新星认证,优快云内容合伙人,阿里云社区专家博主,新星计划导师,在职数据分析师。💕💕悲索之人烈焰加身,堕落者不可饶恕。

weixin_50804299的博客 1万+

LabVIEW实现TCP通信

在本节中,我们将简要探讨TCP通信的基础知识,并以工业物联网平台TLINK中的云端设备数据发布设计为例,详细阐述在互联网环境下TCP客户端应用程序设计的基本方法。

不脱发的程序猿 1967

吴恩达机器学习 线性回归 作业(房价预测) Python实现 代码详细解释

整个项目的github:https://github.com/RobinLuoNanjing/MachineLearning_Ng_Python 里面可以下载进行代码实现的数据集data.txt或data.csv 介绍: 最近在看吴恩达机器学习视频的时候,为了巩固自己的基础,想亲自实现一下课程里面的每个算法。在实现之前,我先看了一下别人实现的相关代码,看完就特别沮丧,很多人的代码...

qq_21121821的博客 9989

SAP-ABAP:SAP IDOC 全面学习指南

SAP-ABAP:SAP IDOC 全面学习指南

baidu_35680696的博客 1617

提示工程ROI计算模板:架构师私藏Excel表(含自动计算)

花3个人力优化提示词,到底能带来多少实际收益?“这个提示工程项目值得做吗?投入10万成本,多久能回本?“不同LLM应用的提示词优化优先级怎么排?全凭经验拍脑袋?当前90%的企业在提示工程投入上缺乏标准化的量化评估方法,导致资源浪费(盲目投入无回报项目)或错失机会(低估高价值优化点)。ROI = (总收益 - 总成本) / 总成本 × 100%对于提示工程,总成本=显性成本+隐性成本,总收益=直接收益+间接收益(后文会详细拆解)。提示工程的价值不是“玄学”,而是可以用数据量化的投资行为。本文分享的。

AI开发架构师 1077

线性回归:LinearRegression模型

LinearRegression` 是一种简单而有效的方法,适用于线性关系的建模。`scikit-learn` 提供了易于使用的 API,非常适合于快速构建和评估线性回归模型。无论是初学者还是专业人士,都可以依赖这个工具来处理回归问题。

Wei_sx的博客 1263

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Scikit-learn Python机器学习 - 回归分析算法 - 线性回归 (LinearRegression & SGDRegressor)

Scikit-learn Python机器学习 - 回归分析算法 - 线性回归 ( (LinearRegression & SGDRegressor))

java1234的博客 1412

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

机器学习之线性回归算法预测数据

机器学习之线性回归算法预测数据,包括线性回归算法的理解、LinearRegression理解以及预测一元线性回归数据、预测二元线性回归数据、预测多元线性回归数据。

是十一月末的博客 1893

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

python LinearRegression线性回归

两个变量之间存在一次方函数关系,就称它们之间存在线性关系。更通俗一点讲,如果把这两个变量分别作为点的横坐标与纵坐标,其图象是平面上的一条直线,则这两个变量之间的关系就是线性关系。

zj88189748的专栏 2157
上一篇: AI算法岗为什么都要求C++?
下一篇: 求你了,别再用 print 调试代码了
Wang_AI
博客等级 码龄12年 997粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值