Uma arquitetura de IA construída a partir de princípios básicos, não um fork
Quase toda a Inteligência Artificial (IA) moderna é variação dos mesmos poucos desenhos. O Cypha parte de outro lugar: um único tipo C++, com uma regra de aprendizado deduzida da matemática em vez de emprestada, que se atualiza a cada exemplo que vê, em vez de ser treinada uma vez e congelada. É um projeto de pesquisa, e as falhas são publicadas junto com os resultados.
- AIXI / Solomonoff — os priores de Comprimento Mínimo de Descrição (MDL) decidem no que o modelo pode acreditar barato.
- Geometria da informação — as atualizações seguem o gradiente natural, então o aprendizado respeita a curvatura do espaço de parâmetros.
- Inferência ativa / energia livre — dá a decomposição estrutural em prior, diferencial e contexto.
- Gargalo de informação — define o objetivo do encoder: guarde o que prediz, descarte o resto.
O que isto é, em um minuto
Quase todo sistema de IA em uso é variação de um punhado de desenhos. São treinados uma vez em uma máquina grande e entregues congelados, então acompanhar algo que se move — um novo tipo de fraude, um novo defeito — significa voltar e treinar de novo. Também são grandes, o que os coloca em um data center em vez de no equipamento, e torna difícil explicar qualquer decisão isolada.
O Cypha é um único tipo C++ que classifica, prevê números e gera sequências. Sua regra de aprendizado é derivada de quatro corpos de matemática em vez de copiada de uma arquitetura existente, e ele se atualiza a cada exemplo que vê — sem lote, sem época, sem rodada de retreino. É pequeno o bastante para rodar no hardware que coleta os dados.
Hoje, pesquisadores e engenheiros dispostos a tentar um desenho diferente. Os problemas a que ele se dirige são aqueles em que os dados não param de mudar — fraude, defeitos de equipamento, comportamento que muda — em que o modelo precisa ficar no dispositivo e não em um data center, e em que alguém tem de explicar a decisão depois.
Random features, medidas em vez de descritas
O argumento do Cypha para as features aleatórias de Fourier (RFF) é que elas deixam uma cabeça linear separar o que uma cabeça linear não separa. Isso é uma afirmação mensurável, então aqui ela é medida — com cypha::rff_features compilado para WebAssembly, não uma versão refeita em JavaScript.
cypha::rff_features — WebAssembly
não carregadaO kernel exato de Função de Base Radial (RBF) sobre n pontos amostrados dá uma matriz K. As random features reconstroem uma aproximação K̂. O que está no gráfico é ‖K − K̂‖F conforme o número de features cresce: mais features, aproximação mais próxima.
chi_d para que uma linha ortogonal case com a linha gaussiana que ela substitui. As linhas estavam √d vezes curtas demais, então as features aproximavam o kernel errado e o erro estagnava em vez de convergir. Uma linha. Agora é a melhor das três.
Sete camadas, cada uma fazendo um trabalho
Cada componente abaixo existe porque um dos quatro programas o exige — não porque apareceu em um artigo naquele trimestre.
Front end plugável
Da entrada bruta ao vetor de features. Vem com VectorEncoder,
RFFEncoder (random Fourier features) e ConcatEncoder. Troque-o sem mexer em nada mais adiante.
EncoderProjection
Features para o espaço latente via atualizações contrastivas de Fisher–Rao, com limite na norma de Frobenius para que um único outlier não exploda a geometria.
WorldPrior
Uma gaussiana diagonal compartilhada, ajustada online por Welford e por atualizações de Média Móvel Exponencial (EMA). Este é o “contexto infinito” que nunca esquece — e cujo movimento é o sinal de deriva.
ClassDifferential
Deslocamentos de parâmetro natural por classe, atraídos na direção das observações e puxados de volta pelo decaimento MDL. Uma classe é um deslocamento a partir do mundo, não um modelo separado.
DIFMemory
Calcula razões de log-verossimilhança sob posteriores hiperbólicas generalizadas, com tabelas de razões de Bessel para que as caudas pesadas não custem uma transcendental por amostra.
TieredContextBuffer
Camadas curta, média e longa ponderadas pela confiança do NIGField, para que a evidência recente possa dominar sem apagar o que a camada longa estabeleceu.
Treine um classificador clicando
Uma miniatura fiel em 2-D do pipeline do Cypha: um prior do mundo ajustado online, diferenciais por classe atraídos na direção do que você coloca, e classificação por razão de log-verossimilhança. Ele aprende a cada clique — não há batch, não há época, não há reinício.
cypha::Cypha — classificador online
Clique na tela para adicionar uma amostra da classe selecionada. Arraste para pintar um cluster.
Classe a colocar
Carregar um conjunto de dados
Última inferência
Diferenciais de classe Δₖ
Resultados, com a comparação que importa
Números das próprias execuções de benchmark do repositório, depois da correção do diagnóstico. A corretude é comprovada por uma matriz de CTest que bate com os goldens de fixture versionados — não por uma posição em ranking.
Abreviações da tabela: Gradiente Descendente Estocástico (SGD), Memória de Curto e Longo Prazo (LSTM), Retropropagação no Tempo (BPTT).
| Conjunto de dados | Tarefa | Cypha | SGD online | Nota |
|---|---|---|---|---|
| Linearmente separável | 2 classes | 0.783 | 0.644 | Mesmo orçamento online |
| Iris | 3 classes | 0.900 | — | Conjunto de referência clássico |
| Wine | 3 classes | 0.969 | — | |
| Digits | 10 classes | 0.922 | — | |
| Breast cancer | 2 classes | 0.957 | — | |
| WikiText-2 | Sequência, 300 mil tokens | 2,664 BPC | — | Híbrido GRIA+LSTM L2+Wave2 BPTT |
| XOR | 2 classes, RFF latente | ~0.763 | — | LLR linear sozinho trava perto do acaso |
Escalada por temperatura, condicionada por campo, interpolação de fronteira latente, adversarial (maximizando entropia), amostragem OOD, restrita por MDL, ancestral e amostragem KDE a partir do buffer de replay.
Pontuações de anomalia a partir dos valores dos gates, pontuações de consulta ativa como entropia × proximidade da fronteira, e detecção de deriva lida direto do movimento do prior do mundo.
Um buffer de prioridade com capacidade para 10.000, ponderado por recência e surpresa, com replay na proporção de 0,30 — para que a amostra rara e informativa não seja afogada pela comum.
Medidos com profiler, não chutados
Estes saem de uma otimização em grade média com profiling e vêm como a configuração de referência.
O que o Cypha não é
- Não é um wrapper. Feito sob medida a partir de princípios básicos — o que também significa que não herda o ajuste fino de ninguém.
- O LLR linear tem um teto. XOR fica perto do acaso sem o encoder RFF latente, que o eleva a cerca de 76,3%.
- A validação é por paridade. CTest contra goldens de fixture versionados. Nenhuma afirmação de ranking é feita.
- CUDA é só para inferência. O treino fica na Unidade Central de Processamento (CPU), porque nesta arquitetura a CPU é mais rápida.
- A teoria mora em outro lugar. O trabalho de espectro harmônico e NMP é um artigo separado sobre algoritmos de compressão; o Cypha é a camada de implementação.
Cypha, destilado de um motor de xadrez de verdade
26.568 posições rotuladas com as próprias avaliações de busca de um motor alfa-beta convencional, ajustadas com o mesmo branqueamento do WorldPrior e as mesmas atualizações por gradiente natural usadas em todo o resto da arquitetura. Ele reproduz a avaliação do professor com R² 0,866 em posições separadas para teste, e faz 5V–19D–6E contra esse professor com a mesma profundidade de busca.
Uma IA pequena que continua aprendendo
A maior parte da IA é treinada uma vez em um data center e entregue congelada. O Cypha é pequeno o bastante para rodar em hardware comum e segue aprendendo com cada novo exemplo que vê.
Dispositivos pequenos demais para IA grande
Sensores, câmeras, controladores e outros equipamentos sem espaço para um data center atrás deles. O Cypha é pequeno o bastante para rodar no próprio dispositivo, então nada precisa sair do prédio.
Qualquer coisa que precise acompanhar mudanças
Padrões de fraude, falhas de equipamento, comportamento de cliente que muda. Um modelo treinado no ano passado já está desatualizado. Este se atualiza conforme anda, sem ser tirado do ar e retreinado.
Trabalho que precisa ser explicado depois
Bancos, seguradoras e serviços de saúde muitas vezes precisam justificar uma decisão. O Cypha é pequeno o bastante para ser inspecionado, e publica aquilo em que é ruim em vez de esconder.
Três comandos
$ cmake -S native -B /tmp/cypha_build -DCMAKE_BUILD_TYPE=Release -G Ninja $ cmake --build /tmp/cypha_build --parallel $ ctest --test-dir /tmp/cypha_build -R native_ --output-on-failure # REST service $ cypha_rest --listen 127.0.0.1:8099 --cypha fixtures/reference.cypha # Qt shell (build with -DCYPHA_BUILD_QT=ON) $ cypha_qt_shell