ニュース
モデル
製品
keyboard_arrow_down
読者
URL を読み取ったり検索したりすると、大規模なモデルのサポートが向上します。
ベクトルモデル
世界クラスのマルチモーダル、多言語埋め込み。
並べ替え者
検索の関連性を最大化する世界クラスのニューラルレトリーバー。
ディープサーチ
最善の答えが見つかるまで、検索し、読み、推論してください。
もっと
keyboard_arrow_down
分類子
画像とテキストのゼロショットおよび少数ショットの分類。
スライサー
長いテキストをチャンクまたはトークンに分割します。

APIドキュメント
AIプログラミングアシスタントIDEまたは大規模モデル用のコードを自動生成
open_in_new


会社
keyboard_arrow_down
私たちについて
営業担当者に問い合わせる
インターンプログラム
参加しませんか
open_in_new
ロゴをダウンロード
open_in_new
利用規約


ログイン
login
動機
実験セットアップ
方法論
実装
結果
発見事項
最終的な考察
技術記事
7月 18, 2024

No。Reranker を使って SEO を改善することはできません

SEO に携わっている場合は、テーブルの反対側から物事を見ることは興味深いかもしれません。現代の検索システムにおいて、埋め込み(embeddings)とリランカー(rerankers)がどのように機能しているのかを理解することができます。
Abstract background with dynamic green particles and lines on a black backdrop, emitting a sense of motion and energy.
Han Xiao
Han Xiao • 11 読む時間

最近の jina-reranker-v2-multilingual のリリース後、ICML 出張までの時間があったので、reranker モデルについての記事を書くことにしました。インターネットでアイデアを探していると、検索結果の上位に、reranker が SEO を改善できるという記事が出てきました。とても興味深そうですよね?私もそう思いました。Jina AI では reranker を扱っており、会社のウェブサイトの管理者として、SEO の改善には常に関心があるからです。

Screenshot of Google search results for "reranker seo" showing articles on enhancing search with reranking models.
Reranker が SEO を改善できると主張する ChatGPT が生成した記事。「in the realm of」のような表現ですぐにそれとわかりました。

しかし、記事を全部読んでみると、完全に ChatGPT が生成したものだとわかりました。記事全体が「Reranking はあなたのビジネス/ウェブサイトにとって重要です」という考えを繰り返し言い換えるだけで、その方法や背後にある数学、実装方法については一切説明していませんでした。時間の無駄でした。

Reranker と SEO を結びつけることはできません。検索システムの開発者(一般的にコンテンツの消費者)は reranker に関心を持ち、コンテンツ作成者は SEO とそのシステムでのコンテンツのランク付けに関心を持ちます。彼らは基本的にテーブルの反対側に座っており、アイデアを交換することはほとんどありません。reranker に SEO の改善を求めるのは、鍛冶屋にファイアーボールの呪文のアップグレードを頼むようなもの、あるいは中華料理店で寿司を注文するようなものです。完全に無関係というわけではありませんが、明らかに間違った対象です。

Google が私をオフィスに招待して、彼らの reranker が jina.ai を十分に高くランク付けしているかどうかについて意見を求めるようなことを想像してみてください。あるいは、私が Google の reranking アルゴリズムを完全にコントロールして、誰かが "information retrieval" を検索するたびに jina.ai を最上位にハードコードするようなことを想像してみてください。どちらのシナリオも意味をなしません。では、なぜそのような記事が最初から存在するのでしょうか?ChatGPT に聞いてみると、このアイデアがもともとどこから来たのかが非常に明確になります。

Informational content on improving SEO using reranker, highlighting content optimization, keyword relevance, and content qual

tag動機

もしその AI 生成記事が Google で上位にランクされているなら、より良質な記事を書いてその位置を奪いたいと思います。人間や ChatGPT を誤解させたくないので、この記事での私の主張は明確です:

いいえ、reranker を使って SEO を改善することはできません。ただし、SEO に携わる方々にとって、反対側の視点から embedding モデルや reranker などの検索モデルが現代の検索システムでどのような役割を果たしているかを理解することは興味深いかもしれません。この知識は、より戦略的にコンテンツを最適化する助けになるかもしれません。

具体的に、この記事では、Google Search Console からエクスポートした実際の検索クエリを見て、それらと記事との意味的な関係が Google 検索でのインプレッションやクリック数に何らかの示唆を与えるかどうかを検討します。意味的な関係を評価する 3 つの方法を検討します:単語頻度、embedding モデル(jina-embeddings-v2-base-en)、そしてreranker モデル(jina-reranker-v2-multilingual)です。学術研究と同様に、まず研究したい問題を概説しましょう:

  1. 意味的スコア(クエリ、ドキュメント)は記事のインプレッションやクリック数と関係があるか?
  2. より深いモデルはそのような関係をより良く予測できるのか?それとも単語頻度で十分なのか?

tag実験セットアップ

この実験では、Google Search Console(GSC)からエクスポートしたjina.ai/newsウェブサイトの実データを使用します。GSC は、Google ユーザーからのオーガニック検索トラフィックを分析できるウェブマスターツールです。Google 検索を通じて何人がブログ投稿を開いたか、検索クエリは何かなどを分析できます。GSC から抽出できる指標は多数ありますが、この実験では3つに焦点を当てます:クエリ、インプレッション、クリック数です。クエリは、ユーザーが Google の検索ボックスに入力したものです。インプレッションは、Google が検索結果であなたのリンクを表示し、ユーザーがそれを見る機会を得た回数を測定します。クリック数は、ユーザーが実際にそれを開いた回数を測定します。Google の「検索モデル」がユーザークエリに対して your 記事に高い関連性スコアを割り当てた場合、多くのインプレッションを得る可能性があることに注意してください。ただし、ユーザーが結果リスト内の他のアイテムをより興味深いと感じた場合、あなたのページはクリック数がゼロになる可能性もあります。

Google Search Console dashboard interface displaying performance graphs and various analytics overviews, such as queries and
GSC UI とColBERT ブログ投稿のクエリ、クリック数、インプレッションデータ。右上の「Export」ボタンに注目してください。クリックすると zip ファイルが得られます。この実験に必要なのはこのファイルです。また、上位 7 つのブログ投稿に興味があるので、このエクスポートを 7 回繰り返す必要があります。

jina.ai/news から最も検索された 7 つのブログ投稿について、過去 4 ヶ月間の GSC 指標をエクスポートしました。各記事には約 1,000 から 5,000 のクリック数と 10,000 から 90,000 のインプレッションがあります。各検索クエリと対応する記事間のクエリ-記事の意味論を調べたいので、GSC で各記事をクリックし、右上の Export ボタンをクリックしてデータをエクスポートする必要があります。zip ファイルが提供され、解凍すると Queries.csv ファイルが見つかります。これが必要なファイルです。

例として、ColBERT ブログ投稿についてエクスポートされた Queries.csv は以下のようになっています。

Analytical table displaying website query metrics sorted by position with columns for clicks, impressions, and CTR.
ColBERT ブログ投稿に関する Google 検索クエリのトップクリック数。GSC によると、過去 4 ヶ月間でこのブログ投稿に関連する合計 481 のクエリがありました。

tag方法論

さて、データは全て準備できました。では、何をしたいのでしょうか?

私たちは、クエリと記事間の意味的関係(Q(q,d)Q(q,d)Q(q,d) と表記)がインプレッションとクリック数と相関があるかどうかを確認したいのです。インプレッションは Google の秘密の検索モデル G(q,d)G(q,d)G(q,d) と考えることができます。つまり、単語頻度、embedding モデル、reranker モデルなどの公開手法を使用して Q(q,d)Q(q,d)Q(q,d) をモデル化し、それが非公開の G(q,d)G(q,d)G(q,d) を近似できるかどうかを確認したいのです。

クリック数についてはどうでしょうか?クリック数も Google の秘密の検索モデルの一部と考えることができますが、不確定な人的要因の影響を受けます。直感的に、クリック数はモデル化がより困難です。

Let me help translate this technical content to Japanese:

いずれにせよ、Q(q,d)Q(q,d)Q(q,d) を G(q,d)G(q,d)G(q,d) に整合させることが目標です。つまり、私たちの Q(q,d)Q(q,d)Q(q,d) は、G(q,d)G(q,d)G(q,d) が高い時に高いスコアを、G(q,d)G(q,d)G(q,d) が低い時に低いスコアを示すべきです。これは散布図で視覚化すると分かりやすく、X 軸に Q(q,d)Q(q,d)Q(q,d)、Y 軸に G(q,d)G(q,d)G(q,d) をプロットします。各クエリの QQQ 値と GGG 値をプロットすることで、私たちの検索モデルが Google の検索モデルとどの程度整合しているかを直感的に把握できます。トレンドラインを重ねることで、信頼できるパターンを確認できます。

結果を示す前に、手法をまとめてみましょう:

  • クエリと記事の意味的関係が、Google 検索でのインプレッション数とクリック数と相関するかを確認したい。
  • Google がドキュメントのクエリへの関連性を判断するアルゴリズム (G(q,d)G(q,d)G(q,d)) やクリックの要因は不明です。しかし、これらの GGG の数値は GSC から、つまり各クエリのインプレッション数とクリック数として観察できます。
  • 単語頻度、埋め込みモデル、リランカーモデルなどのパブリックな検索手法(Q(q,d)Q(q,d)Q(q,d))が、それぞれ独自の方法でクエリ-ドキュメント関連性をスコア化していますが、これらが G(q,d)G(q,d)G(q,d) の良い近似となっているかを確認したいと考えています。ある意味では、これらが良い近似でないことは既に分かっています。そうでなければ、誰もが Google になれるはずですから。しかし、どの程度かけ離れているのかを理解したいのです。
  • 結果を散布図で視覚化して定性的な分析を行います。

tag実装

完全な実装は以下の Google Colab で確認できます。

Google Colab

まず、Jina Reader API を使用してブログ投稿の内容をクロールします。クエリの単語頻度は、基本的な大文字・小文字を区別しないカウントで決定されます。埋め込みモデルについては、ブログ投稿の内容とすべての検索クエリを 1 つの大きなリクエストにまとめて:[[blog1_content], [q1], [q2], [q3], ..., [q481]]、Embedding API に送信します。レスポンスを受け取った後、最初の埋め込みと他のすべての埋め込みとのコサイン類似度を計算して、クエリごとの意味的スコアを取得します。

リランカーモデルの場合、リクエストを少し工夫して構築します:{query: [blog1_content], documents: [[q1], [q2], [q3], ..., [q481]]} としてこの大きなリクエストを Reranker API に送信します。返されたスコアを直接意味的関連性として使用できます。これを工夫的と呼ぶのは、通常、リランカーはクエリに対してドキュメントをランク付けするために使用されるからです。この場合、ドキュメントとクエリの役割を反転させ、リランカーを使用してドキュメントに対してクエリをランク付けします。

Embedding API と Reranker API の両方で、記事の長さを気にする必要がないことに注意してください(クエリは常に短いので問題ありません)。両方の API は最大 8K の入力長をサポートしています(実際、Reranker API は「無限」の長さをサポートしています)。すべてが数秒で迅速に実行でき、この実験用に 私たちのウェブサイト から無料の 1M トークン API キーを取得できます。

tag結果

最後に結果です。しかし結果を示す前に、まずベースラインのプロットがどのように見えるかを示したいと思います。散布図と Y 軸の対数スケールを使用するため、完全に良好な Q(q,d)Q(q,d)Q(q,d) とひどく悪い Q(q,d)Q(q,d)Q(q,d) がどのように見えるかを想像するのは難しい場合があります。2 つの単純なベースラインを構築しました:1 つは Q(q,d)Q(q,d)Q(q,d) が G(q,d)G(q,d)G(q,d) (Ground Truth)の場合、もう 1 つは Q(q,d)∼Uniform(0,1)Q(q,d) \sim \mathrm{Uniform}(0,1)Q(q,d)∼Uniform(0,1) (ランダム)の場合です。それらの可視化を見てみましょう。

tagベースライン

Blue curve graph on black background, plotting "Impressions (Log Scale)" vs "Groundtruth" from 0.0 to 1.0.
Ground Truth ベースライン。意味的スコア Q(q,d)Q(q,d)Q(q,d) はインプレッション値に基づく min-max 正規化です。これは G(q,d)G(q,d)G(q,d) の完全に良好な予測子とみなされます。
Black scatter plot with purple dots, logarithmic axes labeled "Impressions (Log Scale)" and "10º," and a horizontal line labe
ランダムベースライン。意味的スコア Q(q,d)Q(q,d)Q(q,d) は (0,1) の一様分布からのランダムな数値です。複数回実行すると、若干異なる結果が得られます。これは G(q,d)G(q,d)G(q,d) のひどく悪い予測子とみなされます。

これで「完全に良好」と「ひどく悪い」予測子がどのように見えるかについての直感が得られました。以下の視覚的検査に非常に役立つ要点とともに、これら 2 つのプロットを覚えておいてください:

  • 良好な予測子の散布図は、左下から右上へと対数トレンドラインに従うべきです。
  • 良好な予測子のトレンドラインは、X 軸と Y 軸を完全にカバーするべきです(後で見るように、一部の予測子はこのように反応しません)。
  • 良好な予測子の分散領域(トレンドライン周りの不透明な領域として描画)は小さくあるべきです。

次に、すべてのプロットを一緒に示します。各予測子について 2 つのプロットを示します:1 つはインプレッションをどの程度予測できるかを示し、もう 1 つはクリックをどの程度予測できるかを示します。なお、7 つのブログ投稿すべてのデータを集約したため、合計で 3620 のクエリ、つまり各散布図に 3620 のデータポイントがあります。

これらのグラフを上下にスクロールして詳しく調べ、比較し、細部に注目してください。しっかりと理解した上で、次のセクションで結論を述べたいと思います。

tag単語頻度を予測子として

Graph showing relationship between 'Term Frequency' and 'Impressions' on a log scale, with values and a visible trend curve o
Black background graph with a curved line, plotting Term Frequency on x-axis and Clicks on a logarithmic y-axis.

tag埋め込みモデルを予測子として

Scatterplot with logarithmic Impressions vs. Embedding Score, points in shades of purple, and a labeled axis.
Scatter plot graph with an x-axis labeled 'Embedding Score' and a y-axis as 'Clicks (Log Scale)', displaying a power-law dist

tagリランカーモデルを予測子として

Scatterplot with a black background, labeled axes 'Reranker Score' and 'Impressions (Log Scale)', and lines of best fit among
Graph with black background, 'Reranker Score' on x-axis, 'Clicks (log scale)' on y-axis, and scattered data points.

tag発見事項

比較しやすいように、すべてのグラフを一か所にまとめてみましょう。以下のような観察と説明があります:

インプレッションに対する異なる予測子。各点はクエリを表し、X 軸はクエリ-記事の意味的スコア、Y 軸は GSC からエクスポートされたインプレッション数を表します。

クリック数に対する異なる予測指標。各点はクエリを表し、X軸はクエリと記事の意味的スコア、Y軸は GSC からエクスポートされたクリック数を示します。

  • 一般的に、クリックの散布図はすべて、インプレッション図に比べてよりまばらです。これは同じデータに基づいているにもかかわらず見られる現象です。前述のように、高いインプレッション数が必ずしもクリックを保証するわけではないためです。
  • 用語頻度の散布図は他に比べてよりまばらです。 これは、Google からの実際の検索クエリのほとんどが記事に正確には出現しないため、X値がゼロとなるためです。それでもインプレッションとクリックは発生します。そのため、用語頻度の傾向線の開始点がY軸のゼロ点から始まっていないのが分かります。特定のクエリが記事に複数回出現する場合、インプレッションとクリックが増加すると予想されます。傾向線はこれを確認していますが、傾向線の分散も大きくなっており、サポートデータが不足していることを示唆しています。全般的に、用語頻度は良い予測指標とは言えません。
  • 用語頻度予測指標とエンベディングモデルおよびリランカーモデルの散布図を比較すると、後者の方がはるかに良好です:データポイントの分布が良く、傾向線の分散も妥当に見えます。しかし、上記の真値の傾向線と比較すると、大きな違いが1つあります - どちらの傾向線もX軸のゼロ点から始まっていないのです。これは、モデルから非常に高い意味的類似性を得たとしても、Google はゼロのインプレッション/クリックを割り当てる可能性が高いことを意味します。これはクリックの散布図でより顕著になり、開始点はインプレッションの場合よりもさらに右に押し出されています。つまり、Google は私たちのエンベディングモデルとリランカーモデルを使用していないということです—驚きですね!
  • 最後に、これら3つの中で最良の予測指標を選ぶとすれば、リランカーモデルを選びます。理由は2つあります:
    • リランカーモデルの傾向線は、インプレッションとクリックの両方において、エンベディングモデルの傾向線と比べてX軸上でより広く分布しており、より大きな「ダイナミックレンジ」を持っています。これは真値の傾向線により近いものとなっています。
    • スコアが0から1の間でうまく分布しています。これは主に、最新の Reranker v2 モデルがキャリブレーションされているためですが、2023年10月にリリースされた初期の jina-embeddings-v2-base-en はそうではなく、その値が0.60から0.90の範囲に広がっているのが分かります。とはいえ、この2つ目の理由は G(q,d)G(q,d)G(q,d) への近似とは関係ありません。0から1の間でキャリブレーションされた意味的スコアの方が、理解と比較が直感的になるというだけです。

tag最終的な考察

では、SEOにおける教訓は何でしょうか?これはあなたのSEO戦略にどのような影響を与えるのでしょうか?正直なところ、そう大きくはありません。

上記の洗練された図が示唆しているのは、おそらくあなたがすでに知っている基本的なSEOの原則です:ユーザーが検索している内容を書き、人気のあるクエリに関連するコンテンツを確実に提供することです。Reranker V2のような良い予測指標があれば、それを一種の「SEOコパイロット」として執筆のガイドに使うことができるかもしれません。

あるいはそうでないかもしれません。 むしろ、Google や誰かを喜ばせるためではなく、知識のため、自己向上のために書くべきかもしれません。なぜなら、書かずに考えるだけでは、考えていると思い込んでいるだけだからです。

カテゴリー:
技術記事
rss_feed
オフィス
location_on
カリフォルニア州サニーベール
710 Lakeway Dr、Ste 200、サニーベール、CA 94085、アメリカ合衆国
location_on
ドイツ、ベルリン(本社)
Prinzessinnenstraße 19-20、10969 ベルリン、ドイツ
location_on
中国、北京
中国北京市海淀区西街48号ビル6号5階
location_on
深セン、中国
ルーム 402、4 階、福安テクノロジービル、深セン、中国
検索ベース
読者
ベクトルモデル
並べ替え者
ディープサーチ
分類子
スライサー
APIドキュメント
Jina APIキーを取得する
レート制限
APIステータス
会社
私たちについて
営業担当者に問い合わせる
ニュース
インターンプログラム
参加しませんか
open_in_new
ロゴをダウンロード
open_in_new
条項
安全性
利用規約
プライバシー
Cookieを管理する
email
Jina AI © 2020-2025.