• Nenhum resultado encontrado

Códigos esféricos para quantização vetorial

N/A
N/A
Protected

Academic year: 2021

Share "Códigos esféricos para quantização vetorial"

Copied!
108
0
0

Texto

(1)UNIVERSIDADE ESTADUAL DE CAMPINAS Instituto de Matemática, Estatística e Computação Científica. FABIANO BOAVENTURA DE MIRANDA. Códigos esféricos para quantização vetorial. Campinas 2019.

(2) Fabiano Boaventura de Miranda. Códigos esféricos para quantização vetorial. Tese apresentada ao Instituto de Matemática, Estatística e Computação Científica da Universidade Estadual de Campinas como parte dos requisitos exigidos para a obtenção do título de Doutor em Matemática Aplicada.. Orientador: Cristiano Torezzan Coorientadora: Sueli Irene Rodrigues Costa. Este exemplar corresponde à versão final da Tese defendida pelo aluno Fabiano Boaventura de Miranda e orientada pelo Prof. Dr. Cristiano Torezzan.. Campinas 2019.

(3) Ficha catalográfica Universidade Estadual de Campinas Biblioteca do Instituto de Matemática, Estatística e Computação Científica Ana Regina Machado - CRB 8/5467. M672c. Miranda, Fabiano Boaventura de, 1987MirCódigos esféricos para quantização vetorial / Fabiano Boaventura de Miranda. – Campinas, SP : [s.n.], 2019. MirOrientador: Cristiano Torezzan. MirCoorientador: Sueli Irene Rodrigues Costa. MirTese (doutorado) – Universidade Estadual de Campinas, Instituto de Matemática, Estatística e Computação Científica. Mir1. Teoria da informação - Processamento de dados. 2. Empacotamento de esferas. 3. Compressão de dados (Telecomunicações). I. Torezzan, Cristiano, 1976-. II. Costa, Sueli Irene Rodrigues. III. Universidade Estadual de Campinas. Instituto de Matemática, Estatística e Computação Científica. IV. Título.. Informações para Biblioteca Digital Título em outro idioma: Spherical codes for vector quantization Palavras-chave em inglês: Information theory - Data processing Sphere packings Data compression (Telecommunication) Área de concentração: Matemática Aplicada Titulação: Doutor em Matemática Aplicada Banca examinadora: Cristiano Torezzan [Orientador] João Eloir Strapasson Weiler Alves Finamore Marcelo Firer Danilo Silva Data de defesa: 11-10-2019 Programa de Pós-Graduação: Matemática Aplicada Identificação e informações acadêmicas do(a) aluno(a) - ORCID do autor: https://orcid.org/0000-0002-2791-3550 - Currículo Lattes do autor: http://lattes.cnpq.br/8184460142607685. Powered by TCPDF (www.tcpdf.org).

(4) Tese de Doutorado defendida em 11 de outubro de 2019 e aprovada pela banca examinadora composta pelos Profs. Drs.. Prof(a). Dr(a). CRISTIANO TOREZZAN. Prof(a). Dr(a). JOÃO ELOIR STRAPASSON. Prof(a). Dr(a). WEILER ALVES FINAMORE. Prof(a). Dr(a). MARCELO FIRER. Prof(a). Dr(a). DANILO SILVA. A Ata da Defesa, assinada pelos membros da Comissão Examinadora, consta no SIGA/Sistema de Fluxo de Dissertação/Tese e na Secretaria de Pós-Graduação do Instituto de Matemática, Estatística e Computação Científica..

(5) Este trabalho é dedicado à Deus e a todos, os meu familiares e amigos..

(6) Agradecimentos • Ao Deus eterno, criador de todas as coisas e a quem tudo pertence, detentor de todo o conhecimento, agradeço pela vida, força, inspiração e cuidado a todo o momento. • Agradeço à minha esposa Hellen Joyce M. L. B. de Miranda, verdadeira companheira e auxiliadora em todo o processo. Suas palavras sábias e oportunas sempre me incentivaram a nunca desanimar. O seu amor é acalentador, assim, ofereço amor eterno à você. • Aos meus pais Israel e Iracema, pelo amor dedicado à todo instante, pela sabedoria ensinada, experiências compartilhadas, me capacitando a empreender as melhores escolhas para minha vida. Vocês são sensacionais. • Ao meu orientador e amigo prof. Dr. Cristiano Torezzan que desde o primeiro instante me acolheu, instruiu e despertou em mim características que me impulsionaram à concretização deste doutorado. Sua amizade, palavras e conselhos vão me acompanhar sempre. Obrigado por todo tempo investido. • À professora Dra. Sueli I. R. Costa, pela co-orientação e grandes ideias compartilhadas. Sua experiência nos inspira. • Ao professor Dr. Vinay Vaishampayan, pela supervisão no doutorado sanduíche, que prontamente me recebeu e partilhou de seu tempo, experiência e conhecimento, bem como de sua paciência no meu aprendizado de uma nova língua. I really appreciate for everything. • Aos professores da Unicamp, responsáveis por elevar o nome dessa instituição, doando o melhor e da melhor forma. Levo um pouquinho de cada um em minha bagagem. • Aos colegas de doutorado, pessoas com quem dividimos essa carga. Não foram em vão todos os estudos, encontros e discussões. Ninguém é capaz de realizar nada sozinho. Obrigado pela amizade. • O presente trabalho foi realizado com apoio da Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brasil(CAPES) - Código de Financiamento 001. Agradeço a agência CAPES pelo fomento do doutorado sanduíche realizado em Nova Iorque, USA, momento que agregou surpreendentes experiências à minha carreira. Processo 88881.187684/2018-01. • À todos que estiveram ao meu lado e, que de alguma forma, contribuiu durante o processo. Meu muito obrigado..

(7) “Como é feliz o homem que acha a sabedoria, o homem que obtém entendimento.” (Bíblia Sagrada, Provérbios 3:13).

(8) Resumo A quantização vetorial é uma importante ferramenta para o gerenciamento e compressão de dados, com diversas aplicações clássicas em telecomunicações e teoria da informação. Com os recentes avanços de pesquisas em inteligência artificial, problemas de quantização têm recebido destaque, pois apresentam soluções eficientes para a compressão de pesos em métodos de aprendizado profundo (deep learning). Neste trabalho apresentamos uma proposta de quantizador vetorial para fontes Gaussianas que combina códigos esféricos em camadas de toros e a técnica shape/gain, que viabiliza a implementação de codificação e decodificação independentes para o shape, configurado por códigos esféricos, e para o gain, delineado por um quantizador escalar otimizado para uma dada taxa. Novas abordagens para a construção de códigos esféricos em camadas de toros são apresentadas, abarcando a construção recursiva de toros por meio de produtos de reticulados, uma heurística que explora códigos de permutação e o uso da espiral para alocação de códigos em hiperplanos igualmente espaçados. Além da descrição do quantizador apresentamos protocolos para codificação e decodificação e uma análise teórica assintótica, que explora a relação entre taxa de compressão em função da dimensão. O quantizador proposto foi implementado e aplicado na compressão de pesos de redes neurais profundas prétreinadas e os resultados das simulações validados com as análises teóricas. Este método de quantização foi comparado com os melhores quantizadores conhecidos na literatura e obteve desempenho superior para vários cenários, com a vantagem de ter baixa complexidade computacional para codificação. Palavras-chave: Quantização vetorial, Códigos esféricos, Fontes Gaussianas..

(9) Abstract Vector quantization is a relevant tool, with many applications in telecommunications and Theory of information. With the recent advances in artificial intelligence research, quantization problems have been emphasized for presenting efficient solutions for weight compression in deep learning methods. In this work we present a new vector quantizer for Gaussian sources that combines spherical codes on layers of tori and the shape/gain technique, which enables the implementation of independent coding and decoding for the shape, configured by spherical codes, and for the gain, outlined by a optimized scalar quantizer for a given rate. New approaches to the construction of spherical codes are presented, embracing a recursive construction of tori using lattice products, a heuristic that explores permutation codes and the use of the spiral for code allocation in equidistant hyperplanes. In addition, descripting the quantizer, we present protocols for coding and decoding process and an asymptotic theoretical analysis that explores the relationship between compression ratio and dimension. The proposed quantizer was implemented and applied to the weight compression on a pre-trained deep neural network and the simulation results validated with the theoretical analyzes. The quantization method proposed in this work was competitive with the best vector quantizers known in the literature for several scenarios, outperforming the state of the art for some cases. Keywords: Vector quantization, Spherical codes, Gaussian sources..

(10) Lista de ilustrações Figura Figura Figura Figura Figura. 1 2 3 4 5. – – – – –. Figura 6 – Figura 7 – Figura 8 – Figura 9 – Figura Figura Figura Figura. 10 11 12 13. – – – –. Figura 14 – Figura Figura Figura Figura. 15 16 17 18. – – – –. Figura 19 – Figura 20 – Figura 21 – Figura 22 – Figura 23 –. Figura 24 –. Processo de quantização escalar. Fonte: própria. . . . . . . . . . . . . . Representação na reta da quantização escalar. Fonte: adaptada de [50] Exemplo de quantização para fonte Gaussiana com M  6. Fonte: própria. Processo de quantização vetorial. . . . . . . . . . . . . . . . . . . . . . Exemplo de quantixador vetorial para diferentes fontes simulados no software Matlab R2018b. Fonte: própria. . . . . . . . . . . . . . . . . . Exemplos de reticulados, seus paralelotopos e regiões de Voronoi. . . . Diferentes partições do reticulado Hexagonal. Fonte: [52]. . . . . . . . . Empacotamento nos reticulados hexagonal e cúbico respectivamente. Fonte: própria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ilustração de uma aplicação do problema de cobertura. Fonte: adaptado de [52]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Função densidade de probabilidade de Rayleigh. . . . . . . . . . . . . . Quantizador shape/gain. Fonte: própria. . . . . . . . . . . . . . . . . . Exemplo de quantização shape/gain no R2 . Fonte: própria. . . . . . . . Ilustração do erro de quantização na cobertura (círculos sólidos) e no empacotamento (círculos pontilhados). Fonte: adaptada de [52]. . . . . Ilustração do limitante do segundo momento para uma região de Voronoi retangular. Fonte: adaptado de [52]. . . . . . . . . . . . . . . . . . . . . Ângulo mínimo e chapéu esférico. Fonte: adaptado de [49]. . . . . . . . Área coberta por três chapéus esféricos tangentes. Fonte: [49] . . . . . Dicionário do shape para o quantizador vetorial Wrapped. Fonte: [24]. . Ilustração do processo de construção de código esférico em camadas de toros no R4 . Fonte: adaptado de [47]. . . . . . . . . . . . . . . . . . . . Ilustração da divisão de sinais no toro planificado através do esquema de cores. Fonte própria. . . . . . . . . . . . . . . . . . . . . . . . . . . Representação de um código esférico em camada de toros com k  m  2. Fonte: própria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Histograma para 100.000 amostras da soma de variáveis aleatórias gaussianas. Fonte: simulação própria. . . . . . . . . . . . . . . . . . . . Ilustração da divisão em 5 hiperplanos com k  3. Fonte: própria. . . . Ilustração da divisão em 5 hiperplanos com rotação em k  3. Os pontos da camada tracejada possuem coordenadas negativas após a rotação, logo não pertencem ao código. Fonte: própria. . . . . . . . . . . . . . . Ilustração de um código esférico C p3, dq com 100 hiperplanos e 186 pontos. Fonte: própria. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 20 20 21 22 23 25 25 26 27 32 34 34 36 37 39 39 41 43 46 47 50 51. 52 53.

(11) Figura 25 – Simulação da distorção para cada valor de θ0 . Fonte: própria. . . . . . . Figura 26 – Ilustração de um código esférico espiral em S 2 . Fonte: própria. . . . . . Figura 27 – Comparação do código esférico na espiral e utilizando o código gerado pelo algoritmo k-means para diferentes números de toros. Fonte: simulação própria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 28 – Ilustração do processo de decodificação. Fonte: adaptada de [47]. . . . . Figura 29 – Distorção do gain para diferentes dimensões usando a equação (3.5). Fonte: própria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 30 – Triângulo do caminho de decodificação. Os pontos em vermelho ilustram os pontos do reticulado. Fonte: própria. . . . . . . . . . . . . . . . . . . Figura 31 – Histograma com 50.0000 amostras para o valor do ângulo θ e k = 48. Pode ser observado que a distribuição do âgulo θ tende a ser normal. Fonte: simulação própria. . . . . . . . . . . . . . . . . . . . . . . . . . Figura 32 – A variação da constante µ quando a dimensão cresce. . . . . . . . . . . Figura 33 – Simulação do quantizador para k  4 com taxa variando de 1 à 12. A distorção foi computada usando }S  Sˆ}2 . Os valores mostrados no eixo-y referem-se ao valores encontrados na simulação. Fonte: própria. . Figura 34 – Convergência do quantizador proposto para diferentes taxas quando a dimensão cresce. Fonte: própria. . . . . . . . . . . . . . . . . . . . . . . Figura 35 – Ilistração de como a distorção é afetada quanto o número de toros varia, para R  3 e k  4, 6, 8. Fonte: própria. . . . . . . . . . . . . . . . . . Figura 36 – Ilustração de uma Deep neural network. Fonte: própria. . . . . . . . . . Figura 37 – Ilustração das conexões de cada neurônio. Fonte: própria. . . . . . . . . Figura 38 – Exemplificação de redes neurais convolucionais. Fonte: [40]. . . . . . . . Figura 39 – Ilustração do processo de convolução para imagens coloridas tridimensionais. Fonte: adaptada de [15]. . . . . . . . . . . . . . . . . . . . . . . Figura 40 – Esquema de quantização aplicado aos pesos da rede neural. . . . . . . . Figura 41 – Performance do quantizador vetorial por camada e diferentes bits. . . . Figura 42 – Distribuição dos pesos originais da camada conv 4 e total 7. Fonte: simulação própria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 41 – Performance do quantizador vetorial 4-dimensional . . . . . . . . . . . Figura 41 – Performance do quantizador vetorial 6-dimensional . . . . . . . . . . . Figura 42 – Performance do quantizador vetorial 4-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 43 – Performance do quantizador vetorial 8-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 44 – Performance do quantizador vetorial 12-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 53 54. 55 60 63 65. 66 71. 74 75 75 78 79 79 80 82 84 85 95 96 97 97 98.

(12) Figura 45 – Performance do quantizador vetorial 16-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 46 – Performance do quantizador vetorial 24-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 47 – Performance do quantizador vetorial 48-dimensional com códigos de permutação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figura 48 – Performance do quantizador vetorial 48-dimensional e k-means . . . Figura 49 – Diagrama do processo de decodificação do Leech. Fonte: própria. . . .. . 98 . 99 . 99 . 100 . 105.

(13) Lista de tabelas Tabela 1 – Descrição do algoritmo do quantizador proposto . . . . . . . . . . . . . Tabela 2 – Variação da distância d e o número de toros NT para k  8. . . . . . . Tabela 3 – Comparação da SN R do quantizador shape/gain proposto simulado a partir da implementação e limitante assintótico com o limitante de Shannon para k  4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tabela 4 – Comparação do quantizador vetorial CT p48, M q com os resultados mostrados em [8]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tabela 5 – Performance do quantizador para quantidades fixas de bits. . . . . . . Tabela 6 – Comparação do desempenho do quantizador vetorial CT pk, M q com os resultados apresentados em [24] . . . . . . . . . . . . . . . . . . . . . Tabela 7 – Tabela dos coset de B p24, 5q . . . . . . . . . . . . . . . . . . . . . . . . Tabela 8 – Tabela das combinações dos sinais . . . . . . . . . . . . . . . . . . . . Tabela 9 – Tabela das referências cruzadas das Tabelas 7 e 8 . . . . . . . . . . . .. 60 73. 74 76 85 101 106 107 107.

(14) Sumário Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1 1.1 1.2 1.2.1 1.2.2 1.3 1.3.1 1.3.2 1.3.3 1.4 1.5 1.6. O PROBLEMA DE QUANTIZAÇÃO . . . . . . . . . . . . . Quantização escalar . . . . . . . . . . . . . . . . . . . . . . . . Quantização vetorial . . . . . . . . . . . . . . . . . . . . . . . . Reticulados e quantização . . . . . . . . . . . . . . . . . . . . . . Revisão de Reticulados . . . . . . . . . . . . . . . . . . . . . . . . Quantizador para fontes gaussianas . . . . . . . . . . . . . . . Distribuição de Rayleigh . . . . . . . . . . . . . . . . . . . . . . . Quantização Shape/Gain . . . . . . . . . . . . . . . . . . . . . . . A relação entre o problema de quantização e cobertura esférica . . . Códigos Esféricos . . . . . . . . . . . . . . . . . . . . . . . . . . Um quantizador vetorial utilizando a técnica shape/gain . . . Códigos Esféricos em Camada de Toros Planares . . . . . . .. . . . . . . . . . . . .. 19 19 21 24 24 29 32 33 35 36 40 41. 2 2.1 2.2 2.2.1 2.2.2 2.2.3 2.3 2.3.1 2.3.2. CÓDIGOS ESFÉRICOS EM CAMADAS DE TOROS E QUANTIZAÇÃO VETORIAL . . . . . . . . . . . . . . . . . . . . . . . . . . . Construção recursiva de códigos esféricos em camadas de toros . . Códigos esféricos para a construção de toros . . . . . . . . . . . . . . Códigos esféricos em um hiperplano . . . . . . . . . . . . . . . . . . . . . Construção de códigos esféricos em diferentes hiperplanos . . . . . . . . . Códigos esféricos na espiral para k=3 . . . . . . . . . . . . . . . . . . . . Códigos esféricos em camadas de toros para quantização vetorial . Projetando o quantizador com taxa fixa . . . . . . . . . . . . . . . . . . . Algoritmo de quantização . . . . . . . . . . . . . . . . . . . . . . . . . .. 44 45 47 47 49 53 55 56 58. 3 3.1 3.1.1 3.1.2 3.1.3 3.2. ANÁLISES, RESULTADOS E DISCUSSÕES . . . . . . . . . Resultados teóricos . . . . . . . . . . . . . . . . . . . . . . . . . Análise assintótica da distorção do gain . . . . . . . . . . . . . . . Análise assintótica da distorção do shape . . . . . . . . . . . . . . O comportamento assintótico dos parâmetros da distorção . . . . . Resultados computacionais . . . . . . . . . . . . . . . . . . . .. 61 62 63 63 69 73. 4. QUANTIZAÇÃO VETORIAL EM CAMADAS DE TOROS APLICADO À PROBLEMAS DE REDES NEURAIS . . . . . . . . . . . . 77 Redes Neurais - Introdução . . . . . . . . . . . . . . . . . . . . . . . . 77. 4.1. . . . . . . . . . . . .. . . . . . .. . . . . . . . . . . . .. . . . . . .. . . . . . . . . . . . .. . . . . . .. . . . . . ..

(15) 4.1.1 4.2 4.2.1 4.3. Redes neurais convolucionais . . . . Quantização em redes neurais . Quantização vetorial em camadas de Resultados da simulação . . . . .. 5. CONSIDERAÇÕES FINAIS E PERSPECTIVAS FUTURAS . . . . . 87. REFERÊNCIAS. A.1 A.2 A.3 A.3.1 A.3.2 A.3.3 A.3.4 A.3.5 A.3.6 A.4 A.5. B.1. . . . . . . toros . . .. . . . . . . . . . . . . aplicado à . . . . . .. . . . . . . redes . . .. . . . . . . . . neurais . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. 79 81 82 83. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89. APÊNDICE A – SIMULAÇÕES COMPLEMENTARES . . . . . . . 94 Simulação para k  4 utilizando o reticulado A2 . . . . . . . . . . . . . 94 Simulação para k  6 utilizando o reticulado D3 e o método k-means. 95 Simulação para k  4, 8, 12, 16, 24, 48 utilizando o reticulado Dk para k ¤ 24, o reticulado Leech para k  48 e toros de permutação. . . . 96 Utilizando k=4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 Utilizando k=8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Utilizando k=12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Utilizando k=16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Utilizando k=24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Utilizando k=48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Simulação para k  48 utilizando o Leech e o método k-means . . . 99 Comparação do desempenho entre reticulados bons para quantização e cobertura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 APÊNDICE B – DECODIFICAÇÃO NO RETICULADO LEECH . . 102 Algoritmo de decodificação do Leech . . . . . . . . . . . . . . . . . . 104.

(16) 16. Introdução A quantização é um procedimento que consiste em mapear um conjunto de dados de um domínio contínuo (ou muito grande) para um domínio enumerável (em geral finito) e constitui um dos passos iniciais no processo de transmissão da informação, pertencendo a etapa de codificação da fonte. O arredondamento e o truncamento de números reais são exemplos simples de quantização. Na área de processamento de sinais, a conversão analógico-digital é um exemplo usual. Dependendo do contexto, a quantização pode ser vista como um processo similar à compressão de dados [11], onde admite-se alguma perda de informação em troca de simplificar a representação de dados e, assim, obter vantagens em termos de armazenamento. Outras aplicações podem ser encontradas em criptografia [9], em equações diferenciais parciais, em processos de discretização dos espaço para busca de uma malha ótima [16] e recentemente, na compressão de redes neurais profundas [22]. A quantização pode ser definida como um mapeamento Q : Rk Ñ C, que associa o vetor x P Rk ao vetor mais próximo xˆ P C, onde C é um conjunto pré-definido de acordo com alguns critérios. Adotando k  1, este processo recebe o nome de quantização escalar. A diferença entre o valor de uma variável (x) e sua versão quantizada (ˆ x) é denominada erro de quantização e é uma das principais métricas de desempenho de um quantizador. Quanto menor o erro de quantização, mais próxima a informação quantizada está da original. Porém, na tentativa de diminuir esse erro, pode-se aumentar consideravelmente o custo computacional e a memória de armazenamento do código, tornando-o impraticável. Em termos gerais, existem três problemas importantes envolvendo a quantização de fontes: 1) projetar o quantizador, que consiste em definir uma partição do espaço, escolher os elementos representantes de cada região e listá-los, 2) mensurar o erro médio observado (distorção) ao recuperar os dados quantizados e 3) gerenciar o custo computacional (ou tempo gasto) para codificar cada variável proveniente da fonte. Neste trabalho estamos interessados nos processos de quantização escalar e vetorial, usando técnicas de quantização em reticulados, combinadas com a estratégia shape/gain, introduzida em [10] e otimizada em [38], e códigos esféricos, para a quantização de fontes gaussianas. A técnica shape/gain é uma estrutura de quantização vetorial em que um vetor x P Rk é decomposto em um fator escalar g  }x}, chamado gain e em um vetor S  x{}x},.

(17) Introdução. 17. chamado shape, assim x  g.S. O quantizador mapeia o vetor x no vetor xˆ  gˆSˆ P Rk , onde gˆ e Sˆ são os pontos mais próximos de g e S, respectivamente, sendo portanto a combinação de um quantizador escalar com um vetorial [21]. Para se projetar o quantizador para o gain, pode-se empregar um quantizador escalar ótimo, sendo o mais usual (e adotado neste trabalho) o processo de Lloyd-Max e para o shape, utiliza-se códigos esféricos. Neste trabalho empregamos códigos esféricos em camadas de toros que, em essência, considera pontos de um reticulado alocados em toros planares para se obter pontos aproximadamente distribuídos uniformemente sobre a superfície de uma esfera unitária. A busca por quantizadores vetoriais com reduzida complexidade computacional tem sido objeto de diversas pesquisas ao longo das últimas décadas [21]. Esta tese tem como objetivo principal apresentar um novo quantizador vetorial, baseado na técnica shape/gain, que emprega um quantizador escalar ótimo para o gain com códigos esféricos em camadas de toros, projetados especialmente para a finalidade de quantização. A utilização de tais códigos esféricos traz a vantagem de realizar as operações de codificação/decodificação na metade da dimensão, resultando em um quantizador cuja complexidade cresce linearmente com a taxa. Além disso, o quantizador introduzido nesta tese apresentou desempenho superior (em termo de distorção) quando comparado com os melhores métodos conhecidos para diversos cenários. Esta tese está organizada em cinco Capítulos e um Apêndice. No Capítulo 1 trazemos uma revisão dos elementos base deste trabalho, começando descrevendo os processos de quantização escalar e vetorial e suas figuras de mérito. Abordamos em detalhes a técnica shape/gain e os conceitos fundamentais de reticulados, examinando brevemente os problemas de empacotamento esférico, cobertura esférica e quantização em reticulados. Separamos ainda uma seção para elucidarmos as características da fonte gaussiana e sua forte conexão com códigos esféricos. Visando esclarecer e ligar os assuntos já tratados, mostramos um exemplo de quantizador vetorial estruturado pela técnica shape/gain combinado com o código esférico conhecido como Wrapped, que será o principal benchmark para este trabalho, por se tratar de um quantizador vetorial estruturado com melhor desempenho conhecido na literatura. Por fim, descrevemos os códigos esféricos em camadas de toros, que serão ferramentas fundamentais para se projetar o dicionário do shape. No Capítulo 2 estudamos a estrutura dos códigos esféricos em camadas de toros, buscando acrescentar novas formas de se projetar a primeira etapa de construção desses códigos, a saber, a indicação do conjunto de toros que definem o código na dimensão metade. Primeiro, trabalhamos um maneira recursiva de se projetar este conjunto, onde conseguimos restringir a parte positiva de cada toro, preencher com pontos de um reticulado conveniente e mapear esses pontos em novos toros na dimensão dobro, processo tal que.

(18) Introdução. 18. pode ser continuado até que se alcance a dimensão par desejada. Em seguida, analisamos outra maneira de se construir o conjunto de toros, utilizando códigos de permutação alocados em diferentes hiperplanos, gerados por meio de uma rotação de um código inicial em cada hiperplano. Outra construção retratada foi a aplicação da espiral envolta na superfície da esfera S 2 € R3 , distribuindo pontos igualmente espaçados sobre ela. No final deste capítulo, projetamos um novo quantizador vetorial em conjunto com códigos esféricos em camadas de toros. O processo de codificação e decodificação é descrito e resumido no Algoritmo 1. No Capítulo 3 realizamos uma análise teórica assintótica, apresentando expressões fechadas, em formas de teoremas, para as distorções do gain e do shape, quando a taxa tende para o infinito. Na sequência realizamos estudos sobre a sensibilidade da distorção em função de alguns parâmetros do quantizador, como as distâncias dos pontos no reticulado e dos toros relacionadas com a variação do número de toros necessários para se alcançar uma determinada distorção. Na segunda parte do capítulo apresentamos os resultados de simulações computacionais realizadas para diversos cenários, variando a taxa e a dimensão dos blocos de vetores. O método proposto nesta tese apresentou desempenho superior aos quantizadores conhecidos na literatura para diversos cenários, tendo a vantagem adicional de ter menor complexidade computacional, já que a decodificação é realizada na metade da dimensão. O Capítulo 4 é dedicado à apresentar uma aplicação do quantizador proposto à problemas de quantização dos pesos de redes neurais profundas, apontando para perspectivas atuais de uso do método desenvolvido nesta tese. Para exemplificar esse processo, escolhemos a rede neural de categorização de imagens conhecida como Alexnet, que possui uma quantidade de parâmetros na casa dos milhares. Todas as simulações foram implementadas no software MatLab, sendo este capítulo gerado com a última versão do software, com licença cedida por College of Staten Island, como parte do doutorado sanduíche, financiado pela agência de fomento CAPES e realizado sob a supervisão do prof. Dr. Vinay Vaishampayan no período de 09/2018 à 02/2019. Os resultados obtidos com este exemplo mostram que o quantizador desenvolvido neste trabalho é eficiente para o propósito e pode ser considerado como uma alternativa viável para tal aplicação. Por fim, nos últimos dois capítulos apresentamos nossas considerações finais e as referências bibliográfica. O Apêndice 1 finaliza a tese, trazendo os detalhes da implementação de um decodificador para o reticulado Leech, que foi desenvolvido especialmente para este trabalho..

(19) 19. 1 O problema de quantização 1.1 Quantização escalar Nesta seção revisaremos os principais conceitos de quantização escalar para fontes uniformes e não-uniformes e os parâmetros desejados em um bom quantizador. A quantização escalar é um procedimento que faz a partição da reta real visando a melhor forma de representar um dado conjunto de elementos por um menor conjunto de pontos, mais especificamente, buscamos particionar a reta real em uma quantidade finita de intervalos e escolher um valor representante para cada intervalo, chamado de valor quantizador. A quantidade de intervalos, que diz respeito à quantidade de pontos quantizadores é calculada em termos da taxa binária e a escolha dos representantes influencia diretamente o erro de quantização. Assim, o desempenho do quantizador pode ser alterado de acordo com a quantidade e tamanho dos intervalos, bem como em função da escolha dos pontos quantizadores. A taxa de um quantizador escalar é o logaritmo da quantidade de pontos quantizadores, sendo a unidade mais usual medida em bits, com base 2 no logaritmo. Em algumas aplicações é interessante adotar a medida nats, usando o logaritmo neperiano. Seja M o número de elementos quantizadores, a taxa binária R é definida por R  log2 M. Para se medir a performance de quantização, ou equivalentemente, o erro médio de quantização utilizamos, como usual, o erro quadrático médio (em inglês, se utiliza a sigla M SE, de Mean Squared Error). Suponha que tx1 , x2 , ..., xn u seja uma sequência de elementos gerados por uma fonte e, respectivamente, txˆ1 , xˆ2 , ..., xˆn u, os valores quantizadores de cada entrada, o M SE é dado por: M SE. n ¸.  n1 pxi  xˆiq2. . (1.1). i 1. Com mais formalismo, conceitua-se o processo de quantização da fonte tratando duas etapas: codificação e decodificação. Para isso, considere uma variável aleatória com função de densidade de probabilidade pf dpq ppxq1 como elementos de saída de uma fonte de informação e uma dada taxa R. O codificador associa a variável x a um único índice Qpxq P t1, 2,    , 2R u. O decodificador representa x por um estimador xˆ, previamente associado ao índice Qpxq [8, 21, 49]. O conjunto com todos os pontos quantizadores é chamado de dicionário. O processo é ilustrado na Figura 1. 1. Uma revisão de diferentes f dps pode ser encontrada em [8].

(20) Capítulo 1. O problema de quantização. x∈R. Codifica¸ca˜o. 20. Q(x) ∈ {1, 2, . . . , 2R }. Decodifica¸ca˜o. x ˆ. Figura 1 – Processo de quantização escalar. Fonte: própria.. Diferentes funções de densidade de probabilidade podem ser utilizadas para modelar uma fonte de informações. Em aplicações de telecomunicações, as distribuições mais comuns são as distribuições uniformes, gaussianas, laplacianas e rayleigh. Para uma fonte com distribuição uniforme, o quantizador de melhor performance é o quantizador com pontos alocados de forma uniforme, conforme provado na equação (1.4.7) em [8], onde os intervalos de quantização, denotados por bi , são igualmente espaçados por um tamanho ∆ e os pontos quantizadores de cada intervalo, denotados por xˆi , são os pontos médios dos intervalos. A Figura 2 ilustra um quantizador uniforme com M  2R subintervalos. x ˆ1 b0. [. x ˆ2 b1. b2. bi−1. ∆ ) x ˆi bi. x ˆM bM −1. bM. Figura 2 – Representação na reta da quantização escalar. Fonte: adaptada de [50]. Assim, o M SE para um quantizador uniforme, isto é, com f dp uniforme e igual ppxq  1{pbM  b0 q, pode ser estimado explicitamente e é dado por [8] 2. M SE.  ∆12 .. (1.2). Para fontes não-uniformes, o quantizador deverá possuir característica nãouniforme, isso implica que os intervalos de quantização não possuirão tamanhos iguais, pois respeitam a distribuição da f dp da fonte. Para fontes gaussianas, por exemplo, a probabilidade de realização de uma variável aleatória é maior em torno da média, logo devemos concentrar uma maior quantidade de pontos nessa região e aumentar o tamanho dos intervalos na medida que nos afastamos da média. Porém, não se tem uma expressão analítica para se encontrar os pontos quantizadores para fontes Gaussianas e uma proposta é abordá-lo como problema de otimização. Como principal exemplo e que será útil neste trabalho, tem-se o algoritmo de Lloyd-Max, um quantizador escalar ótimo para fontes não-uniformes. Um exemplo de quantizador para fontes Gaussianas pode ser visto na Figura 3..

(21) Capítulo 1. O problema de quantização. 21. x. Figura 3 – Exemplo de quantização para fonte Gaussiana com M.  6. Fonte: própria.. O M SE para fontes contínuas pode ser estimado pela relação E rpx  xˆq. 2. ». s . 8. 8. pxq  xˆq q2ppxqdx. M » bq ¸. . . q 1 bq  1. pxq  xˆq q2ppxqdx.. (1.3). Em [8], temos uma descrição do quantizador não-uniforme como um problema de otimização, onde os intervalos de decisão são. xˆq. . ³ bq xp x dx bq  1 , ³ bq p x dx bq  1. pq pq. (1.4). indicando que xˆq é o valor do centro de massa de probabilidade do intervalo e os pontos quantizadores bq são os pontos médios desses limitantes, isto é, bq para q.  xˆq12. xˆq. ,. (1.5).  t1, . . . , M u.. O algoritmo de Lloyd-Max é um processo iterativo para resolver as equações (1.4) e (1.5) para uma distribuição de probabilidade qualquer. A sua convergência não é provada para o caso geral, mas apenas obtida experimentalmente [50]. Usaremos esse algoritmo, implementado em Matlab, para construção do quantizador proposto. Na próxima seção, ampliaremos as ideias de quantização escalar para um quantizador em uma dimensão qualquer, conhecido como quantização vetorial.. 1.2 Quantização vetorial A quantização vetorial é facilmente vista como a generalização da quantização escalar, onde ao invés de quantizarmos valores reais, quantizamos vetores. Em termos práticos, os elementos recebidos serão armazenados e separados em blocos de k elementos.

(22) Capítulo 1. O problema de quantização. 22. (processo denominado no inglês de buffering), possibilitando que tais grupos sejam manipulados como vetores no espaço k-dimensional, sendo também o dicionário formado por vetores de comprimento k. Seja x  px1 , x2 ,    , xk q uma sequência de variáveis aleatórias independentes e identicamente distribuídas (iid) com função de densidade de probabilidade (f dp) ppxq. De forma similar, o processo de quantização da fonte envolve duas etapas: codificação e decodificação. O codificador associa a sequência x a um único índice Qpxq P t1, 2,    , 2kR u. O decodificador representa x por um estimador xˆ associado ao índice Qpxq. O processo é ilustrado na Figura 4 .. x ∈ Rk. Codifica¸ca˜o. Q(x) ∈ {1, 2, . . . , 2kR }. Decodifica¸ca˜o. x ˆ. Figura 4 – Processo de quantização vetorial. A taxa binária R para um quantizador vetorial é dada por R. 1 log2 M k. e denota o número de bits por coordenadas, sendo M dicionário.. (1.6).  2kR. o número de pontos no. O erro de quantização vetorial também pode ser estimado pelo M SE, apresentado na seção anterior na equação (1.1) . O desempenho de um quantizador vetorial é medido pela distorção média, estimado pela esperança das distorções, dada pela equação D.  E r}x  xˆ}2s.. (1.7). Shannon, [20], mostrou que um quantizador ótimo possui performance próxima do limitante inferior, dada pela função da distorção pela taxa, sendo possível alcançá-la fazendo k Ñ 8, porém, a prova é não-construtiva. Usualmente, o desempenho de um quantizador é comparado com a função da taxa pela distorção, em termos da medida SNR (do inglês signal-to-noise ratio), definida por SN R  10 log10. E r}x}2 s , D. (1.8). onde a unidade de medida é a decibels (dB) e E r}x}2 s é a potência do sinal (energia) de entrada com relação a norma euclidiana. Para projetar um quantizador vetorial particiona-se o espaço em regiões de decisão, chamada de região de Voronoi e denotada por Vi . Cada região de Voronoi possui um único representante xˆi , de tal forma que um vetor x será quantizado para xˆi , se e somente se, ele pertence a região de decisão Vi.  tx P Rk | dpx, xˆiq ¤ dpx, xˆj q, @ i  j u,. (1.9).

(23) Capítulo 1. O problema de quantização. 23. onde dpa, bq é a distância euclidiana do ponto a ao ponto b. Porém, as regiões Vi não necessitam ser descritas explicitamente, basta se conhecer o vetor xˆi que a representa e o seu volume, que são parâmetros essenciais para se estimar a distorção. Mais detalhes serão abordados na Seção 1.2.1. Para a quantização vetorial, dentre os algoritmos mais conhecidos, temos o LBG (Linde-Buzo-Gray), também conhecido como k  means, visto como uma generalização do algoritmo de Lloyd-Max para quantização escalar. Dado um conjunto qualquer de M vetores quantizadores, para cada vetor recebido se calcula a distância entre ele e os vetores do dicionário, associando-o ao vetor mais próximo. Após identificado o vetor mais próximo de cada vetor da entrada, os vetores quantizadores são atualizados pela média aritmética dos vetores associados a ele. Esse processo é repetido até se atingir um limiar onde os elementos do dicionário não sofrem mais alterações ao serem atualizados. Um exemplo de quantização vetorial para fontes uniformes e gaussianas, com 50 vetores no dicionário, pode ser visto na Figura 5. Os pontos na cor verde são as variáveis aleatória da fonte e os pontos em vermelho compõe o dicionário, sendo as regiões delimitadas as respectivas regiões de Voronoi.. (a) Exemplo de quantizador vetorial com fonte uniforme.. (b) Exemplo de quantizador vetorial com fonte gaussiana.. Figura 5 – Exemplo de quantixador vetorial para diferentes fontes simulados no software Matlab R2018b. Fonte: própria. Apesar do bom desempenho, o algoritmo LBG possui alto custo computacional devido à necessidade de se computar a distância de cada elemento com os vetores do dicionário a cada iteração e não há controle sobre a taxa de compressão do quantizador proposto, dificuldades inerente à falta de estrutura do processo. Algumas outras técnicas de quantização encontradas em [21], como quantizadores estruturados em árvore, por classificação, por transformação, por produto de códigos, multi-estágios, interpolativos e por reticulados, podem possuir algumas vantagens em relação ao LBG, em termos de.

(24) Capítulo 1. O problema de quantização. 24. estruturas e/ou complexidade, observando as características de cada problema. Para esta tese, propomos uma abordagem para quantização vetorial de fontes gaussianas, que combina a técnica conhecida como shape/gain com códigos esféricos em camadas de toros. Para tal fim, se faz necessário uma breve revisão dos conceitos de reticulados, fundamentais para a construção dos códigos esféricos e do quantizador.. 1.2.1 Reticulados e quantização Nesta seção revisaremos os conceitos de reticulados e quantização em reticulados, bem como as figuras de mérito envolvidas nos problemas em questão. As principais referência para essa seção podem ser encontradas em [11, 52].. De modo singelo, pode se dizer que reticulados são conjuntos discretos e regulares de pontos no espaço k-dimensional e, de acordo com Zamir [52], reticulados estão presentes em todos os lugares, desde um simples empilhamento de laranjas ou bolas de boliches, colmeia de abelhas, à construção de mosaicos e ladrilhamento de pisos, por exemplo. Em problemas mais complexos, os reticulados apresentam-se em várias aplicações, em especial na teoria da informação, tanto para codificação da fonte (quantização e modulação) quanto para codificação de canal, e em cristalografia, no estudo da formação de cristais.. 1.2.2 Revisão de Reticulados Um reticulado Λ no espaço Rk é um conjunto infinito discreto de ponto dispostos de forma regular e definido algebricamente como o conjunto de vetores que são gerados pela combinação linear de vetores linearmente independentes (LI) com coeficientes inteiros, isto é, # + Λ. m ¸. . i 1. ai u i : ai. PZ @. i ,. onde B  tu1 , u2 , . . . , um u é uma matriz com vetores LI por linhas e base para o reticulado, logo uma matriz geradora para Λ do espaço vetorial Rk pm ¤ k q. Iremos considerar para este trabalho apenas reticulados que possuam posto completo pm  k q. As Figuras 6a e 6b ilustram dois diferentes reticulados com k  2..

(25) Capítulo 1. O problema de quantização. 25. paralelep´ ıpedo fundamental paralelep´ ıpedo fundamental. Regi˜ ao de Voronoi. Regi˜ ao de Voronoi (a) Reticulado Z2 .. (b) Reticulado hexagonal.. Figura 6 – Exemplos de reticulados, seus paralelotopos e regiões de Voronoi. R é uma região fundamental para Λ se (i) Se x, y (ii). ¤. px. Rq. P Λ, x  y, então px. £. py. Rq  H, onde R é o interior de R.. Rq  Rk ,. assim, toda partição R é dita ladrilhar o espaço, sendo possível determinar diferentes regiões fundamentais, como mostra a Figura 7.. Figura 7 – Diferentes partições do reticulado Hexagonal. Fonte: [52]. As principais partições fundamentais são o paralelotopo fundamental, definido como y. . m ¸. . ti ui , 0 ¤ i   1, ti. P R,. i 1. e a região de Voronoi do reticulado, definida pontualmente por VΛ pλq  y. P R k { } λ  y } ¤ } λ  v }, @ v P Λ. (. ,. isto é, a região de Voronoi do ponto λ é o conjunto de pontos do espaço que estão mais próximo de λ do que qualquer outro ponto v do reticulado Λ, tal que λ é um ponto do reticulado Λ. Na Figura 7, as regiões “A” são região de Voronoi enquanto que “B” são regiões fundamentais..

(26) Capítulo 1. O problema de quantização. 26. A matriz G  BB T é chamada de matriz de Gram do reticulado, por definição, seus elementos armazenam os produtos internos entre os vetores da base, logo contém informações do ângulo entre os vetores e suas normas. O determinante ou discriminante do reticulado Λ é definido como o determinante da matriz de Gram e o volume da região a fundamental é determinado por V pΛq  |detpGq|, sendo essas medidas invariantes da escolha da base. O reticulado dual Λ é definido como o conjunto de todos os vetores v que xv, λy P Z, para todo λ P Λ.. P Rk tal. Dentre os principais problemas envolvendo reticulados, daremos ênfase aos problemas de empacotamento, cobertura, quantização e suas respectivas figuras de mérito, descritos na sequência.. Empacotamento Esférico. Problemas comuns já citados no início desta seção, como o melhor empilhamento de laranjas ou de arranjo de bolas de sinuca em uma caixa, possuem soluções tais que os centros desses objetos estruturam-se como reticulados. Esse arranjo busca responder qual a melhor configuração para se empacotar bolas de mesmo raio sem que ocorra a sobreposição delas, ou seja, tal que elas não se intersectam e cubram o maior espaço possível. O raio de empacotamento rpack é o maior raio possível tal que no máximo as bolas se tangenciem, ou equivalentemente, o raio de empacotamento pode ser definido como o maior raio tal que as bolas estejam inscritas na região de Voronoi. A Figura 8 mostra o melhor empacotamento para os reticulado Hexagonal e cúbico Z2 , respectivamente, e suas regiões de Voronoi.. rpack rpack. Figura 8 – Empacotamento nos reticulados hexagonal e cúbico respectivamente. Fonte: própria. Para analisarmos a eficiência de um empacotamento esférico, um parâmetro profícuo é o raio de eficiência ref f pΛq, definido como o raio da esfera que detém o mesmo.

(27) Capítulo 1. O problema de quantização. 27. volume da região de Voronoi do reticulado, explicitado pela expressão ref f pΛq . . V pΛq Vk. 1{k. ,. onde Vk é o volume da bola k-dimensional com raio unitário, tal que ref f pΛq ¥ rpack pΛq. Dessa forma, a eficiência do empacotamento ρpack pΛq pode ser determinada pela razão ρpack pΛq . rpack pΛq ref f pΛq. e interpretada como a proporção da região de Voronoi preenchido pela esfera com raio de empacotamento rpack . Portanto, quanto mais próximo de 1, for essa medida, mais denso será o empacotamento, apresentando a propriedade de invariabilidade por escalonamento, isto é, ρpack pαΛq  ρpack pΛq. Como exemplo, podemos calcular a eficiência de empacotamento ? do reticulado 1 3 hexagonal pA2 q, sabendo que rpack pA2 q  , V pA2 q  | detpA2 q|  e o volume do 2 2 círculo unitário V2  π, a eficiência do reticulado A2 é ρpack pA2 q  0.9523, atingindo a otimalidade em dimensão 2. Em [11], na Tabela 1.2, é possível encontrar os parâmetros para o problema de empacotamento dos principais reticulados. Para dimensões altas, um limitante inferior para a eficiência de empacotamento 1 é dado pelo teorema de Minkowski e Hlawka, que afirma que max ρpack pΛq ¥ [11]. 2 Cobertura esférica. O problema de cobertura esférica também surge de maneira natural e pode ser exemplificado imaginando que uma empresa de telefonia celular gostaria de instalar antenas com raio de cobertura rcov , de tal forma que toda uma região do espaço 3-dimensional fosse alcançada. A Figura 9 ilustra o problema proposto. O âmago da questão é obter para um dado arranjo de pontos, o menor valor para o raio de cobertura rcov , tal que todo espaço esteja coberto.. Figura 9 – Ilustração de uma aplicação do problema de cobertura. Fonte: adaptado de [52]. O raio de cobertura rcov pΛq de um reticulado Λ é o menor raio tal que a região de Voronoi está circunscrita a uma esfera de raio rcov . De forma similar ao problema de.

(28) Capítulo 1. O problema de quantização. 28. empacotamento, a eficiência do raio de cobertura pode ser mensurada pela expressão ρcov pΛq . rcov pΛq . ref f pΛq. Quanto mais próximo de 1, estiver esse parâmetro, mais fina será a cobertura do reticulado. a ? k k k O reticulado cúbico Zk possui rcov p Z q  k { 2, raio de eficiência r p Z q  1 { Vk , ef f ? ?k k V k logo a eficiência será ρcov pZk q  . Para k  2, tem-se ρcov pZ2 q  1.253 e para o 2 reticulado Hexagonal tem-se ρcov pA2 q  1.0996 [52]. A Tabela 2.1, em [11], apresenta os parâmetros importantes para o problema de cobertura para os principais reticulados. Quando a dimensão cresce, a eficiência do empacotamento esférico tende a se depreciar, porém, Rogers [35] mostrou que a eficiência máxima da cobertura pode ser aproximada quando a dimensão cresce, isto é, ρcov Ñ 1 quando k Ñ 8, sendo esse um resultado importante no estudo de quantização para dimensões grandes. Mais detalhes serão abordados na Seção 1.3.3, tratando também as similaridade existentes entre os problemas de quantização e cobertura esférica.. Quantização em Reticulados. Um dos desafios ao se projetar um quantizador é definir um bom dicionário de modo a abranger toda uma região factível, obedecendo as características da fonte. O dicionário de um quantizador em reticulados é formado pelos próprios pontos do reticulado, evidenciando ser uma vantagem no processo de listagem dos pontos, do cálculo do volume da região de Voronoi e de um processo estruturado de decodificação para se encontrar o ponto mais próximo de um vetor recebido. Dado um vetor x P Rk , um quantizador em reticulados, associado a alguma partição R, é definido como QΛ pxq  xˆ se x P R xˆ, em outras palavras, um quantizador em reticulados mapeia pontos do Rk Ñ Λ, identificando a partição R à que um ponto x recebido pertence, consequentemente, o ponto do reticulado xˆ associado a essa partição. Nos casos em que a partição é a região de Voronoi, esse quantizador é denominado de quantizador pelo vizinho mais próximo [52]. A propriedade homogênea dos reticulados define regiões de Voronoi congruentes, porém, em se tratando de pontos de um reticulado restritos a uma região S, regiões próximo à fronteira de S apresentam ser diferentes das regiões que estão completamente no interior de S. Zamir [52] pg 20 mostrou que quando o número de pontos do reticulado contidos em S é suficientemente grande, o volume da região de Voronoi de um reticulado V pΛq, pode ser aproximado por V pS q V pΛq  , (1.10) N p Λq onde V pS q denota o volume e N pΛq o número de pontos dentro da região S..

(29) Capítulo 1. O problema de quantização. 29. O desempenho de um quantizador em reticulados é mensurado pelo segundo momento σ 2 , definido por dimensão sobre a região de Voronoi V0 (definida em torno da origem), assim » 1 1 2 2 }x}2dx. (1.11) σ  E r}x} s  k kV pΛq V0 Com essa abordagem, estamos considerando que a região de Voronoi Vi são réplicas da região V0 . A figura de mérito de um quantizador em reticulados com respeito ao M SE é a segundo momento normalizado (N SM ), uma medida adimensional que compara o desempenho de reticulado em diferentes dimensões e definida por GpΛq . σ 2 pΛq . V 2{k pΛq. (1.12). Uma tabela com o N SM dos principais reticulados pode ser encontrada em [11]. Como exemplo, podemos calcular a segundo momento normalizado do reticulado cúbico Zk . Observando a equação (1.2), quando o tamanho do intervalo é 1 (∆  1), GpZq  1{12  0.08333, porém como essa medida é normalizada pela dimensão, esse é o N SM para o reticulado cúbico para qualquer valor de k. Naturalmente, quando a fonte a ser quantizada possui características de uma distribuição uniforme, reticulados se adequam como bons quantizadores, porém, para fontes não-uniformes, é possível adicionarmos um ruído intencional u ao vetor de entrada x, distribuídos uniformemente em torno de V0 , de maneira que o quantizador encontra o representante Qpx uq e calcula o ponto quantizador final subtraindo o ruído u adicionado, obtendo xˆ  Qpx  uq u. O esquema resumido anteriormente é conhecido na literatura, do termo em inglês, como dithering e através do chamado cripto lema, o erro de quantização se torna uniforme e independente, que são as características desejadas para um quantizador em reticulados. Para mais detalhes ver [52], onde o autor dedica um capítulo inteiro para tratar desse problema. Recentemente, em [30], foi mostrado que esse procedimento pode se tornar desnecessário quando a fonte é gaussiana, desde que a distância entre a distribuição definida pelos erros de quantização e a distribuição uniforme seja pequena, parâmetro esse conhecido, no inglês, como flatness factor.. 1.3 Quantizador para fontes gaussianas É esperado que diferentes fontes de informação, com suas particularidades, causem efeitos diferentes sobre um mesmo quantizador, conforme observado na Figura 5. Diante disso, é essencial observar as características de cada fonte e usá-las para se projetar um quantizador. Infelizmente, as provas de que um quantizador vetorial, para uma dada fonte, pode atingir assintoticamente o limitante teórico de Shannon, quando a.

(30) Capítulo 1. O problema de quantização. 30. sua dimensão tende ao infinito, são não-construtivas, o que deixa esse problema ainda em aberto. Antes de explorarmos a construção de um quantizador esférico, visitaremos um forte elo de conexão entre as características da fonte gaussiana e a distribuição de pontos sobre a superfície de uma esfera, sendo essas propriedades fundamentais na definição dos parâmetros descritos pela técnica shape/gain e de códigos esféricos para o problema de quantização. Este trabalho se restringe apenas ao uso de fontes gaussianas sem memória com função densidade de probabilidade X  N p0, σ 2 q, com média 0 e variância σ 2 , assumindo ainda que as variáveis aleatórias são independentes e identicamente distribuídas (iid), dada pela f dp 1  2σx22 . fX pxq  ? e (1.13) 2πσ 2 Como neste trabalho estamos interessados nas variáveis aleatórias gaussianas iid para construção de quantizadores vetoriais, temos que fX px1 , x2 , . . . , xk q  f px1 qf px2 q . . . f pxk q,. (1.14). e aplicando o logaritmo na equação anterior, obtemos log2 fX px1 , x2 , . . . , xk q . k ¸. . log2 fX pxi q.. (1.15). i 1. Assim, para uma variável aleatória px1 , . . . , xk q, com as características acima, a f dp assume a forma k ¸. fX pxq . . 1 2πσ 2. k 2. e. . x2i. i 1 2σ 2. .. (1.16). Alguns conceitos fundamentais para desenvolvermos esta seção são o de entropia, a lei dos grandes números e suas relações com a teoria da informação. Entropia foi um conceito introduzido por Shannon com o propósito de medir o quanto de informação é produzida por uma determinada fonte, sendo uma medida que auxilia na alocação de taxa, evitando assim o uso desnecessário de memória. Podemos definir entropia como sendo a medida de incerteza ou da falta de informação de variáveis aleatórias individuais ou conjuntas, associada a uma possível distribuição de probabilidade [8]. Para uma variável aleatória contínua, associada a uma f dp, a entropia H pX q é definida pela expressão H pX q  . ». X. fX pxq log2 fX pxqdx.. (1.17).

(31) Capítulo 1. O problema de quantização. 31. Substituindo a f»dp gaussiana, dada pela equação (1.13), na expressão anterior 8 e lembrando o fato de que fX pxqdx  1, encontramos [13, 41]. 8. H pX q.   . H pX q. . »8. 8. ?1. ?1. e 2σ2 log2 2 x2. 2πσ 1 1  2 log2 2πσ 2 1 log2 2πσ 2 e. 2. 2πσ. e 2σ2 dx 2 x2. 1 log2 e 2. (1.18) (1.19) (1.20). Por outro lado, sabe-se que pela lei dos grandes números, a média de um conjunto de variáveis aleatórias px1 . . . , xk q iid e integráveis, para k suficientemente grande, k 1¸ xi ÝÑ E rxs, validando uma converge em probabilidade para a esperança, isto é, k i1 propriedade análoga na teoria da informação, conhecida como propriedade assintótica de equipartição (PAE) [1, 13], mostrando que 1 1 log2 k f p x1 , . . . , x k q. ÝÑ H pX q.. (1.21). Logo, das equações (1.20) e (1.21) podemos escrever.  k1 log2 f px1, . . . , xk q  log2 f px1 , . . . , xk q.  f px1 , . . . , xk q . 1 log2 2πσ 2 e 2 k log 2πσ2e 2 2 ? 2 2k log2 2πσ e .. (1.22) (1.23) (1.24). Finalmente, igualando as equações (1.24) e (1.16), obtemos k ¸.  1 k 2. 2πσ 2. e. . x2i. i 1 2σ 2.  2k log. ? 2. 2πσ 2 e. (1.25). e aplicando novamente o logaritmo na base 2 em ambos os lados, a equação anterior pode ser reescrita como k k ¸ ? 1¸ x2i  σ 2 ñ x2i  pσ k q2 . (1.26) k i1 i1 A relação que encontramos na equação (1.26) reitera que, quando uma variável ? aleatória é gaussiana e iid, para k suficientemente grande, temos }x} ÝÑ σ k, afirmando que quando dimensão cresce, variáveis aleatórias gaussianas iid tendem a estar na superfície ? de uma esfera de raio σ k. Já pela equação (1.24), a f dp é aproximadamente uma constante, atestando que os pontos tendem estar distribuídos uniformemente em torno do vetor x. Trataremos ainda desse último resultado na seção seguinte..

(32) Capítulo 1. O problema de quantização. 32. 1.3.1 Distribuição de Rayleigh Dentre as conhecidas distribuições de variáveis aleatórias, têm-se a distribuição de Rayleigh, que descreve as características da distribuição da norma de variáveis aleatórias Gaussinas iid. Seja X1 , X2 , . . . , Xk variáveis aleatórias gaussianas independentes e identicamente distribuídas de acordo com Xi  N p0, σ 2 q, então. }X } . b. X12. X22. Xk2. .... . g f k f¸ e X2. . i. i 1. é uma variável aleatória de Rayleigh [33] e sua f dp é dada por. p p xq . #. 2xk1.  e 2σ2 para x. ¥0 k q , 2 para qualquer outro ponto. p. {. x2. 2σ 2 k 2 Γ. 0,. onde Γ denota a função gamma dada por Γptq  f dp de Rayleigh.. »8. (1.27). xt1 ex dx. A Figura 10 ilustra uma. 0. p(x). x. Figura 10 – Função densidade de probabilidade de Rayleigh.. A média, a variância e o segundo momento para variáveis aleatórias do tipo Rayleigh são, respectivamente E r}X }s. . ?. 2σ 2 Γ k 2 1  Γ k2. varr}X }s. . kσ 2 . E r}X }2 s. . kσ 2. . ?. . pmédiaq,. 2σ 2 Γ k 2 1  Γ k2.  2. pvariânciaq,. psegundo momentoq. (1.28). As demonstrações dessas propriedades e mais detalhes podem ser encontradas em [26]..

(33) Capítulo 1. O problema de quantização. 33. Nas f dp do tipo Rayleigh nota-se que quando a dimensão cresce, o valor a esperado da norma tende à σ k  1{2 e a variância tende a um valor constante σ 2 {2 [24], isso causa o chamado efeito sphere-hardening, responsável pelo denominado “endurecimento da esfera”, no sentido de concentrar os pontos em torno de uma casca esférica, reforçando o argumento de variáveis aleatórias gaussianas iid estarem distribuídas sobre a superfície ? esférica de raio σ k, conforme notado na Seção 1.3. Resumindo esta seção, temos propriedades suficientes que justificam o projeto de um quantizador esférico com pontos distribuídos uniformemente em torno da superfície esférica S k1 . Sem perda da generalidade, podemos, como usual, considerar uma esfera unitária para a construção do dicionário de um quantizador.. 1.3.2 Quantização Shape/Gain Nesta seção, discorreremos sobre a técnica shape/gain, no português, forma/ganho, que são conceitos básicos no projeto de nosso quantizador esférico [10]. O shape descreve as características de um vetor unitário, enquanto o gain é responsável por traçar a característica da norma euclidiana desse vetor. Seja x definidos como. P Rk. uma variável aleatória gaussiana iid, o shape S e o gain g são S.  }xx}. e. g.  }x},. o vetor x é descrito pela multiplicação S e g, x  gS. O shape é um vetor, logo também será quantizado por um vetor e o gain é um escalar, assim um quantizador shape/gain é a combinação de um quantizador vetorial com um escalar. O vetor xˆ que quantiza um vetor ˆ onde gˆ é o valor que quantiza g e Sˆ é o valor quantiza recebido x, é composto por xˆ  gˆS, o vetor S. Os dicionários do quantizador shape/gain possuem características diferentes, o dicionário do shape é formado por vetores unitários, que como vimos na seção anterior, podem ser distribuídos uniformemente sobre a superfície de uma esfera euclidiana unitária e ser projetado por algum código esférico eficiente. O dicionário do gain é formado por escalares que descrevem uma partição da f dp de Rayleigh e pode ser projetado por algum quantizador escalar otimizado. A Figura 11 exemplifica o processo de decodificação desse quantizador. De modo mais específico, se Cg  1, . . . , Ng e CS  1, . . . , NS representam, respectivamente, os dicionários dos quantizadores do gain e do shape, o dicionário do quantizador shape/gain será dado por C  Cg  CS e o número de palavras em C é dado por N  Ng NS . Assim, nota-se que a técnica shape/gain percorre cada camada esferica, em que os raios foram definidos pelo dicionário do gain e aloca os pontos do dicionário do shape em sua superfície, como ilustra a Figura 12..

(34) Capítulo 1. O problema de quantização. ˆ = gˆˆs x. x = gs ˆs. 34. pontos do c´ odigo esf´erico. ||x||. g. decodifica g. gˆ ˆ x. x. s. x. ||x||. (a) Ilustração do processo de quantização.. s. decodifica s ˆs. (b) Esquema do quantizador shape/gain.. Figura 11 – Quantizador shape/gain. Fonte: própria.. Figura 12 – Exemplo de quantização shape/gain no R2 . Fonte: própria. Uma grande vantagem desse processo é que o número de palavras código em C cresce com a multiplicação dos dicionários, enquanto que a taxa R cresce com a soma das taxas, ou seja, a taxa R deste quantizador é calculada somando a taxa de quantização do gain Rg com o do shape RS , R  Rg RS , logo R  Rg. RS.  logk2 Ng. log2 NS k.  log2 Nk g .NS .. (1.29). Nesse trabalho, para projetar o dicionário do shape usaremos códigos esféricos em camadas de toros, detalhados na Seção 1.6 e, para projetar o dicionário do gain, usaremos o algoritmo de otimização de Lloyd-Max, já tratado nas seções iniciais. Na Seção 1.4, abordaremos os conceitos de códigos esféricos e na Seção 1.5 trabalharemos uma construção feita em [24] que projeta um quantizador shape/gain utilizando o código esférico “Wrapped”, para o shape e o algoritmo de Lloyd-Max para o gain..

(35) Capítulo 1. O problema de quantização. 35. 1.3.3 A relação entre o problema de quantização e cobertura esférica Nesta seção buscamos apresentar brevemente as relações existentes entre os problemas de cobertura esférica e quantização, apesar desses problemas, como foi visto, possuírem figuras de méritos diferentes, a saber o segundo momento normalizado e o raio de cobertura eficiente, para os problemas de quantização e cobertura, respectivamente. No problema de cobertura esférica o raio de cobertura rcov é o menor raio capaz de cobrir toda a região de Voronoi, sendo possível portanto, com um número finito de esferas de raio rcov , cobrir todo o espaço em uma dada dimensão. Por outro lado, o problema de quantização busca minimizar o M SE, isto é, minimizar a distância mínima entre os pontos para uma dada taxa. Diante desse fato, observamos que o M SE será minimizado tanto quanto menor for a distância mínima entre os pontos e é justamente este fato que conecta os dois problemas. Porém, diminuir essa distância pode implicar no aumento considerável da taxa, de modo também a piorar outros aspectos do código em questão, como o desempenho da SN R, por exemplo. A conexão com o problemas de cobertura pode ajudar no controle do M SE para uma dada taxa, pois garantimos que a distância entre um ponto x recebido e o ponto xˆ quantizado, não é maior que o raio de cobertura rcov , fornecendo assim um limitante superior para o M SE, dado pela equação. }x  xˆ} ¤ rcov ,. (1.30). o que não garante que resolvendo o problema de cobertura, o de quantização também estará solucionado, a equação (1.30) apenas sugere que não erraremos mais que o raio de cobertura dado. A Figura 13 ilustra o erro máximo de um problema de quantização comparado aos raios de cobertura e empacotamento. A relação que existe entre os problemas de quantização e cobertura esférica na verdade são características intrínsecas ao problema de quantização em reticulados e envolvem propriedades adicionais, que auxiliarão no projeto de um quantizador em termos de limitantes. Como vimos na Seção 1.2.1, a distorção para um quantizador projetado a partir de reticulados, pode ser estimada pelo segundo momento normalizado pN SM q, quando existir uma distribuição uniforme sobre a região de Voronoi, estando então a performance da distorção associada diretamente à região de Voronoi do reticulado escolhido. Porém, não é necessário conhecer a região explicitamente, o que na verdade é um problema difícil para dimensões altas, uma alternativa para estimá-la é calcular o volume da região R que limita o reticulado e dividir pela quantidade de pontos dentro de R, conforme a equação (1.10)..

Referências

Documentos relacionados

Instituto Estadual de Medicina Veter1nar1a Instituto de Pesqu isas e Experimentação A-.. l ' 0rto

Figura 6: Amostras de adultos de Tuta absoluta capturados na armadilha Delta com feromona colocada na cultura do tomateiro na estação experimental do INIDA em S.. Figura

•   O  material  a  seguir  consiste  de  adaptações  e  extensões  dos  originais  gentilmente  cedidos  pelo 

Deste modo, o adequado zoneamento e sua observância são fundamentais para a conciliação da preservação ou conservação de espécies, hábitats e paisagens dentre outras e

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

17 CORTE IDH. Caso Castañeda Gutman vs.. restrição ao lançamento de uma candidatura a cargo político pode demandar o enfrentamento de temas de ordem histórica, social e política

Foram apontadas algumas críticas, sobre o referente curso através da visão dos discentes perante o questionamento mostrado na figura anterior, onde o foco esta na

Além dos programas de formação municipais, atualmente em Barra de Santa de Rosa existem formações ofertadas pelo Governo Federal e suas parcerias, que são o