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

一、用法

torch.nn.ReLU

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

torch.nn.Sigmoid

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

二、代码实现

对于inplace的解释( inplace 默认为 False):

ReLU 的简单使用

python 复制代码
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)

输出:

python 复制代码
tensor([[[[0., 1.],
          [0., 5.]]]])

Sigmoid 的简单使用

python 复制代码
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()

输出:

相关推荐
这张生成的图像能检测吗37 分钟前
(论文速读)EfficientTrain++: 高效视觉骨干训练的通用课程学习
人工智能·深度学习·计算机视觉·训练方法
Tonya4338 分钟前
测开学习DAY37
学习
晚霞的不甘2 小时前
CANN:华为全栈AI计算框架的深度解析(终极扩展版 · 完整篇)
人工智能·华为
DanCheng-studio3 小时前
网安毕业设计简单的方向答疑
python·毕业设计·毕设
轻抚酸~4 小时前
KNN(K近邻算法)-python实现
python·算法·近邻算法
lisw054 小时前
6G频段与5G频段有何不同?
人工智能·机器学习
独行soc5 小时前
2025年渗透测试面试题总结-264(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
2501_941623326 小时前
人工智能赋能智慧农业互联网应用:智能种植、农业数据分析与产量优化实践探索》
大数据·人工智能
不爱吃糖的程序媛6 小时前
华为 CANN:昇腾 AI 的异构计算架构核心与开源生态解析
人工智能·华为·架构