当前位置: 首页 > news >正文

深度学习3.1 线性回归

3.1.1 线性回归的基本概念

在这里插入图片描述

损失函数

在这里插入图片描述

梯度下降

在这里插入图片描述

3.1.2 向量化加速

%matplotlib inline
import math
import time
import numpy as np
import torch
from d2l import torch as d2ln = 1000000 #本机为了差距明显,选择数据较大,运行时间较长,可选择10000
a = torch.ones(n)
b = torch.ones(n)class Timer:def __init__(self):self.times = []  # 存储每次测量的时间self.start()      # 初始化时自动开始计时def start(self):self.tik = time.time()  # 记录当前时间戳(开始时间)def stop(self):self.times.append(time.time() - self.tik)  # 计算并保存时间差return self.times[-1]  # 返回本次测量的时间def avg(self):return sum(self.times) / len(self.times)  # 平均耗时def sum(self):return sum(self.times)  # 总耗时def cumsum(self):return np.array(self.times).cumsum().tolist()  # 累计耗时(用于绘图)
c = torch.zeros(n)      # 初始化全0张量 c(存储结果)
timer = Timer()         # 创建计时器实例
for i in range(n):c[i] = a[i] + b[i]  # 逐个元素相加(慢!)
print(f'{timer.stop():.5f} sec')

‘19.59485 sec’

timer.start()
d = a + b
f'{timer.stop():.5f} sec'

‘0.00470 sec’
在这里插入图片描述

3.1.3 正态分布与平方损失

import math
import numpy as np
from d2l import torch as d2ldef normal(x, mu, sigma):p = 1 / math.sqrt(2 * math.pi * sigma ** 2)  # 归一化系数return p * np.exp(-0.5 / sigma ** 2 * (x - mu) ** 2)  # 概率密度计算x = np.arange(-7, 7, 0.01)  # 生成 [-7, 7) 区间内步长0.01的数组
params = [(0, 1), (0, 2), (3, 1)]  # (mu, sigma) 的组合 (均值, 标准差)d2l.plot(x,  # x 轴数据[normal(x, mu, sigma) for mu, sigma in params],  # y 轴数据列表(三条曲线)xlabel='x',  # x 轴标签ylabel='p(x)',  # y 轴标签figsize=(4.5, 2.5),  # 图像尺寸(宽,高)legend=[f'mean {mu}, std {sigma}' for mu, sigma in params]  # 图例说明
)

在这里插入图片描述
在这里插入图片描述

x 是 NumPy 数组,np.exp 支持数组运算,而 math.exp 仅处理标量。

在这里插入图片描述

http://www.xdnf.cn/news/12079.html

相关文章:

  • vcpkg缓存问题研究
  • volatile 和 memory barrier 的组合用法
  • xml+html 概述
  • React 事件处理基础
  • 简单好用的在线工具
  • Webpack基础
  • PHP8.2.9NTS版本使用composer报错,扩展找不到的问题处理
  • 清华大学李升波教授的强化学习Tutorial Lecture
  • 2D物体检测学习
  • Linux 系统编程 day4 进程管道
  • 多线程使用——多线程的创建和常用方法
  • 2025年MathorCup数学应用挑战赛【选题分析】
  • Android tinyalsa库函数剖析
  • nginx 在 windows 中 部署 jar包 和 dist包
  • 深度学习基础--CNN经典网络之InceptionV3详解与复现(pytorch)
  • goland做验证码识别时报“undefined: gosseract.NewClient”
  • 哪种电脑更稳定?Mac?Windows?还是云电脑? 实测解密
  • 对WAV文件进行降噪
  • 探索 Higress:下一代云原生 API 网关
  • ulauncher软件启动器
  • Nacos 中使用了哪些缓存?缓存的目的是什么?是如何实现的?
  • 基于领域知识的A型主动脉夹层综合分割及面向临床的评估|文献速递-深度学习医疗AI最新文献
  • 获取不到AndroidManifest中的meta-data
  • AI Agents系列之构建多智能体系统
  • 《奇迹世界起源》:神之月晓活动介绍!
  • 不确定与非单调推理的概率方法
  • 安全光幕的CE认证
  • 项目计划管理系统怎么选?15款项目管理工具详评
  • Flutter与FastAPI的OSS系统实现
  • 【系统架构设计师】统一过程模型(RUP)