Кіріспе
Сигналды өңдеуден классикалық кванттау әдісі. Векторлық кванттау (VQ) – прототиптік векторлардың таралуы арқылы ықтималдық тығыздық функцияларын модельдеуге мүмкіндік беретін сигналды өңдеуден шыққан классикалық кванттау әдісі. Роберт М. Грейдің 1980-ші жылдардың басында әзірлеген бұл әдіс бастапқыда деректерді сығыстыру үшін қолданылған. Ол үлкен мөлшердегі нүктелерді (векторларды) оларға ең жақын орналасқан шамамен бірдей санды нүктелерден тұратын топтарға бөлу арқылы жұмыс істейді. Әрбір топ k-ортасы және басқа кластерлік алгоритмдердегідей, өзінің центроидтық нүктесімен бейнеленеді. Қарапайым тілмен айтқанда, векторлық кванттау үлкен нүктелер жиынтығын көрсету үшін нүктелер жиынтығын таңдайды. Векторлық кванттаудың тығыздыққа сәйкестік қасиеті, әсіресе үлкен және жоғары өлшемді деректердің тығыздығын анықтау үшін өте қуатты. Деректер нүктелері олардың ең жақын центроидтарының индексі арқылы көрсетілгендіктен, жиі кездесетін деректерде қателік аз, ал сирек кездесетін деректерде қателік жоғары болады. Осы себепті VQ деректерді жоғалтумен сығыстыруға жарамды. Ол деректерді жоғалтумен түзету және тығыздықты бағалау үшін де қолданылуы мүмкін. Векторлық кванттау бәсекелестік оқыту парадигмасына негізделген, сондықтан ол өзін-өзі ұйымдастыру картасы моделімен және автокодер сияқты терең оқыту алгоритмдерінде қолданылатын сирек кодтау модельдерімен тығыз байланысты.
Vector quantization (VQ) is a classical quantization technique from signal processing that allows the modeling of probability density functions by the distribution of prototype vectors. Developed in the early 1980s by Robert M. Gray, it was originally used for data compression. It works by dividing a large set of points (vectors) into groups having approximately the same number of points closest to them. Each group is represented by its centroid point, as in k means and some other clustering algorithms. In simpler terms, vector quantization chooses a set of points to represent a larger set of points. The density matching property of vector quantization is powerful, especially for identifying the density of large and high dimensional data. Since data points are represented by the index of their closest centroid, commonly occurring data have low error, and rare data high error. This is why VQ is suitable for lossy data compression. It can also be used for lossy data correction and density estimation. Vector quantization is based on the competitive learning paradigm, so it is closely related to the self organizing map model and to sparse coding models used in deep learning algorithms such as autoencoder.
Қолданбалар
Векторлық кванттау деректерді жоғалтумен сығыстыру, деректерді жоғалтумен түзету, үлгілерді тану, тығыздықты бағалау және кластерлеу үшін қолданылады. Жоғалған деректерді түзету, немесе болжау, кейбір өлшемдердегі жоғалған деректерді қалпына келтіруге мүмкіндік береді. Бұл қолданылатын өлшемдер бойынша ең жақын топты тауып, содан кейін жоғалған өлшемдер үшін мәндерді топтың центройының мәнімен сәйкес деп есептеу арқылы нәтижені болжау арқылы іске асырылады. Тығыздықты бағалау үшін, кез келген басқа центройға қарағанда белгілі бір центройға жақын болатын аудан/көлем тығыздыққа кері пропорционал болады (бұл алгоритмнің тығыздыққа сәйкес келу қасиетіне байланысты).
Деректерді сығыстыруда қолдану
Векторлық кванттау, сондай-ақ "блоктық кванттау" немесе "үлгіге сәйкес кванттау" деп те аталады, жоғалтулы деректерді сығыстыруда жиі қолданылады. Ол көпөлшемді векторлық кеңістіктегі мәндерді төмен өлшемді дискретті кеңістіктің шекті жиынтығына кодтау арқылы жұмыс істейді. Төмен өлшемді векторға сақтау үшін аз орын қажет болғандықтан, деректер сығылады. Векторлық кванттаудың тығыздыққа сәйкес келу қасиетіне байланысты, сығылған деректердегі қателер тығыздыққа кері пропорционалды болады. Трансформация әдетте проекция арқылы немесе код кітабын пайдалану арқылы жүзеге асырылады. Кейбір жағдайларда код кітабы дискретті мәнді энтропиялық кодтау үшін де қолданылуы мүмкін, нәтижесінде префикс кодталған, өзгермелі ұзындығы кодталған мән шығарылады. Дискретті амплитуда деңгейлерінің жиынтығы әрбір үлгі жеке-жеке квантталудың орнына бірлесіп квантталады. k өлшемді амплитуда деңгейлерінің векторын қарастырайық. Ол n < k өлшемді векторлар жиынтығынан ең жақын сәйкес келетін векторды таңдау арқылы сығылады. n өлшемді вектордың барлық мүмкін комбинациялары квантталған векторлардың жататын векторлық кеңістікті құрайды. Квантталған мәндердің орнына код кітабындағы код сөзінің индексі ғана жіберіледі. Бұл орынды үнемдейді және сығылуды арттырады. Твин векторлық кванттау (VQF) – уақыт доменінде салмақталған аралас векторлық кванттаумен айналысатын MPEG 4 стандартының бір бөлігі.
All possible combinations of the n dimensional vector form the vector space to which all the quantized vectors belong. Only the index of the codeword in the codebook is sent instead of the quantized values. This conserves space and achieves more compression. Twin vector quantization (VQF) is part of the MPEG 4 standard dealing with time domain weighted interleaved vector quantization.
Кластерлеу алгоритмі ретінде пайдалану
VQ жақын орналасқан үлгілердің тығыздық нүктелері ретінде центроидтарды іздейтіндіктен, оны прототипке негізделген кластерлеу әдісі ретінде де қолдануға болады: әр центроид бір прототиппен байланыстырылады. Күтілетін квадратты кванттау қателігін азайтуға ұмтылып, Роббинс-Монро шарттарын қанағаттандыратын азаятын оқу коэффициентін енгізу арқылы, нақты, бірақ белгілі бір сандағы прототиптермен бүкіл деректер жиынтығы бойынша бірнеше итерациялар k-орталық кластерлеу алгоритмінің шешіміне қадамдық түрде жақындайды.
Жаулас генерациялық желілер (GAN)
VQ генеративті қарсыластық желілердің дискриминаторындағы ерекшеліктерді бейнелеу қабатын кванттау үшін қолданылды. Ерекшеліктерді кванттау (FQ) техникасы имплицитті ерекшеліктерді салыстыруды жүзеге асырады. Ол GAN оқытуын жақсартады және әртүрлі танымал GAN модельдерінде жақсартылған нәтижелерге қол жеткізеді: BigGAN сурет жасау үшін, StyleGAN бет пішінін синтездеу үшін және U GAT IT бақылаусыз суреттен суретке аудару үшін.