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

网站的文件结构网站运营是做什么的

网站的文件结构,网站运营是做什么的,上海网站制作建设怎么样,小程序网站建设的公司大家好呀,我又来了😊😊😊 源码在这里 文章目录PyTorch学习笔记:多层感知机与MNIST分类实战 🚀1. torchvision库与内置数据集加载 📚1.1 torchvision库介绍1.2 MNIST数据集加载1.3 ToTensor转换器…

大家好呀,我又来了😊😊😊
源码在这里

文章目录

  • PyTorch学习笔记:多层感知机与MNIST分类实战 🚀
    • 1. `torchvision`库与内置数据集加载 📚
      • 1.1 `torchvision`库介绍
      • 1.2 MNIST数据集加载
      • 1.3 `ToTensor`转换器作用
      • 1.4 `DataLoader`核心功能
      • 1.5 数据形状分析
      • 1.6 数据可视化(代码示例)
    • 2. 多层感知机(MLP)🧠
      • 2.1 核心结构
      • 2.2 核心公式
    • 3. 激活函数 🔥
      • 3.1 ReLU(修正线性单元)
      • 3.2 Sigmoid
      • 3.3 Tanh(双曲正切)
      • 3.4 LeakyReLU
    • 4. 关键知识点总结 📌

PyTorch学习笔记:多层感知机与MNIST分类实战 🚀

1. torchvision库与内置数据集加载 📚

1.1 torchvision库介绍

  • 核心功能:处理图像和视频的PyTorch辅助库
  • 主要组件
    • 常用数据集(MNIST, CIFAR等)
    • 预训练模型(ResNet, VGG等)
    • 图像转换函数
  • 重要类
    • torch.utils.data.Dataset:所有数据集的基础类
    • torch.utils.data.DataLoader:批量加载数据的关键工具
import torchvision
from torchvision.transforms import ToTensor

1.2 MNIST数据集加载

train_ds = torchvision.datasets.MNIST('data/', train=True, transform=ToTensor(),download=True
)
test_ds = torchvision.datasets.MNIST('data/', train=False, transform=ToTensor()
)

参数解析:

  1. 数据存放位置'data/'
  2. 训练/测试集train=True/False
  3. 预处理transform=ToTensor() 🌟
  4. 下载选项download=True

1.3 ToTensor转换器作用

  1. 将输入转换为张量
  2. 规范图片格式为 Channel × Height × Width
  3. 归一化像素值到[0,1]范围

1.4 DataLoader核心功能

train_dl = torch.utils.data.DataLoader(train_ds, batch_size=64, shuffle=True
)
test_dl = torch.utils.data.DataLoader(test_ds, batch_size=64
)

四大功能:

  1. 乱序操作shuffle=True
  2. 批次采样batch_size控制批次大小
  3. 并行加速num_workers指定子进程数
  4. 批处理转换collate_fn实现批次数据转换

1.5 数据形状分析

imgs, labels = next(iter(train_dl))
print(imgs.shape, labels.shape)  # 输出: torch.Size([64, 1, 28, 28]), torch.Size([64])
  • 每批次包含64张图片
  • 图片格式:1通道 × 28高度 × 28宽度
  • 标签格式:64个数字标签

1.6 数据可视化(代码示例)

import matplotlib.pyplot as plt
import numpy as npplt.figure(figsize=(10, 1))
for i, img in enumerate(imgs[:10]):npimg = img.numpy().squeeze()plt.subplot(1, 10, i+1)plt.imshow(npimg, cmap='gray')plt.axis('off')
plt.show()

👉 输出示例:显示10个手写数字图像及其对应标签

print(labels[:10])  # 输出示例: tensor([5, 0, 4, 1, 9, 2, 1, 3, 1, 4])

2. 多层感知机(MLP)🧠

2.1 核心结构

  • 输入层隐藏层输出层
  • 全连接:每层神经元与下一层所有神经元相连
  • 深度:可包含多个隐藏层

2.2 核心公式

输出 = 激活函数(权重 · 输入 + 偏置)


3. 激活函数 🔥

3.1 ReLU(修正线性单元)

input = torch.randn(2)
output = torch.relu(input)
print(input, output)  # 示例: tensor([-0.5, 1.5]) → tensor([0., 1.5])

特点:

  • 计算高效:max(0, x)
  • 缓解梯度消失
  • 稀疏激活:约50%神经元激活

3.2 Sigmoid

output = torch.sigmoid(input)
print(input, output)  # 示例: tensor([0., -2.]) → tensor([0.5000, 0.1192])

特点:

  • 输出范围(0,1)
  • 概率解释
  • 梯度消失问题:两端饱和区梯度接近0

3.3 Tanh(双曲正切)

output = torch.tanh(input)
print(input, output)  # 示例: tensor([0., 1.]) → tensor([0., 0.7616])

特点:

  • 输出范围(-1,1)
  • 零中心化
  • 比sigmoid梯度更强

3.4 LeakyReLU

m = nn.LeakyReLU(0.1)  # 负斜率=0.1
output = m(input)
print(input, output)  # 示例: tensor([-1.0, 0.5]) → tensor([-0.1000, 0.5000])

特点:

  • 解决"死亡ReLU"问题
  • 负值区小梯度
  • 需要手动设置负斜率

4. 关键知识点总结 📌

概念要点应用场景
ToTensor归一化/格式标准化图像预处理
DataLoader批处理/乱序/并行高效数据加载
ReLU计算高效/缓解梯度消失隐藏层首选
Sigmoid概率输出/二分类输出层(二分类)
Tanh零中心化RNN/LSTM
LeakyReLU解决神经元死亡深度网络

💡 经验法则:优先使用ReLU作为隐藏层激活函数,注意学习率设置以避免神经元死亡问题

通过本笔记,已掌握:

  1. 使用torchvision加载和处理MNIST数据集 ✅
  2. 理解DataLoader的核心功能 ✅
  3. 实现多种激活函数并理解其特性 ✅
  4. 构建多层感知机的基础知识 ✅
http://www.dtcms.com/wzjs/109896.html

相关文章:

  • 网上花钱做ppt的网站seo快速优化排名
  • 做门的网站建设seo黑帽教程视频
  • 佛山做pc端网站韩国网站
  • 设计作品展示网站百度开户流程
  • 三明seo郑州seo外包费用
  • 你愿意做我女朋友吗表白网站正规引流推广公司
  • 重庆网站建设公司怎么做百度竞价推广代运营公司
  • 网站运行维护方案做企业推广
  • 网站怎么做的支付宝接口农产品网络营销推广方案
  • 页面设计毕业论文8000字网站优化怎么操作
  • django做视频网站抖音seo优化公司
  • php网站开发视频教程关键词排名优化公司
  • 如何看网站做没做推广百度公司注册地址在哪里
  • 开发网站设计南京seo公司排名
  • 海岸城网站建设广州seo公司排行
  • 广州荔湾建网站的公司江苏免费关键词排名外包
  • wordpress 4.8 中文sem和seo有什么区别
  • 首钢建设二公司网站如何免费找精准客户
  • pc网站 公众号数据互通制定营销推广方案
  • 网站建设开发营销型网站建设费用
  • 微网站 和移动站app接入广告变现
  • 网站建设当前位置图标寻找客户的渠道和方法
  • 个人网站开发工具你就知道
  • 做网站烧钱百度数据指数
  • 新闻网站抓取做舆情监测河南seo技术教程
  • 网上购物网站模板百度安装应用
  • 网站导航怎么做顺德搜索seo网络推广
  • 新网站怎么做权重浙江seo关键词
  • 自己做网站卖二手车襄阳网站seo
  • 网站怎么做本地映射网络优化公司哪家好