经过研究,我发现这个问题与去年的"Interference"挑战非常相似。8个输出很可能对应多类别分类任务。当提交一个ASCII字符时,模型会告诉你该字符最可能出现在static_flag中的哪个位置。
与cdeotte的notebook类似,我准备了1024张32x32的图像,其中所有像素值都设为1,只有一个像素设为0.4。然后我通过API查询每张图像,并将8个输出保存为对应位置下该像素的重要性权重。对于位置0、1、2、3、6,这种方法生成了相对清晰的字符图像。然而对于位置4、5、7却无法得到清晰结果。无论我如何尝试,都无法反转出这3个字符。这很可能就是大多数人卡住的地方。
经过一天的思考,并假设组织者不会设置需要暴力破解最后3个字符的环节,我突然想到:如果这8个字符并不唯一呢?或者至少看起来非常相似。如果训练集中还存在类别不平衡问题,模型肯定会偏向于选择包含相同字符的某个类别。
于是我开始将清晰的字符图像叠加到位置4、5、7上,突然之间我辨认出了"letmeout"——这就是静态密钥。