UpworthyのA/Bテストでヘッドライン(見出し)ランカーを訓練し、評価方法を修正して、Geminiとの比較やRedditへの転移性を検証してみた。
ボード
| エントリー | スコア |
|---|---|
| ModernBERT, 2015 tail | 0.704 |
| 除外: 2015年終盤 | 0.704 |
| ModernBERT, holdout | 0.637 |
| ModernBERT, exploratory | 0.624 |
| MSE | 0.637 |
| MSE, more data | 0.724 |
| Bradley-Terry | 0.775 |
| Bradley-Terry, more data | 0.787 |
| VERA, best-vs-worst | 0.812 |
| VERA, every pair | 0.689 |
| Linguistic features | 0.544 |
| Gemini 3.1 Pro | 0.751 |
| 人間 | ~ランダム |
| Llama-3-8B LoRA | 0.469 |
| メール件名 | 公開データなし |
新しい決定モデルをベースに構築された約300の公開プロジェクトのうち、「スコアリングとランキング」を扱う26のプロジェクトを調べてみました。この26個すべてが、「この記事を評価して」「このコピーを審査して」「このドキュメントが関連しているか判定して」とモデルにプロンプトで尋ねることでスコアを取得していました。
私はこれを、実際に測定された結果データを使ってやってみたいと考えました。将来的にはメールの件名をスコアリングしたいと思っているので、どのヘッドラインがより多くのクリックを獲得したかを予測することから始めるのが良さそうだと考えました。
その結果として出来上がったのが、Apache 2.0ライセンスで公開した435Mパラメータのヘッドラインランカー、NovusEdge/vera-deberta-v3-large11NovusEdge/vera-deberta-v3-large, huggingface.co です。テキストを1回のフォワードパスでスコアリングします。ベースモデルは型付き決定タスクで事前学習されたDeBERTa-v3-largeである com-kotobalabs/open-jev-deberta-v3-large22com-kotobalabs/open-jev-deberta-v3-large, huggingface.co です。試してみたい方向けにウェイトも公開しています。
| 指標 | 本モデル | ランダム(Chance) |
|---|---|---|
| テスト内の全ペア(未知のスプリット) | 0.689 | 0.524 |
| テスト結果が統計的に有意だったペア (p<0.05) | 0.843 | 0.547 |
| クリーンなペア(学習テキストと類似なし) | 0.671 | 0.524 |
| 4〜5個のバリアントから最良のものを選択 | 47.7% | 24.9% |
| 最悪のバリアントを回避 | 90.3% | 75.1% |
| Redditタイトルのペア(ドメイン外) | 0.522 | 0.500 |
5%水準で統計的有意差に達したペアは全体の29%にすぎません。1行目には、観測されたクリック率の差がノイズである可能性があるものも含め、すべてのペアが含まれています。2行目は、有意差のあったペアのみに評価を限定したものです。
モデルは16,129件のランダム化ヘッドライン実験にわたる47,168個のアームに適合させました。上記の結果は学習に使用していないデータを用いたものです。以下の実験の多くでは、より限定的な評価(テストごとに1つの最良対最悪ペア)を使用していました。この誤りには後から気づきました。詳細については修正セクションで説明していますが、上の表では全ペアの精度を報告しています。
Upworthy Research Archive33Upworthy Research Archive, osf.io は、2021年からCC BYライセンスで公開されています。2013年1月から2015年4月の間に実施された32,487件のランダム化ヘッドラインA/Bテストが含まれており、5億3800万回の割り当てと、各バリアントのインプレッション数およびクリック数が記録されています。そう、「次に来る展開に誰もが驚いた」系のあのメディアです。彼らのヘッドラインはかなり独特な文体ですが、このアーカイブを使えばバリアントを実際のクリック数と比較できます。
まずはModernBERT-largeと回帰ヘッドから始めました。ターゲットは、各テスト自体の平均を中心とした縮小ロジットクリック率(shrunk logit click rate)です。記事そのものがクリック率の分散の多くを左右するため、その記事の他のヘッドラインと比べてどうだったかを予測したいと考えました。ベータ二項縮小(Beta-binomial shrinkage)によって推定値はテスト平均へと引き寄せられ、20,000回表示のアームよりも600回表示のアームのほうが強く引き寄せられます。
1枚のL4で実行時間は25分、コストは約40セントでした。confirmatoryスプリットの2013〜2014年の部分で学習し、2015年のテストをホールドアウトとして検証したところ、ペアワイズ精度0.704 が得られました。
当時、私はこれを手作りの言語特徴量を使用したトロントのグループによる 0.544440.544, journals.plos.org と比較していました。彼らの論文では、この問題は「単なるサンプルサイズの問題ではなく、本質的に難しい」と述べられています。もっとも、その比較にも問題がありました。先行研究のセクションで説明するように、彼らのペア選択やリサーチクエスチョンは私のものとは異なっていたためです。
私は最初の結果を「ヘッドラインのシグナルは2年間のドリフトを生き延びる」とまとめました。
2015年の結果を見て、モデルは時間の経過に伴うヘッドラインスタイルの変化に対応できていると考えました。最終的にはこれをメールに使いたいと考えていたため、学習に使用したデータ以外でどれだけうまく機能するかに興味がありました。
アーカイブにはexploratory、confirmatory、holdoutの3つのスプリットがあります。これまではconfirmatoryしか使っていませんでした。同じウェイトを他の2つで実行してみたところ、以下のようになりました。
confirmatory 2015: 0.704
holdout: 0.637
exploratory: 0.624
holdoutとexploratoryは、確認したすべての効果量階層において互いに0.013以内の差でした。どちらもconfirmatory 2015のセットを大幅に下回るスコアとなりました。
アーカイブのドキュメントによると、テストは3つのスプリットにランダムに割り当てられています。各スプリットは対象期間のほぼ全期間をカバーしています。
| スプリット | アーム数 | 日付範囲 | 2015年以前の割合 |
|---|---|---|---|
| confirmatory | 51,891 | 2013-01-24 → 2015-04-30 | 83.5% |
| holdout | 11,231 | 2013-01-24 → 2015-04-29 | 82.8% |
| exploratory | 10,804 | 2013-01-26 → 2015-04-29 | 83.8% |
holdoutの約83%は学習対象期間内のものだったにもかかわらず、そこでの精度は2015年の末尾データよりも7ポイント低くなりました。つまり、新しいヘッドラインのほうが難しいという理由ではこのギャップを説明できませんでした。confirmatory内での日付ベースの評価だけでは、私が主張していた時間的な汎化性能を証明するには不十分だったのです。
次にリーク(情報漏洩)がないかを確認しました。Upworthyは複数のテストで同じ記事を再利用していたため、ランダム割り当てによって似たようなヘッドラインが学習と評価の両方に入り込む可能性がありました。
最初のチェックでは完全一致のみを探し、650件中5件の一致したヘッドラインが見つかりました。しかしこれではニアデュープ(類似重複)を見落としてしまいます。そこで転置インデックスを使い、評価用の各ヘッドラインと47,168件の学習用ヘッドラインとの間の最大Jaccardトークン重複率を測定しました。
| 評価セット | n | 重複率 ≥0.9 | 中央値 |
|---|---|---|---|
| confirmatory 2015 | 1,300 | 0.5% | 0.227 |
| holdout | 4,274 | 30.5% | 0.300 |
holdoutは精度が低かったにもかかわらず、割合としては約60倍ものニアデュープが含まれていました。それらを除外すると0.646となり、0.637をわずかに上回りました。この検証ではギャップの理由は説明できず、ニアデュープによる精度の向上も見られませんでした。
また、holdoutのインプレッション数が少なかったりラベルノイズが多かったりしないかも確認しました。
| 評価セット | インプレッション中央値 | zスコア中央値 | CTR比中央値 |
|---|---|---|---|
| confirmatory 2015 | 2,462 | 2.37 | 2.24 |
| holdout | 3,096 | 2.64 | 1.99 |
holdoutのほうがインプレッション数が多く、zスコアも高くなっていました。2015年のペアはCTR比の中央値が1.99に対して2.24と広く、その分分離しやすかった可能性はあります。それでもギャップ全体を説明することはできなかったため、原因不明として記録し、他の2つのスプリットで裏付けられた約0.63をベースラインとして採用しました。
続いて、学習データの追加と損失関数の変更を比較しました。exploratoryを含めることで、利用可能な学習セットは62,695アームになりました。各構成を、テストごとに1つの最良対最悪ペアとした同じ2,137組のholdoutペアで評価しました。
Phase 0 confirmatory MSE 0.637
more-data expl+confirmatory MSE 0.724
rank confirmatory Bradley-Terry 0.775
rank+more expl+confirmatory Bradley-Terry 0.787
データの追加により精度は 0.087 向上しました。Bradley-Terryへの切り替えでは、より小さい学習セットを使い、エポック数も3ではなく2としたにもかかわらず、0.138 向上しました。
それまではクリック率の回帰モデルを学習させて、ペアを正しくランク付けできるかを評価していました。その評価に対しては、ランキング損失のほうが適していました。
Bradley-Terry55Bradley-Terry, en.wikipedia.org はペアごとの選好度で学習します。1つのテスト内のすべてのアームのペアに対して、インプレッション数が少ないほうのアームの対数インプレッション数で重み付けした logsigmoid(score_winner - score_loser) を最大化しました。47,168個の学習用アームから、76,892組のテスト内ペアが作成されました。
ModernBERT-base はパラメータ数が3分の1でありながら0.761に達し、CPUでの実行も現実的な選択肢となりました。
決定タスクで事前学習されたDeBERTa-v3-largeバリアントは、最初は学習に失敗しました。損失は全4,804ステップにわたって -log(0.5) のままで、スコアは0.519でした。
損失が全く変化しなかったため学習設定を確認しました。エンコーダは正しく読み込まれており、分類器とプーラーのみが新規に初期化されていました。
ModernBERTと同じ2e-5の学習率を再利用していたのですが、DeBERTaの学習不安定性に関する報告66DeBERTaの学習不安定性に関する報告, github.com を見つけた後、6e-6を試してみました。
6e-6では、損失が0.709 → 0.682 → 0.620 → 0.360と推移しました。精度はModernBERTを2.5ポイント上回る 0.812 に達し、最高信頼度層では0.913を記録しました。
ニアデュープフィルタを通過したペアでは、ModernBERTの0.769に対して 0.797 を記録しました。フィルタリング後の精度低下も小さく抑えられていました。
ペアワイズ精度だけでは、モデルの選択によってどれだけの追加クリックが得られるかは分かりません。それはバリアント間の差の大きさによって決まります。
各テストについて、モデルが最高スコアを付けたアームの観測クリック率と、そのテストのアーム全体の平均値を比較しました。平均値はバリアントを一様にランダム選択した場合を表しており、編集者が選択した場合を表すものではありません。
| CTR | |
|---|---|
| テスト平均(モデルなし) | 1.20% |
| モデルの選択 | 1.42% |
| オラクル(完璧な選択) | 1.60% |
2,140件のテスト全体で、相対クリック率は+18.3% となりました。
この18.3%という数字は、Upworthyの1.20%というベースレートと、ヘッドラインバリアント間のばらつきに依存しています。クリック率2.5%で件名がより似通っているようなB2Bニュースレターにおいて、リフトがどの程度になるかは分かりません。
また、テスト内でモデルがどれくらいの頻度で有益な選択を行えたかも測定しました。これらの指標は絶対的なクリック率への依存度が低いものの、他のオーディエンスでの検証は依然として必要です。
| 指標 | 値 |
|---|---|
| 最悪のバリアントを回避 | 90.3% |
| テスト平均を上回る | 76.6% |
| 実際の最良バリアントを選択 | 47.7% |
| 獲得できた余地(中央値) | 89.2% |
| スピアマンの順位相関係数(スコア対クリック率) | 0.526 |
最悪のバリアントを90.3%の確率で回避できるのは、ランダム選択の75.1%と比べても有用です。47.7%の最良バリアント選択精度は、ランダム基準値(24.9%)の約1.9倍です。ただし、どちらの結果もメールでどう機能するかを証明するものではありません。
獲得できた余地(headroom captured)のばらつきは大きく、中央値は89.2%、四分位範囲は5%〜100%、プールした全体値は55.4%です。中央値が高いからといって、利用可能な全利得のそれだけの割合をモデルが獲得できるという意味ではありません。
スコアを期待リフト量にマッピングするため、等調回帰(アイソトニック回帰)77等調回帰(アイソトニック回帰), en.wikipedia.org を適用しました。特定の曲線形状を強制することなく、単調な関係をフィットさせます。Bradley-Terryは順序を学習するものであり、素のスコアがキャリブレーションされたクリック率になるわけではありません。テスト内のアームは記事を共有しており独立していないため、テスト単位でブートストラップを行いました。
| スコア | ベース比 | 90%区間 |
|---|---|---|
| −2.72 | −19.1% | [−0.252, −0.209] pp |
| −1.06 | −8.2% | [−0.111, −0.086] pp |
| −0.20 | −0.7% | [−0.023, −0.000] pp |
| +0.56 | +3.7% | [+0.030, +0.056] pp |
| +1.62 | +11.1% | [+0.115, +0.147] pp |
| +2.82 | +21.8% | [+0.231, +0.274] pp |
中間のスコアは、ベースラインからの推定差が小さくなっています。これらの区間はキャリブレーションされたリフトを示すものであり、特定の2つのヘッドラインが同等かどうかを示すものではありません。
このアーカイブを扱った他の研究では、異なるタスク、入力、評価サブセットが用いられています。
| 出典 | タスク | 指標 | 値 | ランダム |
|---|---|---|---|---|
| LOLA, 人間 (n=4,571) | k個中のTop-1 | 精度 | ~ランダム | 0.330 |
| LOLA, GPT-4 インコンテキスト | k個中のTop-1 | 精度 | 0.400 | 0.330 |
| LOLA, LoRA Llama-3-8B | k個中のTop-1 | 精度 | 0.469 | 0.330 |
| LOLA, ファインチューニング済みGPT-4o | k個中のTop-1 | 精度 | 0.488 | 0.330 |
| arXiv:2506.0015288arXiv:2506.00152, arxiv.org, Pythia-12B | 有意なペア、+ リード文 + タイムスタンプ | ROC AUC | 0.82 | 0.50 |
| PLOS ONE 028168244PLOS ONE 0281682, journals.plos.org | 記事+画像+週でマッチングしたペア、K≤15 | 精度 | 0.544 | ~0.50 |
| VERA | テスト内の全ペア、ヘッドラインのみ | 精度 | 0.689 | 0.524 |
0.544の論文では、記事、画像、テスト実施週でペアをマッチングさせ、15ペアを超える実験はランダムにサブサンプリングしています。5,048ペアで学習しています。これは予測がランダムを上回れるかを検証する事前登録研究(registered report)であるため、その数値を私のモデルの精度と直接比較するのは過大評価になります。
Pythia-12Bの報酬モデルはROC AUCで0.82を報告しています。CTR差が5%水準で有意なペア(全体の約28%)で学習し、ヘッドラインだけでなく記事のリード文と投稿タイムスタンプも読み込みます。同論文のAUCと私の精度は互換性がないため、これらの数値だけではどちらのモデルが優れているかを判断することはできません。
フィルタリングされていないテスト内全ペアに対して、ヘッドラインテキストのみを用いてファインチューニングされたエンコーダのペアワイズ精度を報告した公開結果は見当たりませんでした。そのため、これは有益な追加評価ではありますが、SOTA(最高水準)の結果を確立するものではありません。
直接比較を行うために、評価ペアに対してGemini 3.1 ProとLayaを実行しました。
各ペアをヘッドラインの順序を入れ替えて2回提示し、両方の順序で同じヘッドラインが選択された場合のみ予測を採用しました。これは位置バイアスをチェックするためです。表にはマッチしたペアに対する精度と、両方の順序で一貫していた予測の割合を報告しています。精度だけでは、システムがそのチェックにどれくらい失敗したかが分からないためです。
| システム | パラメータ数 | マッチしたペア | 自己一貫性 |
|---|---|---|---|
| VERA | 435M | 0.823 | — |
| Gemini 3.1 Pro | フロンティア | 0.751 | 83.7% |
| Laya typed-decisions | 421M | 0.504 | 52.9% |
VERAはマッチしたペアにおいて、1コールあたり約1000分の1のコストでGeminiを約7パーセントポイント上回りました。Geminiの評価には5.60ドルかかりました。以前は人間がランダムレベルの性能しか出せないことを根拠にモデルにとっても難しいはずだと述べていましたが、Geminiの0.751という結果はその仮定を支持するものではありません。
Layaはスコアが0.504で、一貫した回答を返したのはペアの52.9%でした。同モデルのモデルカードには、請求書処理、セキュリティインシデント、カスタマーサービス、エージェントのトレースなどが対象として記載されています。今回の評価はそれらのドメイン外でのテストとなるため、この結果をもって同タスクでの性能を判断すべきではありません。
また、Geminiはクリック率の差が5%水準で有意でなかったペアにおいても、ランダム基準値0.500に対して0.641のスコアを出しました。この層においてVERAのスコアは0.696でした。私はこれまでそうしたペアをノイズと呼んでいましたが、有意性の閾値に達しないからといって予測シグナルが存在しないわけではありません。Geminiはこれらのラベルでファインチューニングされておらず、その結果はこの違いを支持するものですが、VERAの評価におけるリークの可能性を完全に排除するものではありません。
Upworthyの結果は、2013〜2015年における特定の一メディアのバイラルなSNSヘッドラインに基づいています。私の目標は依然としてメールの件名をスコアリングすることです。
4,000人の購読者に届くB2Bニュースレターは全く異なる環境であり、Upworthyでうまくいったからといって、そこでも機能するかどうかは分かりません。
初期の転移テストとして、SNAPのRedditデータセットを使用しました。16,242枚の画像にわたる132,308件の投稿で構成され、各画像は平均約8回、異なるタイトルで投稿されています。
これらの投稿はランダム化されていません。同じ画像およびサブレディット内でペアを作成し、サブレディットごとの再投稿順に対するパフォーマンスの低下をフィットさせ、その残差をランク付けしました。勝者を決定できるだけの十分な残差差があるペアのみを残しました。
117,118ペアで検証したところ、VERAのスコアは 0.522 でした。ランダムは0.500です。「長いタイトルの勝ち」というルールを適用すると0.507になります。
ペアを独立として扱うと標準誤差は0.0015となり、ランダムを約15標準誤差上回ります。しかしペア間で画像が共有されているため、その計算だけで有意性を証明するには不十分です。残差差の四分位に沿って精度は0.508から0.531へと上昇し、r/WTFでの0.495からr/fffffffuuuuuuuuuuuuでの0.558まで幅があります。いずれにせよ、0.522という数値は私が作りたいものにとっては十分な実用性があるとは言えません。
Redditのアップボート数はクリック率とは異なり、投稿時刻や投稿者の評判もコントロールしていません。結果が振るわなかった理由は、ドメイン転移がうまくいかないこと、これらの交絡因子、あるいはその両方を反映している可能性があります。Upworthy以外での実用的なパフォーマンスを保証する根拠にはなりません。
メールで直接テストするには、送信結果が測定された件名データが必要です。しかし、学習に適した公開データセットは見つかりませんでした。
| 出典 | サイズ | 入手性 |
|---|---|---|
| Return Pathの件名調査 | 900万件の件名 | プロプライエタリ、2015年、未公開 |
| Belkins B2Bコーパス | 550万通のメール | 集計統計のみ |
| Yahoo (IEEE 7004277) | 10万件以上の件名、数十億インプレッション | プロプライエタリ |
| OracleのNLORP論文 | 300件の件名 | Googleからスクレイピング、レート未測定 |
| 各種Kaggleの「メールキャンペーン」セット | 多様 | モックまたは合成データ |
たとえばOracleの論文では、「Google検索を通じて複数のインターネットソースから収集した、特別セールのメールの300以上の異なる件名」が使われています。これらには測定されたレートが付いていません。件名の長さや言葉遣いに関する集計結果も、今回の学習セットアップに必要な送信ごとのラベルを提供するものではありません。
学習データは公開されており、モデルのウェイト作成にかかった費用は約4ドルでした。これは再現可能な実験であり、このアプローチがメールでも機能するかどうかを引き続き確かめる必要があります。
A/Bテストのログを持っているメールプロバイダーやニュースレター運営者であれば、関連データを提供できるかもしれません。必要なのは件名のバリアントと測定された結果、そして新しい送信に対する予測を評価する方法です。私にはまだその環境が整っていません。
記録された結果がある他の決定タスクでもこれを試してみたいと思っています。Optimizely、Statsig、LaunchDarklyなどの実験プラットフォームを使用している場合、手元に候補となるバリアントとその結果がすでにあるかもしれません。考えられるタスクとしては以下のようなものがあります。
| 決定 | すでに持っているラベル |
|---|---|
| 件名、ヘッドライン、プッシュ通知のコピー | 開封数、クリック数 |
| サポート用マクロの選択 | エスカレーションなしで解決したか |
| 検索結果のリランキング | ユーザーが採用した結果 |
| エラーメッセージの文言 | 自己解決したか、チケットを作成したか |
| 商品リスティングのタイトル | コンバージョン |
| エージェントのツール選択 | トラジェクトリが成功したか |
特に興味があるのはエージェントのツール選択です。Jevの3つのプリミティブは choice、score、noul であり、今回の実験では score を使用しています。これを choice で試すには、利用可能だった選択肢、選択されたツール、そしてその後に何が起きたかのログが必要になります。それらのログについても、公平な比較をサポートできるものかどうかを確認する必要があります。
これまでのところ、1つのタスクにおいて結果データに基づく学習とゼロショット判定の比較をテストしたにすぎません。他のタスクでもこの優位性が保たれるかどうかは分かっていません。
Variant Evaluation from Real Analytics(実アナリティクスによるバリアント評価)。
NovusEdge/vera-deberta-v3-large11NovusEdge/vera-deberta-v3-large, huggingface.co, Apache 2.0。
from transformers import AutoModelForSequenceClassification, AutoTokenizer
tok = AutoTokenizer.from_pretrained("NovusEdge/vera-deberta-v3-large")
model = AutoModelForSequenceClassification.from_pretrained(
"NovusEdge/vera-deberta-v3-large")
# Score a set of candidates for ONE piece of content. Higher wins.
enc = tok(candidates, padding=True, truncation=True, max_length=64,
return_tensors="pt")
scores = model(**enc).logits.squeeze(-1)
このスコアは、同一コンテンツに対する候補同士の比較(たとえば1回の送信に対する3〜6個のバリアントなど)に使用してください。最終モデルはテスト内のランキングを学習しているため、素のスコア自体は絶対的な品質指標でもクリック確率でもありません。ウェイトには、Upworthyの結果にフィットさせたキャリブレータも含まれています。
CPU利用向けに、より小型のModernBERT-baseモデルもあります。こちらはパラメータ数が3分の1でありながら、最良対最悪の評価で0.761を記録しています。
本手法をメールでテストしたわけではなく、Redditでの結果は芳しくありませんでした。Upworthyでのスコアをそのままニュースレターでの期待性能として扱うべきではありません。
もしニュースレターを運営していて、開封率やクリック率が測定された過去の送信データをお持ちでしたら、ぜひご連絡ください。ぜひテストしてみたいですし、データはすべてあなたの手元に残ります。
2026-09-24、評価コードのレビューによりいくつかの問題が見つかりました。
評価コード内で pairs_from を呼び出していましたが、これはテストごとに最良のアーム対最悪のアームという1つのペアしか保持していませんでした。学習時にはすべてのペアを構築していました。したがって0.812という結果は、各テストで最も差の開いたペアのみを測定したものでした。テスト内の全18,485ペアで測定すると、基準値0.524に対して精度は 0.689 となります。
| ペアセット | n | 長さベースライン | VERA |
|---|---|---|---|
| テスト内の全ペア | 18,485 | 0.524 | 0.689 |
| 最良アーム対最悪アーム(各テスト1組) | 2,137 | 0.546 | 0.812 |
また、素の microsoft/deberta-v3-large を全く同じレシピで実行してみました。同じセットで0.812に対して0.805を記録し、その差は報告されている標準誤差0.009よりも小さいものでした。これでは型付き決定タスクの事前学習によるメリットがあるとは言えません。学習率を下げることで、どちらのベースモデルでも学習がうまくいくようになりました。
上記のアブレーション実験はすべて当初の2,137ペアのセットを使用しているため、その評価上では相互に比較可能です。全ペアでの結果ではありません。
その他にも修正点があります。ウェイトに同梱されていたキャリブレータが別の実行でフィットされたものになっていた点、ブートストラップ処理で復元抽出されたサンプルに対して .isin() を使用したため重複が除外されていた点、そして実際の各アーム数から計算していなかったためにランダム基準値が2ポイントずれていた点を修正しました。
冒頭の表には修正後の結果を記載しています。それ以前の実行結果も、評価サブセットを明記した上で本文中に残してあります。
データ出典: The Upworthy Research Archive33The Upworthy Research Archive, osf.io. Matias, J., Munger, K., Le Quere, M.A., Ebersole, C. (2021), Nature Scientific Data. CC BY 4.0. メンテナーが2024年に開示したランダム化の不具合のため、2013年6月25日から2014年1月10日の間に実施された実験は全体を通して除外されています。モデルウェイト DOI: 10.57967/hf/105739910.57967/hf/10573, doi.org.