Vektor quantization

Vektor quantization ist eine klassische quantization Technik von der Signalverarbeitung, die das Modellieren von Wahrscheinlichkeitsdichte-Funktionen durch den Vertrieb von Prototyp-Vektoren erlaubt. Es wurde für die Datenkompression ursprünglich verwendet. Es arbeitet durch das Teilen eines großen Satzes von Punkten (Vektoren) in Gruppen, die ungefähr dieselbe Zahl von an ihnen am nächsten Punkten haben. Jede Gruppe wird durch seinen Centroid-Punkt, als in K-Mitteln und einigen anderen sich sammelnden Algorithmen vertreten.

Die Dichte, die Eigentum des Vektoren quantization vergleicht, ist besonders stark, für die Dichte von großen und hoch dimensionierten Daten zu identifizieren. Da Datenpunkte durch den Index ihres nächsten centroid vertreten werden, haben allgemein vorkommende Daten niedrigen Fehler und seltene Daten hoher Fehler. Das ist, warum VQ für die lossy Datenkompression passend ist. Es kann auch für die lossy Datenkorrektur und Dichte-Bewertung verwendet werden.

Vektor quantization basiert auf dem Wettbewerbslernparadigma, so ist es nah mit dem selbstorganisierenden Karte-Modell verbunden.

Ausbildung

Ein einfacher Lehralgorithmus für den Vektoren quantization ist:

  1. Picken Sie einen Beispielpunkt aufs Geratewohl auf
  2. Bewegen Sie den nächsten quantization Vektoren centroid zu diesem Beispielpunkt, durch einen kleinen Bruchteil der Entfernung
  3. Wiederholen Sie

Ein hoch entwickelterer Algorithmus reduziert die Neigung in der Dichte, die Bewertung vergleicht und stellt sicher, dass alle Punkte, durch das Umfassen eines Extraempfindlichkeitsparameters verwendet werden:

  1. Vergrößern Sie die Empfindlichkeit jedes centroid durch einen kleinen Betrag
Picken Sie einen Beispielpunkt aufs Geratewohl auf
  1. Finden Sie den quantization Vektoren centroid mit dem kleinsten
  1. Bewegen Sie den gewählten centroid zum Beispielpunkt durch einen kleinen Bruchteil der Entfernung
  2. Setzen Sie die Empfindlichkeit des gewählten centroid auf die Null
Wiederholen Sie

Es ist wünschenswert, eine kühl werdende Liste zu verwenden, um Konvergenz zu erzeugen: Sieh das Vorgetäuschte Ausglühen.

Der Algorithmus kann mit 'lebenden' Daten, aber nicht durch die Auswahl zufälliger Punkte von einer Datei wiederholend aktualisiert werden, aber das wird eine Neigung einführen, wenn die Daten über viele Proben zeitlich aufeinander bezogen werden.

Anwendungen

Vektor quantization wird für die lossy Datenkompression, lossy Datenkorrektur und Dichte-Bewertung verwendet.

Datenkorrektur von Lossy oder Vorhersage, wird verwendet, um Daten wieder zu erlangen, die von einigen Dimensionen fehlen. Es wird getan, indem es die nächste Gruppe mit den Datendimensionen verfügbar dann gefunden wird, das Ergebnis voraussagend, das auf den Werten für die fehlenden Dimensionen gestützt ist, annehmend, dass sie denselben Wert wie der centroid der Gruppe haben werden.

Für die Dichte-Bewertung ist das Gebiet/Volumen, das an einem besonderen centroid näher ist als zu irgendwelchem anderer, zur Dichte (wegen der Dichte umgekehrt proportional, die Eigentum des Algorithmus vergleicht).

Verwenden Sie in der Datenkompression

Vektor quantization, auch genannt "Block quantization" oder "Muster, das quantization zusammenpasst", wird häufig in der lossy Datenkompression verwendet. Es arbeitet durch die Verschlüsselung von Werten von einem mehrdimensionalen Vektorraum in einen begrenzten Satz von Werten von einem getrennten Subraum der niedrigeren Dimension. Ein Niedrig-Raumvektor verlangt weniger Abstellraum, so werden die Daten zusammengepresst. Wegen der Dichte, die Eigentum des Vektoren quantization vergleicht, haben die komprimierten Daten Fehler, die zu ihrer Dichte umgekehrt proportional sind.

Die Transformation wird gewöhnlich durch den Vorsprung oder durch das Verwenden eines codebook getan. In einigen Fällen kann ein codebook auch an den Wärmegewicht-Code gewöhnt sein der getrennte Wert in demselben Schritt, durch das Erzeugen eines Präfixes hat verschlüsselten Wert der variablen Länge als seine Produktion codiert.

Der Satz von getrennten Umfang-Niveaus wird gemeinsam aber nicht jede Probe gequantelt, die getrennt wird quantelt. Denken Sie einen K-dimensional Vektoren von Umfang-Niveaus. Es wird durch die Auswahl des nächsten zusammenpassenden Vektoren aus einer Reihe von N-dimensional Vektoren zusammengepresst.

Alle möglichen Kombinationen des N-dimensional Vektoren bilden den Vektorraum, dem alle gequantelten Vektoren gehören.

Blockdiagramm:

Ein einfacher Vektor quantizer wird unter gezeigt

Nur der Index des Kennwortes im codebook wird statt der gequantelten Werte gesandt. Das erhält Raum und erreicht mehr Kompression.

Zwillingsvektor quantization (VQF) ist ein Teil des MPEG-4 Standards, der sich mit beschwertem durchgeschossenem Vektoren des Zeitabschnittes quantization befasst.

Video codecs gestützt auf dem Vektoren quantization

  • Cinepak

und alte Versionen seiner geistigen Nachfolger:

  • Sorenson codec
  • Indeo
  • VQA Format, das in vielen Spielen verwendet ist

Von denen alle durch die MPEG Familie ersetzt werden.

Audiocodecs, der auf dem Vektoren quantization gestützt ist

Siehe auch

  • Rede, die codiert
  • Ogg Vorbis
  • Diagramm von Voronoi
  • Funktion der Rate-Verzerrung
  • Daten, die sich sammeln
  • Das Lernen des Vektoren Quantization
  • Centroidal Voronoi tessellation
  • Nervenbenzin, ein netzähnliches Nervensystem für den Vektoren quantization anbauend

Ein Teil dieses Artikels hat ursprünglich auf dem Material aus dem Freien Online-Wörterbuch der Computerwissenschaft basiert und wird mit unter dem GFDL verwendet.

Links

http://www.data-compression.com/vq.html http://www.mqasem.net/vectorquantization/vq.html

Extracorporeal erschüttern Welle lithotripsy / Elch (Begriffserklärung)
Impressum & Datenschutz