关于腾讯广告算法大赛2025项目分析1 - dataset.py
把原始 jsonl 用户行为序列转成模型能直接吃的张量tensor和特征字典一、整体定位MyDataset 读取训练数据产出:用户序列 seq正样本 pos负样本 negtoken 类型各类特征时间特征相关原始时间戳MyTestDataset 读取测试/推理数据产出用户序列 seqtoken 类型特征user_id时间信息暴露未点击集合collate_fn 在 DataLoader 拼 batch 时把“每条样本里的字典特征”整理成规则 tensor并额外构造时间特征。model.py 里的 BaselineModel 再把这些 tensor 转成 embedding送入序列模型HSTU block做训练/预测。二、架构设计MyDatasetinit加载索引、特征表、多模态向量和 schemaload_offsets加载每个用户序列的文件偏移load_user_data按 uid 从 seq.jsonl 随机读取一条用户序列random_neq随机负采样getitem把单个用户序列转成训练样本len返回训练用户数init_feat_info定义特征类型、默认值、统计信息get_time_diff_bin把时间差映射到离散桶fill_missing_feat给特征字典补默认值和多模态 embcollate_fn把 batch 样本拼成 tensor并构造时间特征MyTestDatasetinit加载推理集索引和特征配置load_data_and_offsets加载推理集偏移process_cold_start_feat把冷启动 string 特征归零getitem把单个用户序列转成推理输入len返回推理用户数collate_fn拼 batch并额外构造曝光未点击集合工具函数save_emb把 embedding 存成二进制文件load_mm_emb加载多模态 embedding三、采样方法单个用户序列正采样随机负采样pos自动将下一个交互的item视为当前样本的正样本neg从未与当前用户交互过的item集合中随机一个作为负样本四、注意为什么模型必须用 tensorPyTorch 的所有层Linear / Embedding / Transformer都只接受 tensor
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2452381.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!