简介:
本类博客用于记录目标检测方法yolo的学习,本篇博客介绍了yolo的环境配置—pytorch
参考资料:
Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Tensorflow的静态计算图不同,pytorch的计算图是动态的,可以根据计算需要实时改变计算图。但由于Torch语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。
一.Pytorch安装及环境配置
1. Pytorch的安装
1.1 Anaconda安装
此处我选用的是Anaconda3-5.2.0-Windows-x86_64.exe版本
Ananconda作用是为pytorch提供一个独立的虚拟环境,里面可以独立地配置环境,避免和系统环境等冲突,便于管理环境,同时配置过程中有没法解决的问题都可以删除虚拟环境重来
1.2 pytorch的环境配置及安装
打开Anaconda Prompt 输入
conda create -n pytorch python=3.6
创建了一个新环境,然后使用如下命令进入环境
conda activate pytorch
之后需要安装gpu版本的pytorch,按照视频教程去pytorch.org使用官方命令安装pytorch怎么样安装的都是cpu版本,找了很多教程,都没有用,最直接的解决方案是自己下载离线文件,此处按照下面这个教程安装
在环境里安装torchvision时报错ReadTimeout,可能是安装依赖的问题,解决方法:设置pip全局设置镜像源
1 | pip3 config --global set global.index-url https://mirrors.aliyun.com/pypi/simple/ |
检验是否安装成功,依次输入
1 | python |
返回True
代表成功
配置和安装pytorch遇到了很多报错,终于是成功了,如果觉得有问题,可以把环境文件夹删了重来一遍(我的文件夹路径为C:\Users\Frelar\Anaconda3\envs\)
2. python的编辑器及配置
2.1 PyCharm
此处建议下载新版本
编译器选择你对应虚拟环境即可
2.2 Jupyter Notebook(可选)
按照教程下载报错,改为在Anaconda Promot(pytorch环境)里输入conda install jupyter notebook
,下载后new选项里没有当前环境,依次输入
1 | conda install ipykernel |
成功解决
3. 其它相关库
3.1 opencv
这里使用pip install opencv-python
安装报错Failed building wheel for opencv-python
,然后尝试用conda安装,报错找不到库,所以还是采用离线下载方式,进入网址Archived: Python Extension Packages for Windows - Christoph Gohlke (uci.edu)找到你对应的python版本(cp36代表python3.6),使用迅雷下载会快很多,然后在环境下使用pip install your_path\opencv_python-4.4.0-cp36-cp36m-win_amd64.whl
安装成功
import cv2
1 | cv2.imread() #读取图片,返回ndarray类型图片及信息 |
3.2 os
import os
1 | os.listdir(dir_path) #读取获取目录下所有文件名称 |
二.Pytorch使用
1.torch
1.1 torch.utils.data.Dataset
from torch.utils.data import Dataset
包含自定义数据集方法的类,用户可以通过继承该类来自定义自己的数据集类,在继承时要求用户重载__len__()和__getitem__()这两个魔法方法
1 | from torch.utils.data import Dataset |
1.2 torch.utils.data. DataLoader
from torch.utils.data import DataLoader
1 | train_loader=DataLoader(dataset=train_data,batch_size=64,shuffle=True,num_workers=0,drop_last=True) |
1.3 torch.nn
from torch import nn
一个用于创建神经网络模型的类,可以作为参数、容器、子模块和函数
1 | #神经网络骨架 |
1.4 torch.optim
import torch
用于参数优化的库(可以说是花式梯度下降)
1 | optim=torch.optim.SGD(yourClass.parameters(),lr=0.01) #优化器(参数集,学习速率) |
2.torchvision
import torchvision
处理图像的工具集
1 | #获取数据集 |
2.1 torchvision.transforms
from torchvision import transforms
对图片进行操作
使用方法:
1 | mytool=transforms.tool(arguments1) #实例化 |
tool:
1 | myToTensor=transforms.ToTensor() |
3.利用GPU加速
1 | #方法一 |
遇到问题:
1.pip insall
或者conda install
很多报错,如找不到库,超时等
2. 安装cuda版本的pytorch总是安装成cpu(大坑)
解决方案:
1.采用离线下载方式,手动下载.whl文件 然后pip install yourPath.whl
2.采用离线下载是唯一解决方法
结语:无
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 21009200039@stu.xidian.edu.cn