1 changed files with 42 additions and 0 deletions
@ -0,0 +1,42 @@ |
|||||
|
<br>Uma das disciplinas que leciono na Pontifícia Universidade Católica do Paraná, Construção de Interpretadores engloba o processamento de linguagens formais a naturais. Dado o terremoto provocado pela DeepSeek com o seu modelo DeepSeek-R1, fiquei curioso e resolvi fazer um [apanhado artigos](https://askhelpie.com) para que as vozes na minha cabeça se [acalmem](http://dekor-bl.com) um pouco. Curiosidade mata gato mas excita o [pesquisador](https://www.furitravel.com). Esse é o resultado deste esforço.<br> |
||||
|
<br>A [primeira coisa](https://atelierveneto.com) importante a notar é que o DeepSeek-R1 está sob a [licença](https://www.deltamobile.com) MIT, e que pode ser encontrado no Hugging Face. Tudo, exceto os dados usados para treinamento, está disponível online, no Hugging Face, no Github e em alguns outros websites.<br> |
||||
|
<br>A grande [questão](http://forum21.jp) é: [archmageriseswiki.com](http://archmageriseswiki.com/index.php/User:WVYDemi3200) porque não os dados de treinamento? A resposta mais óbvia é: porque aqui está o problema. Mas isso fica para outra discussão1.<br> |
||||
|
<br>O R1 chamou a atenção por empatar, ou bater os modelos antigos e [tradicionais](https://www.vanekinternational.cz).<br> |
||||
|
<br>Comparação entre os resultados de diversos modelos<br> |
||||
|
<br>Achei o máximo escrever modelos antigos e tradicionais para uma tecnologia de 4 anos, no máximo.<br> |
||||
|
<br>O R1 quase derrubou an internet por, supostamente, ter sido criado com um custo 20 vezes menor.<br> |
||||
|
<br>O que realmente me interessa, já que não tenho acesso aos dados, [canadasimple.com](https://canadasimple.com/index.php/User:RhodaTickell564) neste modelo é o uso de [Reinforcement Learning](http://asterisk-e.com) por eles que foi descaradamente explicitado em vários artigos abertos. Me interessa porque eu tenho falado para os meus alunos que o próximo salto evolutivo da humanidade será devido a Support Learning. Então, talvez, só talvez, a DeepSeek não me deixe mentir sozinho.<br> |
||||
|
<br>Uma das inovações do DeepSeek-R1 é a adoção da Group Robust Preference Optimization (GRPO), introduzida no artigo DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models sobre o trabalho de Schulman et.al de 2017 Group Robust Preference [Optimization](https://www.italiaferramenta.it) in Reward-free RLHF. Essa técnica substitui métodos tradicionais de otimização de políticas, como o [Proximal Policy](http://jolgoo.cn3000) Optimization (PPO), apresentado por [Schulman](https://globalwomanpeacefoundation.org) et al. em Proximal Policy Optimization Algorithms. Simplificando, a [GRPO permite](http://gitea.ii2m.com) que o modelo aprenda de forma mais eficaz comparando seu desempenho com o de outros modelos em um grupo, otimizando suas ações para alcançar melhores resultados em tarefas de raciocínio matemático. Essa abordagem torna o processo de [treinamento](https://malanquilla.es) mais [eficiente](https://majorhomeimprovements.com) e escalável se [comparado](http://ortopediajensmuller.com) com o PPO.<br> |
||||
|
<br>Além da GRPO, o DeepSeek-R1 [incorpora](http://gitea.ii2m.com) a Multi-head Latent Attention (MLA), uma técnica introduzida no DeepSeek-V3, que, por sua vez, foi inspirada no trabalho de Kitaev, Kaiser e Levskaya em Reformer: The Efficient Transformer. A MLA aborda as ineficiências computacionais e de memória associadas ao processamento de sequências longas, [especialmente](https://agenteskitdigital.es) em modelos de linguagem com atenção multi-cabeça. Em termos simples podemos dizer que a MLA melhora a [eficiência](https://kec.ind.in) do modelo ao simplificar a maneira como ele processa as informações. Ela projeta as [matrizes Key-Query-Value](https://www.adcom.uno) (KQV) em um espaço latente de menor dimensão, reduzindo a complexidade computacional e melhorando a [eficiência](http://grundschule-kroev.de) do modelo.<br> |
||||
|
<br>[Neste momento](https://tierra-tour.com) você tem [duas escolhas](http://w.romanvideo.com) claras: sentar em um lugar mais confortável já que vai demorar, ou ir fazer scroll no instagram.<br> |
||||
|
<br>Fundamentos da Arquitetura<br> |
||||
|
<br>A sopa de letrinhas que precisa ser consumida, morna e vagarosamente, para entender como o DeepSeek-R1 funciona, ainda precisa de algum tempero.<br> |
||||
|
<br>Algumas das [mudanças realizadas](https://www.cupidhive.com) pela equipe de DeepSeek, liderada por Luo Fuli um prodígio com cara de atriz de dorama, incluem Mixture of Experts (MoE), Multi-head Latent Attention (MLA), Quantização FP8 e [Multi-Token Prediction](https://rochfordlawandmediation.com) (MTP). A saber:<br> |
||||
|
<br>Mixture of [Experts](https://gazanour.com) (MoE)<br> |
||||
|
<br>O mecanismo Mixture of Experts (MoE) ativa apenas um subconjunto dos parâmetros totais dentro de cada bloco Transformer, permitindo economias computacionais substanciais enquanto preserva a qualidade do modelo. Esta ativação seletiva é particularmente vantajosa para escalar os parâmetros do modelo sem aumentar proporcionalmente os custos computacionais.<br> |
||||
|
<br>A função gate de [seleção](https://valleywholesaleinc.com) de [especialistas é](https://namduochailong.com) governada por uma função de porta $G( x)$ que direciona tokens $x$ para especialistas $E_k$, [definida](http://ptrlandscaping.my-free.website) como:<br> |
||||
|
<br>Cada token é [então processado](https://git.sofit-technologies.com) pelos especialistas selecionados, agregados como:<br> |
||||
|
<br>Uma perda de balanceamento de carga é adicionada para encorajar utilização igual dos especialistas, reduzindo gargalos computacionais.<br> |
||||
|
<br>Vamos ver um exemplo simplificado de como o MoE funciona na prática. [Imagine](https://lealpass.com) que temos:<br> |
||||
|
<br>- 3 [especialistas](http://www.fgbor.com.ua) ($ E_1$, $E_2$, $E_3$). |
||||
|
- Um token de entrada $x$ representando a palavra "computador"<br> |
||||
|
<br>Primeiro, o token passa pela função gate $G( x)$, que calcula um rating para cada especialista. Vamos dizer que após a transformação $W_gx$ e aplicação do softmax, obtemos:<br> |
||||
|
<br>Isto [significa](https://www.reiss-gaerten.de) que:<br> |
||||
|
<br>- Especialista 1 ($ E_1$): 70% de ativação. |
||||
|
- Especialista 2 ($ E_2$): 20% de ativação. |
||||
|
- Especialista 3 ($ E_3$): 10% de ativação<br> |
||||
|
<br>Agora, suponha que cada especialista processe o token e [produza](https://eivonline.com) um vetor de características:<br> |
||||
|
<br>A saída last será a soma ponderada desses vetores, usando os pesos da [função](http://humanidades.uach.cl) gate:<br> |
||||
|
<br>Agora, think of que após processar vários tokens, notamos que o Especialista 1 está sendo usado 80% do pace. Aqui é onde a perda de balanceamento entra em ação:<br> |
||||
|
<br>Para $K = 3$ especialistas, a [frequência ideal](https://solomonpower.com.sb) é $ frac 1 K = frac 1 3 approx 0.33$<br> |
||||
|
<br>Calculando a perda de balanceamento para este caso (com $ alpha = 1$):<br> |
||||
|
<br>Este valor alto de $L _ [balance](https://etra.tramellocassinari.edu.it) $ indica um desequilíbrio significativo na utilização dos especialistas, e o modelo será penalizado por isso durante o treinamento, incentivando-o a desenvolver uma distribuição mais equilibrada nas próximas iterações.<br> |
||||
|
<br>O [MoE funciona](http://wmo-eg.de) essencialmente como um sistema de distribuição de tráfego inteligente, onde o "roteador" (chamado de função de gate ou porta) choose qual especialista ou combinação de especialistas deve [processar](https://zamhi.net) cada token de entrada. Este roteamento é feito de forma dinâmica e aprendida, não através de regras fixas.<br> |
||||
|
<br>Para entender melhor, podemos fazer uma analogia com um [medical](https://www.kalkanstore.nl) facility: Imagine um grande health center com vários médicos especialistas. Quando um paciente chega, comparable a um token de entrada, um enfermeiro de [triagem](https://yematch.com) muito experiente, a função de gate, avalia rapidamente o caso e [decide quais](https://git.bugi.si) especialistas devem atender o paciente. Alguns casos podem precisar de apenas um especialista, enquanto [outros podem](https://cablemap.kr) requerer uma equipe de diferentes especialidades.<br> |
||||
|
<br>No contexto do DeepSeek-R1, este roteamento é representado matematicamente pela função $G( x)$, que podemos entender como um direcionador que:<br> |
||||
|
<br>1. Recebe um token de entrada $x$. |
||||
|
2. Avalia suas características através de uma transformação $W_gx$. |
||||
|
3. Usa uma função softmax para [gerar probabilidades](https://vierbeinige-freunde.de) de encaminhamento para diferentes especialistas. |
||||
|
4. Direciona o token para os especialistas mais apropriados<br> |
||||
|
<br>Finalmente temos a perda de balanceamento de carga. Um mecanismo que evita que alguns especialistas fiquem sobrecarregados enquanto outros ficam ociosos. Para [entender](https://eurasiainform.md) este conceito, podemos voltar ao nosso medical facility:<br> |
||||
|
<br>Imagine que em um hospital, alguns médicos especialistas começam a receber muito mais pacientes que outros. Por exemplo, um cardiologista está sempre ocupado, atendendo 80% dos pacientes, enquanto um neurologista mal recebe pacientes. Isso cria dois problemas: o cardiologista fica sobrecarregado, podendo causar atrasos e queda na qualidade do atendimento |
Loading…
Reference in new issue