重複ページの検索エンジンアルゴリズム分析

重複ページの検索エンジンアルゴリズム分析

検索エンジンは一般的に、各 Web ページに対して一連の情報フィンガープリントが計算されるという考え方に基づいて、重複する Web ページを判断します。2 つの Web ページに一定数の同一の情報フィンガープリントがある場合、2 つの Web ページのコンテンツは重複度が高いとみなされ、2 つの Web ページに重複したコンテンツがあることを意味します。

多くの検索エンジンでは、主に次の 2 つの違いにより、コンテンツの重複を判断する方法が異なります。

1. 情報フィンガープリントを計算するアルゴリズム。

2. 情報指紋の類似性を判断するためのパラメータ。

具体的なアルゴリズムを説明する前に、2 つの点を明確にしておきたいと思います。

1. 情報フィンガープリントとは何ですか?情報フィンガープリントは、Web ページ内のテキスト情報から特定の情報(キーワード、単語、文、段落、および Web ページ内のそれらの重み)を抽出し、MD5 暗号化などの方法で暗号化して文字列を形成します。情報指紋は人間の指紋のようなものです。コンテンツが異なれば、情報指紋も異なります。

2. アルゴリズムによって抽出される情報は、Web ページ全体の情報ではなく、ナビゲーション バー、ロゴ、著作権、その他の情報など、Web サイトの共通部分を除外した後に残るテキストです (これらは、Web ページの「ノイズ」と呼ばれます)。

セグメント署名アルゴリズム

このアルゴリズムは、特定のルールに従って Web ページを N 個のセグメントに分割し、各セグメントに署名し、各セグメントの情報フィンガープリントを形成します。これらの N 個の情報フィンガープリントのうち M 個が同じである場合 (m はシステムによって定義されたしきい値)、2 つは重複した Web ページであると見なされます。

このアルゴリズムは、小規模で重複した Web ページを判別するのに適したアルゴリズムですが、Google のような大規模な検索エンジンの場合、アルゴリズムの複雑さは非常に高くなります。

キーワードベースのウェブページ複製アルゴリズム

Google などの検索エンジンは、Web ページをクロールするときに次の Web ページ情報を記録します。

1. ウェブページ内に登場するキーワード(中国語単語分割技術)と各キーワードの重み(キーワード密度)

2. 各 Web ページからメタ説明または 512 バイトの有効なテキストを抽出します。

2 番目の点に関しては、Baidu と Google は異なります。Google は、クエリ キーワードに関連する 512 バイトがない場合にメタ ディスクリプションを抽出しますが、Baidu は後者を直接抽出します。使ったことのある人なら誰でもこれを経験しています。

次のアルゴリズムの説明では、いくつかの情報フィンガープリント変数に同意します。

Pi は i 番目の Web ページを表します。

ウェブページ上で最も重みの高いN個のキーワードは集合Ti={t1,t2,...tn}を形成し、対応する重みはWi={w1,w2,...wi}となる。
要約情報はDes(Pi)で表され、最初のn個のキーワードで構成される文字列はCon(Ti)で表され、n個のキーワードをソートして形成された文字列はSort(Ti)で表されます。

上記の情報フィンガープリントは MD5 関数を使用して暗号化されます。

キーワードに基づいて Web ページをコピーするアルゴリズムには、次の 5 種類があります。

1. MD5(Des(Pi))=MD5(Des(Pj))は、要約情報がまったく同じであり、2つのWebページiとjが重複Webページであると見なされることを意味します。

2. MD5(Con(Ti))=MD5(Con(Tj))、2つのウェブページの最初のn個のキーワードの順位と重みが同じ場合、それらは重複ウェブページであると見なされます。

3. MD5(Sort(Ti))=MD5(Sort(Tj))。2 つの Web ページの最初の n 個のキーワードが同じ場合、重みが異なる可能性があり、重複した Web ページと見なされます。

4. MD5(Con(Ti))=MD5(Con(Tj))であり、Wi-Wjの二乗をWiとWjの二乗の合計で割った値がしきい値a未満の場合、両方とも重複したWebページであると見なされます。

5. MD5(Sort(Ti))=MD5(Sort(Tj))であり、Wi-Wjの二乗をWiとWjの二乗の合計で割った値がしきい値a未満の場合、両方とも重複したWebページであると見なされます。

4位と5位の閾値aについては、主に、以前の判定条件では、多くのWebページが依然として偶発的に破損してしまうためです。検索エンジンの開発では、重みの配分比率に基づいて調整を行い、偶発的な破損を防止します。

これは北京大学Skynet検索エンジンの重複排除アルゴリズムです(書籍「検索エンジン-原理、技術、システム」を参照できます)。上記の5つのアルゴリズムを実行する場合、アルゴリズムの効果は選択されたキーワードの数であるNに依存します。もちろん、選択肢を多くすればするほど判断の精度は上がりますが、計算速度も遅くなります。したがって、計算速度と重複排除の精度のバランスを考慮する必要があります。 Skynetのテスト結果によると、約10個のキーワードが最も適切です。

追記

上記は、大規模な検索エンジンが Web ページをコピーする際のすべての側面を網羅しているわけではありません。何らかの補助的な情報フィンガープリント判定が必要です。この記事は、検索エンジン最適化のアイデアとして役立ちます。

【編集者のおすすめ】

  1. 外部リンクがウェブサイトの降格につながる理由を分析する
  2. SEOで成功する良い習慣
  3. SEOを行うには、理論と実践を組み合わせて最高の成果を出す必要があります。
  4. 20のプロフェッショナルSEOウェブサイト分析ツールを共有
  5. ウェブサイトのトラフィックを増やすための10の方法を共有しましょう

<<:  ARMベースの3DES暗号化アルゴリズムの実装(2)

>>:  PageRankアルゴリズムとPR値の転送の詳細な分析

推薦する

この「PhD Study Simulator」はとてもリアルです。何回諦めるように説得されるか試してみてください。

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

...

...

2018 CCF BDCIコンペティションのグローバルローンチ:データ駆動型、スマートな未来

8月11日、2018年のCCFビッグデータ&Computational Intelligenceコン...

...

ガートナー、2022年の銀行・投資サービスにおける3つの注目のテクノロジートレンドを発表

ガートナーは、2022年の銀行および投資サービス業界における3つの注目の技術トレンドとして、生成型人...

...

あなたは私の目です!人工知能が障害者にバリアフリーのインターネットアクセスを提供する

この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...

Alibaba のエンジニアは、ナレッジ グラフ データ構築の「難題」にどのように取り組んでいるのでしょうか?

[[233069]]アリ姉の紹介:「トマト」を検索すると、その栄養価やカロリーがわかるだけでなく、...

数学者を助けたいなら、人工知能の意味は何でしょうか?

AIに対して幻想を抱いている人もいれば、偏見を持っている人もいます。 AIはツールとコンピューティ...

2018 年最も革新的な機械学習企業トップ 10

機械学習はエンタープライズ情報技術市場に旋風を巻き起こしており、人工知能アルゴリズムは膨大な量のデー...

...

GenAI はデータ分析分野のどこに位置づけられるのでしょうか?

今日のビジネスにおける人工知能の多くの応用のうちの 1 つが予測分析です。データ セットを分析してパ...

クラウドコンピューティングと人工知能が、先進的な企業に前例のない機会を生み出す方法

近年、ますます大規模なデータセットを処理するために SaaS (サービスとしてのソフトウェア) モデ...

GoogleのAutoML人工知能システムは、人間よりも優れた機械学習コードを作成できるようになりました

Google の AutoML システムは最近、研究者自身よりもさらに効率的な一連の機械学習コードを...