読みやすさは主に、多くの場合「何らかの形でうまく機能する」ヒューリスティックから構成されます。
このトピックについていくつかのリサーチペーパーを作成しましたが、うまく機能するソリューションを簡単に思い付くことができ、100%の精度に近づくのが難しい場合の背景について説明したいと思います。
人間の言語の基礎となる言語法がWebページのコンテンツにも含まれているようです(ただし、これに限定されません)。これにより、2種類のテキスト(フルテキストと非フルテキストまたは大まかに、 "メインコンテンツ」対「ボイラープレート」)。
HTMLからメインコンテンツを取得するには、多くの場合、約10語を超えるHTMLテキスト要素(つまり、マークアップによって中断されないテキストのブロック)のみを保持することで十分です。人間は、テキストを書く2つの異なる動機について、2種類のテキスト(「短い」と「長い」、発する単語の数で測定)から選択するようです。私はそれらを「ナビゲーション」および「情報提供」の動機と呼びます。
著者があなたが書かれたものを素早く得ることを望んでいる場合、彼/彼女は「ナビゲーション」テキスト、すなわちいくつかの単語を使用します(「STOP」、「これを読む」、「ここをクリック」など)これは、ナビゲーション要素(メニューなど)で最も目立つタイプのテキストです。
著者があなたに彼/彼女が何を意味するのかを深く理解して欲しいと思うならば、彼/彼女は多くの言葉を使います。このようにして、冗長性の増加を犠牲にしてあいまいさが取り除かれます。記事のようなコンテンツは、数語以上しか含まれていないため、通常このクラスに分類されます。
この分離は、多くのケースで機能するようですが、見出し、短い文章、免責事項、著作権フッターなどで扱いにくくなっています。
メインコンテンツをボイラープレートから分離するのに役立つ、より洗練された戦略と機能があります。たとえば、リンク密度(リンクされているブロック内の単語数とブロック内の単語の総数)、前/次のブロックの特徴、「全体」のWeb内の特定のブロックテキストの頻度、 HTMLドキュメントのDOM構造、ページの視覚的イメージなど。
私の最新の記事「浅いテキスト機能を使用したボイラープレート検出」を読んで、理論的な観点から洞察を得ることができます。また、VideoLectures.netで私の紙のプレゼンテーションのビデオを見ることができます。
「読みやすさ」はこれらの機能のいくつかを使用します。SVNの変更ログを注意深く見ると、戦略の数が時間とともに変化し、読みやすさの抽出品質も変化したことがわかります。たとえば、2009年12月のリンク密度の導入は、改善に大きく貢献しました。
したがって、私の意見では、正確なバージョン番号に言及せずに、「読みやすさはそのようにする」と言っても意味がありません。
私はいくつかの異なる抽出戦略を提供するboilerpipeと呼ばれるオープンソースのHTMLコンテンツ抽出ライブラリを公開しました。ユースケースに応じて、どちらか一方のエクストラクターがより適切に機能します。Google AppEngineの関連するboilerpipe-webアプリを使用して、選択したページでこれらのエクストラクターを試すことができます。
数字で説明するには、boilerpipe、可読性、Apple Safariなどの抽出戦略を比較するboilerpipe wiki の「Benchmarks」ページを参照してください。
これらのアルゴリズムは、メインコンテンツが実際にはフルテキストであることを前提としていることにも触れておきます。「メインコンテンツ」が別の場合、たとえば画像、表、ビデオなどがあります。そのような場合、アルゴリズムはうまく機能しません。
乾杯、
キリスト教徒