Entendendo Espaços Intermediários Elevados em Aprendizado de Máquina

Zachary Singer Blocked Desbloquear Seguir Seguindo 28 de dezembro de 2018

Uma característica marcante do aprendizado de máquina é lidar com grandes quantidades de dados de vários domínios. Independentemente de esses dados serem processados como uma imagem, vídeo, texto, fala ou puramente numérico, quase sempre existe em algum espaço de alta dimensão. Neste artigo, mostrarei como os dados são representados em dimensões superiores e como podemos interpolar entre eles. Como é quase impossível visualizar esses espaços abstratos, também fornecerei algumas analogias úteis para pensar.

Coordenadas Espaciais como Imagens

Podemos dar a cada ponto em nosso espaço tridimensional uma coordenada (x, y, z) . Como esses pontos são representados como três números reais, dizemos que pertence ao conjunto ?³. Essas coordenadas geralmente não são muito significativas, mas codificam noções úteis de distância e magnitude.

O importante é que quando tivemos três números reais, podemos representá-lo em nosso espaço tridimensional. Vamos agora pensar em uma imagem. Uma imagem é simplesmente uma grande coleção de pixels, com cada pixel representando uma intensidade em algum intervalo. Por uma questão de simplicidade, vamos pensar apenas em imagens em tons de cinza, onde a intensidade de cada pixel é algo entre 0 e 1.

Uma imagem de baixa resolução pode ser uma miniatura de 32 por 32 pixels. Mesmo que seja representado visualmente como um quadrado, você pode imaginar esticá-lo em uma linha com 1024 = 32 × 32 pixels. Então, qual é o ponto? Em que espaço esta imagem vive? Bem, agora temos 1024 números reais, portanto deve existir no espaço de 1024 dimensões ?¹?²?.

Pensando em Espaços de Alta Dimensão

De certa forma, já temos uma maneira de visualizar um espaço 1024-dimensional: 32-por-32 imagens em tons de cinza! Isso pode parecer um pouco circular, mas funciona em algumas situações. À medida que nos movemos através deste espaço de alta dimensão, as intensidades dos pixels em nossa imagem irão mudar. Mas a maioria dessas mudanças não se parecerá com nada e, na maioria das vezes, parecerá um absurdo.

Nós, como humanos, entendemos como interpretar e interpolar entre imagens. Se quisermos mudar uma imagem de um gato para outro, sabemos como visualizar as duas imagens e isolar as principais diferenças. Se fôssemos mapear nossos cérebros, o espaço de todas as fotos, fotos de gatos e cachorros seria muito próximo. Aprendemos as associações entre imagens e como colocar imagens semelhantes juntas e imagens diferentes. Mas em um espaço dimensional alto, cada imagem é misturada e cercada por um absurdo barulhento e sem sentido.

Espaço de pixel e espaço latente

A representação de alta dimensão que temos discutido até agora é muitas vezes referida como um espaço de ambiente ( ou espaço de pixel no caso de imagens). É assim que pensamos em longas listas de números como vetores em espaços euclidianos de alta dimensão.

O exemplo mais famoso para pensar em imagens simples são dígitos manuscritos. São 28 por 28 imagens em escala de cinza, com cada imagem pertencente a ????. Se quisermos nos “mover” de uma imagem para outra, precisamos entender a semântica de cada dígito.

Interpolando entre dígitos no espaço do pixel.

Interpolando no espaço do pixel

Suponha que tenhamos duas coordenadas p e q. Podemos interpolar entre eles no espaço de pixels apenas alterando cada coordenada do primeiro para o segundo em etapas. Por exemplo, se quisermos mudar da coordenada (1, 2) para (5, 12) em duas etapas, podemos considerar a progressão (1, 2) ? (3, 7) ? (5, 12). Em cada passo adicionamos apenas metade da diferença entre as coordenadas.

Esse algoritmo funcionará para um número arbitrário de coordenadas, de modo que funcionará também para nossas imagens com dígitos manuscritos. Na imagem acima, começamos com uma imagem de “5” e terminamos com uma imagem de “9”. A progressão acima mostra uma interpolação entre eles em quatro etapas.

Espaço Latente e Interpolação

Embora possamos representar uma imagem através de seus pixels, também podemos classificar imagens por meio de sua representação semântica. Entendemos como são os 5's e os 9s, por isso podemos imaginar agrupar todos os dígitos semelhantes. Este espaço pode ser totalmente diferente e pode precisar apenas de algumas dimensões. Essa é a base para muitos métodos de redução de dimensão.

O propósito de muitos modelos de aprendizado de máquina é aprender esse espaço latente . Em artigos futuros, discutirei como a arquitetura desses modelos determina implicitamente a dimensão do espaço latente.

Uma vez que aprendemos a representação do espaço latente, podemos interpolar no espaço latente e obter uma transição muito mais suave entre as imagens. Considere as mesmas duas imagens de antes. A figura abaixo mostra a interpolação no espaço latente.

Interpolando entre os mesmos dois dígitos no espaço latente.

Conclusão

De muitas maneiras, a aprendizagem de máquina é toda sobre a interpretação de espaços de alta dimensão. Entender como esses espaços são usados e transformados é uma habilidade valiosa, mesmo que não possamos visualizá-los por nós mesmos. Como a dificuldade de aprendizado de máquina é projetar e compreender modelos que reduzem os dados a espaços latentes de baixa dimensionalidade, há grande valor em aprender essas representações.