首页 > 其他分享 >Pytorch学习--神经网络--非线性激活

Pytorch学习--神经网络--非线性激活

时间:2024-10-29 12:44:48浏览次数:7  
标签:__ nn -- self torch 神经网络 Pytorch import Mary

一、用法

torch.nn.ReLU
在这里插入图片描述

  • 图像处理中的应用:在图像处理任务中,ReLU 激活函数能够增强特征提取的能力,使网络更好地捕捉图像的细节和边缘。这是因为 ReLU 对大部分负数响应为零,能在一定程度上减少网络计算量,并对特征层起到稀疏化的效果,避免信息的过度平滑。

torch.nn.Sigmoid
在这里插入图片描述

  • 图像处理中的应用:在图像分类或二分类的场景中,Sigmoid 是常用的激活函数。尤其是在图像分割的二值掩膜生成中,Sigmoid 可以用于二分类(例如前景与背景的划分),以确定每个像素属于前景或背景的概率。

二、代码实现

对于inplace的解释( inplace 默认为 False):
在这里插入图片描述

ReLU 的简单使用

import torch
from torch import nn
from torch.nn import ReLU

input = torch.tensor([[-1,1],
                     [-0.5,5]])
input = torch.reshape(input,(1,1,2,2))


class Mary(nn.Module):
    def __init__(self):
        super(Mary,self).__init__()
        self.relu1 = ReLU()
    def forward(self,x):
        x = self.relu1(x)
        return x
Yorelee = Mary()

output = Yorelee(input)
print(output)

输出:

tensor([[[[0., 1.],
          [0., 5.]]]])

Sigmoid 的简单使用

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

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

class Mary(nn.Module):
    def __init__(self):
        super(Mary,self).__init__()
        self.sigmoid1 = Sigmoid()
    def forward(self,x):
        x = self.sigmoid1(x)
        return x
Yorelee = Mary()

writer = SummaryWriter("logs")

step = 0
for data in dataloader:
    img,target = data
    writer.add_images("input",img,step)
    output = Yorelee(img)
    writer.add_images("output",output,step)
    step += 1
writer.close()

输出:
在这里插入图片描述
在这里插入图片描述

标签:__,nn,--,self,torch,神经网络,Pytorch,import,Mary
From: https://blog.csdn.net/weixin_68930974/article/details/143323805

相关文章

  • 失意
    失意前日,是CSPS,刚出考场时我知道我废了,T2写了2h30min没有写出来,只能打了60pts,最后30min甚至打T3暴力的时候都是着急的。咋说呢,刚出考场听ljt一说就明白了这个贪心的思路,唉,感觉很遗憾,但是又怎么说遗憾呢,结果就是我失败了,宁愿去想2个小时的网络流也不愿再想想被我否掉的贪心,难道说......
  • 题目记录(一直更新
    OI记录(持续更新P2568GCD题意:给定正整数\(n\),求\(1\lex,y\len\)且\(\gcd(x,y)\)为素数的数对\((x,y)\)有多少对(\(n\leq10^7\))题解:注意,可以不用莫比乌斯反演,单纯的欧拉函数便可以解决,首先列出式子:\[\sum_{p\inprime}\sum_{i=1}^{n}\sum_{j=1}^{n}(gcd(i,j)=p)\]......
  • 国庆day1补题
    国庆day1补题单调数据结构单调栈的性质:1.单调栈里的元素具有单调性2.元素加入栈前,会在栈顶端把破坏栈单调性的元素都删除3.使用单调栈可以找到元素向左遍历第一个比他小的元素,也可以找到元素向左遍历第一个比他大的元素,具体的,假设要找到一个元素向前第一个比它大的数,就是维......
  • onvif soap 协议的错误代码
    在stdsoap2.h头文件中定义的的宏#defineSOAP_EOFEOF#defineSOAP_OK0#defineSOAP_CLI_FAULT1#defineSOAP_SVR_FAULT2#defineSOAP_TAG_MISMATCH3#defineSOAP_TYPE......
  • windows平台有哪些好用的屏幕取词翻译工具
    windows平台好用的屏幕取词翻译工具:1.深度翻译(DeepL);2.划词翻译(Capture2Text);3.谷歌翻译(GoogleTranslate);4.考拉翻译(有道词典);5.欧路词典(eudic);6.轻译(QTranslate)。深度翻译是一款强大的翻译工具,不仅支持文本翻译,还能通过屏幕取词实现即时翻译。1.深度翻译(DeepL)深度翻译是一......
  • C#“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决方案
    当使用C#语言连接Access数据库时,即使安装有64位版本的Office,也会出现“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。”这个问题。从Office2016开始,困扰了我好多年。以往的解决之道(也是网上给出的方法)是:1、彻底卸载并安装32位的Office2、更改注册表、数据库等......
  • day4
    includeusingnamespacestd;include<string.h>include<stdio.h>includedoublef(doublea,doubleb,doublec,doubled,doublex){returna*x*x*x+b*x*x+c*x+d;}doublejie(doublea,doubleb,doublec,doubled,doubleleft,......
  • 在C语言中进行网络编程时,有哪些辅助工具可用
    标题:在C语言中进行网络编程时,有哪些辅助工具可用?在C语言中进行网络编程时,可用的辅助工具包括套接字库(如Winsock、BSDSockets)、协议库(如OpenSSL)、网络调试工具(如Wireshark)、以及集成开发环境(如Eclipse、VisualStudio)。这些工具为开发者提供了强大的支持,使得在C语言中进行网络编......
  • 如何与上级保持良好关系
    关注我公众号的一位同学留言问了这样一个问题:他在某大厂做大数据相关的测试工作,今年公司开始末位淘汰。他被调去负责一个边缘项目,而原来负责的重要项目被领导安排了另一个同学和他一起负责。他感觉要被边缘化了,领导对他的态度也没有以前那么好,担心被淘汰裁员,问我有没有什么好的......
  • Go语言能否替代php做互联网网站开发
    在互联网网站开发领域,Go语言具备了替代PHP的潜力。Go语言(也称为Golang)被设计为一种静态类型、编译语言,其出色的并发处理能力、简洁的语法、以及高效的性能表现,使其在开发大规模分布式系统时表现卓越。而PHP作为一种动态类型的解释语言,在网页脚本开发领域占据着重要地位。虽然PHP......