1 pontos por GN⁺ 2024-09-14 | 1 comentários | Compartilhar no WhatsApp
  • A Kolmogorov-Arnold network (KAN), apresentada em abril de 2024, foi proposta como uma alternativa mais legível internamente do que redes neurais tradicionais baseadas em MLP e, em certos grupos de problemas, pode realizar quase tudo o que redes neurais comuns fazem
  • A KAN ajusta sua saída colocando funções não lineares treináveis nas arestas em vez de pesos numéricos, e essa estrutura tem raízes no teorema de Kolmogorov-Arnold de 1957
  • Após enfrentar limitações com KANs de 2 camadas, a equipe de pesquisa de Ziming Liu e Max Tegmark, do MIT, tentou estruturas com 3 ou mais camadas e mostrou que uma KAN de 3 camadas pode representar funções que uma de 2 camadas não consegue representar com exatidão
  • Em teoria dos nós e no problema de localização de Anderson, a KAN não apenas deu respostas, mas também mostrou fórmulas e relações associadas, o que sugere utilidade especial em problemas científicos com poucas variáveis, como em física
  • Pesquisas posteriores confirmaram pontos fortes em tarefas de interpretabilidade e na solução de equações diferenciais parciais, mas em visão computacional e processamento de áudio o MLP teve desempenho melhor, e a KAN 2.0 foi lançada em uma forma com maior usabilidade

A caixa-preta do MLP e o surgimento da KAN

  • O bloco básico mais representativo das redes neurais modernas é o multilayer perceptron (MLP), que mostra desempenho forte quando ampliado para grandes conjuntos de dados
  • Apesar do sucesso, redes baseadas em MLP dificultam que humanos entendam como as conclusões são produzidas, e também não é fácil determinar se existe um princípio fundamental que explique seus resultados
  • Em abril de 2024, o artigo sobre KAN propôs a Kolmogorov-Arnold network (KAN), mais transparente e capaz de fazer quase tudo o que redes neurais comuns fazem em certos grupos de problemas
  • Alan Yuille, da Johns Hopkins University, vê a KAN como mais interpretável e potencialmente especialmente útil em aplicações científicas, nas quais é preciso extrair regras científicas a partir dos dados

Como a KAN ajusta funções

  • Redes neurais comuns conectam camadas de neurônios artificiais, ou nós, por arestas, ajustando os pesos de cada aresta durante o treinamento para fazer a saída se aproximar da resposta correta
  • Um objetivo comum das redes neurais é encontrar a função matemática ou curva que melhor conecta os pontos de dados
    • Ao modelar um processo físico, espera-se que a função de saída tenha a forma de uma equação que descreva a física, isto é, uma lei física
  • O MLP tem um teorema matemático que indica até que ponto pode se aproximar da melhor função possível, e o resultado é que o MLP não consegue representar essa função perfeitamente
  • A KAN não coloca pesos numéricos simples nas arestas, mas sim funções não lineares treináveis
    • Essas funções nas arestas podem representar curvas mais complexas
    • Podem ser ajustadas de forma mais fina do que os pesos numéricos de um MLP

O teorema de 1957 e 35 anos de ceticismo

  • No centro da KAN estão resultados matemáticos publicados separadamente em 1957 por Andrey Kolmogorov e Vladimir Arnold
    • Eles mostram que uma função matemática com várias variáveis pode ser convertida em uma combinação de funções de variável única
  • Uma limitação importante é que as funções de variável única produzidas pelo teorema podem não ser suaves
    • Podem ter partes pontiagudas, como o vértice de um V
    • Para que a rede se curve durante o treinamento em direção aos valores-alvo, os componentes simples de variável única precisam ser suaves
  • Um artigo escrito em 1989 por Tomaso Poggio, do MIT, e outros afirmou explicitamente que a ideia matemática central da KAN era “irrelevante no contexto de redes para aprendizado”
  • Ziming Liu e Max Tegmark observaram que, mesmo que as funções de variável única não sejam suaves, a rede pode aproximá-las com funções suaves, e que a maioria das funções encontradas na ciência é suave
  • Como software e hardware avançaram muito desde 1989, Liu decidiu tentar novamente uma ideia que havia recebido pouca atenção no passado

Da KAN de 2 camadas à KAN multicamadas

  • Liu levou cerca de uma semana para criar um protótipo da forma mais simples, a KAN de 2 camadas, mas não obteve bom desempenho nas tarefas científicas que havia definido como alvo
  • A KAN de 2 camadas parecia se encaixar naturalmente na estrutura do teorema de Kolmogorov-Arnold, que divide funções multivariáveis em um conjunto de funções internas e externas
  • Tegmark sugeriu tentar KANs com mais camadas do que duas, e essa abordagem trouxe resultados
  • A equipe formou uma colaboração com colegas do MIT, California Institute of Technology e Northeastern University, incluindo matemáticos e especialistas em áreas aplicadas
  • No artigo de abril de 2024, o grupo mostrou que a KAN de 3 camadas é viável e apresentou exemplos em que ela representa com exatidão funções que uma KAN de 2 camadas não consegue representar com precisão
  • Depois disso, eles experimentaram até 6 camadas e confirmaram que, à medida que o número de camadas aumenta, é possível ajustar funções de saída mais complexas

A interpretabilidade revelada em problemas reais

  • Teoria dos nós

    • Em 2021, uma equipe da DeepMind criou um MLP que recebia várias propriedades de um nó específico como entrada para prever uma propriedade topológica desse nó
    • A nova KAN reproduziu esse resultado e também mostrou como a propriedade prevista se relaciona com outras propriedades
    • Liu avaliou essa parte como algo que um MLP simplesmente não consegue fazer
  • Localização de Anderson

    • O segundo problema estava relacionado ao fenômeno de Anderson localization na física da matéria condensada
    • O objetivo era prever o limite em que ocorre uma determinada transição de fase e encontrar a fórmula matemática que descreve esse processo
    • Um MLP nunca havia conseguido realizar essa tarefa, mas a KAN da equipe conseguiu
    • Tegmark vê a interpretabilidade como a maior vantagem da KAN e a principal motivação dos desenvolvimentos recentes
    • Ele descreve uma forma de interpretabilidade como a capacidade de produzir uma fórmula que caiba numa camiseta a partir dos dados dados
    • Brice Ménard, da Johns Hopkins, avaliou que, se o problema for de fato explicado por uma equação simples, a KAN é bastante boa em encontrá-la
    • Ainda assim, é possível que a área em que a KAN funcione melhor fique limitada a problemas com muito poucas variáveis nas equações, como em física

Pesquisas posteriores e a KAN 2.0

  • O artigo de Liu e Tegmark sobre KAN foi citado 75 vezes em cerca de 3 meses, e outros grupos de pesquisa também iniciaram seus próprios estudos sobre KAN
  • Um artigo publicado online em junho de 2024 por Yizheng Wang, da Tsinghua University, e colegas afirmou que redes neurais baseadas em Kolmogorov-Arnold (KINN) superaram amplamente os MLPs na solução de equações diferenciais parciais (PDE)
    • Wang disse que PDEs estão presentes em toda a ciência
  • Um artigo de julho de 2024, da National University of Singapore, trouxe resultados mais mistos
    • A KAN foi melhor que o MLP em tarefas relacionadas à interpretabilidade
    • Em visão computacional e processamento de áudio, o MLP obteve resultados melhores
    • Em processamento de linguagem natural e outras tarefas de machine learning, as duas redes foram em geral parecidas
  • Liu disse não se surpreender com esses resultados
    • O foco original da pesquisa com KAN estava em tarefas científicas nas quais a interpretabilidade é a principal prioridade
  • Em agosto de 2024, Liu e colaboradores publicaram o artigo KAN 2.0
    • Liu o descreveu como algo mais próximo de um manual do usuário do que de um artigo acadêmico tradicional
    • A KAN 2.0 é mais fácil de usar e oferece ferramentas como multiplicação, ausentes no modelo original

Do foco em aplicação ao foco em compreensão

  • Liu e seus coautores veem a KAN como algo que vai além de um simples meio para atingir objetivos, ajudando a promover uma ciência guiada pela curiosidade
  • Em machine learning, a abordagem dominante há muito tempo é a ciência voltada à aplicação
    • Por exemplo, ao observar o movimento de corpos celestes, um pesquisador orientado à aplicação se concentra em prever estados futuros
    • Um pesquisador guiado pela curiosidade tenta revelar a física por trás desse movimento
  • Com a KAN, os pesquisadores podem ir além de apenas obter ajuda para resolver problemas computacionais difíceis e passar a usar redes neurais com a própria compreensão como objetivo

1 comentários

 
GN⁺ 2024-09-14
Comentários do Hacker News
  • O autor principal do KAN fez ontem uma sessão tutorial na MLCAD, uma conferência sobre a interseção entre projeto de hardware/semicondutores e aprendizado de máquina/deep learning
    Para obter insight e interpretação sobre sistemas físicos, como expressões simbólicas, quantidades conservadas e simetrias, isso pareceu realmente interessante e muito adequado
    Pode ser útil para ciência e matemática, mas em engenharia esse tipo de interpretabilidade talvez não seja o objetivo mais importante de aprendizado de máquina/deep learning
    A capacidade de aprender tarefas mais difíceis ou a capacidade de aprendizado ainda é incerta, e ainda não foi muito explorado qual escolha de funções de base usar nas “ativações” do KAN ou em que arquiteturas vale a pena encaixar essa camada
    Parece que, à medida que mais gente experimentar KAN, essas perguntas deverão começar a ser respondidas

  • Acho que não
    O fato de uma operação interna ser compreensível não significa que a rede neural inteira se torne compreensível
    Basta olhar para algo bem mais simples, como uma árvore de decisão, que nos livros é apresentada como um sistema interpretável que decide uma característica por vez e produz uma saída na folha
    Isso fazia sentido nos anos 90, quando os computadores eram lentos e as árvores pequenas, mas hoje árvores de decisão gigantes e random forests podem criar árvores com milhões de nós, e isso não é interpretável
    Há uma lacuna matemática fundamental na compreensão de sistemas complexos, e ela não será resolvida por mais um tipo de rede neural

    • Fico pensando: “Newton teria conseguido usar isso para encontrar a fórmula da força que ele estava analisando, por exemplo gravidade = g m_1 m_2 / d^2?”
      Já perguntei a um professor de física se isso seria possível em princípio, e ele disse que sim
      Parece que o KAN conseguiria encontrar esse tipo de expressão quando dados experimentais são fornecidos, e, se isso for verdade, eu diria que merece ser chamado de interpretabilidade
    • Talvez simplesmente não exista fórmula ou equação que permita inferir sistemas complexos
      Para inferir a complexidade, talvez seja realmente necessário executar essa própria complexidade
    • Concordo em geral, e acho que em modelos não lineares suficientemente complexos buscar interpretabilidade é perda de tempo
      Ainda assim, eu me surpreenderia se um dia não surgisse algum avanço bem-sucedido em dinâmica não linear ou formação de padrões
    • Mesmo árvores de decisão muito complexas são interpretáveis até certo ponto
      Isso porque dá para seguir a árvore e responder perguntas como “o resultado teria sido diferente se esta condição não fosse verdadeira?”
      Pode ser difícil manter a árvore inteira na cabeça de uma vez, mas é possível investigar quando necessário para entender o caminho que foi realmente percorrido
    • Muita gente chama ensembles de árvores de caixa-preta
      Eu diria que são mais uma caixa cinza ou cinza-escura
      Dá para interpretar se você quiser, mas quem realmente vai querer revisar 500 árvores inteiras?
  • O algoritmo de simplificação semiautomática apresentado no artigo do KAN parece resolver um problema parecido com https://arxiv.org/pdf/2112.04035
    Só que, em vez de um compressor abstrato generalizado, ele vem com a restrição adicional de buscar interpretabilidade da função de propagação direta

  • Não exatamente
    Em problemas triviais de ajuste de função, o KAN permite visualizar o quanto cada função de base contribui para a camada seguinte
    Mas redes neurais rasas e triviais assim quase nunca precisam ser examinadas em primeiro lugar
    Redes neurais profundas não se tornam explicáveis com essa abordagem

    • Exato
      Não sei se algo com milhões a bilhões de parâmetros pode se tornar “explicável” da forma que queremos
      Se você imaginar uma função multivariada genérica com bilhões de termos escrita num quadro branco gigantesco, será que realmente conseguiria entender por que ela produz aquele número?
      O KAN pode ter uma ordem de grandeza a menos de parâmetros, mas o problema fundamental continua o mesmo
  • Talvez isso não tenha relação direta com o tema, mas tenho curiosidade sobre uma coisa
    Uma das forças das redes neurais é aproveitar a enorme paralelização fornecida pelas GPUs, então será que não estamos deixando recursos computacionais ociosos ao usar apenas pesos escalares?
    E se usássemos uma matriz de funções em vez de uma matriz de pesos?

    • O mais correto é dizer que redes neurais já são compostas de funções
      Um conjunto de nós empilhados em camadas se torna uma função não linear complexa
      Por exemplo, até uma pequena rede neural de 3 camadas pode ser treinada para modelar uma função spline cúbica
      O interior da função é aprendido em todas as etapas, em cada soma e multiplicação
      Dá para dizer que o número de funções dentro de uma rede neural é uma fração do número de pesos, e por isso ela é teoricamente mais flexível e poderosa do que modelar diretamente funções mais complexas
      Se você soubesse qual é a função correta, poderia modelar uma MLP pequena de função fixa com essa função específica e aumentar a eficiência do treinamento, mas, sem cuidado, também poderia perder desempenho
      O principal problema é não sabermos qual função usar, e adicionar funções não lineares pode trazer novas dificuldades em desempenho, precisão, inicialização e regularização
      A matemática linear é simples, poderosa e já consegue modelar funções complexas, mas a matemática não linear também pode ser útil, então parece haver espaço para mais pesquisa
    • As GPUs são otimizadas para matrizes de valores de ponto flutuante, então as redes neurais atuais se baseiam em matrizes com pesos escalares
    • Essa explicação é muito parecida com processos gaussianos profundos
    • Atribuir não linearidade a cada linha ou coluna dos pesos equivale justamente a uma função aprendível
  • Isso também foi discutido recentemente em https://news.ycombinator.com/item?id=40219205

  • Em aplicações científicas, o ponto central da interpretabilidade está na regressão simbólica
    Uma MLP não necessariamente consegue sempre produzir uma equação para um determinado conjunto de dados, mas um KAN consegue

  • Você pode explicar o que exatamente é “desconhecido” em redes neurais?
    Nós as criamos e sabemos do que são compostas e como funcionam
    Não conseguimos mapear individualmente todas as conexões entre os nós desse “perceptron multicamadas”, mas não sabemos como essas conexões são formadas?

    • LLMs modernos como o GPT-4o conseguem entender texto codificado em b64 por padrão
      Nós também temos algoritmos para decodificar e codificar texto em b64, mas será que o GPT-4o executa exatamente esse algoritmo?
      O treinamento aprendeu esse algoritmo? Claramente não, ou pelo menos não por completo
      Porque erros de digitação em b64 que, no nosso algoritmo, impossibilitariam extrair o significado do texto original, quase não causam problema para o 4o
      Então como ele decodifica b64? Não sabemos
      Na verdade, não “construímos” redes neurais de fato; criamos a estrutura e as treinamos
      Tirando o fornecimento dos dados de treinamento, o que elas aprendem está fora do controle direto dos humanos
      Exceto em exemplos de brinquedo triviais, na maior parte dos casos não se sabe o que foi aprendido
      Também sabemos que conexões são formadas, podemos ver os pesos e podemos ver a multiplicação de matrizes
      Mas não sabemos o que esses cálculos fazem nem o que significam
      Se um alienígena pudesse ver um código C sendo executado, poderíamos dizer que ele entende esse código?
    • Não sabemos o que cada conexão significa nem que informação está codificada em cada peso
      Também não sabemos como o comportamento mudaria se alterássemos cada um dos milhões a trilhões de pesos
      Comparando com um dicionário, num dicionário fica claro que informação há em cada página e em cada linha
    • Simplificando um pouco os detalhes, o modelo aplica muitas funções de alta dimensionalidade à entrada, e não sabemos por que essas funções resolvem o problema
      Reduzir a dimensionalidade dos pesos para valores legíveis por humanos não é trivial, e vários neurônios interagem de maneiras difíceis de prever
      A pesquisa em interpretabilidade já produziu muitos resultados úteis e visualizações bonitas[1][2], e também há muito esforço para entender o Transformer[3][4], mas ainda estamos longe de explicar completamente os grandes modelos usados hoje
      [1] - https://distill.pub/2018/building-blocks/
      [2] - https://distill.pub/2019/activation-atlas/
      [3] - https://transformer-circuits.pub/
      [4] - https://arxiv.org/pdf/2407.02646
    • LLMs não são o cérebro, mas o cérebro é uma analogia útil
      Assim como não conseguiríamos entender completamente como pensamos apenas examinando todos os nossos neurônios, também não dá para entender LLMs só analisando seus componentes individuais
      Decifrar LLMs provavelmente será mais fácil do que decifrar o cérebro, mas isso não significa que será fácil
    • Sabemos como as conexões são formadas e como fazer com que se formem
      O que não sabemos é por que essa forma específica de formação resolve o problema em questão
      Hoje, até essa formulação já não é rigorosamente correta
      Porque há muita pesquisa em andamento sobre o que acontece dentro da caixa-preta
      O problema é que isso nunca foi uma caixa-preta completa. Sempre foi possível olhar dentro, mas era difícil entender
      KAN ajuda a transferir parte disso para uma formalização matemática, e criar mapas de ativação sobre os dados também oferece insights semelhantes