「音MAD」と一緒に使用されるタグを集計した

データサイエンスは全くわからないのだけれど、「どのタグが一緒に使われているのかな」程度の情報であれば自分でも集められる。ので、htmlとjsにまとめたサイトを作った。

できること

マウスのD&Dだとか、マウスホイールによって縮尺を変えられるようにしているので、細かいところまで見れる。多分だけど削除されている動画以外のタグの利用はすべて収集できているはず。1つしかないタグが本当に大量にあってヤバい。

面白かった所をいくつか列挙する

  • 懐かしいタグがたくさんあってヤバい
    • 基本的にタグは使い捨てで、生き続けているタグはとても少ない
      • 特定の年度でのみ生きているタグって結構たくさんある
    • アニメ個別のタグとかすごい
    • 盛者必衰かも
  • やはり一部のタグに集中してしまう
    • 1~10位くらいが圧倒的すぎる
    • 綺麗な指数関数のように見える
  • 「もっと評価されるべき」が思ったよりも使われている
    • 個人的には利用用途があまりわからないんだよな
    • 「もっと評価されるべき」を広めるためのコミュニティがあるのだろうか?
    • 2010年以降、ずっと上位に存在する
      • 2022/08/14現在では全タグ中一位になっている
  • 「真夏の夜の淫夢」の発展
    • 2011年頃からよく見られるようになり、年々投稿数が多くなっていく
    • 2016年に「アニメ」を抜く
    • 2020年に「エンターテイメント」を抜く
    • これに従うように「例のアレ」タグはおおよそ例年一位を記録している
  • 「アニメ」タグの衰退
    • 一時期のような、新作アニメが出たらとりあえず定番素材で音MADが作られる流れはもうほとんどない
    • 2020年からはパイチャートの下のほうにちょっと存在するくらいになってしまった
      • 2019年のジャンル機能リリースによる弊害をモロに受けてしまった様子
      • 他の旧カテタグは生き残っているが「アニメ」は死亡した
  • 「大変な途中下車シリーズ」が根強い人気を誇っている
    • 2011年に上位に登場して以降少しずつ順位を上げている
    • 全体では→ 真夏の夜の淫夢 > クッキー☆ > 大変な途中下車シリーズ > RED_ZONE > アイドルマスター
      • (旧カテタグと「もっと評価されるべき」を除く)
  • 各年代の流行りものが見れて面白い
  • ちょくちょく晒しタグが見える
    • 100
    • 141
    • 150
  • やっぱり2007年のタグは少ない
    • 音MADってタグが生まれたのが2008年以降だからだよね?
  • 「Hikakin_Mania」は誕生年からそんなに経っていないのに作品数がかなり多い
  • 自分の見る音MADの範囲が如何に偏っているかよくわかった

作り方

github.com

EChartsというフロント向けのライブラリを利用したhtmlをよしなに生成してくれる go-echarts を利用した。使い方など、詳しくはotomad-tag-sortのソースコードと下記リポジトリにあるexamesを見てください。

github.com

図の生成手段については解決した。次に、ニコニコ動画のタグを一括で取得することを考える。

まず、国立情報学研究所ニコニコ動画のデータセットを公開しているのでこれを利用する。現在、2021年9月までの動画のメタデータがjsonlで落とせるので、ここから「音MAD」タグを利用している動画をフィルタリングする。ただ、このデータセットの更新頻度はとても低く、せいぜい数年に一度なので、新しい動画については別途収集手段を設ける必要がある。

そこで、ニコニコ動画投稿動画ID一覧と、スナップショット検索APIを利用する。

投稿動画ID一覧はニコニコ動画に投稿されててかつ公開状態にある動画のID一覧を取得できるページを提供していて*1、ここをスクレイピングすることで現存する動画のID一覧を取得できる。スナップショット検索APIニコニコ動画のコンテンツを解析するための情報取得に使えるAPIで、今回の場合はIDをキーとしてタグなどの情報を取得している。ただ、スナップショット検索APIのデータ更新は一日に一度しか行われない。投稿動画ID一覧/スナップショット検索APIの最新IDを比べると、スナップショット検索APIの方は古いものが返ってくる。そのため、まずスナップショット検索APIで最新の動画IDを控えておき、実際にタグなどのデータを取得する際は「『現在取得済みの情報のうち最新ID』~『スナップショット検索APIの最新ID』」を対象とする必要があった。

今回、範囲を音MADに絞ったのは理由があって、ひとつはもちろん自分の趣味ではあるんだけれど、それよりも一度に扱うデータのサイズを小さくすることに主目的があった。関係ない動画を含むと今回作成したHTMLであってもとんでもないサイズになってしまうため、適切な範囲として「音MAD」を選択した。今は音MADでない動画もデータソースとして保存している関係上、データの自動更新などは行っていない。これはGitHubリポジトリとして管理するにはファイルサイズが大きすぎるため。保存するデータも音MADのものに絞れば一日一回更新も可能だろうが、一旦手動更新で済ませている。

そのくらいかな、音MADが沢山投稿されており、僕はとても嬉しいです。もっと沢山見ていきたいね。

*1:僕も今回始めて知りました