Como a GOAT ensinou uma máquina a amar tênis

Missão

Na GOAT, criamos o maior mercado para compradores e vendedores trocarem tênis com segurança. Ajudar as pessoas a expressar seu estilo individual e a navegar no universo dos tênis é um dos principais motivadores da equipe de dados do GOAT. A equipe de dados cria ferramentas e serviços, aproveitando a ciência de dados e o aprendizado de máquina, para reduzir o atrito nessa comunidade sempre e sempre que possível.

Quando entrei no GOAT, eu não era um craque. Todos os dias, enquanto aprendia sobre tênis novos, eu gravitava em direção às características visuais que tornavam cada um único. Comecei a pensar sobre as maneiras naturalmente diferentes pelas quais as pessoas novas nessa cultura entrariam no espaço. Eu saí sentindo que, independentemente do seu QI do tênis, todos nós podemos nos comunicar sobre o apelo visual deles. Inspirado em minha experiência, decidi construir uma ferramenta com a esperança de que outros a achassem útil.

O primeiro lugar para começar é o desenvolvimento de uma linguagem comum para descrever todos os tênis. No entanto, essa não é uma tarefa simples. Com mais de 30.000 tênis (e crescendo) em nosso catálogo de produtos de estilos, silhuetas, materiais, cores etc. exclusivos, atribuir manualmente todo o catálogo torna-se intratável. Além disso, cada lançamento de sapato cria a possibilidade de mudar a maneira como falamos sobre tênis, o que significa que precisamos atualizar o idioma comum. Em vez de tentar combater essa realidade, precisamos abraçar a variação e a inovação, incluindo-as em nossa linguagem desde o início.

Fábrica de sapatos

Uma maneira de resolver isso é usar o aprendizado de máquina. Para acompanhar o cenário mutável dos tênis, usamos modelos que encontram relacionamentos entre objetos sem especificar explicitamente o que procurar. Na prática, esses modelos tendem a aprender recursos semelhantes aos humanos. Eu detalho neste post como usamos essa tecnologia para criar atributos visuais como a base da nossa linguagem comum de tênis.

Modelos de variáveis ​​latentes

No GOAT, usamos redes neurais artificiais para aproximar os recursos visuais mais reveladores do nosso catálogo de produtos, ou seja, fatores latentes de variação. No aprendizado de máquina, isso está sob o guarda-chuva do aprendizado múltiplo. A suposição por trás do aprendizado múltiplo é que geralmente a distribuição de dados, por exemplo, imagens de tênis, podem ser expressas em uma representação de menor dimensão localmente semelhante a um espaço euclidiano, preservando o tempo todo a maioria das informações úteis. O resultado está transformando milhões de pixels de imagem em características diferenciadas interpretáveis, encapsuladas como uma lista de alguns números.

Manifold O QUE?

Pense em como você diria ao seu amigo as instruções para sua casa. Você nunca descreveria como ir da casa deles para a sua em uma série de coordenadas brutas de GPS. O GPS, nessa metáfora, representa uma variável aleatória de grande dimensão e domínio amplo. Em vez disso, é mais provável que você use uma aproximação dessas coordenadas na forma de uma série de nomes de ruas e instruções de direção, ou seja, nosso coletor, para codificar a unidade.

Modelagem

Utilizamos modelos não supervisionados, como Auto-codificadores Variacionais (VAE) [1], Redes Adversárias Generativas (GAN) [7] e vários híbridos [4] para aprender esse coletor sem rótulos de verdade de solo caros. Esses modelos nos fornecem uma maneira de transformar nossas fotos primárias de tênis em fatores latentes estéticos, também chamados de casamentos.

Em muitos casos, esses modelos aproveitam a estrutura do autoencoder de alguma forma ou forma para inferência no espaço latente. O codificador do modelo decompõe uma imagem em seu vetor latente e depois reconstrói a imagem através do decodificador do modelo. Após esse processo, medimos a capacidade do modelo de reconstruir a entrada e calcular a incorreta, ou seja, a perda. O modelo comprime e descomprime iterativamente muito mais imagens usando o valor da perda como um sinal de onde melhorar. A tarefa de reconstrução impulsiona esse modelo de “aparência de gravata borboleta” para aprender os embates que são os mais úteis para a tarefa. Semelhante a outras técnicas de redução de dimensionalidade, como o PCA, essa técnica geralmente resulta na codificação da variabilidade no conjunto de dados.

Fábrica de sapatos

Pegadinhas e escolhas de design

Simplesmente ser capaz de reconstruir uma imagem geralmente não é suficiente. Os codificadores automáticos tradicionais acabam sendo tabelas de pesquisa sofisticadas de um conjunto de dados com recursos mínimos de generalização. Isso é resultado de uma variedade mal aprendida com “abismos” / “falésias” no espaço entre as amostras. Modelos modernos de Fábrica de sapatos estão resolvendo esse problema de várias maneiras. Alguns, como o famoso VAE, adicionam um termo de regularização de divergência à função de perda, a fim de restringir o espaço latente a algum suporte teórico.

Mais especificamente, a maioria desses tipos de modelos penaliza espaços latentes que não coincidem com algum padrão gaussiano ou uniforme antes e tentam aproximar as diferenças por meio de uma escolha de métricas de divergência. Em muitos casos, a escolha do modelo apropriado se resume às opções de projeto de medição de divergência, função de erro de reconstrução e antecedentes impostos. Tais exemplos para escolhas de projeto são o β-VAE e o Wasserstein Autoencoder, que alavancam a divergência de Kullback-Leibler e a perda adversa, respectivamente. Dependendo do seu caso de uso para incorporações aprendidas, você pode favorecer um ao outro, pois geralmente há uma troca entre qualidade e diversidade de saída.

No caso de combinações estéticas de tênis para a linguagem visual dos tênis, preferimos fatores latentes que incentivem um espaço latente robusto e diversificado para cobrir a maior parte de nosso catálogo de produtos. Em outras palavras, queremos ser capazes de representar a maior variedade de tênis com o custo de não ser tão bom com os estilos realmente únicos, como o JS Wings.

Estudo de caso “Parece que”

Treinamos um VAE para aprender um espaço latente de nossas fotos principais de produtos. Mantendo o vetor latente fixo, podemos ver como o modelo treina ao longo do tempo, construindo camadas de complexidade e abstração de uma maneira muito humana.

Fábrica de sapatos

Esse modelo tende a criar fatores independentes interpretáveis ​​pelo homem por dimensão, denominados desembaraço. Primeiro, o modelo se concentra em recriar a silhueta mais apropriada, com atenção ao contraste entre a sola e a parte superior. A partir daí, ele constrói a noção de gradientes de escala de cinza através da silhueta até começar a aprender cores básicas. Depois de entender os tipos de silhueta, p. boot vs. atlético, high vs. low a rede começa a lidar com os padrões e cores de design mais complexos, que serão os diferenciais finais.

Para mostrar o coletor aprendido e inspecionar a “suavidade” da superfície aprendida, podemos visualizá-lo ainda mais através de interpolações [6]. Escolhemos dois tênis aparentemente diferentes como âncoras e depois julgamos as transições entre eles no espaço latente. Cada vetor latente ao longo da interpolação é decodificado de volta ao espaço da imagem para inspeção visual e combinado com o produto real mais próximo em todo o nosso catálogo. A animação ilustra esses dois conceitos para mapear a representação aprendida.

Explorando ainda mais o espaço latente, usamos um único tênis e modificamos um fator de cada vez em todas as direções para observar como ele muda. Fatores que representam a cor do meio e da bota e a cor única são apenas algumas características visualmente perceptíveis aprendidas pela rede. Dependendo do modelo, o número de fatores latentes e sua independência um do outro variam. Essa propriedade de desembaraço é uma área ativa de pesquisa para nós, esperamos melhorar.

Além disso, podemos examinar todo o nosso catálogo de produtos em termos de vetores latentes em um gráfico 2D / 3D dimensionalmente reduzido para procurar tendências macro. Usamos ferramentas como t-SNE para mapear nosso espaço latente em visualizações para verificação de pontos e anotações em massa.

Logicamente, se cada tênis não passa de uma agregação de fatores latentes, é possível adicionar ou subtrair esses fatores em relação um ao outro. Aqui está um exemplo de adição de dois tênis. Observe como os resultados mantêm a ampla faixa do tornozelo e a marca do primeiro tênis, enquanto a sola, a silhueta geral e o material podem ser atribuídos ao segundo.

Aprendizado

Os casamentos são uma ferramenta fantástica para criar valor reutilizável com propriedades inerentes semelhantes à maneira como os seres humanos interpretam objetos. Eles podem remover a necessidade de manutenção e atribuição constantes do catálogo sobre variáveis, variáveis e se prestam a uma ampla variedade de aplicativos. Ao alavancar as incorporações, é possível encontrar clusters para executar anotações em massa, calcular vizinhos mais próximos para recomendações e pesquisa, executar imputação de dados ausentes e reutilizar redes para iniciar a quente outros problemas de aprendizado de máquina.

Site Footer