本文已参与「新人创作礼」活动,一起开启掘金创作之路。
为了督促自己每天都有进步,在这里记录下每天遇到的问题和学到的新知识,作为个人回顾使用。
日记(第九周)
20201114
关于cv.resize()
缩小或者放大函数至某一个大小
关于预训练pretrain
使用别人预训练好的模型,在自己的数据集上训练自己的模型。
日记(第十周)
20201120
候选区域
R-CNN,意思就是带区域的卷积网络,这个算法尝试选出一些区域,在这些区域上运行卷积网络分类器是有意义的。
利用segmentation得到多个分割区域,然后在这些分割区域中跑分类器来检测这个块里是否有东西。
R-CNN算法比较慢,因此衍生了许多升级算法,如Fast R-CNN,Faster R-CNN.
20201121
YOLO v1
按论文的例子来讲,yolo v1把图片分成7*7的网格,每个单元格独立作检测,作为物体中心点的划分来使用。
v1的输出是7*7*30的张量,30=2*5+20,即预测2个框(bounding box)的5个参数(x,y,w,h,score)和20个种类。
更多详细的内容可以参考这一篇blog:YOLO系列之yolo v1
YOLO v2
v2版本新增了BN层,有助于模型的收敛;尝试加入了anchor机制,后来放弃了anchor机制加入了dimension priors,具体的看这里:YOLO系列之yolo v2
YOLO v3
v3放弃了通过池化层改变张量尺寸,而是通过卷积核增大步长,因此v3没有池化层和全连接层。这篇文章其实已经写得比较清楚了:YOLO系列之yolo v3
日记(第十一周)
20201127
关于Counter()用法
Counter是一种计数器,例子如下:
>>> from collections import Counter
>>> colors = ['red', 'blue', 'red', 'green', 'blue', 'blue']
>>> c = Counter(colors)
>>> c
Counter({'blue': 3, 'red': 2, 'green': 1})
>>> type(c)
<class 'collections.Counter'>
20201129
inception论文解读
5*5的卷积可以拆成两个3*3的卷积
3*3的卷积可以拆成1*3和3*1
在浅层位置做卷积分解效果不是很好,但在中部层效果比较好。 在论文中最后是用的是1*7和7*1的卷积分解。
在网络中如果特征突然减少是不好的,例如下图左边:
所以我们可以先做inception后做pooling保证特征数量不会突然减少,而是先增大后减少
标签平滑:
如果模型过于“自信”如=容易产生过拟合的问题,因此使用标签平滑。