深度学习框架
文章平均质量分 92
深度学习框架
Rocky Ding*
全网同名Rocky Ding,AIGCmagic社区创始人,自媒体WeThinkIn主理人,AIGC算法专家,持续分享AI行业前沿资讯、干货经验以及深度思考,欢迎社招/校招/实习面试咨询。
展开
-
深度学习框架_PyTorch_PyTorch与CUDA适配性信息的命令
查看CUDA是否可用:torch.cuda.is_available()查看可用GPU的数量:torch.cuda.device_count()查看GPU名称,设备索引默认从0开始:torch.cuda.get_device_name(1)查看当前设备索引:torch.cuda.current_device()原创 2020-12-05 16:50:45 · 356 阅读 · 0 评论 -
深度学习框架_TensorFlow_模型保存时的几种主要格式详解
CKPT格式一般情况下,我么你是用TensorFlow时保存模型都使用ckpt格式的模型文件,使用类似下面的语句来保存模型:tf.train.Saver().save(sess, ckpt_file_path, max_to_keep=4, keep_checkpoint_every_n_hours=2)使用如下语句来恢复所有变量信息:saver.restore(sess, tf.train.latest_checkpoint('./ckpt'))但是这种方式有几个缺点:这种模型文件是依赖原创 2020-08-04 17:33:59 · 2254 阅读 · 0 评论 -
深度学习框架_PyTorch.transforms_数据增强经典方法的术语
裁剪中心裁剪:CenterCrop随机裁剪:RandomCrop随机长宽比裁剪:RandomResizeCrop上下左右中心裁剪:FiveCrop上下左右中心裁剪后翻转:TenCrop翻转和旋转以概率p水平翻转:RandomHorizontalFlip(p = 0.5)以概率p垂直翻转:RandomVerticalFlip(p = 0.5)随机翻转:RandomRotation随机遮挡对图像进行随机遮挡:RandomErasing图像变换尺寸变换:Resize标准化原创 2020-08-02 11:33:04 · 596 阅读 · 0 评论 -
深度学习框架_TensorFlow_TensorFlow中logits的理解
logits可以理解为未进入softmax/sigmoid的概率,一般是全连接的输出,位于softmax/sigmoid之前,是softmax/sigmoid的输入。例如:logits=tf.matmul(X,W)+biaslogits = tf.matmul(X,W) + biaslogits=tf.matmul(X,W)+biasYout=tf.nn.softmax(logits)Y_{out} = tf.nn.softmax(logits)Yout=tf.nn.softmax(logits)原创 2020-07-04 14:54:04 · 701 阅读 · 0 评论 -
深度学习框架_PyTorch_PyTorch数据读取加速方法
(1)prefetch_generator使用prefetch_generator库在后台加载下一batch的数据。安装:pip install prefetch_generator使用:# 新建DataLoaderX类from torch.utils.data import DataLoaderfrom prefetch_generator import BackgroundGe...原创 2020-04-04 21:51:56 · 2646 阅读 · 1 评论 -
深度学习框架_PyTorch_torchvision.transforms.functional.pad()函数
torchvision.transforms.functional.pad(img, padding, fill=0, padding_mode='constant')这个函数用于用指定的填充模式和填充值填充PIL图像。参数:img(PIL图像)-- 要填充的图像。padding(int或tuple)-- 各边的填充值。如果指定为int,表示所有边都按照这个值进行填充。如果指定为长为2...原创 2020-02-24 13:17:10 · 2035 阅读 · 0 评论 -
深度学习框架_PyTorch_os.listdir()函数
os.listdir()函数用于返回指定的文件夹包含的文件或文件夹的名字的列表。语法:os.listdir(path)参数:path – 需要列出的目录路径。返回值:返回指定路径下的文件和文件夹列表。...原创 2020-02-19 15:49:55 · 806 阅读 · 0 评论 -
深度学习_PyTorch_os.ptach.join()函数
os.path.join()函数的作用是把目录和文件名合成一个路径。语法:os.path.join(path1[,path2[,path3[,…[,ptahN]]]])。注意:会从第一个以‘/’开头的参数开始拼接,之前的参数会全部舍弃。在上一种情况下,如出现‘./’开头的参数,会从‘./’开头的参数的上一个参数开始拼接。print(os.path.join('root','example'...原创 2020-02-19 15:36:00 · 965 阅读 · 0 评论 -
深度学习框架_PyTorch_torch.squeeze()函数和torch.unsqueeze()函数的用法
torch.squeeze()函数的用法主要是对数据的维度进行压缩,去掉维数为1的维度。torch.squeeze(x)是去掉x中所有维数为1的维度;x.squeeze(n)是去掉x中指定的维数为1的维度。接下来我们在具体代码中了解:>>> ctensor([[[1., 1., 1.], [1., 1., 1.], [1., 1., 1...原创 2020-02-17 15:39:16 · 389 阅读 · 0 评论 -
深度学习框架_PyTorch_torch.stack()函数和torch.cat()函数
torch.stcak()函数对多个张量在维度上进行叠加。其中参数dim代表不同的维度。具体如下代码所示:>>> a = torch.ones(3,3)>>> atensor([[1., 1., 1.], [1., 1., 1.], [1., 1., 1.]])>>> b = torch.ones(3...原创 2020-02-17 12:02:58 · 649 阅读 · 0 评论 -
深度学习框架_PyTorch_torch.view()函数
用法:torch.view()返回的数据和传入的tensor一样,只是形状不一样。注意:返回的tensor和传入的tensor共享内存,也就是修改其中一个,数据都会变。接下来我们举一个例子:>>> a = torch.ones(6,3)>>> atensor([[1., 1., 1.], [1., 1., 1.], [1...原创 2020-02-14 21:35:07 · 1667 阅读 · 1 评论 -
深度学习框架_PyTorch_torch.size()函数
作用:查看Tensor的维度。具体例子如下:>>> import torch>>> a = torch.Tensor([[[1,1],[2,2]],[[3,3],[4,4]]])>>> a.size()torch.Size([2, 2, 2])原创 2020-02-14 20:08:56 · 15948 阅读 · 0 评论 -
深度学习框架_PyTorch_AdaptiveMaxPool2d函数
函数原型为:torch.nn.AdaptiveMaxPool2d(output_size, return_indices=False)对于输入信息,提供2维的自适应最大池化操作。对于任何输入大小的输入,可以将输入尺寸指定为H * W,但是输入和输出特征的数目不会变化。参数:output_size:输出信息的尺寸,可以用(H,W)表示 H * W的输出,也可以用数字H表示H * H大小的输出...原创 2020-02-08 16:53:36 · 1595 阅读 · 0 评论 -
深度学习框架_PyTorch_item()函数
item()函数是得到一个元素张量里面的元素值。下面我们来举一个例子:>>> x = torch.randn(1)>>> print(x)tensor([0.6328])>>> print(x.item())0.632796049118042...原创 2020-01-23 19:07:46 · 981 阅读 · 0 评论 -
深度学习框架_PyTorch_模型预训练_PyTorch使用预训练模型全流程(实例:CIFAR图像分类)
首先,这篇文章是接着下面这篇文章进行补充的,大家可以先看这篇文章如何手动设计一个分类网络:深度学习框架_PyTorch_使用PyTorch编写卷积神经网络全流程(实例:CIFAR10图像分类)一.预训练模型简介卷积神经网络在图像识别,图像分割等领域取得了非常大的成功,出现了很多非常好的网络模型,比如ResNet、GoogLeNet等图像分类模型、Faster R-CNN、YOLO等目标检测模...原创 2019-12-05 10:19:45 · 3393 阅读 · 1 评论 -
深度学习框架_PyTorch_repeat()函数
PyTorch中的repeat()函数可以对张量进行复制。当参数只有两个时,第一个参数表示的是复制后的列数,第二个参数表示复制后的行数。当参数有三个时,第一个参数表示的是复制后的通道数,第二个参数表示的是复制后的列数,第三个参数表示复制后的行数。接下来我们举一个例子来直观理解一下:>>> x = torch.tensor([6,7,8])>>> x.r...原创 2020-01-09 22:51:58 · 2681 阅读 · 3 评论 -
深度学习框架_Caffe_Caffe框架入门简介
一.什么是CaffeCaffe的全称应该是Convolutional Architeure for Fast Feature Embedding,它是一个清晰、高效的深度学习框架,它是开源的,核心语言是C++,他支持命令行、Python和Matlab接口,它既可以在CPU上运行也可以在GPU上运行。它的liense是BSD 2-Clause。二.Caffe的特点模块化:Caffe从一开始就...原创 2019-12-23 22:56:14 · 2029 阅读 · 0 评论 -
深度学习框架_PyTorch_PyTorch框架入门简介
一.深度学习框架的作用深度学习需要大量的计算。数据量和节点数量是主要计算需求来源。神经网络的结构适用于GPU进行高效并行计算。深度学习框架的创建目标是在GPU上高效运行深度学习模型。提供了基础的数据结构。利用计算图实现自动求导和性能优化。二.PyTorch定义张量张量是向量、矩阵在更高维度上的一种推广.首先我们来看看PyTorch如何定义张量:import torchth...原创 2019-12-02 22:46:44 · 920 阅读 · 0 评论 -
深度学习框架_PyTorch_使用PyTorch编写卷积神经网络全流程(实例:CIFAR10图像分类)
一.使用PyTorch编写卷积神经网络使用Pytorh编写卷积神经网络,一般需要导入以下模块:import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimimport torchvision.transforms as transformsimport torch...原创 2019-12-01 23:08:24 · 4006 阅读 · 0 评论