神经网络学习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()
相关推荐
智慧化智能化数字化方案7 分钟前
69页全面预算管理体系的框架与落地【附全文阅读】
大数据·人工智能·全面预算管理·智慧财务·智慧预算
PyAIExplorer10 分钟前
图像旋转:从原理到 OpenCV 实践
人工智能·opencv·计算机视觉
Wilber的技术分享19 分钟前
【机器学习实战笔记 14】集成学习:XGBoost算法(一) 原理简介与快速应用
人工智能·笔记·算法·随机森林·机器学习·集成学习·xgboost
198924 分钟前
【零基础学AI】第26讲:循环神经网络(RNN)与LSTM - 文本生成
人工智能·python·rnn·神经网络·机器学习·tensorflow·lstm
burg_xun39 分钟前
【Vibe Coding 实战】我如何用 AI 把一张草图变成了能跑的应用
人工智能
The_cute_cat1 小时前
Ajax和Axios的初步学习
前端·学习·ajax
酌沧1 小时前
AI做美观PPT:3步流程+工具测评+避坑指南
人工智能·powerpoint
狂师1 小时前
啥是AI Agent!2025年值得推荐入坑AI Agent的五大工具框架!(新手科普篇)
人工智能·后端·程序员
amazinging1 小时前
北京-4年功能测试2年空窗-报培训班学测开-第四十三天
python·学习
星辰大海的精灵1 小时前
使用Docker和Kubernetes部署机器学习模型
人工智能·后端·架构