Acervans/Lastfm-VADS
收藏Last.fm Valence, Arousal, Dominance & Sentiment Ratio Dataset
数据集概述
该数据集包含超过80万首歌曲的情感值(Valence, Arousal, Dominance)和情感比率(Sentiment Ratio),以及相应的艺术家、专辑和标签。
数据集详情
该数据集是为了用于学士论文而精心策划的,旨在将情感特征集成到音乐推荐系统中,同时结合歌曲固有特征,如艺术家、专辑、交互时间戳和自动分配的评分。
数据集描述
- 策划者: Javier Wang
- 语言: 英语
数据集来源
- 仓库: https://huggingface.co/datasets/Acervans/Lastfm-VADS
- 演示: https://github.com/Acervans/lastfm_RS
用途
该数据集的特征可以集成到任何机器学习模型中,特别是推荐系统(RecSys)模型,以评估包含的类型(歌曲固有特征或情感特征)的模型性能。这些文件结构化,可以直接在RecBole框架中使用,特别是上下文感知模型,如果需要集成所有特征。
数据集结构
该数据集包含三个原子文件,均使用制表符作为字段分隔符:
lastfm_recbole.inter- 包含用户-歌曲交互,组织为:- user_id: 用户ID。
- track_id: 歌曲ID。
- rating: 根据用户交互类型分配给歌曲的评分,如果有多个交互类型,则取最高评分。
- timestamp: 交互时间戳。
lastfm_recbole.item- 包含项目特征,组织为:- track_id: 歌曲ID。
- tags: 标签作为连续的令牌,根据用户分配次数重复,并用空格分隔。
- artist_id: 艺术家ID。
- album_id: 专辑ID。
- v: 歌曲的Valence值。
- a: 歌曲的Arousal值。
- d: 歌曲的Dominance值。
- stsc: 歌曲的Sentiment Ratio值。
lastfm_recbole.user- 包含用户ID。该文件保留以保持处理过程中分配的相同ID。
文件**lastfm_data.tar.gz**包含使用Last.fm的API抓取的原始文件,分布在多个JSON和DAT文件中。请查看其中的Readme.txt以了解这些文件的结构。
源数据
该数据集的源数据来自Last.fm的API。用于分析情感的文本来源(标签定义)来自Wikipedia的API。
数据收集和处理
该数据集通过一个简单的网络爬虫获得。它使用Last.fm的API检索前50个排行榜标签,代表当时最常听的标签。对于每个标签,我们获取与之关联的前独特艺术家和前30个独特听众。然后,我们使用API从顶级听众那里收集数据,获取他们的前20首歌曲、最近播放的歌曲和喜爱的歌曲,每个都有相应的时间戳、艺术家和专辑信息。此外,我们还收集了每个听众的前10位艺术家和专辑。最后,我们获取用户为每个独特歌曲、艺术家和专辑分配的前10个标签,这些标签根据从Wikipedia的API检索的摘要进行定义。
在处理过程中,.inter文件中的评分根据收听次数、交互类型(喜爱、最近、顶级)和排名进行分配。.item文件中的所有标签都经过预处理以减少歧义,去除空格和破折号并转换为小写。然后,这些标签根据用户分配次数重复,以增加每首歌曲的权重。最后,为每首歌曲、用户和专辑分配唯一ID,以符合数据保护原则。




