Skip to content

Commit e8299e6

Browse files
authored
Add files via upload
1 parent c16a919 commit e8299e6

File tree

1 file changed

+116
-44
lines changed

1 file changed

+116
-44
lines changed

常见问题汇总.md

Lines changed: 116 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,141 @@
1-
## 常见的问题汇总:
2-
3-
问:up主,可以给我发一份代码吗,代码在哪里下载啊?
4-
答:Github上的地址就在视频简介里。复制一下就能进去下载了。
5-
6-
问:为什么我安装了tensorflow-gpu但是却没用利用GPU进行训练呢?
7-
答:有没有用到GPU应该看终端里的提示,不要看任务管理器。
8-
9-
问:up主,为什么我下载的代码里面,model_data下面没有.pth或者.h5文件?
10-
答:我一般会把权值上传到百度网盘,在GITHUB的README里面就能找到。
11-
12-
问:up主,为什么运行train.py会提示shape不匹配啊?
13-
答:因为你训练的种类和原始的种类不同,网络结构会变化,所以最尾部的shape会有少量不匹配。
14-
15-
问:为什么提示说no module name utils.utils(no module name nets.yolo、no module name nets.ssd等一系列问题)啊?
16-
答:根目录不对,查查相对目录的概念。查了基本上就明白了。
17-
18-
问:为什么提示说no module name matplotlib(no module name PIL)?
19-
答:打开命令行安装就好。pip install matplotlib
20-
21-
问:为什么我运行predict.py会提示我说shape不匹配呀。(为什么我训练完了不能预测啊)
22-
答:原因主要有仨:
1+
# 问题汇总
2+
3+
## 1、下载问题
4+
**问:up主,可以给我发一份代码吗,代码在哪里下载啊?
5+
答:Github上的地址就在视频简介里。复制一下就能进去下载了。**
6+
7+
**问:up主,为什么我下载的代码里面,model_data下面没有.pth或者.h5文件?
8+
答:我一般会把权值上传到百度网盘,在GITHUB的README里面就能找到**
9+
10+
**问:up主,为什么我下载的代码提示压缩包损坏?
11+
答:重新去Github下载。**
12+
13+
## 2、环境配置问题
14+
**问:为什么我安装了tensorflow-gpu但是却没用利用GPU进行训练呢?
15+
答:有没有用到GPU应该看终端里的提示,不要看任务管理器。**
16+
17+
**问:你的代码某某某版本的tensorflow和pytorch能用嘛?
18+
答:最好按照我推荐的配置,配置教程也有!其它版本的我没有试过**
19+
20+
**问:up主,为什么我按照你的环境配置后还是不能使用?
21+
答:请把你的GPU、CUDA、CUDNN、TF版本以及PYTORCH版本私聊告诉我。**
22+
23+
**问:出现如下错误**
24+
```python
25+
Traceback (most recent call last):
26+
File "C:\Users\focus\Anaconda3\ana\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
27+
from tensorflow.python.pywrap_tensorflow_internal import *
28+
File "C:\Users\focus\Anaconda3\ana\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
29+
pywrap_tensorflow_internal = swig_import_helper()
30+
File "C:\Users\focus\Anaconda3\ana\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
31+
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
32+
File "C:\Users\focus\Anaconda3\ana\envs\tensorflow-gpu\lib\imp.py", line 243, in load_modulereturn load_dynamic(name, filename, file)
33+
File "C:\Users\focus\Anaconda3\ana\envs\tensorflow-gpu\lib\imp.py", line 343, in load_dynamic
34+
return _load(spec)
35+
ImportError: DLL load failed: 找不到指定的模块。
36+
```
37+
**答:如果没重启过就重启一下,否则重新按照步骤安装,还无法解决则把你的GPU、CUDA、CUDNN、TF版本以及PYTORCH版本私聊告诉我。**
38+
39+
## 3、shape不匹配问题
40+
### a、训练时shape不匹配问题
41+
**问:up主,为什么运行train.py会提示shape不匹配啊?
42+
答:因为你训练的种类和原始的种类不同,网络结构会变化,所以最尾部的shape会有少量不匹配。**
43+
### b、预测时shape不匹配问题
44+
**问:为什么我运行predict.py会提示我说shape不匹配呀。**
45+
**答:原因主要有仨:
2346
1、在ssd、FasterRCNN里面,可能是train.py里面的num_classes没改。
2447
2、model_path没改。
2548
3、classes_path没改。
26-
请检查清楚了!确定自己所用的model_path和classes_path是对应的!训练的时候用到的num_classes或者classes_path也需要检查!因为都是这个问题,如果来询问我,我也是同样的回答(问的太多了,但出错原因都是一样的,我在视频里也会强调需要修改model_path和classes_path,请一定注意修改。)。
49+
请检查清楚了!确定自己所用的model_path和classes_path是对应的!训练的时候用到的num_classes或者classes_path也需要检查!**
50+
51+
## 4、no module问题
52+
**问:为什么提示说no module name utils.utils(no module name nets.yolo、no module name nets.ssd等一系列问题)啊?
53+
答:根目录不对,查查相对目录的概念。查了基本上就明白了。**
54+
55+
**问:为什么提示说no module name matplotlib(no module name PIL)?
56+
答:打开命令行安装就好。pip install matplotlib**
2757

28-
问:为什么我运行train.py下面的命令行闪的贼快,还提示OOM啥的?
58+
## 5、显存问题
59+
**问:为什么我运行train.py下面的命令行闪的贼快,还提示OOM啥的?
2960
答:爆显存了,可以改小batch_size,如果batch_size=1才能运行的话,那么直接换网络吧,SSD的显存占用率是最小的,建议用SSD;
3061
2G显存:SSD
3162
4G显存:YOLOV3 Faster RCNN
3263
6G显存:YOLOV4 Retinanet M2det Efficientdet等
33-
8G+显存:随便选吧
64+
8G+显存:随便选吧**
3465

35-
问:为什么要冻结训练和解冻训练呀?
36-
答:这是迁移学习的思想,因为神经网络主干特征提取部分所提取到的特征是通用的,我们冻结起来训练可以加快训练效率,也可以防止权值被破坏。
66+
## 6、训练问题
67+
**问:为什么要冻结训练和解冻训练呀?
68+
答:这是迁移学习的思想,因为神经网络主干特征提取部分所提取到的特征是通用的,我们冻结起来训练可以加快训练效率,也可以防止权值被破坏。**
3769

38-
问:为什么我的LOSS一直不下降呀?
70+
**问:为什么我的LOSS一直不下降呀?
3971
答:主要有五:
4072
1、 数据集过少,小于500的自行考虑增加数据集。
4173
2、 是否解冻训练。
4274
3、 如果是yoloV4可以考虑关闭mosaic,mosaic不适用所有的情况。
4375
4、 网络不适应,比如SSD不适合小目标,因为先验框固定了。
44-
5、 不同网络的LOSS不同,LOSS只是一个参考指标,用于查看网络是否收敛,而非评价网络好坏,我的yolo代码都没有归一化,所以LOSS值看起来比较高,LOSS的值不重要,重要的是是否收敛!
76+
5、 不同网络的LOSS不同,LOSS只是一个参考指标,用于查看网络是否收敛,而非评价网络好坏,我的yolo代码都没有归一化,所以LOSS值看起来比较高,LOSS的值不重要,重要的是是否收敛!**
77+
78+
**问:能不能训练灰度图啊?
79+
答:可以尝试一下在get_random_data里面将Image.open后的结果转换成RGB,预测的时候也这样试试。(仅供参考)**
80+
81+
**问:我已经训练过几个世代了,能不能从这个基础上继续开始训练
82+
答:可以,你在训练前,和载入预训练权重一样载入训练过的权重就行了。**
83+
84+
**问:我怎么出现了这样的错误呀:**
85+
```python
86+
FileNotFoundError: 【Errno 2】 No such file or directory
87+
……………………………………
88+
……………………………………
89+
```
90+
**答:去检查一下文件夹路径,查看是否有对应文件;并且检查一下2007_train.txt,其中文件路径是否有错。**
91+
关于路径有几个重要的点:
92+
**文件夹名称中一定不要有空格。
93+
注意相对路径和绝对路径。
94+
多百度路径相关的知识。**
95+
96+
**问:我怎么出现了这样的错误呀:**
97+
```python
98+
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 446: illegal multibyte sequence
99+
```
100+
**答:标签和路径不要使用中文。**
101+
102+
**问:我的图片是xxx*xxx的分辨率的,可以用吗!**
103+
**答:可以用,代码里面会自动进行resize或者数据增强。**
104+
105+
**问:为什么我yolo的loss降到了0.0几了什么都预测不出来?**
106+
**答:yolo系列的loss是降不到这么多的。查看2007_train.txt文件是否有目标信息。**
107+
108+
109+
## 7、乱七八糟的问题
110+
**问:能不能说说怎么绘制PR曲线啥的呀。
111+
答:可以看mAP视频,结果里面有PR曲线。**
112+
113+
**问:怎么用摄像头检测呀?
114+
答:基本上所有目标检测库都有video.py可以进行摄像头检测,也有视频详细解释了摄像头检测的思路。**
45115

46-
问:能不能说说怎么绘制PR曲线啥的呀。
47-
答:可以看mAP视频,结果里面有PR曲线。
116+
**问:ubuntu下可以用吗?
117+
答:可以。**
48118

49-
问:我已经训练过几个世代了,能不能从这个基础上继续开始训练
50-
答:可以,你在训练前,和载入预训练权重一样载入训练过的权重就行了。
119+
**问:怎么进行多GPU训练?
120+
答:这个直接百度就好了,实现并不复杂。**
51121

52-
问:能不能训练灰度图啊
53-
答:可以尝试一下在get_random_data里面将Image.open后的结果转换成RGB,预测的时候也这样试试。(仅供参考)
122+
**问:为什么提示TypeError: cat() got an unexpected keyword argument 'axis',Traceback (most recent call last),AttributeError: 'Tensor' object has no attribute 'bool'
123+
答:这是版本问题,建议使用torch1.2以上版本**
54124

55-
问:怎么用摄像头检测呀?
56-
答:基本上所有目标检测库都有video.py可以进行摄像头检测,也有视频详细解释了摄像头检测的思路。
125+
**其它有很多稀奇古怪的问题,很多是版本问题,建议按照我的视频教程安装Keras和tensorflow。比如装的是tensorflow2,就不用问我说为什么我没法运行Keras-yolo啥的。那是必然不行的。**
57126

58-
问:ubuntu下可以用吗?
59-
答:可以。
60127

61-
问:怎么进行多GPU训练?
62-
答:这个直接百度就好了,实现并不复杂。
128+
## 8、和原版比较问题
129+
**问:你这个代码和原版比怎么样,可以达到原版的效果么?
130+
答:基本上可以达到,我都用voc数据测过,我没有好显卡,没有能力在coco上测试与训练。**
63131

64-
问:为什么提示TypeError: cat() got an unexpected keyword argument 'axis',Traceback (most recent call last),AttributeError: 'Tensor' object has no attribute 'bool'?
65-
答:这是版本问题,建议使用torch1.2以上版本
132+
## 9、FPS问题
133+
**问:你这个FPS可以到达多少,可以到 XX FPS么?
134+
答:FPS和机子的配置有关,配置高就快,配置低就慢。**
66135

67-
其它有很多稀奇古怪的问题,很多是版本问题,建议按照我的视频教程安装Keras和tensorflow。比如装的是tensorflow2,就不用问我说为什么我没法运行Keras-yolo啥的。那是必然不行的。
136+
**问:为什么我用服务器去测试yolov4(or others)的FPS只有十几?
137+
答:检查是否正确安装了tensorflow-gpu或者pytorch的gpu版本,如果已经正确安装,可以去利用time.time()的方法查看detect_image里面,哪一段代码耗时更长(不仅只有网络耗时长,其它处理部分也会耗时,如绘图等)。**
68138

139+
**问:为什么论文中说速度可以达到XX,但是这里却没有?
140+
答:检查是否正确安装了tensorflow-gpu或者pytorch的gpu版本,如果已经正确安装,可以去利用time.time()的方法查看detect_image里面,哪一段代码耗时更长(不仅只有网络耗时长,其它处理部分也会耗时,如绘图等)。有些论文还会使用多batch进行预测,我并没有去实现这个部分。**
69141

0 commit comments

Comments
 (0)