torchvision
transforms
transforms提供了对PIL Image对象和Tensor对象的常用操作。
1)对PIL Image的常见操作如下。
Scale/Resize | 调整尺寸,长宽比保持不变。 |
CenterCrop、RandomCrop、RandomSizedCrop | 裁剪图像。 |
Pad | 填充。 |
ToTensor | 把一个取值范围是[0,255]的PIL.Image转换成Tensor。 |
RandomHorizontalFlip | 图像随机水平翻转 |
RandomVerticalFlip | 图像随机垂直翻转。 |
ColorJitter | 修改亮度、对比度和饱和度。 |
transforms提供了对PIL Image对象和Tensor对象的常用操作。
Scale/Resize | 调整尺寸,长宽比保持不变。 |
CenterCrop、RandomCrop、RandomSizedCrop | 裁剪图像。 |
Pad | 填充。 |
ToTensor | 把一个取值范围是[0,255]的PIL.Image转换成Tensor。 |
RandomHorizontalFlip | 图像随机水平翻转 |
RandomVerticalFlip | 图像随机垂直翻转。 |
ColorJitter | 修改亮度、对比度和饱和度。 |
transforms提供了对PIL Image对象和Tensor对象的常用操作。
2)对Tensor的常见操作如下
Normalize | 标准化,即减均值,除以标准差。 |
ToPILImage | 将Tensor转为PIL Image。 |
如果要对数据集进行多个操作,可通过Compose将这些操作像管道一样拼接起来,类似于nn.Sequential。
transforms提供了对PIL Image对象和Tensor对象的常用操作。
ImageFolder可以读取不同目录下的图像数据。
ImageFolder
ImageFolder可以读取不同目录下的图像数据。
ImageFolder可以读取不同目录下的图像数据。
可视化工具
可视化工具
TensorBoard简介
使用TensorBoard的一般步骤如下。
1)导入tensorboard,实例化SummaryWriter类,指明记录日志路径等信息。
from torch.utils.tensorboard import SummaryWriter
#实例化SummaryWriter,并指明日志存放路径。在当前目录没有logs目录将自动创建。
writer = SummaryWriter(log_dir='logs')
#调用实例
writer.add_xxx()
#关闭writer
writer.close()
使用TensorBoard的一般步骤如下。
2)调用相应的API接口,接口一般格式为:
add_xxx(tag-name, object, iteration-number)
#即add_xxx(标签,记录的对象,迭代次数)
其中,xxx指的是各种可视化方法
各种可视化方法如下表所示。
Scalar | 用于可视化单一数值,例如损失值、准确率等随训练过程的变化。 |
Image | 用于可视化图像数据。 |
Figure | 用于可视化图形或复杂的图表。 |
Histogram | 用于可视化数据的分布。 |
Audio | 用于可视化音频数据。 |
Text | 用于可视化文本数据,例如模型生成的文本或训练日志。 |
使用TensorBoard的一般步骤如下。
3)启动tensorboard服务。cd到logs目录所在的同级目录,在命令行输入如下命令,logdir等式右边可以是相对路径或绝对路径。
tensorboard --logdir=logs --port 6006
#如果是windows环境,要注意路径解析,如
#tensorboard --logdir=r'D:\myboard\test\logs' --port 6006
4)Web展示。在浏览器输入:
http://服务器IP或名称:6006 #如果是本机,服务器名称可以使用
用TensorBoard可视化神经网络
运行结果
用TensorBoard可视化特征图