【焦点热闻】面试分享!字节电商视觉算法工程师一面复盘

2023-03-23 18:12:56 来源:哔哩哔哩

来源:投稿 作者:LSC

编辑:学姐


(资料图)

话不多说,直接上题

1.链表反转

2.小偷偷东西,但是不能在相邻的两个房子里偷东西,问偷到的物品价值的最大值

经典的动态规划问题

状态转移方程式:

dp[0] = v[0]  // v是物品价值的数组,dp[i]代表偷到第i家的时候的最大值dp[1] = v[1]dp[i] = max(dp[i - 1], dp[i - 2] + v[i])  // 要么不偷当前这家,要么偷了加上之前不相邻的一家偷的总和,取最大值

3.mAP

(1)先计算出每个类别的AP,总共m个类,

(2)AP的计算: 同一类目标检测结果框对应的precisionrecall

其中all detctions代表所有预测框的数量, all ground truths代表所有GT的数量。

(3)如下图所示:

根据IoU划分TP&FP

按置信度的从大到小,计算P值和R值 

绘制P-R曲线,进行AP计算 

多个与GT重叠的候选框均符合条件时,选取IoU最高的为TP,其余均为FP。

(4)最后画出以recall为横坐标,precision为纵坐标的图,

(5)补齐,计算近似的面积

A1+A2+A3+A4就是大致的面积AP

注意一点,一般precision和recall计算前100个点就足够了,再多会被抛弃,而且意义不大

(6)把每个类的AP求和,除以m,就是mAP

4.四种BatchNorm

对于[batch, c, w, h]的特征图 

(1)是在batch这个维度上的批标准化,就是我们最常用的bn 

(2)是在C这个维度上的批标准化,也叫Layer Norm 

(3)是在[w, h]这个维度上的批标准化,也叫Instance Norm 

(4)是在c这个维度上分组的批标准化,也叫GroupNorm

四种BN如下图,从左到右:

5.介绍nms

非极大值抑制 

(1)设定目标框的置信度阈值,常用的阈值是0.5左右 

(2)根据置信度降序排列候选框列表 

(3)选取置信度最高的框A添到输出列表,将其从候选框列表中删除 

(4)候选框列表中的所有框依次与A计算IoU,删除大于阈值的候选框 

(5)重复上述过程,直到候选框列表为空,返回输出列表

6.介绍FCOS目标检测网络

这是一个anchor free的目标检测网络,应该说是一个anchor point的网络,它是基于feature map上的点来检测目标的,其中是采用特定的规则去对应的目标框的,Neck部分同样使用了FPN,使用了focal loss损失函数,能有效处理数据不均衡的情况。

关注【学姐带你玩AI】公众号

每周四学姐都会和大家分享一些内推岗位哦~

速来抓住offer!

回复“简历”获取算法工程师万能简历公式

标签:

推荐阅读>