人脸大规模分类—计算过程

这里简要总结一下,人脸大规模分类的实现过程

(1)拆分分类权重:分类权重\(W\in R^{n\times d}\)拆分为K份,每个gpu存储其中一份分类权重
(2)求logit值:每个gpu上的特征feature,及其label,经过allgather操作汇聚并广播到每个GPU上,然后和当前gpu上的局部分类权重相乘,获得在这块GPU对应类别上的logit值
(3)求prob值:每块logit 经过allreduce操作可以得到所有gpu上的最大logit值,进而采用allreduce操作,求得exp(logit)和,从而求得概率值prob
(4)求loss值:由于全体样本的标签可能分散在各个GPU上,而在具体一块GPU中,仅有部分样本的标签落在当前GPU上,因此只能计算这些样本产生的loss值。

用下面示意图表示上述过程:
人脸大规模分类—计算过程

上一篇:201521123079《java程序设计》第7周学习总结


下一篇:一个问题