方法一:场景神经网络
思路:训练一个包含所有特征的模型,得到auc,在batch中采用shuffle,得到auc’,记特征的importance为auc-auc’
验证方法:先验+经验结合的方式,对于此前实验auc高的特征,在这个方法筛选下,importance有较高的值;对于0覆盖的特征,importance有较小的值
1 2 3 4 5 |
left_t = dnn_input[:, :ind*emb_size] this_t = dnn_input[:, ind*emb_size : (ind+1)*emb_size] right_t = dnn_input[:, (ind+1)*emb_size:] this_t = tf.random_shuffle(this_t) input = tf.concat([left_t, this_t, right_t], axis=1) |
代码解读:得到一个batch对行的数据后,对指定的特征列(此处是ind)打乱,即让他失效