벡터 양자화

Vector quantization

벡터 양자화(VQ)는 프로토타입 벡터의 분포를 통해 확률 밀도 함수를 모델링할 수 있는 신호 처리고전적인 양자화 기술입니다.원래는 데이터 압축에 사용되었습니다.큰 점 세트(벡터)를 가장 가까운 점의 수가 거의 같은 그룹으로 분할하여 작동합니다.각 그룹은 k-평균 및 기타 클러스터링 알고리즘에서와 같이 중심점으로 표현됩니다.

벡터 양자화의 밀도 매칭 특성은 특히 크고 고차원적인 데이터의 밀도를 식별하는 데 강력합니다.데이터 점은 가장 가까운 중심 지수로 표시되므로 일반적으로 발생하는 데이터는 오차가 낮고 드물게 오차가 큽니다.이것이 VQ가 손실 데이터 압축에 적합한 이유입니다.손실 데이터 보정 및 밀도 추정에도 사용할 수 있습니다.

벡터 양자화는 경쟁 학습 패러다임을 기반으로 하므로 자가 구성 맵 모델 및 자동 인코더와 같은 러닝 알고리즘에 사용되는 스파스 코딩 모델과 밀접한 관련이 있다.

트레이닝

벡터 양자화를 위한 가장 간단한 훈련 알고리즘은 다음과 같습니다.[1]

  1. 임의 표본점 선택
  2. 가장 가까운 양자화 벡터 중심을 이 샘플 점 쪽으로 거리의 작은 부분만큼 이동합니다.
  3. 따라하다

보다 정교한 알고리즘은 밀도 일치 추정의 편향을 줄이고 다음과 같은 추가 민감도[citation needed] 매개변수를 포함하여 모든 포인트가 사용되도록 합니다.

  1. 각 중심 }}을(를) 조금씩 올립니다.
  2. 샘플 P(\ P 랜덤으로 선택합니다.
  3. 양자화 벡터 중심 에 대해 { d P P })의 를 나타냅니다.
  4. (P, i)- i ( P , c _ { i} ) - s _ d ( , _ { i } ) - s _ { } 의 ci 를 .
  5. 스타일 })를 P P 으로 약간의 거리만큼 합니다.
  6. 0으로 합니다.
  7. 따라하다

수렴을 위해 냉각 일정을 사용하는 것이 바람직합니다. "시뮬레이트 어닐링"을 참조하십시오.또 다른 (심플러) 방식은 K-Means 기반의 LBG입니다.

알고리즘은 데이터 세트에서 랜덤 포인트를 선택하는 것이 아니라 '실시간' 데이터로 반복적으로 업데이트될 수 있지만, 데이터가 여러 샘플에 대해 시간적으로 상관되는 경우 일부 편향이 발생합니다.

적용들

벡터 양자화는 손실 데이터 압축, 손실 데이터 보정, 패턴 인식, 밀도 추정 및 클러스터링에 사용됩니다.

손실 데이터 보정 또는 예측은 일부 차원에서 누락된 데이터를 복구하는 데 사용됩니다.이 작업은 사용 가능한 데이터 치수를 가진 가장 가까운 그룹을 찾은 다음 결측 치수에 대한 값을 바탕으로 결과를 예측하여 수행되며, 결측 치수가 그룹의 중심과 동일한 값을 갖는다고 가정합니다.

밀도 추정의 경우, 특정 중심보다 특정 중심에 가까운 면적/부피는 밀도에 반비례합니다(알고리즘의 밀도 일치 특성 때문에).

데이터 압축에 사용

벡터 양자화는 "블록 양자화" 또는 "패턴 매칭 양자화"라고도 불리며 손실 데이터 압축에 자주 사용됩니다.다차원 벡터 공간의 값을 저차원 이산 부분 공간의 유한한 값 집합으로 인코딩하여 작동합니다.공간 벡터가 작을수록 필요한 저장 공간이 적기 때문에 데이터가 압축됩니다.벡터 양자화의 밀도 일치 특성으로 인해 압축된 데이터는 밀도에 반비례하는 오차를 가집니다.

변환은 보통 투영 또는 코드북을 사용하여 이루어집니다.경우에 따라서는 코드북을 사용하여 프리픽스 부호화된 가변길이 부호화 값을 출력으로 생성함으로써 동일한 단계에서 이산값을 엔트로피 부호화할 도 있다.

이산 진폭 레벨 세트는 각 샘플이 개별적으로 양자화되는 대신 함께 양자화됩니다.진폭 레벨의 k차원벡터 [1, 2, . , k {2}...,k}}을(를) 고려합니다.n차원 벡터 세트 1,2. . , n]{ ...에서 n < k로 가장 가까운 매칭 벡터를 선택하여 압축됩니다.

n차원벡터 [ 1,2 ,. , nn}}의 가능한 모든 조합은 양자화된 벡터가 속한 벡터 공간을 형성합니다.

양자화된 값 대신 코드북 내의 코드워드 색인만 전송됩니다.이렇게 하면 공간이 절약되고 압축이 향상됩니다.

Twin Vector Quantization(VQF; 트윈 벡터 양자화)는 시간 도메인 가중 인터리브 벡터 양자화를 다루는 MPEG-4 표준의 일부입니다.

벡터 양자화에 근거한 비디오코덱

벡터 양자화에 기초한 비디오 코덱의 사용은 벡터 양자화의 낮은 복호화 복잡성이 덜 관련성이 떨어짐에 따라 변환 부호화와 결합된 움직임 보상 예측에 기초한 코덱의 사용이 크게 감소하였다.

벡터 양자화에 근거한 오디오코덱

패턴 인식에 사용

VQ는 또한 80년대에 음성과 화자 [6]인식을 위해[5] 사용되었다.최근에는 가장 가까운 효율적인 네이버 검색 및 온라인 서명 [8]인식에도 사용되고 있습니다.패턴 인식 애플리케이션에서는, 이 유저의 음향 벡터를 사용해 클래스 마다 1개의 코드 북(바이오메트릭 애플리케이션에서는 각 클래스가 유저)이 구축된다.테스트 단계에서는 테스트 신호의 양자화 왜곡을 트레이닝 단계에서 취득한 코드북 전체 세트로 해결한다.가장 작은 벡터 양자화 왜곡을 제공하는 코드북은 식별된 사용자를 나타냅니다.

패턴 인식에서 VQ의 주요 장점은 동적 시간 뒤틀림(DTW) 및 숨겨진 마르코프 모델(HMM)과 같은 다른 기술에 비해 계산 부담이 낮다는 것입니다. DTW 및 HMM과 비교할 때 주요 단점은 모든 vec가 신호(음성, 서명 등)의 시간적 진화를 고려하지 않는다는 것입니다.비틀림이 뒤섞여 있다.이 문제를 극복하기 위해 다중 섹션 코드북 접근법이 [9]제안되었다.다중 섹션 접근법은 여러 섹션으로 신호를 모델링하는 것으로 구성됩니다(예를 들어, 첫 번째 부분에 대한 코드북, 중앙 부분에 대한 코드북, 마지막 부분에 대한 코드북).

클러스터링 알고리즘으로 사용

VQ는 인근 거짓말 표본의 밀도점으로 중심체를 찾고 있으므로 프로토타입 기반 클러스터링 방법으로 직접 사용할 수 있다. 각 중심체는 하나의 프로토타입과 연결된다.기대 제곱 양자화[10] 오차를 최소화하고 로빈스-몬로 조건을 충족하는 감소 학습 이득을 도입함으로써 구체적이지만 고정된 수의 프로토타입으로 전체 데이터 세트에 걸쳐 여러 번의 반복이 증분 방식으로 k-평균 클러스터링 알고리즘의 솔루션으로 수렴된다.

생성적 적대 네트워크(GAN)

VQ는 생성적 적대 네트워크의 식별자에서 기능 표현 계층을 양자화하기 위해 사용되어 왔습니다.Feature Quantization(FQ; 피쳐 양자화) 기술은 암묵적인 피쳐 [11]조회를 수행합니다.GAN 교육을 개선하고 이미지 생성을 위한 BigGAN, 얼굴 합성을 위한 StyleGAN, 감독되지 않은 이미지 대 이미지 변환을 위한 U-GAT-IT 등 다양한 인기 GAN 모델에서 향상된 성능을 제공합니다.

「 」를 참조해 주세요.

이 문서의 일부는 원래 무료 온라인 컴퓨팅 사전의 자료를 기반으로 하며 GFDL의 허가를 받아 사용됩니다.

레퍼런스

  1. ^ Dana H. Ballard (2000). An Introduction to Natural Computation. MIT Press. p. 189. ISBN 978-0-262-02420-4.
  2. ^ "Bink video". Book of Wisdom. 2009-12-27. Retrieved 2013-03-16.
  3. ^ Valin, JM. (October 2012). Pyramid Vector Quantization for Video Coding. IETF. I-D draft-valin-videocodec-pvq-00. Retrieved 2013-12-17.
  4. ^ "Vorbis I Specification". Xiph.org. 2007-03-09. Retrieved 2007-03-09.
  5. ^ Burton, D. K.; Shore, J. E.; Buck, J. T. (1983). "A generalization of isolated word recognition using vector quantization". IEEE International Conference on Acoustics Speech and Signal Processing ICASSP. 8: 1021–1024. doi:10.1109/ICASSP.1983.1171915.
  6. ^ Soong, F.; A. Rosenberg; L. Rabiner; B. Juang (1985). "A vector Quantization approach to Speaker Recognition". IEEE Proceedings International Conference on Acoustics, Speech and Signal Processing ICASSP. 1: 387–390. doi:10.1109/ICASSP.1985.1168412. S2CID 8970593.
  7. ^ H. Jegou; M. Douze; C. Schmid (2011). "Product Quantization for Nearest Neighbor Search" (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 33 (1): 117–128. CiteSeerX 10.1.1.470.8573. doi:10.1109/TPAMI.2010.57. PMID 21088323. S2CID 5850884.
  8. ^ Faundez-Zanuy, Marcos (2007). "offline and On-line signature recognition based on VQ-DTW". Pattern Recognition. 40 (3): 981–992. doi:10.1016/j.patcog.2006.06.007.
  9. ^ Faundez-Zanuy, Marcos; Juan Manuel Pascual-Gaspar (2011). "Efficient On-line signature recognition based on Multi-section VQ". Pattern Analysis and Applications. 14 (1): 37–45. doi:10.1007/s10044-010-0176-8. S2CID 24868914.
  10. ^ Gray, R.M. (1984). "Vector Quantization". IEEE ASSP Magazine. 1 (2): 4–29. doi:10.1109/massp.1984.1162229.
  11. ^ 기능의 정량화를 통해 GAN 트레이닝 개선 https://arxiv.org/abs/2004.02088

외부 링크