Domanda

Dati numeri interi normalmente distribuiti con una media di 0 e una deviazione standard $ sigma $ circa 1000, come faccio a comprimere quei numeri (quasi) perfettamente? Data l'entropia della distribuzione gaussiana, dovrebbe essere possibile archiviare qualsiasi valore $ x $ usando $$ frac {1} {2} mathrm {log} _2 (2 pi sigma^2)+ frac {x ^2} {2 Sigma^2} rm {log} _2 rm {e} ; text {bits.} $$
Codice aritmetica dovrebbe fornire una compressione perfetta. In linea di principio non è troppo difficile. Posso calcolare i confini dell'intervallo da funzione di distribuzione cumulativa del gaussiano. In pratica, ho riscontrato notevoli difficoltà perché quando uso operazioni a punta galleggiante non riesco a ottenere una perfetta riproduzione dei risultati e non ho idea di come farlo senza operazioni FP. La riproduzione perfetta è necessaria perché il codice non compresso deve elaborare esattamente gli stessi confini dell'intervallo del codice di compressione.

Quindi la mia domanda è: come si calcola i confini dell'intervallo? O esiste un altro modo per ottenere una (vicina) compressione perfetta di tali dati?

A rigor di termini, la distribuzione normale è definita solo per variabili continue. Quindi cosa intendo qui sono numeri interi x con una funzione di distribuzione di probabilità $$ p (x) = frac {1} { sqrt {2 pi sigma^2}} rm e^{- frac {x^2 } {2 Sigma^2}}. $$
Questa distribuzione non si riassume esattamente a 1. Tuttavia, per $ Sigma> 100 $ La differenza da 1 è inferiore a $ 10^{-1000} $ e quindi è più precisa di qualsiasi calcolo pratico.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top