374. Deepfake Detection Challenge | deepfake-detection-challenge
我很遗憾没有早点参加这次比赛,我只进行了一个月的强化工作。这应该是我获得的第一枚银牌。我读过很多关于如何获得高分的文章,其中许多都缺少一个细节:有些人为了攀登高峰付出了巨大的努力——这是一个非常重要的细节。当我读到诸如“我每天在这个比赛上工作10小时”这样的评论时,我简直不敢相信(也许有点夸张),在此之前我想的是——好吧,每周2-3小时。这次我部分辞去了工作,因为我想认真参加 Kaggle 比赛,加上我的工作中没有计算机视觉经验,而 DFDC(Deepfake Detection Challenge)对我来说似乎非常有趣。最后,我可以说我平均每周在这个比赛上花费 30-40 小时,周末也在工作。我没有使用任何外部机器进行训练,我加入得晚,无法使用积分。我的电脑配置是 32 GB 内存,128 GB SSD + 256 GB SSD,GeForce GTX 1080 Ti。SSD 在这次比赛中帮了大忙。
我相信对我来说主要的“神奇之处”在于正确的训练-验证技术。例如,我训练了 EfficientNetB1,它接收 224x224 的图像作为输入,并输出一个二进制数(假或真),使用了以下数据组织方式:
对于每个 epoch:
1 个 EPOCH 只需要 5-10 分钟(如果你把所有图像都提取到了 SSD 上)!整个训练只需要 1-1.5 小时!最终我的不同模型验证分数大约在 0.22 到 0.25 之间。
在推理过程中,我提取了 20 帧,对它们进行分类,并计算预测值的中位数。
我还训练了 LRCNN(以 EfficientNetB1 为骨干网络),其输入仅为 3 个连续帧。
我的最终解决方案是三个单帧模型的平均值(乘以 0.85)加上一个 LRCNN 模型(乘以 0.15)。
我尝试了太多太多的东西,我花了两天时间训练 Inception-ResNet V2,给电脑接了风扇,我甚至担心醒来时屋子里全是烟 :) 我相信如果一天有 50 小时而不是 24 小时,如果我和某人组队,我可以做得更好。这场比赛没有尽头,我们可以在这里应用无限多的方法。
我要感谢像 Human Analog 和 Shangqiu Li 这样的人——他们值得很多赞。也感谢大家的参与!