非线性激活pytorch

**前置知识:

1、

复制代码
self.sigmoid1=Sigmoid()
复制代码
output=self.sigmoid1(input)

2、常见的非线性激活函数:

3、非线性激活的作用:

线性与非线性

  1. 线性函数:假设你用直线去描述波浪的形状。无论你怎么改变直线的斜率,结果都是一条直线,这样你就无法捕捉到波浪的起伏。这就像在神经网络中,如果只有线性激活函数,模型只能学习到线性关系,无法处理复杂的模式。

  2. 非线性激活函数:现在,想象你可以用曲线来描绘波浪。这条曲线能够随着波浪的起伏而变化,能够很好地展现出波浪的复杂形状。这就类似于引入了非线性激活函数(比如ReLU或Sigmoid)。通过这些激活函数,神经网络能够捕捉到复杂的特征和关系,比如图像中的边缘、纹理,或语音中的音调变化。

实际应用

举个实际例子,想象你在开发一个猫和狗的图像识别系统:

  • 没有非线性激活函数:你的模型只能识别简单的形状,比如直线和方形,它无法区分猫和狗,因为它无法理解它们的复杂特征。

  • 有非线性激活函数:引入非线性后,模型可以学习到猫的尖耳朵、圆眼睛和狗的扁鼻子等复杂特征。这使得模型能够更准确地识别猫和狗。

(即使用非线性激活,能在神经网络中引入非线性特征)

**代码:

input 导入并加载图像数据集------>nn 创建神经元------>output 计算并输出

(非线性激活是对矩阵里的数一个数一个数地进行转换;而池化里是用池化窗口来分块,一块一块地进行计算)

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

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

class Xigua(nn.Module):
    def __init__(self):
        super().__init__()
        self.relu_1=ReLU()
        self.sigmoid1=Sigmoid()

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

xigua1=Xigua()


writer=SummaryWriter("logs2")
step=1
for imgs,targets in dataloader:
    print(imgs.shape)
    writer.add_images("input1",imgs,step)
    imgs=xigua1(imgs)
    print(imgs.shape)
    writer.add_images("output1",imgs,step)
    step=step+1
    if step>=3:
        break
writer.close()

# input=torch.tensor([
#     [1,-0.5],
#     [-1,3]
# ])
# output=xigua1(input)
# print(output)
相关推荐
罗西的思考2 小时前
AI 时代的 “房谋杜断”:如何培养能力、品味与判断力
人工智能·算法·机器学习
字节跳动视频云技术团队3 小时前
720P 直升 8K,解密 2026 抖音美好奇妙夜巨幕超分黑科技
人工智能·音视频开发
打工仔折腾 AI3 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
逐米时代3 小时前
从试点验证到协同深化:制造业AI转型三年路线图设计方法
人工智能
GlobalInfo3 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人
stormzhangV4 小时前
AI 越强,失业越严重
人工智能·aigc
夏文强5 小时前
Rerank 与混合检索:怎么让 RAG 从「能用」变成「好用」
人工智能·大模型·向量数据库·rag·检索增强生成
救救孩子把5 小时前
AI面试八股文-23_23-Agent可观测性与生产监控面试题
人工智能·面试·职场和发展·agent·langsmith·langfuase
IT_陈寒5 小时前
Java静态变量初始化坑得我头皮发麻
前端·人工智能·后端
知行产研5 小时前
白马山领跑、南山矿扩编 31 台,安徽露天矿无人驾驶进入规模化阶段
人工智能