6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

X(旧Twitter)のCommunityNotesについて軽く調べてみためも

Posted at

参考資料

参考にしたのはこちら.

公式のコード、レポジトリ

Twitterの公式解説(英語)

(日本語だと出てきていない気がする)

CommunityNotesの論文(英語)

Gigazineの解説記事(日本語)

Youtubeの解説動画(日本語)

他解説記事(英語)

仕組みのまとめ

簡単には下記の流れの様子.

  1. まず条件を満たしたノートとユーザでノートの価値を決める
  2. 一度推定した価値を元に大きく評価を外しているユーザを除外し、再度ノートの価値を決定
  3. 偽のユーザを元に評価の信頼区間を評価し、"有用"、"有用ではない"、"もっと評価が必要"を割り振る

各ステップにおけるノート評価の方法はMatrixFactorizationを使用する.

技術詳細とポイント

ソフトウェアの全体の構成なども実際はポイントがあるかもしれないが(とんでもないユーザ数とノート数になるので)、ここではアルゴリズムにフォーカス.

大事なのは下記のMatrixFactorization. 詳細な技術解説は他のQiita記事がたくさんあるので、ここでは簡単な紹介のみ.

MatrixFactorization

目的と効果

行列の分解を行い、潜在的な特徴量を取得する技術(今回ならノートの潜在特徴量とユーザの潜在特徴量)。以前は特異値分解が主流だったが、データが欠損しているマスを0として組み込まなくてはならないことなどで特徴量の推測に影響を与えてしまうことなどが課題だった.
ところがこのMatrixFactorizationでは、データがない箇所は無視して扱える点において優れている.

そもそもはKaggleで開催されたNetflixのおすすめ映画を決めるコンペで、各ユーザにおすすめする映画を決めるアルゴリズムとして生まれたが、今回のCommunityNotesではユーザ固有のおすすめ度合いが高いものを除去する方向で活用している。

手法

  1. 行列のN(mxk),U(kxn)が行列M(nxm)を構成するとして各要素をランダムな値で初期化.kは決めとく.
  2. NとUを掛け合わせる
  3. 行列Mのうちデータが欠損していないデータでのみ、掛け合わせた値と比較した誤差の合計から勾配法でNとUの要素を更新
  4. 条件が満たされるまで、2~を繰り返す

良いノートの決まり方

上記のMatrixFactorizationを実行すると下記の式の$\mu$,$i_u$,$i_n$,$f_u$,$f_n$が定まっていく. $\mu$は全体的な評価のズレる方向(みんないい方に評価しやすいかや悪い方向に評価しやすいかを吸収)、$i_u$はユーザの評価のズレる方向(常に良い評価をつけがちか、常に悪い方につけがちかを吸収)、$i_n$が今回最も欲しいノートの価値、$f_u \cdot f_n $がユーザとノートの相性.

image.png
画像は
https://vitalik.ca/general/2023/08/16/communitynotes.html
より引用

$\mu$は全体のずれ方なので一旦置いておく.

通常は$f_u \cdot f_n $を求めたい.なぜならユーザにおすすめできる具合の評価値なので、この値が高いノートがおすすめできるノートだからだ。
しかし、コミュニティノートでは、全ユーザが良いというものほど良いノートとされる。

今回のポイントは$f_u \cdot f_n $が小さいノートほど、他の値が大きくなれるということ。
つまり、ユーザの嗜好に反応しやすいノートは$f_u \cdot f_n $が大きく、$i_n$, $i_u$が小さくなり、
逆にユーザの嗜好に関係ないのに評価が高い場合は、$f_u \cdot f_n $の値が小さく、$i_n$, $i_u$が大きくなるということ. このうちユーザが高くしやすいかどうかに依存しないなら、$i_n$つまりノート自体がそもそも評価されやすく、価値のあるものということがわかる。

分布

論文によれば$f_n,f_u$は1次元を使った評価をして、特に指定していないのに、自然と政治的な嗜好性と結びついた様子。
実運用上、何次元にしているかはコードを見る必要があり。

ss.png
画像は https://arxiv.org/abs/2210.15723 より引用
縦軸は$i_n$、横軸は$f_n$. 縦軸は高いほどよい.

この画像で、両端は$f_n$の絶対値が高い状況.真ん中の部分は多くのユーザに良いとされるノートたち、逆に下側は広いユーザに悪い評価がつけられている品質の低いノートということ。

論文では、実際にノートを導入したことで効果があったか、抑えられたかなどの評価も実施している.
実際に運用でコミュニティーノートが付与されることで、比較対象のグループと比べて25%~34%のいいねやリツイートが抑制されたとのこと.

ss2.png
画像は https://arxiv.org/abs/2210.15723 より引用

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?