復習:プレイリストのムード
CoddyのMachine Learningジャーニー「教師なし学習」セクションの一部。レッスン 42/51。
チャレンジ
中級プレイリストの98曲はsongs.csvにあります。曲をムード別に分類しましょう。グラフの準備はできています。
- 4つの特徴量をスケーリングし、曲を4つのクラスターに分類します。
- エネルギーとバレンスの平均値から各クラスターに名前を付けます。両方が0.5以上なら
happy、エネルギーだけならtense、バレンスだけならcalm、どちらでもなければsadです。 - サイズの大きい順に、各ムードの曲数とアンセム(クラスターの中心に最も近い曲)を出力します。
- 横軸にバレンス、縦軸にエネルギーをとり、ムードごとに1つのグループを、その名前をラベルとして散布図にします。凡例を表示し、グラフを表示します。
この章の最初のプレイリストの場合:
happy: 26 songs, anthem Lucky Avenue
tense: 22 songs, anthem Midnight Highway
sad: 17 songs, anthem Grey Bridges
calm: 15 songs, anthem Soft Windowそして、そのグラフ:
では、Coddyがあなたのプレイリストについて説明します。
自分で試してみよう
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 1曲につき1行:energyとvalence(0が悲しい、1が幸せ)は0から1の範囲、tempo、acousticness
songs = pd.read_csv("songs.csv")
features = ["energy", "valence", "tempo_bpm", "acousticness"]
fig, ax = plt.subplots()
ax.set_title("Playlist Moods")
ax.set_xlabel("Valence (sad to happy)")
ax.set_ylabel("Energy")
# 以下にコードを書いてください
教師なし学習のすべてのレッスン
自分で練習してみよう: Pythonオンラインコンパイラ