試行・思考

YouTubeのデータのみでソーシャルグラフを獲得する手法の考察(VTuberで調査)

こんにちは,しまさん(@shimasan0x00)です.

最近はVTuber関連の分析を色々やってます.

にじさんじのチャンネル登録者数とTwitterのフォロワーの相関を見るまで[Python]そろそろYouTube Data APIを雑に触りたいので練習がてらソーシャルメディアをまたいだ関係分析をしてみたいと思います. 今回はVTuber事務所の1つであるにじさんじ,hololive(ホロライブ)に所属するVTuberのYouTubeチャンネル登録者数とTwitterのフォロワー数に相関があるか雑に分析します. 公式ページからスクレイピングして雑な辞書に様々なデータを格納していくことにします....
にじさんじ,ホロライブライバーのフォロワー類似度をJaccard係数で可視化する今回はJaccard係数を使用してにじさんじ,ホロライブライバーのフォロワー類似度を計算し,可視化をしました. フォロワー類似度だけでグループが抽出できていたり,コラボの行動結果によってフォロワーが獲得されている可能性が出てきたので有益だったなと思います....
にじさんじライバーの類似度をTwitterの自己紹介部分をベクトル化して間接的に計算してみた(BoW,TF-IDF)今回は手始めとして,文章量は心もとないですがにじさんじライバーのTwitterプロフィールをベクトル化(TF-IDF,BoW)して,cos類似度で比較することで各ライバーの類似ライバーを探してみたいと思います....

使用するデータとしてはTwitterがメインで,YouTubeのデータは少ししか使用していないですね.

また,YouTube上の挙動をTwitterデータで間接的に表現できないかなんていうのもやっています.

YouTubeの関連動画の関連動画の...(n回試行)をTwitterデータで間接的に求めてみたYoutubeの関連動画の関連動画の...(n回試行)をTwitterデータで間接的に求めてみた.PythonとTwitter APIを用いることで実装しました....

なぜ,YouTubeのデータをあまり使わなかったかというと,単純にTwitterのデータが使いやすいからです(なお,自然言語部分は魔窟).

データとして人間関係(ソーシャルグラフ)が取れるので,上記のような分析をすることができています.

そんなこんなでTwitterのデータばかり使用している私は思いました.

「YouTubeでも人間関係(ソーシャルグラフ)取れたら面白くね??」

チャンネル登録の情報などはAPIを持つユーザのみしか得ることができないので工夫をする必要があります.

今回の手法は”動画配信をしているユーザ”に限られますが,動画の概要部分のリンク情報を使用して有向グラフを生成します.

生成した結果,キツイ制限にも関わらず面白い有向グラフ(ソーシャルグラフ)が得られ,SeedユーザとしてVTuberを選んだがゆえの特徴も出る非常に興味深い結果となりました.

環境

  • macOS Catalina 10.15
  • Python 3.6.8

スポンサーリンク

処理手順

  1. Seedユーザの選定
  2. 動画リストの取得(最新10件)
  3. 各動画の概要欄を取得
  4. 概要欄からYouTubeのチャンネルリンクを取得
  5. ユーザからリンク先ユーザに対してエッジを張る
  6. 動画情報をまだ取得していないユーザを選定し,2.に戻る

この手法の制限

一番のキツイ制限はやはりYouTube Data APIのlimitです.

GCPのAPI ->「割り当て」から一日で使用可能なクォータがわかるのですが個人の私には10,000という値はあまりに少なく,”今回の制限”であっても軽く9000は超えます.

次に各ユーザの動画取得上限が10件である点です.

最後に,概要欄から抽出するYouTubeのチャンネルリンクですが,「youtube.com\/channel\/…」形式のものしか正規表現で取得しておらず,短縮URLやカスタムURL,○○視点用の動画リンクなどは今回対象としていません.

短縮URLやカスタムURLなんかは今後対応できる部分ではあると思っています.

スポンサーリンク

手法の実施結果

今回はSeedユーザとしてVTuber事務所「ホロライブ」に所属する「天音かなた」さんを採用し,実施しました.

リンク情報を追跡することで,コラボ行動やグループの存在認知,該当ユーザの必要とする情報などがグラフから見られると嬉しいなという感じです.

有向グラフなので,一方的な有向エッジなどにも注目したいところです.

今回得られたグラフを以下に示します.

ノードの大きさがチャンネル登録者数,エッジの色がリンクを張っている回数です.

VTuberをSeedとしたため,歌配信のために必要とする音楽系チャンネルが出てきているのは面白いです.

また,一応「ホロライブ」を対象としたのですが,「ハニーストラップ」やその他のVTuberもグラフ上に出現しています.

動画取得上限を10件からかなり増やせば,VTuber界全体の繋がりをYouTubeデータのみから得ることができると考えられます(VTuberでなくても適用可能).

また,ホロライブ内でもリンクの張り方に特徴があり,概要欄にも自身のチャンネルリンクを付与しているユーザがいることがわかります.

ハニーストラップでは概要欄に他の所属Vを入れることを明示的に指示されているのか,ハニーストラップ内では完全グラフとなっています.

所属事務所の指示や配信者の癖などもYoutubeデータからわかるとなると面白いですね.

さいごに

今回は実験的ではありますが,YouTubeのデータからソーシャルグラフを作成し,可視化まで行いました.

VTuberをSeedとした結果,配信に関係する歌系チャンネルへのリンクが明示的に確認され,各ユーザでそれぞれ10件という非常に少ない動画データからもここまでグラフ構造を得ることができました.

もう少し規模を大きくして基本的なネットワーク分析をしたいところです.

ただ,今回の手法を代わりに大規模で実施してくれる人を強く望みますね.

個人ではできたとしても超絶時間がかかるでしょうし….

この規模であれば1日(PT基準なので毎日16:00-)に1回実行できるかなぁ…くらいなので,他のVやYouTuberをSeedとした結果も見ようかなと思います(時間があれば).

ABOUT ME
しまさん
高専→大学編入→大学院→? / 計算社会科学,ウェブマイニングなど / グレープフルーツと本が好き / SNS(Twitter,YouTube,Twitch)やVTuberのデータ分析屋 詳しいプロフィールはこちら≫ 投げ銭はコチラ