深度学习之线性模型

深度学习之线性模型

  • y = w * x模型
    • 思路
  • y = w * x + b模型
    • 思路

y = w * x模型

思路

这里求权重w , 求最适合的权重,就是求损失值最小的时候
这里用穷举法:在一个范围内,列出w的所有值,并且计算出每组数据的平均损失值,以w 为横坐标, 损失值为纵坐标,作图,找到损失值最低的点,对应的就是最适合 的w

import numpy as np
import matplotlib.pyplot as plt

#线性模型: y = w ·  ···* x
# 此次数据集模型: y = 2x
x_data = [1.0, 2.0, 3.0]
y_data = [2.0, 4.0, 6.0]

def forward(x):
    return x*w

#预测的损失值,预测的y值到真实y值的之差
# 由于可能是正的,也有可能是负的,这里的损失值用它们的平方来表示

def loss(x, y):
    return (forward(x) - y)**2

#穷举法:金肯列举一个范围的所有的w值,求出每个w值的时,三组数据的loss值的平均值,
#以每组数据的w和平均损失值值为 x, y坐标,选出损失值最小的w 作为合适的w

w_list = []
mse_list = []

for w in np.arange(0.0, 4.1, 0.1):
    print("w=", w)
    l_sum = 0
    for x_val, y_val in zip(x_data, y_data):
        y_pred_val = forward(x_val)
        loss_pred_val = loss(x_val, y_val)
        l_sum += loss_pred_val

    print('\t', x_val, y_val, y_pred_val, loss_pred_val)
    print("MSE= ", l_sum / 3)
    w_list.append(w)
    mse_list.append(l_sum/3)

plt.plot(w_list, mse_list)
plt.xlabel("w")
plt.ylabel("ylable")
plt.show()

在这里插入图片描述

如图,w = 2时,损失值最小,所以w = 2是该训练数据合适的权重

y = w * x + b模型

思路

y = w * x + b模型,就需要3D绘图
先利用mershgrid函数, Axes3D函数,建立网格坐标
在利用plot_surface进行绘图

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

#这里设函数为y=3x+2
x_data = [1.0,2.0,3.0]
y_data = [5.0,8.0,11.0]

def forward(x):
    return x * w + b

def loss(x,y):
    y_pred = forward(x)
    return (y_pred-y)*(y_pred-y)

mse_list = []
W=np.arange(0.0,4.1,0.1)
B=np.arange(0.0,4.1,0.1)
[w,b]=np.meshgrid(W,B) #生成2维的网格坐标

l_sum = 0

for x_val, y_val in zip(x_data, y_data):
    y_pred_val = forward(x_val)
    print(y_pred_val)
    loss_val = loss(x_val, y_val)
    l_sum += loss_val

fig = plt.figure()
#ax = Axes3D(fig)

#pycharm版本原因,需要用这样的代码绘制坐标图
ax= Axes3D(fig, auto_add_to_figure=False)
fig.add_axes(ax)

ax.plot_surface(w, b, l_sum/3)
plt.show()

在这里插入图片描述

如果所示,这是该训练数据的图

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【射影几何15】python双曲几何工具geometry_tools

目录 一、说明二、​环境问题:如何安装三、实现一个简单的例子四、绘制双曲组五、使用有限状态自动机加快速度六、资源和代码 一、说明 Geometry_tools 是一个 Python 包,旨在帮助您处理和可视化双曲空间和射影空间上的群动作。 该包主要构建在 numpy、…

C语言求解猴子分桃子

问题:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只 猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了 一个,它同样把多的…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Divider组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Divider组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Divider组件 提供分隔器组件,分隔不同内容块/内容元素。 子组件 …

2024年湖南省考报名时间及流程,选岗很重要!

注册时间:2024年2月18日9:00-25日17:00 报名时间:2024年2月19日9:00-25日17:00 网上确认时间:2024年2月28日9:00-3月2日24:00 缴费时间:2024年2月28日9:00-3月2日24:00 打印准考证时间:2024年3月11日9:00-15日17:00 考…

漂亮不是工业HMI的追求?我劝你,这个想法要变了

对于工业HMI(Human Machine Interface)来说,漂亮并不是唯一的追求,但它仍然是一个重要的方面。在工业环境中,HMI的设计需要考虑到使用者的工作效率和安全性,因此功能性和易用性是首要考虑的因素。然而&…

【EAI 015】CLIPort: What and Where Pathways for Robotic Manipulation

论文标题:CLIPort: What and Where Pathways for Robotic Manipulation 论文作者:Mohit Shridhar1, Lucas Manuelli, Dieter Fox1 作者单位:University of Washington, NVIDIA 论文原文:https://arxiv.org/abs/2109.12098 论文出处…

【计算机网络】网络基础入门

需要云服务器等云产品来学习Linux的同学可以移步/–>腾讯云<–/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;优惠多多。&#xff08;联系我有折扣哦&#xff09; 文章目录 1. 局域网和广域网2. 协议2.1 认识协议2.2 协议分层 3. OSI七层模型和TCP五层&#x…

Ainx-V0.2-简单的连接封装与业务绑定

&#x1f4d5;作者简介&#xff1a; 过去日记&#xff0c;致力于Java、GoLang,Rust等多种编程语言&#xff0c;热爱技术&#xff0c;喜欢游戏的博主。 &#x1f4d7;本文收录于Ainx系列&#xff0c;大家有兴趣的可以看一看 &#x1f4d8;相关专栏Rust初阶教程、go语言基础系列…

vue中watch和computed的不同

第076个 查看专栏目录: VUE ------ element UI Vue.js 中的 watch 和 computed 都是用于监听数据变化并执行相应操作的选项&#xff0c;但它们的使用场景和优劣势有所不同。 两者区别 watch 用于监听一个或多个数据属性的变化&#xff0c;并在变化时执行相应的处理函数。 它…

Windows快捷键大全(包含语音输入、剪切板历史快捷键)

最近发现了微软官网上给出的快捷键大全&#xff0c;并且使用了其中几个新的键盘快捷键&#xff08;语音输入、剪切板历史&#xff09;&#xff0c;确实方便快捷&#xff0c;所以写个博客记录分享一下。 注&#xff1a;windows快捷键大全微软官方已经给出&#xff0c;此处不再赘…

中创ET4410 台式LCR数字电桥 简单开箱测评

最近买了一台LCR电桥&#xff0c;完善一下自己实验室的设备&#xff0c;选了中创ET4410&#xff0c;这款性价比高一点。 1199元在PDD买的&#xff0c;好像胜利的VC4090C也是找中创代工的。 ET4410介绍 本系列LCR数字电桥是采用自动平衡电桥原理设计的元件参数分析仪&#xf…

数据库恢复

文章目录 前言一、事务1.概念2.定义语句3.ACID特性 二、数据库恢复的必要性1.为什么要进行数据库恢复2.数据库恢复机制的作用 三、数据恢复使用的技术1.数据转储2.登记日志文件 四 、不同故障的数据恢复策略1.事务内部的故障2.系统故障3.介质故障 五、具有检查点的恢复技术1.检…

JVM学习记录

JVM基础概念 JVM是一个运行在计算机上的程序&#xff0c;负责编译java字节码文件&#xff0c;支持跨平台特性。 java语言为了通过实时解释实现多平台支持&#xff0c;性能相对于C等语言较低&#xff0c;而JVM提供了JIT即时编译进行性能优化。 JVM与JIT JVM负责解释和执行Ja…

13 年后,我如何用 Go 编写 HTTP 服务(译)

原文&#xff1a;Mat Ryer - 2024.02.09 大约六年前&#xff0c;我写了一篇博客文章&#xff0c;概述了我是如何用 Go 编写 HTTP 服务的&#xff0c;现在我再次告诉你&#xff0c;我是如何写 HTTP 服务的。 那篇原始的文章引发了一些热烈的讨论&#xff0c;这些讨论影响了我今…

go安装与设置

开发环境 安装 下载地址 https://golang.org/dl/(国外的可能不能访问) https://studygolang.com/dl(国内网址,推荐) 安装 下载完成后点击运行,一直next,就可以,安装成功后打开winR输入cmd打开命令行输入go env, 输出 证明安装成功 改变$GOPATH $GOPATH是go存储第三方包和编…

《UE5_C++多人TPS完整教程》学习笔记4 ——《P5 局域网连接(LAN Connection)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P5 局域网连接&#xff08;LAN Connection&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&#xff0c;UP主&#xff08;也是译者&…

精品springboot善筹网(众筹)互助前后台购物商城实现设计

《[含文档PPT源码等]精品基于springboot善筹网(众筹)前后台实现设计[包运行成功]》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功&#xff01; 软件开发环境及开发工具&#xff1a; Java——涉及技术&#xff1a; 前端使用技术&#xf…

数学实验第三版(主编:李继成 赵小艳)课后练习答案(八)(4)

实验八&#xff1a;近似计算 练习四 1.自己设置一种计算欧拉常数近似值的方法&#xff0c;看你对欧拉常数的计算能精确到小数点后多少位&#xff1f; 从示例7的图8.5我们已经得知&#xff0c;只要求出每个小矩形中在函数y1/x以上的部分的面积之和&#xff0c;我们就可以得知…

Seurat - 聚类教程 (1)

设置 Seurat 对象 在本教程[1]中&#xff0c;我们将分析 10X Genomics 免费提供的外周血单核细胞 (PBMC) 数据集。在 Illumina NextSeq 500 上对 2,700 个单细胞进行了测序。可以在此处[2]找到原始数据。 我们首先读取数据。 Read10X() 函数从 10X 读取 cellranger 管道的输出&…

Elasticsearch:使用查询规则(query rules)进行搜索

在之前的文章 “Elasticsearch 8.10 中引入查询规则 - query rules”&#xff0c;我们详述了如何使用 query rules 来进行搜索。这个交互式笔记本将向你介绍如何使用官方 Elasticsearch Python 客户端来使用查询规则。 你将使用 query rules API 将查询规则存储在 Elasticsearc…