关键词:
Convolutional Layer
import torch
in_channels, out_channels = 5, 10
width, height = 100, 100
kernel_size = 3
batch_size = 1
input = torch.randn(batch_size, in_channels, width, height)
conv_layer = torch.nn.Conv2d(in_channels,
out_channels,
kernel_size=kernel_size)
output = conv_layer(input)
print(input.shape)
print(output.shape)
print(conv_layer.weight.shape)
Padding
import torch
input = [3,4,6,5,7,
2,4,6,8,2,
1,6,7,8,4,
9,7,4,6,2,
3,7,5,4,1]
input = torch.Tensor(input).view(1, 1, 5, 5)
conv_layer = torch.nn.Conv2d(1, 1, kernel_size=3, padding=1, bias=False)
kernel = torch.Tensor([1,2,3,4,5,6,7,8,9]).view(1, 1, 3, 3)
conv_layer.weight.data = kernel.data
output = conv_layer(input)
print(output)
Stride
conv_layer = torch.nn.Conv2d(1, 1, kernel_size=3, stride=2, bias=False)
Max Pooling Layer
import torch
input = [3,4,6,5,
2,4,6,8,
1,6,7,8,
9,7,4,6,]
input = torch.Tensor(input).view(1, 1, 4, 4)
maxpooling_layer = torch.nn.MaxPool2d(kernel_size=2)
output = maxpooling_layer(input)
print(output)
A Simple Convolutional Neural Network
class Net(torch.nn.Module):
def __init__(self):
super(Net, self).__init__()
self.conv1 = torch.nn.Conv2d(1, 10, kernel_size=5)
self.conv2 = torch.nn.Conv2d(10, 20, kernel_size=5)
self.pooling = torch.nn.MaxPool2d(2)
self.fc = torch.nn.Linear(320, 10)
def forward(self, x):
batch_size = x.size(0)
x = F.relu(self.pooling(self.conv1(x)))
x = F.relu(self.pooling(self.conv2(x)))
x = x.view(batch_size, -1)
x = self.fc(x)
return x
model = Net()
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
model.to(device) # Convert parameters and buffers of all modules to CUDA Tensor.
def train(epoch):
running_loss = 0.0
for batch_idx, data in enumerate(train_loader, 0):
inputs, target = data
inputs, target = inputs.to(device), target.to(device) # Send the inputs and targets at every step to the GPU.
optimizer.zero_grad()
outputs = model(inputs)
loss = criterion(outputs, target)
loss.backward() optimizer.step()
running_loss += loss.item()
if batch_idx % 300 == 299:
print(‘[%d, %5d] loss: %.3f‘ % (epoch + 1, batch_idx + 1, running_loss / 2000))
running_loss = 0.0
def test():
correct = 0
total = 0
with torch.no_grad():
for data in test_loader:
inputs, target = data
inputs, target = inputs.to(device), target.to(device) # Send the inputs and targets at every step to the GPU.
outputs = model(inputs)
_, predicted = torch.max(outputs.data, dim=1)
total += target.size(0)
correct += (predicted == target).sum().item()
print(‘Accuracy on test set: %d %% [%d/%d]‘ % (100 * correct / total, correct, total))
学习笔记:深度学习——基于pytorch的bert应用实践(代码片段)
学习时间:2022.04.26~2022.04.30文章目录7.基于PyTorch的BERT应用实践7.1工具选取7.2文本预处理7.3使用BERT模型7.3.1数据输入及应用预处理7.3.2提取词向量7.3.3网络建模7.3.4参数准备7.3.5模型训练7.基于PyTorch的BERT应用实践本节着重于将BER... 查看详情
pytorch深度学习实践入门01(代码片段)
文章目录基于PyTorch的两层神经网络一、基于numpy的两层神经网络实现:二、基于PyTorch的两层神经网络实现:三、使用nn库实现两层神经网络四、自定义nnModules实现两层神经网络总结基于PyTorch的两层神经网络提示:在... 查看详情
pytorch学习2b站刘二大人《pytorch深度学习实践》——梯度下降算法(gradientdescent)(代码片段)
b站课程链接:梯度下降算法一、梯度下降算法1.简介梯度下降算法是一种求解函数最优值的迭代算法,给定一个初值,通过负梯度方向进行更新查找。2.程序实现及结果importmatplotlib.pyplotasplt#训练集x_data=[1.0,2.0,3.0]y_... 查看详情
pytorch学习1b站刘二大人《pytorch深度学习实践》——线性模型(linearmodel)(代码片段)
b站课程链接:线性模型1.基本思想:给出了一组一维数据,定义了一个简单的线性拟合函数,通过穷举法来列出一些权重(拟合函数的系数),并计算这些权重对应的拟合损失函数(使用均方误差... 查看详情
pytorch深度学习实践_p9_多分类问题_pytorch手写实现数字辨识(代码片段)
pytorch手写实现数字辨识知识点补充view()在PyTorch中view函数作用为重构张量的维度,相当于numpy中的resize()的功能torch.nn.CrossEntropyLoss()求交叉熵,并且其中嵌套了log和softmax函数所以i神经网络最后一层不用再用softmax激活torch.m... 查看详情
深度学习实战——卷积神经网络/cnn实践(lenetresnet)(代码片段)
...嫖starforprojectsthanks)系列文章目录本系列博客重点在深度学习相关实践(有问题欢迎在评论区讨论指出,或直接私信联系我)。第一章 深度学习实战——不同方式的模型部署(CNN、Yolo)_如何部署cnn_@... 查看详情
三维几何学习从零开始网格上的深度学习-2:卷积网络cnn篇(pytorch)(代码片段)
本文参加新星计划人工智能(Pytorch)赛道:https://bbs.csdn.net/topics/613989052从零开始网格上的深度学习-2:卷积网络CNN篇引言一、概述1.1卷积操作简述1.2网格上的面卷积二、核心代码2.1面卷积2.2网络框架三、基于CNN的网格分类3.1分类... 查看详情
pytorch学习6《pytorch深度学习实践》——加载数据集(datasetanddataloader)(代码片段)
一、基础概念二、代码及讲解importtorchimportnumpyasnpfromtorch.utils.dataimportDatasetfromtorch.utils.dataimportDataLoader#preparedatasetclassDiabetesDataset(Dataset):def__init__(self,filepath):xy=np.loadtxt(filepath,delimiter=',',dtype=np.float32)#(759,9)最后一列... 查看详情
深度学习与图神经网络核心技术实践应用高级研修班-day1tensorflow和pytorch(代码片段)
深度学习与图神经网络-Tensorflow和Pytorch1.TensorFlow和Pytorch2.TensorFlow简介3.TensorFlow的API4.Pytorch简介5.Python安装6.TensorFlow安装7.Pytorch安装1.TensorFlow和Pytorch2.TensorFlow简介TensorFlow最初是由GoogleBrain团队(隶属于Goo 查看详情
(机器学习深度学习常用库框架|pytorch篇)第(待定)节:卷积神经网络cnn中一些经典网络结构写法(代码片段)
文章目录一:LeNet-5二:AlexNet三:VGG四:ResNet五:MobileNetV1六:InceptionNet一:LeNet-5LeNet-5:LeNet-5是一个较简单的卷积神经网络。下图显示了其结构:输入的二维图像,先经过两次卷积层到池化... 查看详情
大厂必考深度学习算法面试题总结(代码片段)
...池化输出大小计算三,深度学习框架的张量形状格式四,Pytorch、Keras的池化层函数理解五,Pytorch和Keras的卷积层函数理解六,softmax回归七,交叉熵损失函数八,感受野理解九,卷积和池化操作的作用十,卷积层与全连接层的区... 查看详情
《pytorch深度学习实践》介绍
...bsp; 本文为bilibili刘二大人所讲的《PyTorch深度学习实践》学习笔记介绍。 笔记融入了自己对课程和代码的理解,希望对大家有所帮助,由于本人知识尚浅,如果笔记中有任何... 查看详情
pytorch实现tpu版本cnn模型(代码片段)
...时间的问题,我们使用TPU运行时环境来加速训练。为此,PyTorch一直在通过提供最先进的硬件加速器 查看详情
pytorch学习3《pytorch深度学习实践》——反向传播(backpropagation)(代码片段)
...和其他张量之间的线性关系的多线性函数。 在PyTorch上有这样一句话,Atorch.Tensorisamulti-dimensionalmatrixcontainingelementsofasingledatatype.而在应用时,Tensor是一个神奇的东西,注意这里的类型是<class‘torch.Tensor’>... 查看详情
(pytorch复现)基于深度强化学习(cnn+duelingnetwork/dqn/ddqn/d3qn)的自适应车间调度(jsp)(代码片段)
...复现可见个人Github:Aihong-Sun/DQN-DDQN-Dueling_networ-D3QN-_for_JSP:pytorchimplementationofDQN/DDQN/Dueling_networ/D3QNforjobshopscheudlingproblem(github.com)1状态特征提取首先从特征提取开始,原文的状态特征为3个网格矩阵,如下:于是搭建CNN进... 查看详情
(pytorch复现)基于深度强化学习(cnn+duelingnetwork/dqn/ddqn/d3qn)的自适应车间调度(jsp)(代码片段)
...复现可见个人Github:Aihong-Sun/DQN-DDQN-Dueling_networ-D3QN-_for_JSP:pytorchimplementationofDQN/DDQN/Dueling_networ/D3QNforjobshopscheudlingproblem(github.com)1状态特征提取首先从特征提取开始,原文的状态特征为3个网格矩阵,如下:于是搭建CNN进... 查看详情
pytorch实现简单的分类器(代码片段)
作为目前越来越受欢迎的深度学习框架,pytorch基本上成了新人进入深度学习领域最常用的框架。相比于TensorFlow,pytorch更易学,更快上手,也可以更容易的实现自己想要的demo。今天的文章就从pytorch的基础开始,帮助大家实现成... 查看详情
pytorch学习2b站刘二大人《pytorch深度学习实践》——梯度下降算法(gradientdescent)(代码片段)
b站课程链接:梯度下降算法一、梯度下降算法1.简介梯度下降算法是一种求解函数最优值的迭代算法,给定一个初值,通过负梯度方向进行更新查找。2.程序实现及结果importmatplotlib.pyplotasplt#训练集x_data=[1.0,2.0,3.0]y_... 查看详情