3-6 构建线性模型解决温度计示数转换问题

3-6 构建线性模型解决温度计示数转换问题

直接上源码

%matplotlib inline
import numpy as np
import torch
torch.set_printoptions(edgeitems=2, linewidth=75)

导入必要的库并设置 PyTorch 的打印选项,确保在打印张量时显示边缘项和行宽。

#%%
t_c = [0.5,  14.0, 15.0, 28.0, 11.0,  8.0,  3.0, -4.0,  6.0, 13.0, 21.0]
t_u = [35.7, 55.9, 58.2, 81.9, 56.3, 48.9, 33.9, 21.8, 48.4, 60.4, 68.4]

定义摄氏温度(t_c)和未知单位的温度(t_u)的列表。

#%%
t_c = torch.tensor(t_c)
t_u = torch.tensor(t_u)

将温度列表转换为 PyTorch 张量。

#%%
import matplotlib.pyplot as plt

导入 Matplotlib 库,用于数据可视化。

#%%
fig = plt.figure()
plt.scatter(t_u, t_c, c='b', edgecolors='r')
plt.show()

创建一个散点图,将 t_ut_c 进行可视化。蓝色点表示数据点,红色边缘表示边框颜色。
在这里插入图片描述

#%%
def model(t_u, w, b):return w * t_u + b

定义线性模型函数,模型参数为权重 w 和偏置 b,输入为 t_u

#%%
def loss_fn(t_p, t_c):squared_diffs = (t_p - t_c)**2return squared_diffs.mean()

定义损失函数,计算预测值 t_p 和真实值 t_c 之间的均方误差。

#%%
w = torch.ones(())
b = torch.zeros(())
t_p = model(t_u, w, b)
t_p

初始化模型参数 w 为 1,b 为 0,计算预测值 t_p

#%%
loss = loss_fn(t_p, t_c)
loss

计算预测值 t_p 和真实值 t_c 之间的损失(均方误差)。

#%%
w = torch.zeros(())
b = torch.zeros(())
t_p = model(t_u, w, b)
t_p

重新初始化模型参数 wb 都为 0,再次计算预测值 t_p

#%%
loss = loss_fn(t_p, t_c)
loss

计算新的预测值 t_p 和真实值 t_c 之间的损失(均方误差)。

这个代码的主要目的是定义一个线性回归模型,并通过不同的模型参数来计算预测值和损失,以了解模型预测效果的好坏。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Windows C++ vs2022环境中下载、安装和使用osmesa

第一步:安装 MinGW-w64 请参考这篇文章进行安装: 在Windows中安装MinGW-w64最新版本 第二步:安装DirectX SDK 请参考这篇文章进行安装: 下载安装Microsoft DirectX SDK(June 2010) 第三步:安装Windows SDK 请参考这篇…

书生大模型实战营(暑假场)-入门岛-第一关

书生大模型实战营暑假场重磅开启!,这场学习路线看起来很好玩呀,闯关学习既能学到知识又有免费算力可得,太良心啦。感兴趣的小伙伴赶快一起报名学习吧!!! 关卡任务 好的,我们废话不多…

【动态规划Ⅴ】二维数组的动态规划——0/1矩阵、最大正方形

二维数组的动态规划——0/1矩阵、最大正方形 最大正方形1277. 统计全为 1 的正方形子矩阵221. 最大正方形 01矩阵542. 01 矩阵 最大正方形 下面两个题目是非常相似的,只是一个统计正方形数目,一个统计最大正方形的面积。 1277. 统计全为 1 的正方形子矩…

2.5章节python中布尔类型

在Python中,布尔类型(Boolean type)用于表示真(True)或假(False)的值。这是编程中非常基础且重要的一个概念,因为它允许程序进行条件判断,从而根据条件执行不同的代码块。…

如何写出一篇高质量的新闻稿,纯干货

对于企业宣传来说,新闻稿的发布是常用的一种宣传推广的营销方式,新闻稿可以让消费者及时了解企业的最新发展动态,增加企业品牌的曝光度。 一篇高质量新闻稿不仅能作为品牌背书,还很可能会被各大媒体转载,短时间内提高企…

GS Quant——一个用于量化金融的 Python 工具包【送源码】

GS Quant是一个用于量化金融的 Python 工具包,GS 其实就是 Goldman Sachs 高盛集团的缩写。 GS Quant 的功能主要涵盖了以下几个方面: 内置很多金融衍生品定价模型,涵盖多个资产类别 提供了公司内部及市场的数据接口,便于监测 …

LeNet原理及代码实现

目录 1.原理及介绍 2.代码实现 2.1model.py 2.2model_train.py 2.3model.test.py 1.原理及介绍 2.代码实现 2.1model.py import torch from torch import nn from torchsummary import summaryclass LeNet(nn.Module):def __init__(self):super(LeNet, self).__init__…

价格疑云?格行WiFi创始人亲解谜团,性价比之王如何炼成?

随身wifi行业乱象频出,作为行业领跑品牌的格行随身wifi,关于价格问题一直备受质疑。关于设备上的“格行自有格行的骄傲”也被外界认定为是自大,甚至发展的线下一万多家门店也被同行不认可。近日,企业财经专访记者有幸采访了格行随…

Xilinx原语

1. 原语介绍 原语是 Xilinx 器件底层硬件中的功能模块,它使用专用的资源来实现一系列的功能。相比于 IP 核,原语的调用方法更简单,但是一般只用于实现一些简单的功能。本章主要用到了 BUFG、 BUFIO、 IDDR、 ODDR、IDELAYE2 和 IDELAYCTRL。…

用于视频生成的扩散模型

学习自https://lilianweng.github.io/posts/2024-04-12-diffusion-video/ 文章目录 3D UNet和DiTVDMImagen VideoSora 调整图像模型生成视频Make-A-Video(对视频数据微调)Tune-A-VideoGen-1视频 LDMSVD稳定视频扩散 免训练Text2Video-ZeroControlVideo 参…

AI发展的新方向:从卷模型到卷应用

在2024年7月4日于上海世博中心举办的世界人工智能大会暨人工智能全球治理高级别会议全体会议上,百度创始人、董事长兼首席执行官李彦宏发表了一段引人深思的演讲。他在产业发展主论坛上提出:“大家不要卷模型,要卷应用!”这句话道…

【嵌入式DIY实例-ESP8266篇】-LCD ST7735显示BME280传感器数据

LCD ST7735显示BME280传感器数据 文章目录 LCD ST7735显示BME280传感器数据1、硬件准备与接线2、代码实现本文中将介绍如何使用 ESP8266 NodeMCU 板(ESP12-E 模块)和 BME280 气压、温度和湿度传感器构建气象站。 NodeMCU 微控制器 (ESP8266EX) 从 BME280 传感器读取温度、湿度…

注解复习(java)

文章目录 注解内置注解**Deprecated**OverrideSuppressWarnings【不建议使用】Funcationallnterface 自定义注解元注解RetentionTargetDocumentedInherited 和 Repeatable 反射注解 前言:笔记基于动力节点 注解 注解可以标注在 类上,属性上&#xff0c…

pdf容量大小怎么改,pdf容量太大怎么变小

在数字化时代,pdf文件因其稳定性和跨平台兼容性而成为工作、学习和生活中不可或缺的文件格式。然而,随着文件内容的丰富,pdf文件的体积也日益增大,给存储和传输带来了不少困扰。本文将为你详细介绍多种实用的pdf文件压缩方法&…

linux watchdog 子系统

目录 一、watchdog 子系统二、关键数据结构2.1 watchdog_device2.2 watchdog_ops2.3 watchdog_info 三、重要流程3.1 watchdog 初始化3.2 watchdog 设备注册3.3 watchdog 设备文件操作函数3.4 watchdog 喂狗用户空间 watchdog(busybox)内核空间喂狗疑问 …

浏览器开发者视角及CSS表达式选择元素

点击想要查看的接口,然后点击检查,便可以切换到该接口对应的html代码 如果F12不起作用的话,点击更多工具,然后选择开发者工具即可 ctrlF可以去查阅相关的CSS表达式选择元素 如果没有加#t1,那么表示的是选择所有的p 使用…

Start LoongArch64 Alpine Linux VM on x86_64

一、Build from source(build on x86_64) Obtain the latest libvirt, virt manager, and QEMU source code, compile and install them 1.1 Build libvirt from source sudo apt-get update sudo apt-get install augeas-tools bash-completion debhelper-compat dh-apparmo…

Qt 异步实现事件的定时执行 - QTimer和QThread的联合使用

异步实现事件的定时执行 - QTimer和QThread的联合使用 引言一、核心源码二、其信号和槽函数简述三、定时器及其moveToThread简述 引言 在 Qt 中,如果想要定时执行某些事件或函数,通常会使用 QTimer 类。QTimer 允许设置一个时间间隔,当这个时…

【大模型LLM面试合集】大语言模型架构_layer_normalization

2.layer_normalization 1.Normalization 1.1 Batch Norm 为什么要进行BN呢? 在深度神经网络训练的过程中,通常以输入网络的每一个mini-batch进行训练,这样每个batch具有不同的分布,使模型训练起来特别困难。Internal Covariat…

【后端开发实习】Node.js搭建Web应用,用Redis维持session状态

Redis维持session状态 RedisRedis是什么Redis安装Redis的使用 应用搭建使用redis维持session状态将/路径下GET请求querystring中带有的参数及其缓存在session中访问/路径时,以json形式将session中缓存的参数内容打印到前台页面 Redis Redis是什么 Redis是一个开源…