一面 1h
狂轰滥炸,把我会的都问了,不会的也问了。。。

0.自我介绍
1.无人机项目介绍
2.深挖细节:YOLOv3的数据增强有哪些?
从config文件中可以看出有角度旋转,饱和度,曝光度(明度)和色度的参数调整,还有jitter参数=0.3。这里是随机调整宽高比的范围。

但是在源码image.c当中有这些数据增强的函数。

基于计算机视觉的人员计数系统 计算机视觉的算法_过拟合

3.YOLOv3中的多尺度的anchors和ground truth是怎么得到最终的target的?grid?这是重点,关系到最后的训练。

基于计算机视觉的人员计数系统 计算机视觉的算法_基于计算机视觉的人员计数系统_02


因为YOLOv3是有1313个grid网格的,每一个grid都有3个不同大小比例的anchor,每一个尺度上就会有3(80+5)=255个boxes,然后三个尺度的框都沿着深度维度拼接起来,这样就能进行多尺度预测。其实我们要得到最后的target是目标检测的框,v3使用逻辑回归预测每个边界框的目标性得分。v3还改变了计算loss函数的方式。

基于计算机视觉的人员计数系统 计算机视觉的算法_过拟合_03


基于计算机视觉的人员计数系统 计算机视觉的算法_基于计算机视觉的人员计数系统_04


基于计算机视觉的人员计数系统 计算机视觉的算法_基于计算机视觉的人员计数系统_05


基于计算机视觉的人员计数系统 计算机视觉的算法_归一化_06


基于计算机视觉的人员计数系统 计算机视觉的算法_激活函数_07


基于计算机视觉的人员计数系统 计算机视觉的算法_基于计算机视觉的人员计数系统_08


基于计算机视觉的人员计数系统 计算机视觉的算法_归一化_09


4.YOLOv3的anchor是怎么来的,什么公式,聚类

通过聚类得到,但是这里需要写出公式

距离是通过IOU来计算的

基于计算机视觉的人员计数系统 计算机视觉的算法_过拟合_10

5.YOLOv3的LOSS由哪几部分组成,分别是什么?LOSS如何做归一化?
box当中的xywh,类别class,置信度object confidence。
如何做归一化?
看上面的LOSS好了。。。。

6.YOLOv3中怎么解决样本不均衡的问题?
当时我记得公式的话是在noobject的那个类别预测的loss部分乘上一个0.5,进行抑制负样本,也就是背景

7.focal loss的原理,怎么在最后一层的时候在bias中做初始化?
交叉熵的变体,focal loss这块后续还要继续TODO

8.还有哪些解决样本不均衡的方法?
重采样,过采样

9.FPN原理,原始FPN论文与YOLOv3的FPN的区别。
原始的是在RPN上面实验的。
YOLO3只是借鉴了这个多尺度融合的思想

10.YOLOv3的结构,其中的激活函数,为什么要用激活函数?有哪些激活函数?激活函数解决什么问题?
darknet53,没有池化层和全连接层,还有shortcut layer,upsample,route拼接层。原先的darknet19仿造的是VGG

11.Batch normalization的原理,过程
12.过拟合和欠拟合的状况,如何解决过拟合?
13.dropout的原理,细节
14.batch normalization为什么可以缓解过拟合?
15.python当中赋值操作,深拷贝,浅拷贝,举了例子如果a = [1],b是a的浅拷贝,b改成[2],a会不会变。
16.0.35/0.05 = 多少?从二进制的角度去考虑,结果应该是6.99999…计算机底层知识。

一面总结:YOLOv3原理深挖,要去恶补了。。。从数据处理,到损失函数,整个网络的训练细节都要熟悉!深度学习原理也要恶补,dropout的是怎么恢复神经元的又忘了。。。。python都有点没学好,更别说c++了。。。