音乐特征的机器学习算法

数据挖掘 机器学习 Python scikit-学习 聚类 无监督学习
2021-09-23 01:54:41

我是机器学习主题的新手,我需要从音乐数据中创建模型。

它包含歌曲的特征,但没有标记。如何从中创建模型?

我需要使用无监督学习算法吗?如果我使用深度学习方法,哪个更好或更好。

数据看起来像这样:

      danceability  loudness  valence  energy  instrumentalness  acousticness  
136         0.795    -8.334    0.578   0.409          0.000000      0.684000   
442         0.502    -4.556    0.720   0.912          0.000173      0.000025   
92          0.713   -14.590    0.560   0.258          0.006060      0.877000   
67          0.505   -14.951    0.723   0.782          0.930000      0.921000   
127         0.470    -6.740    0.490   0.809          0.006710      0.272000 
3个回答

如果您要解决的问题是“我需要根据我得到的歌曲特征数据来猜测新歌曲是否适合用户的口味”。

如果你有一些迹象表明用户过去喜欢/听过什么;您可以使用“推荐引擎”方法。

示例:https ://tampub.uta.fi/bitstream/handle/10024/101198/GRADU-1495623946.pdf?sequence=1

它是在“相似”的基础上工作的;例如:

  1. 假设:所有嘻哈歌曲在能量、响度等特征中都有一些共同的模式。
  2. 如果用户喜欢 Hip-Hop(可以根据歌曲的特征从用户的历史中判断),那么可以推荐其他 Hip-Hop 歌曲

您只有有关数据特征的信息,没有任何标签,因此根据定义,您正在处理无监督学习

您可能可以使用一些聚类算法(mean-shift、k-means 等)将数据分组,然后使用最近邻来预测您可以根据用户的偏好向用户推荐的最接近的新歌曲,或者使用一些特定于用户的阈值来确定一首新歌适合用户口味的可能性(1/新歌与用户均值的距离是概率,他的阈值可以与他的方差相关)。

您根本不需要机器学习

根据你模糊的描述,没有什么可以学习的。

您想要做的可能是相似性搜索给定用户最喜欢的歌曲,找到相似的歌曲。那里没有学习。