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

非线性激活,即

这是最常用的

inplace=True 原位操作 改变变量本身的值,就是是否输入时若原本有值,是否更换

该函数就是表示:输入小于零时输出0,大于零时保持不变

代码如下:

c 复制代码
import torch
from torch import  nn
from torch.nn import ReLU

input=torch.tensor([[1,-0.5],[-1,3]])
input=torch.reshape(input,(-1,1,2,2))
print(input.shape)
class Tudui(nn.Module):
    def __init__(self) -> None:
        super(Tudui, self).__init__()
        self.relu1=ReLU()

    def forward(self,input):
        output=self.relu1(input)
        return output

tudui=Tudui()
output=tudui(input)
print(output)

非线性激活的作用就是引入非线性,

非线性激活函数(Non-linear Activation Function)是神经网络中的一个重要组成部分。它们被应用于每个神经元的输出,以引入非线性特性。具体来说,非线性激活函数将神经元的线性组合(即加权和加上偏置)转化为非线性输出。

引入非线性特性:没有非线性激活函数的神经网络只能表达线性关系,无论网络有多少层。通过引入非线性,神经网络可以处理复杂的非线性问题,从而能够逼近任何连续的函数。

增加模型的表达能力:非线性激活函数使得多层网络具有更强的表达能力,可以拟合复杂的数据分布,解决复杂的任务,如图像识别、自然语言处理等。

使得深度学习变得可能:深度神经网络中的层数很多,如果每一层都只是线性的叠加,那么无论多少层,最终的模型还是一个线性模型。非线性激活函数使得每一层的输出变得不同,从而使深度学习成为可能。

c 复制代码
import torch
import torchvision
from torch import  nn
from torch.nn import ReLU, Sigmoid
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

data_transform=torchvision.transforms.Compose(
    [torchvision.transforms.ToTensor()]
)
test_data=torchvision.datasets.CIFAR10('./dataset',train=False,transform=data_transform,download=True)
dataloader=DataLoader(dataset=test_data,batch_size=64)
class Tudui(nn.Module):
    def __init__(self) -> None:
        super(Tudui, self).__init__()
        self.relu1=ReLU()
        self.sigmoid1=Sigmoid()

    def forward(self,input):
        output=self.sigmoid1(input)
        return output

writer=SummaryWriter('rules')

tudui=Tudui()
step=0
for data in dataloader:
    imgs,targets=data
    writer.add_images('input',imgs,step)
    output=tudui(imgs)
    writer.add_images('output', output, step)
    step=step+1

writer.close()
相关推荐
sali-tec1 小时前
C# 基于halcon的视觉工作流-章66 四目匹配
开发语言·人工智能·数码相机·算法·计算机视觉·c#
这张生成的图像能检测吗1 小时前
(论文速读)ParaDiffusion:基于信息扩散模型的段落到图像生成
人工智能·机器学习·计算机视觉·文生图·图像生成·视觉语言模型
新程记1 小时前
2025年,上海CAIE认证报考指南:把握AI机遇的实用起点
人工智能·百度
晓梦.1 小时前
Vue3学习笔记
笔记·学习
unicrom_深圳市由你创科技1 小时前
汽修AI智能体V1.0——从模型微调到应用部署
人工智能
路边草随风1 小时前
milvus向量数据库使用尝试
人工智能·python·milvus
irizhao1 小时前
基于深度学习的智能停车场系统设计与实现
人工智能·深度学习
思成不止于此2 小时前
【MySQL 零基础入门】DQL 核心语法(二):表条件查询与分组查询篇
android·数据库·笔记·学习·mysql
九河云3 小时前
华为云 ECS 弹性伸缩技术:应对业务峰值的算力动态调度策略
大数据·服务器·人工智能·物联网·华为云
IT空门:门主3 小时前
Spring AI的教程,持续更新......
java·人工智能·spring·spring ai