検索エンジンアルゴリズムの設計-Webサイト設計の成功と最適化への道

エントリー



特定の変電所でサイトを宣伝および開発する方法を開発する最も簡単な方法は、独自の変電所を開発することです。

私は複雑なアルゴリズムの実装について話しているのではなく、抽象化されたソリューションが必要です。 単純化されたアルゴリズムのモデルを想像して、それを操作するだけです。 関連するすべてのパラメーターを取得することが重要です。 たとえば、おおよその実装時間、サーバーの負荷、アルゴリズムの実行時間。 これらのパラメータを測定することにより、多くの追加情報を取得し、独自の目的に使用できます。

ほとんどの初心者のウェブマスターとオプティマイザーは、「私が欲しい」という概念に基づいています。 PSにすべてのリンクに大きな重みを与え、一意でないコンテンツのインデックスを適切に作成したいなどです。ただし、実際にはすべてが異なり、多くの人がこれを誤っていると考えています。 同時に、彼らはすべての望みがうまくいき、規模を考慮してもインターネットがどのようなものになるかをまったく考えません。 闘争には1つの変種しかありません。敵の側、この場合はPSの側に切り替えます。 不正行為、スパム、低品質のサイトに対抗する方法とアルゴリズムを開発することで、リソースを開発するための適切な方法論を見つけることができるだけでなく、検索エンジンで問題を解決するためのアルゴリズムを見つけることが本当に難しい場所に見られる脆弱性を利用することもできます。



私は自分から始めます



このアルゴリズムに固有のふりをするわけではありません。私は、開発用ではなく、これらのアルゴリズムの基本的なアイデアを使用するために、すべての種類のアルゴリズムを検索する上記のモデルのおかげでのみ行動します。

既存のテキストに基づいて新しいテキストの一意性をチェックするアルゴリズムの開発中に、1つの興味深い考えが浮かびました。 主なアルゴリズムはこれでした:既製のテキストのデータベースと新しいテキストが配置されるバッファベースがあり、これらのテキストはバッファに配置された後、メインデータベースで一意性がチェックされ、テキストが完全に一意である場合はメインデータベースに配置され、そうでない場合は、そのようなテキストは削除されます。 問題は、フルテキストの文字ごとの比較が適合せず、開発中のアルゴリズムが完全なテイクの検索ではなく、メインデータベースのテキスト内の新しいテキストからのフラグメントの検索を意​​味することでした。 見つかったフラグメントを、チェックされた(新しい)テキストの配列に、一方と他方のテキストで互いに対応するワード番号の2つのスペースの形で入れます。



そして、ここで、私は興味深い現象に気付きました。 新しいテキストをチェックした後、メインデータベースのテキスト識別子のリストとこれらの識別子の一致間隔は、最後にチェックされたテキストにのみ配置されます。 あなたはおそらく、これらの同じセグメントをメインベースからのテキストに置くことができると思っていましたが、ここで疑問が生じます:なぜそうするのですか? 基本的な基盤はすでに形成されており、すべての要求とニーズに適合しています。 新しいテキストのみがテストされ、完成したデータベースを操作すると、さらに混乱が生じます。



したがって、次の図があります。



PSに10個の新しいドキュメントがあるとします。一意性を確認した結果、ドキュメント2には1つのテイクがあり、ドキュメント8には既存のメインベースからの4つのテイクがあることがわかりました。 次に、別の10個の文書が追加されます。4番目の文書は最初の10個の8番目の複製であるため、2番目の10番目の文書には5個の複製の配列があり、最初の10個の8番目の文書には合計で4個の複製がありますこれらのテキストには5つのテイクがあります。



最初のメトリック 、つまり定数の形式でのインデックス作成時のテキストの重複数を取得します。



しかし、これはテキストの技術的な側面にすぎず、主題もあります。これはテキストでナレーションされているものを示す短いタグであるため、テーマタグと呼びます。 PSがテーマタグ「ヘアケア」を持つ約10のドキュメントを知っているとします。 実際、これらは10個の同一のドキュメントですが、技術的な側面から見ると、それらの重複は常に100%未満です。 その結果、PSは、最初のメトリックからの技術的テイクの数と同様に、既存のメインベース上の新しいドキュメントの主題的テイクの数を計算します。



これから、2番目のメトリック 、つまりドキュメントの主題タグのテイク数を取得します。



ここで、上記のメトリックに基づいて利用可能なドキュメントをランク付けしてみましょう。 一見したところ、これらの2つのメトリックは、もちろん、唯一のメトリックとしてではなく、主要なメトリックとして採用されているので十分です。 ただし、ここに3番目のメトリックがあり、例の最後に表示されます。



PSが上記の「ヘアケア」タグで50のドキュメントをランク付けする必要があるとします。 これを行うには、上記の2つのメトリックに基づいてアルゴリズムを構築します。



テキストの技術的な一意性が望ましいため、最初のメトリックを主に使用し、最初に最初のメトリックで、次に2番目に使用可能な50のドキュメントを多次元的にソートします。 次に、結果のソートから結論を引き出してみましょう。



  1. 最初のソート後、技術的に一意なドキュメントが最初の位置に表示されただけでなく、多数の重複があるドキュメントも表示されましたが、日付は最も古いものでした。
  2. 最後の位置には、一意でないドキュメントだけでなく、出現の早い日付を持つ一意のドキュメントもありました。これは、2番目のメトリックによる並べ替えによってそこに到達しました。




説明された結論に基づいて、新しく焼き付けられたサイトの最初の場所に到達することは非常に困難であり、訪問者の数を増やすために多くの人が好きな方法を頼みます-大量の類似した単一トピックのドキュメントとサイトをスタンプします。 何に基づいて-次のメトリックは単に頼み、許容可能なレベルでドキュメントの数を制限します。



3番目のメトリック:検索クエリに基づいて計算された、訪問者の需要を満たすために必要なドキュメント数。



3番目のメトリックによると、その数を超えるドキュメントの部分は、上記のソート済みリストの最後から削除されます。 これは、少なくとも、非常に人気があり競争力のあるトピックに関する新しいサイトの迅速な出発を説明しています。



まとめ



もちろん、説明されているメトリックは基本的なものですが、それだけではありません。これについては既に記事で言及しました。 結果のアルゴリズムをうまく分析すれば、より正確な分析のために十数個のマイナーメトリックを追加できますが、これは彼らが言うように、この記事の範囲外です。



All Articles