問題タブ [information-theory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
machine-learning - レーベンシュタイン距離を誤り率に変換する
レベンスタイン距離をエラー率に変換する方法はありますか?
エラー率は、正確に同じではないシーケンスの割合です。
compression - GZIP または DEFLATE がファイル サイズを増やすことができるのはどれくらいですか?
GZIP や DEFLATE (またはその他の圧縮メカニズム)によってファイル サイズが大きくなる場合があることはよく知られています。ファイルを増やすことができる最大値 (パーセンテージまたは定数) はありますか? それは何ですか?
ファイルが X バイトで、それを gzip するつもりで、事前にファイル スペースの予算を立てる必要がある場合 - 最悪のシナリオは何ですか?
更新: 2 つのオーバーヘッドがあります。GZIP はヘッダーを追加します。通常は 18 バイトですが、基本的に任意の長さです。デフレートはどうですか?それは、私が知らない倍数の要素でコンテンツを拡張できます。誰がそれが何であるか知っていますか?
image - 2 つのイメージの相互情報量と結合エントロピー - MATLAB - MathWorks 日本
2 つの白黒画像があり、相互情報量を計算する必要があります。
相互情報量は次のように定義できることを知っています。
MATLAB には、エントロピーを計算する組み込み関数が既にありますが、結合エントロピーを計算する関数はありません。本当の質問は次のとおりだと思います: 2 つの画像の結合エントロピーを計算するにはどうすればよいですか?
これは、結合エントロピーを見つけたい画像の例です。
python - N変数のシャノンエントロピーと相互情報量を計算する方法
相互情報量を計算する必要があるため、N 変数のシャノン エントロピーを計算する必要があります。
特定の分布のシャノン エントロピーを計算するコードを書きました。変数x、数値の配列があるとしましょう。シャノン エントロピーの定義に従って、正規化された確率密度関数を計算する必要があるため、numpy.histogram を使用すると簡単に取得できます。
x の挿入を選択し、慎重にこの関数が機能するビン番号を選択します。
しかし、この関数はビン番号に大きく依存しています。このパラメーターの異なる値を選択すると、異なる値が得られました。
特に私の入力が定数値の配列である場合:
この変数のエントロピーは明らかに0でなければなりませんが、1に等しいビン番号を選択すると正しい答えが得られ、異なる値を選択すると奇妙な無意味な(否定的な)答えが得られました..私が感じているのは、そのnumpyです.histogram には引数 normed=True またはdensity= True があり、(公式ドキュメントで述べられているように)正規化されたヒストグラムを返す必要があり、確率密度関数から切り替えた瞬間にエラーが発生する可能性があります (numpy の出力.histogram) を確率質量関数 (シャノン エントロピーの入力) に変換するには、次のようにします。
これらの問題を解決する方法を見つけたいと思います。ビン番号とは無関係にシャノン エントロピーを計算する効率的な方法が必要です。
より多くの変数の分布のシャノン エントロピーを計算する関数を作成しましたが、同じエラーが発生しました。コードは次のとおりです。関数 shannon_entropydd の入力は、各位置に統計計算に関与する必要がある各変数がある配列です。
特定の変数セット間の相互情報を計算できるようにするには、これらの量が必要です。
M_info(x,y,z)= H(x)+H(z)+H(y)- H(x,y,z)
ここで、H(x) は変数 x のシャノン エントロピーです。
これらの量を計算する方法を見つけなければならないので、完全に異なる種類のコードが機能する場合は、それをオンにすることができます。このコードを修正する必要はありませんが、この統計関数を計算する正しい方法を見つけてください!
performance - スパークにおけるエントロピーの効率的な計算
RDD (データ) と、エントロピーを計算するインデックス フィールドのリストが与えられます。次のフローを実行すると、2MB (16k 行) のソースで単一のエントロピー値を計算するのに約 5 秒かかります。
debugString の出力は次のとおりです。
RDDを収集して再度並列化すると、計算に約 150 ミリ秒かかります (単純な 2MB ファイルではまだ高いようです)。また、複数の GB データを処理するときに明らかに問題が生じます。Spark と Scala を適切に利用するには何が欠けていますか?
私の元の実装(さらに悪いパフォーマンス):