机器学习——线性回归(头歌实训)

头歌机器学习实训代码、答案,如果能够帮到您,希望可以点个赞!!! 

如果有问题可以csdn私聊或评论!!!感谢您的支持

目录

第1关:简单线性回归与多元线性回归

第2关:线性回归的正规方程解 

第3关:衡量线性回归的性能指标 

第4关:scikit-learn线性回归实践 - 波斯顿房价预测 


第1关:简单线性回归与多元线性回归

  • 1、下面属于多元线性回归的是?( BC

    A、求得正方形面积与对角线之间的关系。
    B、建立股票价格与成交量、换手率等因素之间的线性关系。
    C、建立西瓜价格与西瓜大小、西瓜产地、甜度等因素之间的线性关系。
    D、建立西瓜书销量与时间之间的线性关系。
  • 2、若线性回归方程得到多个解,下面哪些方法能够解决此问题?( ABC

    A、获取更多的训练样本
    B、选取样本有效的特征,使样本数量大于特征数
    C、加入正则化项
    D、不考虑偏置项b
  • 3、下列关于线性回归分析中的残差(预测值减去真实值)说法正确的是?( A )

    A、残差均值总是为零
    B、残差均值总是小于零
    C、残差均值总是大于零
    D、以上说法都不对

第2关:线性回归的正规方程解 

#encoding=utf8 
import numpy as np
def mse_score(y_predict,y_test):'''input:y_predict(ndarray):预测值y_test(ndarray):真实值ouput:mse(float):mse损失函数值'''#********* Begin *********#mse = np.mean((y_predict-y_test)/2)#********* End *********#return mse
class LinearRegression :def __init__(self):'''初始化线性回归模型'''self.theta = Nonedef fit_normal(self,train_data,train_label):'''input:train_data(ndarray):训练样本train_label(ndarray):训练标签'''#********* Begin *********#x = np.hstack([np.ones((len(train_data),1)),train_data])self.theta =np.linalg.inv(x.T.dot(x)).dot(x.T).dot(train_label)#********* End *********#return self.thetadef predict(self,test_data):'''input:test_data(ndarray):测试样本'''#********* Begin *********#x = np.hstack([np.ones((len(test_data),1)),test_data])return x.dot(self.theta)#********* End *********#

第3关:衡量线性回归的性能指标 

#encoding=utf8 
import numpy as np
#mse
def mse_score(y_predict,y_test):mse = np.mean((y_predict-y_test)**2)return mse
#r2
def r2_score(y_predict,y_test):'''input:y_predict(ndarray):预测值y_test(ndarray):真实值output:r2(float):r2值'''#********* Begin *********#r2 = 1 - mse_score(y_predict,y_test)/np.var(y_test)#********* End *********#return r2
class LinearRegression :def __init__(self):'''初始化线性回归模型'''self.theta = Nonedef fit_normal(self,train_data,train_label):'''input:train_data(ndarray):训练样本train_label(ndarray):训练标签'''#********* Begin *********#x = np.hstack([np.ones((len(train_data),1)),train_data])self.theta =np.linalg.inv(x.T.dot(x)).dot(x.T).dot(train_label)#********* End *********#return selfdef predict(self,test_data):'''input:test_data(ndarray):测试样本'''#********* Begin *********#x = np.hstack([np.ones((len(test_data),1)),test_data])return x.dot(self.theta)#********* End *********#

第4关:scikit-learn线性回归实践 - 波斯顿房价预测 

#encoding=utf8
#********* Begin *********#
import pandas as pd
from sklearn.linear_model import LinearRegression#读取训练数据
train_data = pd.read_csv('./step3/train_data.csv')#读取训练标签
train_label = pd.read_csv("./step3/train_label.csv")
train_label = train_label["target"]#读取测试数据
test_data = pd.read_csv("./step3/test_data.csv")
lr = LinearRegression()#训练模型
lr.fit(train_data,train_label)#预测标签
predict = lr.predict(test_data)#写入csv
df = pd.DataFrame({"result":predict}) 
df.to_csv("./step3/result.csv", index=False)#********* End *********#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/764215.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JVM加类加载器

文章目录 JVM内存模型内存分配策略JVM内存分配策略优化的最佳实践对象头类加载类加载器有哪几种?如何实现一个自定义类加载器?类加载机制如何影响性能调优? JVM内存模型 JVM(Java虚拟机)内存模型描述了Java虚拟机在执…

矩阵理论的概念间的组合关系的公式

矩阵理论的概念间的组合关系的公式 现在很火执的人工智能技术,要求很高的数学基础知识。 除了微积分就是线性代数的内容了。自动微分框架是人工 智能技术的底层框架。其实就是实现了微积分的各种函数 的微积分运算而矣。线性代数的内容应用于计算机 的软件中的各个…

Elasticsearch 的 scroll API

对于大量数据,可以使用 Elasticsearch 的 scroll API 来分批次地读取数据,以避免一次性读取所有数据造成的内存负担。这段代码使用滚动查询(scroll)来分批次地读取数据。首先,它发送初始的搜索请求,并获取第…

Vue3:网页项目中路由的设计和配置

为了避免我每次建项目配路由的时候都回去翻网课,打算整一博客 路由设计 不同网页的路由设计思路基本相同,分为一级路由和二级路由,基本设计思路如下图 以我之前做过的招新系统管理端为例,可设计出如下路由 路由配置 还是以招新系…

递归的个人总结

递归函数(递去、回归)是函数不断的调用自己; 可以按照如下来理解:func1中调用func2,func2中调用func3; func3函数返回了,继续执行func2中的语句;func2执行完了,继续执行func1之后的…

ky10.aarch64安装Jenkins

参考地址:《安装部署 Jenkins》 前言 有war包和rpm两种安装方式,如果是长期使用更加推荐rpm的安装方式,可以更好的管理Jenkins; 我此次安装jenkins主要用于测试和简单的个人使用,所以选择更轻便的war安装。 1 下载J…

网络安全知识核心之ARP协议

概述 地址解析协议,即 ARP(Address Resolution Protocol),是根据 IP 地址获取物理地址的一个TCP/IP 协议。 发送 ARP 请求的以太网数据帧 广播 到以太网上的每个主机,ARP 请求帧中包含了目的主机的 IP 地址。 目的主…

RK3568基于openHarmony3.2版本之GT911触摸屏调试成功

RK3568基于openHarmony3.2版本之GT911触摸屏 开发环境调试过程HDF架构配置内核配置(选择性配置)效果展示总结开发环境 ubuntu版本:20.04 openharmony版本:3.2.4-release 核心板:RK3568 触摸屏型号:GT911 博主想说句话:太太太不容易了,这源码的坑不是一般的多,在总结那…

每日一题 --- 209. 长度最小的子数组[力扣][Go]

长度最小子数组 题目: 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续 子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度**。**如果不存在符合条件的子数组&#xff0c…

C++检测多显示器并把窗口显示在不同显示器上(完整源码)

初级代码游戏的专栏介绍与文章目录-CSDN博客 早先大部分应用都不考虑多显示的问题。 如果是多窗口应用,子窗口不会被限制在父窗口里面的,可以轻松把窗口拖到不同的显示器上。 但是很多流行的界面都是一个全屏主窗口,然后其他窗口都只能在主窗…

【docker】查看并拷贝容器内文件

一、查询容器 查询所有容器 docker ps查询名为os11的容器 docker ps | grep os11查询名为os11的容器(包含不运行的) docker ps -a| grep os11 docker ps [option] 显示结果介绍如下: 参考:[https://blog.51cto.com/u_15009374/31…

Linux离线部署gitLab及使用教程

一、下载gitLab的linux系统rpm包 地址:Index of /gitlab-ce/yum/el7/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 找到这个最新版 点击下载 二、上传到linux系统 笔者是在windows系统下的vmware虚拟机中部署安装的,虚拟机中安装了cent…

腾讯在GDC 2024展示GiiNEX AI游戏引擎现已投入《元梦之星》中开发使用,展示强大AIGC能力

在近日举行的GDC 2024游戏开发者大会上,腾讯揭开了其AI Lab团队精心打造的GiiNEX AI游戏引擎的神秘面纱。这款引擎依托先进的生成式AI和决策AI技术,为游戏行业带来了革命性的变革。 相关阅读:腾讯游戏出品!腾讯研效AIGC&#xff…

【DataWhale学习】用免费GPU线上跑chatGLM、SD项目实践

用免费GPU线上跑chatGLM、SD项目实践 ​ DataWhale组织了一个线上白嫖GPU跑chatGLM与SD的项目活动,我很感兴趣就参加啦。之前就对chatGLM有所耳闻,是去年清华联合发布的开源大语言模型,可以用来打造个人知识库什么的,一直没有尝试…

分别使用TCP/UDP实现互相实时发送消息,接收消息功能

什么是TCP? TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层协议。它是互联网协议套件中的一部分,用于在网络上可靠地传输数据。TCP协议的主要特点包括: 面向连接:在TCP通信中,通信双方在通信之前必须先建立连接。连接建立后,数据传输完成后还需要显式…

Apache James数据库存储用户信息的密码加密问题

项目场景 Apache James邮件服务器使用数据库来存储用户信息的密码加密问题&#xff1a; 将James的用户改为数据库存储James密码是如何加密验证的 1.将James的用户改为数据库存储 1、修改存储方式 找到james-2.3.2\apps\james\SAR-INF\config.xml 找到<users-store>标…

elementUI(Vue2)和elementPlus(Vue3)图标icon差异

Vue2用法 <i class"el-icon-edit"></i><el-button type"primary" icon"el-icon-search">搜索</el-button> Vue3用法 <!-- 使用 el-icon 为 SVG 图标提供属性 --> <template><div><el-icon :siz…

Python的re模块进行正则表达式操作时的常用方法[回顾学习]

re 模块是 Python 中用于处理正则表达式的标准库模块。通过 re 模块&#xff0c;可进行字符串匹配、搜索和替换等各种操作。 有几个常用的方法&#xff1a;# re.match(pattern, string)&#xff1a;从字符串开头开始匹配模式&#xff0c;并返回匹配对象。适合用于确定字符串是否…

Doris的3种数据模型详解和数据仓库每一层的模型选用

Apache Doris是一个用于离线数据仓库开发的分布式SQL查询和分析引擎。在使用Doris进行离线数据仓库开发时,可以采用三种不同的数据模型:Duplicate模型、Aggregate模型和Unique模型。每种模型都有其适用的场景和特点,同时也对于不同层次的数据仓库有着不同的使用建议。 Dupl…

Python爬虫入门教程:从零开始学习网络数据采集(零基础入门,小白看的懂)

随着互联网的快速发展&#xff0c;数据成为了信息时代的核心。而网络爬虫&#xff08;Web Scraper&#xff09;作为一种自动化采集网络数据的工具&#xff0c;在数据获取和分析领域发挥着重要作用。Python作为一种简单易学、功能丰富的编程语言&#xff0c;被广泛用于编写网络爬…