温馨提示:为了更好的教程体验,提供视频、阅读地址
Youtube: https://www.youtube.com/playl...
BiliBili: https://www.bilibili.com/vide...
Github: https://github.com/xiaotudui/...
相关下载:https://pan.baidu.com/s/16koD... 提取码:pahi
在学习中,遇到任何问题,可以关注公众号:土堆碎念,直接在对话框中留言,我会不定时解答的~
公众号:土堆碎念,回复:pytorch,即可获得所有的数据集及安装包, 省去找软件、数据集的时间。(同步更新中,请勿急躁)
前言
一般的教程的介绍顺序是:基本的数据类型,一些常用函数之类的。
但我在学习的过程中,比如他在介绍 b函数,总会引入 a函数之类的。而 a函数的意义我又不知道,就很烦了。
而且,我还不知道每个模块中,有哪些函数,整个学习过程中,对我来说太痛苦了。
所以,这次我会介绍 Python 中的两个法宝函数,它试用于任何 Python Package,所以,当然也适用于 PyTorch。
授人以鱼不如授人以渔,这两个法宝函数,对你自学,深入学习,一定有巨大帮助。
Package 与 两大法宝函数
我们之前说过,一个 Package 就好像一个工具箱。我们现在来解析,这个名为 pytorch 的工具箱结构。
游戏开始!你有两个道具:
dir()
道具:相当于你的手和眼睛,它可以帮你打开东西和看到其中的东西。
help()
道具:相当于说明书,你可以知道每个工具的使用方法。
现在让我们去探索吧!
我们首先对 pytorch 工具箱使用 dir()
道具,这样就可以发现其中有 1,2,3,4 的分隔区 或者 小工具箱。
dir(pytorch)
的输出将会是:1,2,3,4。
现在我们想去探索 分隔区1 里面有什么?
我们继续使用我们的 dir()
道具,dir(pytorch.1)
,将会输出 a,b,c。
这就说明,在 1 的分隔区或者小工具箱中,有名为 a,b,c的工具。
现在我们知道了 a 道具在 pytorch 工具箱中的1分隔区。
我们想知道如何使用它,这个时候,我们需要使用到另一个道具,help()
,我们这样使用,help(pytorch.1.a)
。它将会输出,使用 a 的方法。
总而言之:
dir()
,能让你了解package有哪些东西,也许是更小的模块,或者是函数。
help()
,能让你知道函数的使用方法。
实战——两个重要函数( dir(), help() )
1、首先,打开 PyCharm,应该默认会打开上一节创建的项目,如果没有的话,点击左上角的 File - Open,打开上一节创建的项目地址。
之后,点击左下角的 Python Console,检查第一行的 envs 后是不是 你创建的 conda环境的名字。
2、我们使用 import torch
,导入 PyTorch。之前说过,package 就像一个工具箱,里面有各种各样的工具。
当我们要使用工具箱的时候,我们需要知道:工具箱中有什么工具,以及工具该如何使用(说明书)。而这两个函数,就是对应这两个功能。
dir
函数能让我们知道 工具箱 以及工具箱中的分隔区有什么东西。
help
函数能让我们知道每个工具是如何使用的,工具的使用方法。
3、现在,我们想去看看 torch 工具箱中,有什么?我们输入 dir(torch)
,会看到大量的结果。
这些结果也许是工具,也许是工具分隔区。
4、现在我们就之前检查 torch.cuda.is_available()
为例。我们在 torch 工具箱中,发现了 cuda 工具分隔区,或者更小的工具箱。
我们现在继续看看,cuda 这个小工具箱中,有什么?
5、我们在这个工具箱中,可以看到,is_available,我们之前使用的。我们对 is_available 继续使用 dir()
函数,可以看到输出,是带有前后双下划线的。这个时候,就大致表明,你看到的是这个对象的一些属性。也就是说明,这是一个函数,一个工具。你应该使用 help()
函数去查看这个工具的使用方法。
现在,我们使用 help(torch.cuda.is_available)
来查看这个工具,函数的使用方法。
当我们输入指令的时候,你可以看到这个工具、函数的作用。
torch.cuda.is_available
这个函数,返回一个 True 或者 False 来表明 CUDA 是否可用。
最后
这两个函数非常有用,以后遇到问题的时候,可以善用这两个函数。一定会解决你的不少问题。
我的大本营
寻找有趣或更有效率的事、工具和教程
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。