こんにちは、学びの探求者です。
普段は note で活動しています。
2025年のQiitaアドベントカレンダーでは、
「ノーコード/ローコードで、自分のコンテンツ基盤を自動化していく」
をテーマに、25日間の仕組みづくりを記録していきます。
ぜひ、応援してください。
Day13:セトリ予測モデルの「違和感」とちゃんと向き合ってみた
Day10〜Day12 で、
- WEST. の楽曲データ(songs シート)
- ライブ登場回数(live_count)
- ライブ人気指数(lpi)
- 各種補正パラメータ(age_weight / hit_bonus など)
を作り、
最終的な予測スコア(pred_score / final_weight) までたどり着きました。
今日は、このスコアを使って実際に曲を並べてみたときに出てきた
「あれ、ちょっと違和感あるぞ?」
をちゃんと言語化してみる回です。
1. まずはスコアでソートしてみる
songs シートには、以下のような列を追加しました:
- lpi(Live Popularity Index)
- age_weight(曲の年齢に応じた重み)
- hit_bonus(代表曲・ヒット曲の補正)
- tour_block_weight(ツアー構成への馴染みやすさ)
- mood(曲の雰囲気:しっとり / アッパー など)
- freshness_bonus(新曲補正)
- award_duplication_penalty(ベストアルバム重複ペナルティ)
- unit_penalty(ユニット / ソロ曲の軽い減点)
- pred_score(予測用の中間スコア)
- final_weight(最終的な並べ替えに使うスコア)
ざっくりいうと、
- lpi をベースにしつつ
- 「新しさ」「代表曲らしさ」「ツアー構成へのハマり具合」
- 逆に「AWARD に重複している」「ユニット曲である」
といった要素を掛け合わせて
final_weight を計算 → 降順でソートしています。
2. そこで出てきた“違和感”たち
並べてみると、ぱっと見は「それっぽい」並びになるものの、
実際の感覚と比べると、いくつか気になる点が出てきました。
違和感その1:最新アルバム『A.H.O. -Audio Hang Out-』曲が弱い
最初にスコアを出したときは、
最新アルバム曲がトップ30にほぼ入ってきませんでした。
理由を追っていくと、シンプルなバグがありました。
age = 2025 - release_year
という式で年齢を計算していたため、
2025年リリース曲の age が 0 になっていたのです。
当然ながら、live_rate は
age = MAX(2025 - release_year, 1)
で計算しているので、0 で割るとおかしな値になります。
そこで、
age = MAX(2025 - release_year, 1)
と書き換え、
最小でも 1 歳はあることにする、というルールに修正しました。
この修正により、
- 2024〜2025年の A.H.O. 曲も
- 「まだライブ回数は少ないけれど、最新曲としては十分に強い」
という、自然な位置に上がってきました。
モデルが“最新曲を弱く見積もりすぎていた”のではなく、
単純に age の定義が間違っていた、という発見でした。
違和感その2:『アンジョーヤリーナ』が上位に来ない
もうひとつ大きかったのが、
「2025年は、音楽番組などで何度も歌われている
『アンジョーヤリーナ』が、スコア上そこまで上位に来ない」
という点です。
これは、バグではなく モデルの限界 によるものです。
- live_count(過去のツアーなどで歌われた回数)
- setlists に含まれている/いない
といった「これまでの実績」から計算しているため、
- 「ここ1〜2年で急に再評価されている」
- 「テレビ露出やSNSでのバズが増えている」
といった “時系列の人気の変化” までは反映できていません。
アンジョーヤリーナはまさに
「過去データではそこまで強くないのに、
2025年の空気感では明らかに“強い曲”」
に分類される曲で、
モデルにとっては 盲点になるタイプ でした。
3. モデルの「違和感」は、次の一歩のヒントになる
今回はあえて、
- スコアを計算して
- 実際にソートしてみて
- 「おや?」と思ったところ
をそのまま残しました。
この違和感から、次のような改善ポイントが見えてきます。
- 最新アルバム曲には、もっと強い 新曲ボーナス を掛けてもいいのでは?
- 「今年のテレビ露出が多い曲」には、別枠の 時事人気補正 が必要では?
- バラード枠や“聴かせる曲”は、単純な live_count とは別に 構成上の役割補正 を入れてもいいのでは?
特に『アンジョーヤリーナ』のように、
- 2024〜2025年にかけて何度も歌われている
- SNS や Google トレンドでも明らかに“今”熱い
といった曲は、
データベース上の「過去実績」だけでは拾えない人気 の代表例です。
4. 今日は「未完成のまま、一度立ち止まる」回
Day13 では、あえて
- モデルが出してきたランキングを眺めて
- 自分の感覚と照らし合わせて
- 「どこがズレているのか?」を言語化する
ところまでにしました。
「違和感がある=モデルがダメ」ではなく、
「違和感こそ、モデルを育てるための材料」
という視点で、一度立ち止まってみた回です。
次回予告:Day14
Day14 では、この違和感をベースに
- 新曲ボーナスの強化
- アルバム曲/シングル曲のバランス補正
- 年越しライブならではの“構成パターン”を意識した重みづけ
などを追加して、
「より “年越し WEST. ライブのセトリっぽい” モデル に近づけていきます。
引き続き、応援よろしくお願いします♪
