PyTorch深度学习快速入门(小土堆)

文章目录

  • 16. 神经网络的基本骨架
  • 17.卷积操作
  • 18.卷积层

16. 神经网络的基本骨架

forward:

import torch
from torch import nn

class Tudui(nn.Module):
    def __init__(self):
        super().__init__()

    def forward(self,input):
        output=input+1
        return output

#创建Tudui的实例对象
tudui=Tudui()
#创建一个输入张量x
x=torch.tensor(1.0)
#将输入张量传递给tudui模型的foward()
output=tudui(x)
print(output)

输入: x
卷积
非线性
卷积
非线性
输出

17.卷积操作

import torch
import torch.nn.functional as F

input=torch.tensor([[1,2,0,3,1],
                   [0,1,2,3,1],
                   [1,2,1,0,0],
                   [5,2,3,1,1],
                   [2,1,0,1,1]])

kernel=torch.tensor([[1,2,1],
                     [0,1,0],
                     [2,1,0]])

input=torch.reshape(input,(1,1,5,5))
kernel=torch.reshape(kernel,(1,1,3,3))

print(input.shape)
print(kernel.shape)

#卷积操作
#stride:移动步长
output=F.conv2d(input,kernel,stride=1)
print(output)

output2=F.conv2d(input,kernel,stride=2)
print(output2)

#padding:对输入张量四周进行填充
output3=F.conv2d(input,kernel,stride=1,padding=1)
print(output3)

18.卷积层

import torch
import torchvision
from torch import nn
from torch.nn import Conv2d
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

dataset=torchvision.datasets.CIFAR10("data1",train=False,transform=torchvision.transforms.ToTensor(),download=True)
dataloader=DataLoader(dataset,batch_size=64)

class Tudui(nn.Module):
    def __init__(self):
        super(Tudui, self).__init__()
        self.conv1=Conv2d(in_channels=3,out_channels=6,kernel_size=3,stride=1,padding=0)

    def forward(self,x):
        x=self.conv1(x)
        return x

tudui=Tudui()

writer=SummaryWriter("logs1")

step=0
for data in dataloader:
    imgs,targets=data
    output=tudui(imgs)
    print(imgs.shape)
    print(output.shape)

    writer.add_images("input",imgs,step)

    output=torch.reshape(output,(-1,3,30,30))
    writer.add_images("output",output,step)
    step=step+1

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

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

相关文章

Django详细教程(二) - 部门用户管理案例

文章目录 前言一、新建项目二、新建app三、设计表结构四、新建数据库五、新建静态文件六、部门管理1.部门展示2.部门添加3.部门删除4.部门编辑 七、模板继承八、用户管理1.辨析三种方法方法一:原始方法方法二:Form组件(简便)方法三:ModelForm…

ARM-按键中断实验

代码 #include "stm32mp1xx_gic.h" #include "stm32mp1xx_exti.h" extern void printf(const char *fmt, ...); unsigned int i 0; void do_irq(void) {//获取要处理的中断的中断号unsigned int irqnoGICC->IAR&0x3ff;switch (irqno){case 99:pr…

前端工程师————HTML5学习

HTML5基础 开发工具很多,其中Hbulider较好用,下载网址如下: DCloud - HBuilder、HBuilderX、uni-app、uniapp、5、5plus、mui、wap2app、流应用、HTML5、小程序开发、跨平台App、多端框架 html表示整个页面 head表示搜素框 body表示内容 ti…

【蓝桥杯】矩阵快速幂

一.快速幂概述 1.引例 1)题目描述: 求A^B的最后三位数表示的整数,A^B表示:A的B次方。 2)思路: 一般的思路是:求出A的B次幂,再取结果的最后三位数。但是由于计算机能够表示的数字…

Gromacs模拟一:配体-双链蛋白质复合物体系准备

1、蛋白质的准备: 在RCSB网站下载想要的蛋白晶体(教程里是3htb),用notepad等编辑器或是分子可视化软件除去里面的非蛋白分子或离子。 这里采用的是一个经过分子对接后的蛋白质pdb和配体小分子的pdb。 教程里提到的配体是2-丙基…

java算法day39 | 动态规划part02 ● 62.不同路径 ● 63. 不同路径 II

62.不同路径 思路: 本题非常巧妙。 第一步:定义一个dp数组存储到达每个位置的路径数。 第二步:每个位置的路径数它左面位置的路径数上面位置的路径数。 第三步:不好想的是如何初始化数组。 既然只能向下或向右走,可推出…

网络七层模型之会话层:理解网络通信的架构(五)

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

浅谈AI未来发展趋势与挑战

对于AI大模型未来发展趋势与挑战的个人看法: 1、未来的发展趋势: AI大模型未来发展趋势可以从以下几个关键方面来讨论: 1. 能源与计算效率 绿色计算与节能技术:随着硬件技术的发展,预计未来的AI大模型将进一步降低能…

python电商结合双轨制

最近又重新整合翻看以前的数据,图片,绘画,还有各种编程代码,python,leetcode,还有关于商业方面的一些见解,想起了大学时候和同学们并肩作战,熬夜编码的时光。还有大数据,八爪鱼爬虫。 下面是我的手稿电商打…

Arduino通过Wire库读取AS5600编码器数据

Arduino通过Wire库读取AS5600编码器数据 ✨在实际测试中,测试AS5600除了使用径向磁铁之外,球型的或者正四方体的强磁铁,也是可以准确的测量角度。测试高度的话,从板子(芯片引脚底部)到磁铁底部15毫米内&…

算法打卡day21(开始回溯)

今日任务: 1)77.组合 77.组合 题目链接:77. 组合 - 力扣(LeetCode) 文章讲解:代码随想录 (programmercarl.com) 视频讲解:带你学透回溯算法-组合问题(对应力扣题目:77…

Spring日志框架

前言 本文我们简单说说关于Spring中的日志框架,以及对应的注解 我们知道,公司服务器在运行的时候,一定会打印日志,有很多优点,比如预防报警,或者是某重大事故尝试修复等等都需要查看日志 应该说日志对我们来说并不陌生,我们在之前刷题或者是程序遇到bug的时候也经常会将程序的状…

Java数据结构-链表OJ题

目录 1. 移除链表元素2. 反转链表3. 返回中间结点4. 返回倒数第k个结点5. 合并两个有序链表6. 分割链表7. 回文链表8. 找相交链表的公共结点9. 判断链表是否有环10. 返回链表环的入口 老铁们好,学习完链表这个数据结构之后,怎么能少了OJ题呢?…

SQL语句学习+牛客基础39SQL

什么是SQL? SQL (Structured Query Language:结构化查询语言) 是用于管理关系数据库管理系统(RDBMS)。 SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。 SQL语法 数据库表 一个…

Windows下使用tensorrt配置YOLOv8进行加速

Windows下使用tensorrt配置YOLOv8进行加速 致谢: win10下 yolov8 tensorrt模型加速部署【实战】 - 知乎 (zhihu.com) yolov8 tensorrt 实战之先导_哔哩哔哩_bilibili FeiYull/TensorRT-Alpha: 🔥🔥🔥TensorRT for YOLOv8、YOLOv8…

K8S故障处理指南:pod驱逐问题处理

更多技术博客,请关注微信公众号:运维之美 在K8S集群故障处理过程中,你可能遇到过pod的各种状态,Evicted状态代表你的K8S环境遇到了资源驱逐的问题,本节通过对驱逐问题的解决,参数的调整,问题的处理思路,希望给你解决此类问题提供帮助。 一、pod驱逐问题 pod出现状态为…

AR智能眼镜解决方案_MTK平台安卓主板硬件芯片方案开发

AR智能眼镜,是一个可以让现场作业更智能的综合管控设备。采用移动互联网、大数据和云计算等技术,现场数据的采集与分析;同时实现前端现场作业和后端管理的实时连动、信息的同步传输与存储。让前端现场作业更加智能,后端管理更加高…

Java代码基础算法练习-自定义函数之字符串连接-2024.03.30

任务描述: 写一函数,将两个字符串连接起来,然后在主函数中调用该函数实现字符串连接操作。 任务要求: 代码示例: package M0317_0331;import java.util.Scanner;public class m240330 {public static void main(Stri…

Java使用数组实现栈、队列、堆

数组模拟栈: const int N 10010; // ******************** 栈 int stk[N], tt//tt是下标; // 插入 stk[k] x; // 删除 tt--; // 判断栈是否为空 if (tt > 0) not empty else empty // 栈顶 stk[tt]; // ******************** 队列 // 在队尾插入…

BitVM2:比特币上的无需许可验证

1. 引言 前序博客有: 基于BitVM的乐观 BTC bridgeBitVM:Bitcoin的链下合约Bitcoin Bridge:治愈还是诅咒? 最初的 BitVM 设计仅限于两方设置。BitVM2结合了并行和冗余实例,以引入基于 1-of-n 诚实假设的多方配置。这…