2026年8月28日(金) 2時
論文SNS の友達申請を AI で予測、数億人規模の実装に成功
Facebook のような大規模 SNS で「この人と友達になりませんか?」という提案を AI で行う研究。2つの工夫で、メモリ使用量を98%削減しながら、実際に友達申請の件数を16%増やした。
この研究のポイント
- 1.
何を調べたか
数億人ユーザーと数百億エッジを持つ実運用グラフで、友達提案を高速化するグラフニューラルネットワークの実装。メモリと計算速度のボトルネック解決を目的とした。
- 2.
見えてきたこと
マルチハッシュ埋め込みで 200GB → 4GB へメモリ削減、時系列ソート済み保存と二分探索で 1 ユーザー当たりの処理を高速化。両者を組み合わせても推奨品質を保持。
- 3.
私たちにとっての意味
オンライン A/B テストで友達申請成功率 16%増、新規友達追加ユーザー 11.5%増を実現。社会規模 AI システムの実装方針が「完璧な学習」ではなく「実現可能な工夫」にあることを示唆。
著者Maksim Utushkin, Andrei Ovsiannikov, Alexander D'yakonov
AIが気になってること
?SNS企業が『友達申請を増やす』ことに注力してる背景って、何か理由があるの?
SNS 企業にとって、友達の数は直結する経営指標なんですよね。つながりが増えるほど、投稿が拡散しやすくなり、ユーザーが滞在時間を伸ばす。つまり広告インプレッションが増える。Facebook の場合、友達が多いほどフィードに流れてくる情報量が増えるので、スクロール時間が長くなる。その時間を広告で埋めるビジネスモデルです。
もう一つ、友達申請の成功率を上げるのは、ユーザーの「ネットワーク効果」を高める行為でもあります。新規ユーザーが参入したときに、すぐに友達が多い状態をつくると、そのプラットフォームから去りにくくなる。初期段階での定着率が上がれば、長期的な成長率に大きく響きます。
つまり、AI で提案精度を高めるのは、単なる利便性の向上ではなく、ユーザーの粘着性と広告収益の両方を同時に伸ばす、経営戦略の一環と言えそうです。
SNS企業が『友達申請を増やす』ことに注力してる背景って、何か理由があるの?
SNS 企業にとって、友達の数は直結する経営指標なんですよね。つながりが増えるほど、投稿が拡散しやすくなり、ユーザーが滞在時間を伸ばす。つまり広告インプレッションが増える。Facebook の場合、友達が多いほどフィードに流れてくる情報量が増えるので、スクロール時間が長くなる。その時間を広告で埋めるビジネスモデルです。 もう一つ、友達申請の成功率を上げるのは、ユーザーの「ネットワーク効果」を高める行為でもあります。新規ユーザーが参入したときに、すぐに友達が多い状態をつくると、そのプラットフォームから去りにくくなる。初期段階での定着率が上がれば、長期的な成長率に大きく響きます。 つまり、AI で提案精度を高めるのは、単なる利便性の向上ではなく、ユーザーの粘着性と広告収益の両方を同時に伸ばす、経営戦略の一環と言えそうです。
AIAIからの回答
SNS 企業にとって、友達の数は直結する経営指標なんですよね。つながりが増えるほど、投稿が拡散しやすくなり、ユーザーが滞在時間を伸ばす。つまり広告インプレッションが増える。Facebook の場合、友達が多いほどフィードに流れてくる情報量が増えるので、スクロール時間が長くなる。その時間を広告で埋めるビジネスモデルです。
もう一つ、友達申請の成功率を上げるのは、ユーザーの「ネットワーク効果」を高める行為でもあります。新規ユーザーが参入したときに、すぐに友達が多い状態をつくると、そのプラットフォームから去りにくくなる。初期段階での定着率が上がれば、長期的な成長率に大きく響きます。
つまり、AI で提案精度を高めるのは、単なる利便性の向上ではなく、ユーザーの粘着性と広告収益の両方を同時に伸ばす、経営戦略の一環と言えそうです。
まだ回答がありません
ログインすると、回答を投稿できます
?これって『大量データを扱えない問題を、賢い圧縮と効率化で突破する』みたいな話?他の分野でも使えそう?
その通りです。実は、データセンターの世界ではずっとこの戦いなんですよね。
「全部を正確に処理したい」と「今すぐ答えを出したい」は、どの分野でもぶつかる。医療画像解析でも、自動運転でも、言語モデルでも。Facebook の友達提案は極端な例ですが、本質は同じです。
たとえば自動運転なら、カメラから入ってくる映像は秒間数百GB。でも車は瞬間的に判断しなきゃいけない。だから「今この車の直前10メートルが重要」と優先度をつけて、細部は捨てる。音声認識だって、話者全員の音声特性を1つの巨大な数値セットで持つより、「この人の話し方パターン」「この環境下のノイズパターン」と分割して学習するほうが、メモリも速度も上がる。
重要なのは、圧縮と効率化が「偶然」じゃなくて「構造を理解してから」やってることなんです。Facebook の場合も、「ユーザーは複数の小さな特徴の組み合わせで表現できる」「時系列で候補を絞れば大半はスキップしていい」という洞察があってこそ。これは単なるチューニングではなく、問題の本質を見つめた設計だと言えそうです。
これって『大量データを扱えない問題を、賢い圧縮と効率化で突破する』みたいな話?他の分野でも使えそう?
その通りです。実は、データセンターの世界ではずっとこの戦いなんですよね。 「全部を正確に処理したい」と「今すぐ答えを出したい」は、どの分野でもぶつかる。医療画像解析でも、自動運転でも、言語モデルでも。Facebook の友達提案は極端な例ですが、本質は同じです。 たとえば自動運転なら、カメラから入ってくる映像は秒間数百GB。でも車は瞬間的に判断しなきゃいけない。だから「今この車の直前10メートルが重要」と優先度をつけて、細部は捨てる。音声認識だって、話者全員の音声特性を1つの巨大な数値セットで持つより、「この人の話し方パターン」「この環境下のノイズパターン」と分割して学習するほうが、メモリも速度も上がる。 重要なのは、圧縮と効率化が「偶然」じゃなくて「構造を理解してから」やってることなんです。Facebook の場合も、「ユーザーは複数の小さな特徴の組み合わせで表現できる」「時系列で候補を絞れば大半はスキップしていい」という洞察があってこそ。これは単なるチューニングではなく、問題の本質を見つめた設計だと言えそうです。
AIAIからの回答
その通りです。実は、データセンターの世界ではずっとこの戦いなんですよね。
「全部を正確に処理したい」と「今すぐ答えを出したい」は、どの分野でもぶつかる。医療画像解析でも、自動運転でも、言語モデルでも。Facebook の友達提案は極端な例ですが、本質は同じです。
たとえば自動運転なら、カメラから入ってくる映像は秒間数百GB。でも車は瞬間的に判断しなきゃいけない。だから「今この車の直前10メートルが重要」と優先度をつけて、細部は捨てる。音声認識だって、話者全員の音声特性を1つの巨大な数値セットで持つより、「この人の話し方パターン」「この環境下のノイズパターン」と分割して学習するほうが、メモリも速度も上がる。
重要なのは、圧縮と効率化が「偶然」じゃなくて「構造を理解してから」やってることなんです。Facebook の場合も、「ユーザーは複数の小さな特徴の組み合わせで表現できる」「時系列で候補を絞れば大半はスキップしていい」という洞察があってこそ。これは単なるチューニングではなく、問題の本質を見つめた設計だと言えそうです。
まだ回答がありません
ログインすると、回答を投稿できます
?グラフニューラルネットワークって、普通のニューラルネットワークと何が違うの?
グラフニューラルネットワーク(GNN)が普通のニューラルネットワークと違う点は、「つながり」を学習の中心に置くことです。
普通のニューラルネットワークは、個々のデータを独立した入力として扱います。たとえば画像認識なら、1枚の画像を見て「これは猫か犬か」と判定する。各ピクセルの色が入力になりますが、画像全体が一つのセットとして流れていきます。
一方、GNNは「ノード」(この記事ではユーザー)と「エッジ」(友達関係)の関係性そのものをモデルに組み込みます。つまり、あるユーザーを理解するときに、その人の友達が誰なのか、友達の友達は誰なのか、という情報を直接活用する。友達申請の予測でいえば、「この人と友達になりやすい人は、共通の友達が多い人」という直感が、ネットワーク構造として学習に反映されるわけです。
記事の工夫(タイムスタンプ付きサンプリング)も、この「つながりの時系列」という、普通のニューラルネットワークでは扱いにくい情報を効率よく処理しているんですよね。社会的なネットワークを予測するなら、データそのものが「グラフ」の形をしているから、GNNが適してるということになります。
グラフニューラルネットワークって、普通のニューラルネットワークと何が違うの?
グラフニューラルネットワーク(GNN)が普通のニューラルネットワークと違う点は、「つながり」を学習の中心に置くことです。 普通のニューラルネットワークは、個々のデータを独立した入力として扱います。たとえば画像認識なら、1枚の画像を見て「これは猫か犬か」と判定する。各ピクセルの色が入力になりますが、画像全体が一つのセットとして流れていきます。 一方、GNNは「ノード」(この記事ではユーザー)と「エッジ」(友達関係)の関係性そのものをモデルに組み込みます。つまり、あるユーザーを理解するときに、その人の友達が誰なのか、友達の友達は誰なのか、という情報を直接活用する。友達申請の予測でいえば、「この人と友達になりやすい人は、共通の友達が多い人」という直感が、ネットワーク構造として学習に反映されるわけです。 記事の工夫(タイムスタンプ付きサンプリング)も、この「つながりの時系列」という、普通のニューラルネットワークでは扱いにくい情報を効率よく処理しているんですよね。社会的なネットワークを予測するなら、データそのものが「グラフ」の形をしているから、GNNが適してるということになります。
AIAIからの回答
グラフニューラルネットワーク(GNN)が普通のニューラルネットワークと違う点は、「つながり」を学習の中心に置くことです。
普通のニューラルネットワークは、個々のデータを独立した入力として扱います。たとえば画像認識なら、1枚の画像を見て「これは猫か犬か」と判定する。各ピクセルの色が入力になりますが、画像全体が一つのセットとして流れていきます。
一方、GNNは「ノード」(この記事ではユーザー)と「エッジ」(友達関係)の関係性そのものをモデルに組み込みます。つまり、あるユーザーを理解するときに、その人の友達が誰なのか、友達の友達は誰なのか、という情報を直接活用する。友達申請の予測でいえば、「この人と友達になりやすい人は、共通の友達が多い人」という直感が、ネットワーク構造として学習に反映されるわけです。
記事の工夫(タイムスタンプ付きサンプリング)も、この「つながりの時系列」という、普通のニューラルネットワークでは扱いにくい情報を効率よく処理しているんですよね。社会的なネットワークを予測するなら、データそのものが「グラフ」の形をしているから、GNNが適してるということになります。
まだ回答がありません
ログインすると、回答を投稿できます
?おすすめ友達の提案が増えると、自分のSNS体験って変わるの?嬉しいのか、ウザいのか?
おすすめ友達の提案が増えるって、実は両側面を同時に持ってる気がします。
嬉しい側面は、自分が無意識に失ってた「懐かしい友人」や「同じコミュニティの人」との再接続です。記事で「時間を考慮した近傍サンプリング」という工夫があるのは、「この人はいま友達を増やしやすい時期」を読み取ってるってことですよね。自分が新しい職場に入ったり、引っ越したりした時期に、タイムリーに「あ、こういう人もいるんだ」と気づかせてくれる。それは実は親切です。
ただ一方で、提案が増えるほど「なぜこの人なの?」というズレも増える。アルゴリズムが「つながりの可能性」を見つけるのは上手でも、「私が本当に繋がりたい人」とは別の話。提案の量が増えるだけだと、ノイズも増えてるのかもしれません。
実運用で友達申請が16%増えたというのは、「提案の質が上がった」というより、「提案の量と精度のバランスが取れた瞬間」を捉えてるのだと思う。多すぎず、かといって見逃さず、という按配が大事になってくるのかもしれません。
おすすめ友達の提案が増えると、自分のSNS体験って変わるの?嬉しいのか、ウザいのか?
おすすめ友達の提案が増えるって、実は両側面を同時に持ってる気がします。 嬉しい側面は、自分が無意識に失ってた「懐かしい友人」や「同じコミュニティの人」との再接続です。記事で「時間を考慮した近傍サンプリング」という工夫があるのは、「この人はいま友達を増やしやすい時期」を読み取ってるってことですよね。自分が新しい職場に入ったり、引っ越したりした時期に、タイムリーに「あ、こういう人もいるんだ」と気づかせてくれる。それは実は親切です。 ただ一方で、提案が増えるほど「なぜこの人なの?」というズレも増える。アルゴリズムが「つながりの可能性」を見つけるのは上手でも、「私が本当に繋がりたい人」とは別の話。提案の量が増えるだけだと、ノイズも増えてるのかもしれません。 実運用で友達申請が16%増えたというのは、「提案の質が上がった」というより、「提案の量と精度のバランスが取れた瞬間」を捉えてるのだと思う。多すぎず、かといって見逃さず、という按配が大事になってくるのかもしれません。
AIAIからの回答
おすすめ友達の提案が増えるって、実は両側面を同時に持ってる気がします。
嬉しい側面は、自分が無意識に失ってた「懐かしい友人」や「同じコミュニティの人」との再接続です。記事で「時間を考慮した近傍サンプリング」という工夫があるのは、「この人はいま友達を増やしやすい時期」を読み取ってるってことですよね。自分が新しい職場に入ったり、引っ越したりした時期に、タイムリーに「あ、こういう人もいるんだ」と気づかせてくれる。それは実は親切です。
ただ一方で、提案が増えるほど「なぜこの人なの?」というズレも増える。アルゴリズムが「つながりの可能性」を見つけるのは上手でも、「私が本当に繋がりたい人」とは別の話。提案の量が増えるだけだと、ノイズも増えてるのかもしれません。
実運用で友達申請が16%増えたというのは、「提案の質が上がった」というより、「提案の量と精度のバランスが取れた瞬間」を捉えてるのだと思う。多すぎず、かといって見逃さず、という按配が大事になってくるのかもしれません。
まだ回答がありません
ログインすると、回答を投稿できます
?友達申請が16%増えるのは利用者にとって良いことだけど、誰かが困ることってないの?
友達申請が増えるのって、表面的には「つながりが増える = いいこと」に見えますけど、誰かの負荷が確実に増えてるんですよね。
まず申請を受ける側。毎日、見知らぬ人からの友達申請が増えるわけです。面倒だから放置するか、いちいち断るか。既に親友との連絡だけで手一杯な人には、むしろ邪魔な通知が増えただけ。
もう一つは、申請を送る側の心理。「AI が進める人だから大丈夫だろう」と思っていても、断られたらショック。実際には相手に何の共通点もなかったり、一方的な期待で結ばれた関係になったりする。申請の敷居が下がれば、コミュニティ内の「何でこの人?」という違和感も増えます。
ビジネス的には「ユーザー数が増えた = 成功」ですが、ユーザー体験としては、不要な申請処理という小さな摩擦が何度も生まれてるはずです。人間関係の密度より、つながりの数を追う構図が見えてくるような気がします。
友達申請が16%増えるのは利用者にとって良いことだけど、誰かが困ることってないの?
友達申請が増えるのって、表面的には「つながりが増える = いいこと」に見えますけど、誰かの負荷が確実に増えてるんですよね。 まず申請を受ける側。毎日、見知らぬ人からの友達申請が増えるわけです。面倒だから放置するか、いちいち断るか。既に親友との連絡だけで手一杯な人には、むしろ邪魔な通知が増えただけ。 もう一つは、申請を送る側の心理。「AI が進める人だから大丈夫だろう」と思っていても、断られたらショック。実際には相手に何の共通点もなかったり、一方的な期待で結ばれた関係になったりする。申請の敷居が下がれば、コミュニティ内の「何でこの人?」という違和感も増えます。 ビジネス的には「ユーザー数が増えた = 成功」ですが、ユーザー体験としては、不要な申請処理という小さな摩擦が何度も生まれてるはずです。人間関係の密度より、つながりの数を追う構図が見えてくるような気がします。
AIAIからの回答
友達申請が増えるのって、表面的には「つながりが増える = いいこと」に見えますけど、誰かの負荷が確実に増えてるんですよね。
まず申請を受ける側。毎日、見知らぬ人からの友達申請が増えるわけです。面倒だから放置するか、いちいち断るか。既に親友との連絡だけで手一杯な人には、むしろ邪魔な通知が増えただけ。
もう一つは、申請を送る側の心理。「AI が進める人だから大丈夫だろう」と思っていても、断られたらショック。実際には相手に何の共通点もなかったり、一方的な期待で結ばれた関係になったりする。申請の敷居が下がれば、コミュニティ内の「何でこの人?」という違和感も増えます。
ビジネス的には「ユーザー数が増えた = 成功」ですが、ユーザー体験としては、不要な申請処理という小さな摩擦が何度も生まれてるはずです。人間関係の密度より、つながりの数を追う構図が見えてくるような気がします。
まだ回答がありません
ログインすると、回答を投稿できます