学习周报四十一
文章目录
- 摘要
- abstract
- 一、代码实践
- 1.1新的数据集合——steam\yelp,探寻模型的泛化能力。
- 1.2 尝试从实验数据角度证明特征投毒(不包括最终结果)。
- 总结
摘要
代码实验实践。
abstract
Code Experiment Practice.
一、代码实践
上周工作:代码实验以及相关论文的编写——极度稀疏数据下的多模态长尾推荐。
1.1新的数据集合——steam\yelp,探寻模型的泛化能力。
新的数据集steam游戏数据:
Users (Nodes): 281210
- Items (Nodes): 11961
- Interactions (Edges): 3484694
- Culture/Subculture Tags:
上述数据现在经过5core过滤以及相关的视觉和文字特征进行了提取,有一个问题,先跑的steam数据,现在正在收尾,还差几个对比模型没有跑完。我的设计在性能上是不如几个先进对比模型。
原因:游戏的截图全是 UI 和特效,文本介绍全是“魔法、射击”,而 Subculture 标签(Indie, RPG)相对粗粒度。特征本身就很模糊。
同时,变体B(CANM,原冷启动最优设计)的性能大幅度降低。证实了的理论分析:在高度稀疏的图中,早期融合会引入严重的乘性高频噪声,这些噪声会被消息传递机制指数级放大,最终破坏脆弱的协同过滤信号。
yelp数据集餐馆(地区)
- Users (Nodes): 172656
- Items (Nodes): 33719
- Interactions (Edges): 2397975
- Cities (Cultural Priors):
yelp数据仅进行了过滤和提取特征,还没有跑出完整结果。(新的数据在参数上不能进行大批次训练——amazon8192,只能在1024或2048,非则模型冷启动性能会崩,导致训练时间大幅度拉长,原因就是太大导致模型将多次比较同一负样本。)。
1.2 尝试从实验数据角度证明特征投毒(不包括最终结果)。
MGMAE训练记录之一:
[巅峰时刻] Epoch 16: Total Loss: 2.5271 | All-Recall: 0.4725 | All-NDCG: 0.3412
[崩溃时刻] Epoch 26: Total Loss: 2.0161 | All-Recall: 0.4575 | All-NDCG: 0.2917
模型在数学上变得“更优”了。但是它的推荐指标(Recall 和 NDCG)却发生了灾难性的暴跌, NDCG 从 0.34 直接崩盘到了 0.29。
完美呼应了论文里的核心痛点: MGMAE这类复杂的 SOTA 模型,包含了复杂的“掩码生成解码器”或“动态路由门控”。在训练初期(Epoch 1~16),图信号还在正常传播,它能达到一个不错的巅峰(0.4725)。 但在 Epoch 16 之后,那些复杂的生成任务和门控网络开始过度拟合(Over-fitting)。它们为了把 Loss 降得更低,开始向图网络中疯狂注入乘性噪声。这种噪声在图卷积中被反复放大,最终毒死了协同过滤信号。
总结
实验结果大体上符合预期,正在进行最后的总结。
