pytorch快速入门(八)神经网络-非线性激活Non-linear Activations

这里写目录标题

  • 1、ReLU()
    • 1、ReLU相关简介
    • 2、代码
    • 3、运行结果
  • 2、Sigmoid()
    • 1、Sigmoid相关简介
    • 2、代码
    • 3、运行结果
    • 4、tensorboard可视化

环境配置请看这里

1、ReLU()

1、ReLU相关简介

以ReLU为例ReLU官方文档
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第1张图片
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第2张图片

2、代码

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

input = torch.tensor([[1,-0.5],
                      [-1,3]], dtype=torch.float32) #输入为二维
#改变尺寸以满足要求 shape:input(N,C,Hi,Wi)
input = torch.reshape(input,(-1, 1, 2, 2))

#构建神经网络模型
class Tian(nn.Module):
    def __init__(self):
        super(Tian, self).__init__()
        self.relu_1 = ReLU()

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

#应用模型
ren = Tian()
output = ren(input)
print("经过ReLU后=", output)

3、运行结果

pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第3张图片

2、Sigmoid()

1、Sigmoid相关简介

pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第4张图片
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第5张图片

2、代码

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

#使用CIFAR10数据集
dataset = torchvision.datasets.CIFAR10("E:/PycharmProjects/Pytoch_learning/dataset/CIFAR10",
                                       train=False, transform=torchvision.transforms.ToTensor(), download=False)
dataloader = DataLoader(dataset, batch_size=64)


input = torch.tensor([[1,-0.5],
                      [-1,3]], dtype=torch.float32) #输入为二维
#改变尺寸以满足要求 shape:input(N,C,Hi,Wi)
input = torch.reshape(input,(-1, 1, 2, 2))

#构建神经网络模型
class Tian(nn.Module):
    def __init__(self):
        super(Tian, self).__init__()
        # self.relu_1 = ReLU()
        self.sigmoid_1 = Sigmoid()

    def forward(self,input):
        # output = self.relu_1(input)
        output = self.sigmoid_1(input)
        return output

#应用模型
ren = Tian()
# output = ren(input)
# print("经过ReLU后=", output)
#-------------------------------------------
#tensorboard可视化
writer = SummaryWriter(log_dir="E:/PycharmProjects/runs/flower_experiment")
step = 0
#-------------------------------------------
#查看数据集的每张图片
for data in dataloader:
    imgs, targets =data
    output = ren(imgs)
    print(output.shape)

    writer.add_images("day10_input", imgs, global_step=step)
    writer.add_images("day10_output", output, global_step=step)

    step += 1

writer.close()

3、运行结果

pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第6张图片

4、tensorboard可视化

tensorboard详细教程tensorboard新手友好
在terminal中输入

tensorboard --logdir="E:/PycharmProjects/runs/flower_experiment"

回车后点击蓝色链接即可显示
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第7张图片
网页显示结果
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第8张图片
pytorch快速入门(八)神经网络-非线性激活Non-linear Activations_第9张图片

你可能感兴趣的:(深度学习可视化,pytorch,pytorch,神经网络,深度学习)