0

英語で書かれたテキストがあり、そのエントロピーを計算しました。しかし、LZ 法に基づく圧縮アルゴリズムは、エントロピーによって与えられる限界をはるかに下回ることに気付きました。

それは、英語のテキストをモデルとする情報源が記憶を持っているという事実によるものです。したがって、圧縮の境界は、そのソースのエントロピーではなく、エントロピー レートによって決まります。

メモリ付きソースのエントロピー率の定義を見ましたが、英語で書かれたテキストのアルゴリズムまたは擬似コードでエントロピー率を計算する方法を知りたいと思っていました。

何か案は?

手伝ってくれてありがとう。

4

1 に答える 1

1

一般に、メモリを備えたソースのエントロピーレートを推定することは難しい問題であり、(自然言語のように)長距離の依存関係がたくさんある場合は特に困難です。基本的には、サンプルに基づいて言語の文法を作成し、その文法のエントロピーレートを計算する必要があります。その文法を抽出するときに行う特定の仮定は、最終的なエントロピーレートに大きな違いをもたらすため、実際のエントロピーレートのかなり弱い境界を推定することが最善の方法です。ソース。

Cosma Shaliziが指摘しているように、これはひどい考えですが、一般的な方法は、gzipなどの標準的な圧縮プログラムを使用して大きなサンプルを圧縮するだけでエントロピーレートを推定することです。一般的なデータ圧縮アルゴリズムを使用する場合は、LZ76の方が適しています。FermínMoscosodelPradoは、いくつかの代替案を検討している論文を発表しています。

圧縮アルゴリズムは一種の文法を提供しますが、言語の長距離依存関係を正確にキャプチャする文法を使用することをお勧めします。残念ながら、生のテキストのサンプルから現実的な自然言語の文法を学ぶことは、非常に未解決の研究課題です。しかし、自然言語への有限状態近似を学習する上でいくつかの有望な研究があり、それを使用して優れたエントロピーレートの推定値を生成することができます。これらの方針に沿って問題に取り組む1つの方法については、CSSRを確認してください。

于 2011-03-11T17:04:47.690 に答える