pytorch
bingxiash
本人为AI爱好者,正在学习AI相关知识
展开
-
pytorch学习11-GAN
batch_size = 32transform = transforms.Compose([ transforms.ToTensor(), transforms.Normalize(mean=(0.5,), std=(0.5,))])mnist_data = torchvision.datasets.MNIST("./mnist_data",train=True, download=True, transform=transform)原创 2020-06-26 18:02:57 · 337 阅读 · 0 评论 -
pytorch学习10-图片风格迁移
图片风格迁移from torchvision import models,transformsfrom PIL import Imageimport torchimport torchvisionimport torch.nn as nnimport numpy as npimport matplotlib.pyplot as pltdevice = torch.device("cuda" if torch.cuda.is_available() else "cpu")def load原创 2020-06-26 18:00:05 · 681 阅读 · 1 评论 -
pytorch学习9-实现CNN模型的迁移学习
CNN模型的迁移学习1.数据准备2.读入数据3.模型训练很多时候当我们需要训练一个新的图像分类任务,我们不会完全从一个随机的模型开始训练,而是利用_预训练_的模型来加速训练的过程。我们经常使用在ImageNet上的预训练模型。这是一种transfer learning的方法。我们常用以下两种方法做迁移学习。fine tuning: 从一个预训练模型开始,我们改变一些模型的架构,然后继续训练整个模型的参数。feature extraction: 我们不再改变预训练模型的参数,而是只更新我们改变过的部分原创 2020-06-24 18:39:45 · 2229 阅读 · 1 评论 -
pytorch学习8-实现卷积神经网络
实现卷积神经网络1.加载数据2.定义CNN模型3.初始化模型和定义优化函数4.定义训练和测试模型5.查看运行结果1.加载数据import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimfrom torchvision import datasets, transforms# torchvision是独立于pytorch的关于图像操作的一些方便工具库。# torchvisi原创 2020-06-24 11:33:30 · 430 阅读 · 0 评论 -
pytorch学习7-情感分类
情感分类-Word Averaging模型1.准备数据2.构建Word Averaging模型3.训练模型4.进行预测PyTorch模型和TorchText再来做情感分析(检测一段文字的情感是正面的还是负面的)。我们会使用IMDb 数据集,即电影评论。1.准备数据TorchText中的一个重要概念是Field。Field决定了你的数据会被怎样处理。在我们的情感分类任务中,我们所需要接触到的数据有文本字符串和两种情感,“pos"或者"neg”。Field的参数制定了数据会被怎样处理。我们使用TEXT原创 2020-06-20 15:56:53 · 1751 阅读 · 0 评论 -
pytorch学习6-实现语言模型(rnn,lstm和gru)
pytorch实现语言模型原创 2020-06-19 12:36:26 · 1989 阅读 · 0 评论 -
pytorch学习5-word2vec(skip-gram)实现
pytorch实现word2vec1.准备训练数据(1)读取文本数据(2)实现dataloader2.定义模型3.定义评估函数4.定义优化函数5.训练模型6.准确度评估1.准备训练数据(1)读取文本数据import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.utils.data as tudfrom torch.nn.parameter import Parameterfrom collect原创 2020-06-10 18:05:36 · 591 阅读 · 0 评论 -
pytorch学习4-FizzBuzz游戏
FizzBuzz游戏1.准备训练数据2.定义模型3.定义一个损失函数和一个优化算法4.训练数据5.预测数据6.测试数据准确率FizzBuzz是一个简单的小游戏。游戏规则如下:从1开始往上数数,当遇到3的倍数的时候,说fizz,当遇到5的倍数,说buzz,当遇到15的倍数,就说fizzbuzz,其他情况下则正常数数。# One-hot encode the desired outputs: [number, "fizz", "buzz", "fizzbuzz"]def fizz_buzz_encode(原创 2020-06-08 10:25:13 · 409 阅读 · 0 评论 -
pytorch学习3-构建神经网络
一个神经网络的典型训练过程如下:定义包含一些可学习参数(或者叫权重)的神经网络在输入数据集上迭代通过网络处理输入计算loss(输出和正确答案的距离)将梯度反向传播给网络的参数更新网络的权重,一般使用一个简单的规则:weight = weight - learning_rate * gradient1.定义网络import torchimport torch.nn as nnimport torch.nn.functional as Fclass Net(nn.Module):原创 2020-06-05 12:59:11 · 275 阅读 · 0 评论 -
pytorch学习2-Autograd:自动求导
autograd 包为张量上的所有操作提供了自动求导机制。它是一个在运行时定义(define-by-run)的框架,这意味着反向传播是根据代码如何运行来决定的,并且每次迭代可以是不同的。1.张量torch.Tensor 是这个包的核心类。如果设置它的属性 .requires_grad 为 True,那么它将会追踪对于该张量的所有操作。当完成计算后可以通过调用 .backward(),来自动计算所有的梯度。这个张量的所有梯度将会自动累加到.grad属性。为了防止跟踪历史记录(和使用内存),可以将代码块包原创 2020-06-05 12:45:28 · 708 阅读 · 0 评论 -
pytorch学习1-基础知识
pytorch基础1.张量(1)创建一个没有初始化的5*3矩阵(2)创建一个随机初始化矩阵(3)构造一个填满0且数据类型为long的矩阵(4)直接从数据构造张量(5)根据已有的tensor建立新的tensor。除非用户提供新的值,否则这些方法将重用输入张量的属性。2.运算(1)加法:形式一(2)加法:形式二(3)加法:形式三,给定一个输出张量作为参数(4)加法:原位/原地操作(in-place)(5)也可以使用像标准的NumPy一样的各种索引操作(6)改变形状:如果想改变形状,可以使用torch.view(原创 2020-06-05 12:27:31 · 508 阅读 · 0 评论