― ユーザーデータに依存しない音楽レコメンドシステムを作った話 ―
音楽レコメンドと聞くと、多くの人は
「ユーザーの再生履歴」や「いいね」などの行動データを使うものを想像すると思います。
でも、ふとこんな疑問が浮かびました。
「もしユーザーデータが一切なかったら、音楽はおすすめできないのだろうか?」
この疑問がきっかけで、
音そのものだけを使ったAI音楽レコメンドシステムの開発を始めました。
なぜ「音だけ」にこだわったのか
実際のプロダクト開発では、
- 新規ユーザー(コールドスタート)
- 再生履歴のない楽曲
- プライバシー制約
など、ユーザーデータが使えない場面が多く存在します。
そこで今回はあえて、
- ユーザーデータなし
- メタデータなし
- 協調フィルタリングなし
という制約を設け、
**「音楽そのものの特徴だけで、どこまでできるか」**に挑戦しました。
システム概要
このシステムは、入力された音楽ファイルに対して、
- 音声データを読み込み
- 事前学習済みの深層学習モデルで音響特徴を抽出
- ベクトル化された音の特徴をFAISSで高速検索
- 類似度の高い楽曲をTop-Kで推薦
という流れで動作します。
すべての処理は Python + PyTorch を中心に構築し、
GPU環境・Docker に対応させることで、再現性と拡張性も意識しました。
結果と学び
評価の結果、Top-Kレコメンドの精度は 約80%。
ランダム推薦(約20%)と比較して、約4倍の改善を達成しました。
このプロジェクトを通じて強く感じたのは、
- モデル単体よりも「システム全体設計」が重要であること
- 学習済みモデルを「どう使うか」で価値が大きく変わること
- MLは研究だけでなく、プロダクトとして成立させて初めて意味を持つということ
です。
今後やりたいこと
今後はこのシステムをベースに、
- 実サービスを想定したAPI化
- 他の音声ドメイン(効果音・環境音)への応用
- フロントエンドと組み合わせた体験設計
にも挑戦していきたいと考えています。
最後に
このプロジェクトは、
「AIで何ができるか」よりも
**「現実の制約の中で、どう価値を生み出すか」**を考えるきっかけになりました。
もし、
- 音声AI
- レコメンドシステム
- MLエンジニアリング
に興味がある方がいれば、ぜひお話しできると嬉しいです。