线性回归-task4

【我的数据挖掘竞赛之旅(二)】二手车交易价格预测——2020年天池阿里云竞赛Task4建模调参 文章目录5.1 学习目标5.2 内容介绍5.3 相关原理介绍与推荐5.3.1 线性回归模型5.3.2 决策树模型5.3.3 GBDT模型5.3.4 XGBoost模型5.3.5 LightGBM模型5.3.6 推荐教材:5.4 代码示例5.4.1 读取数据5.4.2 线性回归 & 五折交叉验证 & 模拟真实业务情况5.4.2 - 1 简单建模5.4.2 - 2 五折交叉验证5.4.... 阅读详情

1. 波士顿房产数据(完整数据)

import pandas as pd
import numpy as np
#特征转DataFrame格式
boston_X = pd.DataFrame(bostonDatas.data,columns = bostonDatas.feature_names)
print(boston_X.head())

#结果转DataFrame
boston_y = pd.DataFrame(bostonDatas.target,columns=['housePrice'])#【注意加列名要加在[]中】
print(boston_y.head())

#合并DataFrame
boston_all = pd.concat([boston_X,boston_y],axis =1)#axis =1 为横向操作,即横向合并

2. 实现多变量(手写代码)

  • 多变量指的是输入特征有多个的时候
    在这里插入图片描述
    在这里插入图片描述
  • python实现梯度下降
#计算损失
def computeCost(X, y, theta):
    m = y.shape[0]
#     J = (np.sum((X.dot(theta) - y)**2)) / (2*m)
    C = X.dot(theta) - y
    J2 = (C.T.dot(C))/ (2*m)
    return J2
 
#梯度下降
def gradientDescent(X, y, theta, alpha, num_iters):
    m = y.shape[0]
    #print(m)
    # 存储历史误差
    J_history = np.zeros((num_iters, 1))
    for iter in range(num_iters):
        # 对J求导,得到 alpha/m * (WX - Y)*x(i), (3,m)*(m,1)  X (m,3)*(3,1) = (m,1)
        theta = theta - (alpha/m) * (X.T.dot(X.dot(theta) - y))
        J_history[iter] = computeCost(X, y, theta)
    return J_history,theta

3. 数据标准化(手写代码)

#特征缩放
def featureNormalize(X):
    X_norm = X;
    mu = np.zeros((1,X.shape[1]))
    sigma = np.zeros((1,X.shape[1]))
    for i in range(X.shape[1]):
        mu[0,i] = np.mean(X[:,i]) # 均值
        sigma[0,i] = np.std(X[:,i])     # 标准差
#     print(mu)
#     print(sigma)
    X_norm  = (X - mu) / sigma
    return X_norm,mu,sigma
  • 数据标准化例子
from sklearn import preprocessing
import numpy as np

x = np.array([[1., -1., 2., 3.],
              [2., 0., 0., -2],
              [0., 1., -1., 0],
              [1., 2., -3., 1]])

print("标准化之前的方差:", x.mean(axis=0))
print("标准化之前的标准差:", x.std(axis=0))

#标准化
x_scale = preprocessing.scale(x)
print("\n------------------\n标准化结果:\n", x_scale)
print("\n标准化之后的方差:", x_scale.mean(axis=0))
print("标准化之后的标准差:", x_scale.std(axis=0))

  • 输出结果
    在这里插入图片描述

4. 网格搜索调参

Grid Search:一种调参手段;穷举搜索:在所有候选的参数选择中,通过循环遍历,尝试每一种可能性,表现最好的参数就是最终的结果。其原理就像是在数组里找最大值。(为什么叫网格搜索?以有两个参数的模型为例,参数a有3种可能,参数b有4种可能,把所有可能性列出来,可以表示成一个3*4的表格,其中每个cell就是一个网格,循环过程就像是在每个网格里遍历、搜索,所以叫grid search)

  • 波士顿数据集
x_train,x_test,y_train,y_test = train_test_split(bostonStd_1[:,[0,13]],bostonStd_1[:,[13]],test_size=0.3,random_state=0)
#k近邻网络搜索来进行调参
from sklearn.grid_search import GridSearchCV
from sklearn.neighbors import KNeighborsRegressor

knn_reg = KNeighborsRegressor()
grid_param = [
    {
        'weights':['uniform'],
        'n_neighbors':[i for i in range(1,11)]
    },
    {
        'weights':['distance'],
        'n_neighbors':[i for i in range(1,11)],
         'p':[i for i in range(1,6)]
    }
]
knn_reg = KNeighborsRegressor()
grid_search = GridSearchCV(knn_reg,grid_param,n_jobs=-1,verbose=2,cv=10)
# 调用fit方法执行网格搜索
grid_search.fit(x_train,y_train.astype('int'))

print(grid_search.best_params_)
print(grid_search.best_score_)
print(grid_search.best_estimator_.score(x_test,y_test))

参考文献
https://www.cnblogs.com/xiaoqi/p/6408614.html
https://blog.youkuaiyun.com/qq_33182424/article/details/82877671

DataWhale—PumpkinBook(TASK02线性回归) 机器学习-线性回归 阅读详情

相关推荐

结构力学程序算法理论基础(一)————虚功原理

1.约束 定义约束:限制质点或者质点系运动的条件称为约束,表示这些限制条件的数学方程称为约束方程。 (1)几何约束 限制质点或者质点系在空间的几何位置的条件称为几何约束.如单摆,其中质点M可绕固定点O在平面Oxy内摆动,摆长为l.这时摆杆对质点的限制条件是:质点M必须在以点O为圆心,以l为半径的圆周上运动.其约束方程为: 又质点M在固定的曲面上运动,那么曲面方程就是质点M的约束方程,即 上...

l93919861的博客 4512

机器学习Sklearn实战——KNN算法

KNN鸢尾花分类 import matplotlib.pyplot as plt from sklearn.neighbors import KNeighborsClassifier from sklearn import datasets import numpy as np X,y = datasets.load_iris(True) X = X[:,:2] plt.scatter(X[:,0],X[:,1],c=y) knn = KNeighborsClassifier(n_neighbors =

Grateful_Dead424的博客 5373

【点云可视化】自制ply文件并使用open3d可视化点云

使用open3d可视化点云,需要将点云制作为ply文件传入函数中。 安装open3d 直接使用pip安装 pip install open3d ply文件 ply文件的结构为:文件头+数据内容,文件头从 ply 一行开始,到 end_header 为止,里面定义了此 ply文件中数据的组织形式,包括数据类型和个数。后面是点云的坐标信息及每个点的颜色属性的,参考自 如下为具有5个点的点云,end_header后每一行表示一个点的x,y,z,R,G,B信息 ply format ascii 1.0 comme

这个人很蓝 1万+

手撸机器学习算法之自己实现线性回归

线性回归是机器学习中最经典的算法,因为后面的多层感知也是基于这些算法进行演变而来的,所以当我们完全了解了机器学习之后对于我们了解后面的算法是很有帮助的,尤其对于经典的,每一个机器学习模型都会用到的梯度下降,损失计算进行更深刻的认识是非常具有帮助的。同时本次的博客将会把整个机器学习我认为比较经典的算法通通进行自己的手动实现,供大家进行参考和学习,那么我们就开始实现本次的第一个机器学习算法,线性回归吧。线性回归的本质就是使用一组参数去拟合样本数据,在二维平面上就是使用y = kx + b这一条直线去拟合所有的样

weixin_43754303的博客 717

生物信息学新手必看:MAFFT多序列比对从安装到实战(附参数优化技巧)

本文为生物信息学新手提供了MAFFT多序列比对工具的完整指南。从Linux环境下的安装部署,到核心算法策略(如FFT-NS-i、L-INS-i)的选择逻辑,再到空位罚分等关键参数的深度解析与优化技巧,手把手教你完成从原始序列到高质量比对结果的实战流程,为后续进化树构建等分析奠定坚实基础。

weixin_29230773的博客 488

Oracle EBS R12 主 / 辅助分类帐(主 / 辅助帐套)落地

本文提供了Oracle EBS R12主/辅助分类帐实施的全套文档模板,包含主帐套(法定帐套)和辅助帐套的完整配置清单、科目映射规则模板、4类典型调整分录示例(存货跌价、折旧差异、往来重分类、外币折算)以及税会/IFRS案例分录。重点阐述了主/辅助帐套的配置要点、SLA子分类帐关键配置、科目映射规则(一对一、多对一、重分类等类型)以及调整分录的自动生成逻辑。文档可直接用于项目实施,包含总体架构图、科目映射矩阵表、会计规则集配置等交付物,并附有Excel版模板便于直接使用。适用于需要实现多准则并行记账、税务调

金牌架构师 388

Python 实现多元线性回归预测

一、二元输入特征线性回归 测试数据为:ex1data2.txt 2104,3,399900 1600,3,329900 2400,3,369000 1416,2,232000 3000,4,539900 1985,4,299900 1534,3,314900 1427,3,198999 1380,3,212000 1494,3,242500 1940,4,239999 2000,3,347000...

weixin_33759269的博客 1397

TriCore架构-基于TC397的启动流程

TC397芯片的启动流程分为三个关键阶段:固件启动(BootFirmware)、Bootloader引导和应用程序启动。BootFirmware作为硬件信任根,包含SSW基础初始化、CHSW自检和BSL应急刷写通道。Bootloader承担安全验证和程序引导功能,支持双分区(AB-SWAP)和双引导方案(PBL/SBL)。安全启动通过校验机制确保软件完整性,提供三种可选技术方案。应用程序启动阶段实现软件双分区管理,支持SOTA更新。整个流程体现了汽车电子系统的安全设计理念,通过硬件级保护与软件验证相结合确保

xiandang8023的博客 988

吴恩达机器学习 | (3) 第二周编程作业(Python版)

实验指导书 本篇博客主要讲解,吴恩达机器学习第二周的编程作业,作业内容主要是实现单元/多元线性回归算法。实验的原始版本是用Matlab实现的,本篇博客主要用Python来实现。 目录 1.实验包含的文件 2.单元线性回归 3.单元线性回归完整项目代码 4.多元线性回归 5.多元线性回归完整项目代码 1.实验包含的文件 文件名称 含义 ex1.py 单元线性回归...

sdu_hao的博客 5814

基于Python的IMF经济数据爬取与分析:从入门到实战

本文详细介绍了如何使用Python爬取国际货币基金组织(IMF)的经济数据,包括最新的爬虫技术、反反爬策略、数据解析与存储方法。文章从IMF数据源分析开始,逐步讲解如何构建一个完整的爬虫系统,并提供了详细的代码实现和优化建议。通过本文,读者将掌握爬取复杂国际组织数据的关键技术,并能将这些技术应用于其他类似的数据获取场景。关键词:Python爬虫、IMF数据、经济数据获取、数据清洗、反爬策略IMF Data (data.imf.org) - 主要数据门户。

2201_76125261的博客 1439

245. 项目195:简易文字冒险游戏——《跟老吕学Python·新手》

如果您在学习本专栏教程时遇到任何问题,或有任何技术交流的意愿,欢迎在文章评论区留言,或通过优快云私信与老吕取得联系。老吕将及时回复您的留言,并与您共同探讨,以期为大家提供更为精准和有效的帮助。老吕珍视每一位读者的反馈和支持,期待与您共同学习、共同进步,共同创造美好的未来!我们的目标是不仅教会您Python语言,更是培养您解决问题的思维方式。请随意翻阅,按照自己的节奏学习,让这本专栏成为您编程旅程中的可靠伙伴。开发一个简易的文字冒险游戏,通过文本描述场景和事件,让玩家通过选择不同的选项来推动故事发展。

Python老吕的博客 714

Linear Regression(多变量) Task4

1. 波士顿房产数据(完整数据) 使用sklearn.datasets.load_boston即可加载相关数据。该数据集是一个回归问题。每个类的观察值数量是均等的,共有 506 个观察,13 个输入变量和1个输出变量。 CRIM:城镇人均犯罪率。 ZN:住宅用地超过 25000 sq.ft. 的比例。 INDUS:城镇非零售商用土地的比例。 CHAS:查理斯河空变量(如果边界是河流,则为1;否则...

weixin_43148174的博客 250

vue2 - elementUI表格table树形结构复选框勾选父子联动示例,el-table树状表格tree复选框checkbox多选框全选/反选取消children(当子级全选中,父级自动勾选)

vue2,elementui,el-table树状表格多选,树形结构结合多选框使用,实现单选父子联动全选反选,勾选联动父级勾选,表格多选check父子联动,table表格children如何嵌入复选框,el-table使用多选框与树形数据写一个有半选全选功能的表格,el-table树形表格实现复选框多选效果,表格树状结构多选,每一个row都可以选中并且联动全选按钮,table选父带子选子带父,树形数据与懒加载,Table表格树形结构多选框选中父级时会选中子级,elementUI表格里树形结构嵌套复选框全选全

✅ 精选推荐文章 1万+

Task4:Short-term prediction with linear regression model

一、实验目的和内容 解决什么问题、做什么 1、掌握使用Weka做线性回归的方法; 2、掌握线性回归的相关知识; 3、处理丢失数据的值,替换原始数据中的短横线(因为这里的实验数据本应该是数字类型,而不是枚举类型)。 利用Weka对现有数据进行短期预测,从而了解回归分析的基本思想和方法。 weka提供了分类、聚类、关联规则方法,最后一个是对数据集整体的可视化结果,分析了每个属性的分布情况,用数值和柱形图体现。 回归分析(regression analysis)是确定两种或两种以上变量间相互依赖的定量关系的一种统

比起未来可期,我更喜欢如约而至 302

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

零基础入门数据挖掘 task4

Datawhale 零基础入门数据挖掘-Task4 建模调参 四、建模与调参 Tip:此部分为零基础入门数据挖掘的 Task4 建模调参 部分,带你来了解各种模型以及模型的评价和调参策略,欢迎大家后续多多交流。 赛题:零基础入门数据挖掘 - 二手车交易价格预测 地址:https://tianchi.aliyun.com/competition/entrance/231784/introdu...

友谊无价 822

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

数据挖掘学习 Task4

Task 4 建模调参 Tip:此部分为零基础入门数据挖掘的 Task4 建模调参 部分,带你来了解各种模型以及模型的评价和调参策略,欢迎大家后续多多交流。 赛题:零基础入门数据挖掘 - 二手车交易价格预测 地址:https://tianchi.aliyun.com/competition/entrance/231784/introduction?spm=5176.12281957.1004.1....

qq_43466805的博客 191

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

datawhale 学习笔记——建模调参入门

前言 居然又拖到了最后一天才开始打卡,。果然 ddl 是第一生产力。 放上这次的教程链接:Datawhale 零基础入门数据挖掘-Task4 建模调参 看标题就知道这次的这次的内容是建模和调参。虽然说是零基础入门系列,但是这次的教程对真的零基础的人来讲并不是很友好,还是需要很多前置知识的。主要是机器学习模型方面的教程,教程里给出了几篇作者写的文章。个人感觉需要一定门槛,如果看不懂建议参考其他的。 ...

落队的飞行兵 866

Task1 线性回归算法梳理

目录:Task1 线性回归算法梳理一、 机器学习的一些概念2.无监督:3.泛化能力:4.过拟合欠拟合(方差和偏差以及各自解决办法):5.交叉验证:二、线性回归的原理三、线性回归损失函数、代价函数、目标函数1.损失函数:2.代价函数:3.目标函数:三、优化方法(梯度下降法、牛顿法、拟牛顿法等)四、线性回归的评估指标五、sklearn参数详解 Task1 线性回归算法梳理 一、 机器学习的一些概念 *...

苏苏和柚子 243

【Task1】 线性回归算法梳理

1、机器学习的一些概念 有监督:是一个机器学习中的方法,可以由训练资料中学到或建立一个模式( learning model),并依此模式推测新的实例。训练资料是由输入物件(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。一个监督式学习者的任务在观察完一些训练范例(输入和预期输出)后,去预测这个函数对任何可能出现的输入的值的输出。监督...

qq_34210843的博客 348

Task1 线性回归

Task1 线性回归 线性回归在所有机器学习的所有模型中是最容易理解的,可以用来处理的简单回归问题,按照定义,线性回归就是用一条直线(这是在二维层面上来说)对数据集进行线性拟合,使得大多数样本能够被准确的预测。 https://www.jianshu.com/p/68d553d4b1a4 这篇blog已经对线性模型的概念做了详细的描述,简单的总结下就是线性模型主要有线性回归、感知机和逻辑斯谛回归,...

weixin_44424296的博客 266

Task01 线性回归

1、线性回归的原理 2、线性回归损失函数、代价函数、目标函数 3、优化方法(梯度下降法、牛顿法、拟牛顿法等) 4、线性回归的评估指标 5、sklearn参数详解 一、线性回归的原理 二、线性回归损失函数、代价函数、目标函数 损失函数(Loss Function):度量单样本预测的错误程度,损失函数值越小,模型就越好。 代价函数(Cost Function):度量全部样本集的平均...

sunshare77的博客 296

Task01:线性回归

线性回归的概念 1、线性回归的原理 2、线性回归损失函数、代价函数、目标函数 3、优化方法(梯度下降法、牛顿法、拟牛顿法等) 4、线性回归的评估指标 5、sklearn参数详解 1、线性回归的原理 线性回归的一般形式: 极大似然估计(概率角度的诠释) 2、线性回归损失函数、代价函数、目标函数 3、线性回归的优化方法 1、梯度下降法 2、最小二乘法矩阵求解 ...

csdnshenjiaye的博客 295

Task4:建模调参

Task4:建模调参 一,线性回归模型 线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y = w’x+e,e为误差服从均值为0的正态分布。(百度百科) 线性回归模型是目前最常用,运用最广泛的一个模型,在数学,计算机学,金融学,经济学,流行病学等多个领域都有广泛运用,而且我接触到的线性回归问题也较多,所以这次主要学习了线性...

Bucky_Cheng的博客 332

Task4 建模调参

四、建模与调参 Tip:此部分为零基础入门数据挖掘的 Task4 建模调参 部分,带你来了解各种模型以及模型的评价和调参策略,欢迎大家后续多多交流。 赛题:零基础入门数据挖掘 - 二手车交易价格预测 地址:https://tianchi.aliyun.com/competition/entrance/231784/introduction?spm=5176.12281957.1004.1.3...

csdnshenjiaye的博客 679

Task01-线性回归

线性回归的概念 1、线性回归的原理 2、线性回归损失函数、代价函数、目标函数 3、优化方法(梯度下降法、牛顿法、拟牛顿法等) 4、线性回归的评估指标 5、sklearn参数详解 1.线性回归的原理 进入一家房产网,可以看到房价、面积、厅室呈现以下数据: 我们可以将价格和面积、厅室数量的关系习得为f(x)=θ0+θ1x1+θ2x2f(x)=\theta_0+\theta_1x_1+\theta_2x...

qq_39199884的博客 282

DataWhale组队学习Task01线性回归

《动手学深度学习pythorh版》Task01:线性回归 线性回归 主要内容包括: 线性回归的基本要素 线性回归模型从零开始的实现 线性回归模型使用pytorch的简洁实现 线性回归的基本要素 模型 为了简单起见,这里我们假设价格只取决于房屋状况的两个因素,即面积(平方米)和房龄(年)。接下来我们希望探索价格与这两个因素的具体关系。线性回归假设输出与各个输入之间是线性关系: price=warea...

weixin_40736833的博客 279
上一篇: 线性回归算法梳理-Task3
下一篇: NLP-task2
程序员椰子橙
博客等级 码龄9年 46粉丝 163原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值