Embedded representation of genetic programming trees

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: Victor de Souza Caetano
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Minas Gerais
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://hdl.handle.net/1843/80245
Resumo: Aprendizado de representações é uma área que investiga formas de representações de dados que facilitem para os algoritmos de aprendizado de máquina extraírem informações úteis deles. O aprendizado profundo atualmente possui os métodos mais eficazes para essa tarefa e pode aprender representações vetoriais reais - também conhecidas como embeddings - capazes de representar diferentes propriedades dos dados e suas relações. Nessa direção, este trabalho introduz uma nova maneira de visualizar indivíduos de programação genética (GP) em formato de árvore para regressão simbólica. A Programação Genética é um ramo da computação evolucionária onde os indivíduos são gerados para representar estruturas gerais, também conhecidas como programas. Quando essas estruturas são usadas em regressão simbólica, os indivíduos geralmente são representados por árvores, onde cada árvore é mapeada para uma função matemática. Como em qualquer tarefa de regressão, o objetivo da regressão simbólica é encontrar a função $f$ que mapeia o conjunto de variáveis que descrevem um exemplo de dados para um valor real y pertencente aos números reais. Assim como em outros algoritmos evolucionários, os GPs exploram o espaço de busca de funções $f$ usando os princípios da evolução e sobrevivência do mais apto. Primeiro, cada solução é avaliada para medir sua capacidade de resolver o problema, gerando o valor da função de aptidão (fitness). A aptidão é então usada em um processo probabilístico de seleção de indivíduos. Em seguida, os indivíduos selecionados passam por operações de cruzamento e mutação. Nos GPs baseados em árvores, é sabido que as operações genéticas acabam sendo restritas pela sintaxe e na maioria das vezes não há garantia de que o resultado das operações de cruzamento seja significativo ou apenas equivalente a uma mutação. Há muitas tentativas de levar a semântica em consideração nesse tipo de algoritmo, mas as abordagens propostas até agora não alteram as próprias representações individuais para tentar aproveitar a robustez fornecida pelos embeddings. Motivados por isso, dado um conjunto de operadores predefinidos usados para gerar as soluções para o problema (funções) representadas por árvores e um número suficientemente grande de árvores amostradas do espaço, treinamos um transformer para aprender uma função de codificação/decodificação. Ao transformar uma representação de árvore em uma representação vetorial numérica, somos capazes de medir distâncias entre árvores de maneira muito mais eficiente e, mais importante, gerar o potencial para que essas representações capturem semântica. Mostramos que a distância considerando o embedding apresenta resultados muito semelhantes aos de uma distância de edição de árvore, o que reflete sua similaridade sintática. Embora o modelo ainda não possa capturar a semântica, mostramos seu potencial usando o modelo de representação de árvore gerado em tarefas simples: medindo distâncias entre árvores em um cenário de fitness sharing, onde a diversidade é a propriedade desejável e pode ser medida considerando distâncias entre árvores, e gerando visualizações das árvores dentro de uma população evoluída.
id UFMG_07a87a3f2ef174e104fbcb3e6b8abcd5
oai_identifier_str oai:repositorio.ufmg.br:1843/80245
network_acronym_str UFMG
network_name_str Repositório Institucional da UFMG
repository_id_str
spelling Embedded representation of genetic programming treesRepresentação incorporada de árvores de programação genéticaComputação – TesesAprendizado do computador – TesesProgramação genética (Computação) – TesesRedes neurais (Computação) – Tesesgenetic programmingembedded representationstransformerssemanticsrepresentation learningneural networksAprendizado de representações é uma área que investiga formas de representações de dados que facilitem para os algoritmos de aprendizado de máquina extraírem informações úteis deles. O aprendizado profundo atualmente possui os métodos mais eficazes para essa tarefa e pode aprender representações vetoriais reais - também conhecidas como embeddings - capazes de representar diferentes propriedades dos dados e suas relações. Nessa direção, este trabalho introduz uma nova maneira de visualizar indivíduos de programação genética (GP) em formato de árvore para regressão simbólica. A Programação Genética é um ramo da computação evolucionária onde os indivíduos são gerados para representar estruturas gerais, também conhecidas como programas. Quando essas estruturas são usadas em regressão simbólica, os indivíduos geralmente são representados por árvores, onde cada árvore é mapeada para uma função matemática. Como em qualquer tarefa de regressão, o objetivo da regressão simbólica é encontrar a função $f$ que mapeia o conjunto de variáveis que descrevem um exemplo de dados para um valor real y pertencente aos números reais. Assim como em outros algoritmos evolucionários, os GPs exploram o espaço de busca de funções $f$ usando os princípios da evolução e sobrevivência do mais apto. Primeiro, cada solução é avaliada para medir sua capacidade de resolver o problema, gerando o valor da função de aptidão (fitness). A aptidão é então usada em um processo probabilístico de seleção de indivíduos. Em seguida, os indivíduos selecionados passam por operações de cruzamento e mutação. Nos GPs baseados em árvores, é sabido que as operações genéticas acabam sendo restritas pela sintaxe e na maioria das vezes não há garantia de que o resultado das operações de cruzamento seja significativo ou apenas equivalente a uma mutação. Há muitas tentativas de levar a semântica em consideração nesse tipo de algoritmo, mas as abordagens propostas até agora não alteram as próprias representações individuais para tentar aproveitar a robustez fornecida pelos embeddings. Motivados por isso, dado um conjunto de operadores predefinidos usados para gerar as soluções para o problema (funções) representadas por árvores e um número suficientemente grande de árvores amostradas do espaço, treinamos um transformer para aprender uma função de codificação/decodificação. Ao transformar uma representação de árvore em uma representação vetorial numérica, somos capazes de medir distâncias entre árvores de maneira muito mais eficiente e, mais importante, gerar o potencial para que essas representações capturem semântica. Mostramos que a distância considerando o embedding apresenta resultados muito semelhantes aos de uma distância de edição de árvore, o que reflete sua similaridade sintática. Embora o modelo ainda não possa capturar a semântica, mostramos seu potencial usando o modelo de representação de árvore gerado em tarefas simples: medindo distâncias entre árvores em um cenário de fitness sharing, onde a diversidade é a propriedade desejável e pode ser medida considerando distâncias entre árvores, e gerando visualizações das árvores dentro de uma população evoluída.Universidade Federal de Minas Gerais2025-02-20T14:33:27Z2025-09-09T00:25:21Z2025-02-20T14:33:27Z2023-09-12info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1843/80245enghttp://creativecommons.org/licenses/by-sa/3.0/pt/info:eu-repo/semantics/openAccessVictor de Souza Caetanoreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMG2025-09-09T00:25:21Zoai:repositorio.ufmg.br:1843/80245Repositório InstitucionalPUBhttps://repositorio.ufmg.br/oairepositorio@ufmg.bropendoar:2025-09-09T00:25:21Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false
dc.title.none.fl_str_mv Embedded representation of genetic programming trees
Representação incorporada de árvores de programação genética
title Embedded representation of genetic programming trees
spellingShingle Embedded representation of genetic programming trees
Victor de Souza Caetano
Computação – Teses
Aprendizado do computador – Teses
Programação genética (Computação) – Teses
Redes neurais (Computação) – Teses
genetic programming
embedded representations
transformers
semantics
representation learning
neural networks
title_short Embedded representation of genetic programming trees
title_full Embedded representation of genetic programming trees
title_fullStr Embedded representation of genetic programming trees
title_full_unstemmed Embedded representation of genetic programming trees
title_sort Embedded representation of genetic programming trees
author Victor de Souza Caetano
author_facet Victor de Souza Caetano
author_role author
dc.contributor.author.fl_str_mv Victor de Souza Caetano
dc.subject.por.fl_str_mv Computação – Teses
Aprendizado do computador – Teses
Programação genética (Computação) – Teses
Redes neurais (Computação) – Teses
genetic programming
embedded representations
transformers
semantics
representation learning
neural networks
topic Computação – Teses
Aprendizado do computador – Teses
Programação genética (Computação) – Teses
Redes neurais (Computação) – Teses
genetic programming
embedded representations
transformers
semantics
representation learning
neural networks
description Aprendizado de representações é uma área que investiga formas de representações de dados que facilitem para os algoritmos de aprendizado de máquina extraírem informações úteis deles. O aprendizado profundo atualmente possui os métodos mais eficazes para essa tarefa e pode aprender representações vetoriais reais - também conhecidas como embeddings - capazes de representar diferentes propriedades dos dados e suas relações. Nessa direção, este trabalho introduz uma nova maneira de visualizar indivíduos de programação genética (GP) em formato de árvore para regressão simbólica. A Programação Genética é um ramo da computação evolucionária onde os indivíduos são gerados para representar estruturas gerais, também conhecidas como programas. Quando essas estruturas são usadas em regressão simbólica, os indivíduos geralmente são representados por árvores, onde cada árvore é mapeada para uma função matemática. Como em qualquer tarefa de regressão, o objetivo da regressão simbólica é encontrar a função $f$ que mapeia o conjunto de variáveis que descrevem um exemplo de dados para um valor real y pertencente aos números reais. Assim como em outros algoritmos evolucionários, os GPs exploram o espaço de busca de funções $f$ usando os princípios da evolução e sobrevivência do mais apto. Primeiro, cada solução é avaliada para medir sua capacidade de resolver o problema, gerando o valor da função de aptidão (fitness). A aptidão é então usada em um processo probabilístico de seleção de indivíduos. Em seguida, os indivíduos selecionados passam por operações de cruzamento e mutação. Nos GPs baseados em árvores, é sabido que as operações genéticas acabam sendo restritas pela sintaxe e na maioria das vezes não há garantia de que o resultado das operações de cruzamento seja significativo ou apenas equivalente a uma mutação. Há muitas tentativas de levar a semântica em consideração nesse tipo de algoritmo, mas as abordagens propostas até agora não alteram as próprias representações individuais para tentar aproveitar a robustez fornecida pelos embeddings. Motivados por isso, dado um conjunto de operadores predefinidos usados para gerar as soluções para o problema (funções) representadas por árvores e um número suficientemente grande de árvores amostradas do espaço, treinamos um transformer para aprender uma função de codificação/decodificação. Ao transformar uma representação de árvore em uma representação vetorial numérica, somos capazes de medir distâncias entre árvores de maneira muito mais eficiente e, mais importante, gerar o potencial para que essas representações capturem semântica. Mostramos que a distância considerando o embedding apresenta resultados muito semelhantes aos de uma distância de edição de árvore, o que reflete sua similaridade sintática. Embora o modelo ainda não possa capturar a semântica, mostramos seu potencial usando o modelo de representação de árvore gerado em tarefas simples: medindo distâncias entre árvores em um cenário de fitness sharing, onde a diversidade é a propriedade desejável e pode ser medida considerando distâncias entre árvores, e gerando visualizações das árvores dentro de uma população evoluída.
publishDate 2023
dc.date.none.fl_str_mv 2023-09-12
2025-02-20T14:33:27Z
2025-09-09T00:25:21Z
2025-02-20T14:33:27Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/1843/80245
url https://hdl.handle.net/1843/80245
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-sa/3.0/pt/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-sa/3.0/pt/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Minas Gerais
publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFMG
instname:Universidade Federal de Minas Gerais (UFMG)
instacron:UFMG
instname_str Universidade Federal de Minas Gerais (UFMG)
instacron_str UFMG
institution UFMG
reponame_str Repositório Institucional da UFMG
collection Repositório Institucional da UFMG
repository.name.fl_str_mv Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)
repository.mail.fl_str_mv repositorio@ufmg.br
_version_ 1856414023789051904