10 pontos por GN⁺ 2023-11-29 | 3 comentários | Compartilhar no WhatsApp
  • Foi anunciado o lançamento oficial do Keras 3.0, após 5 meses de testes beta públicos
  • O Keras 3 é uma versão totalmente reescrita que permite executar o workflow do Keras sobre JAX, TensorFlow e PyTorch
  • Oferece novos recursos para treinamento e implantação de modelos em larga escala

Bem-vindo ao machine learning multiframe­work

  • As vantagens de usar Keras estão no foco em alta velocidade de desenvolvimento, experiência do usuário, design de API e facilidade de depuração
  • É um framework comprovado, escolhido por 2,5 milhões de desenvolvedores, e usado em sistemas de ML de grande escala como os veículos autônomos da Waymo e o mecanismo de recomendação do YouTube
  • O Keras 3 também oferece benefícios adicionais, como otimização de desempenho de modelos, ampliação das opções do ecossistema de modelos e suporte a paralelismo de modelos em larga escala e paralelismo de dados

API do Keras 3 disponível em JAX, TensorFlow e PyTorch

  • O Keras 3 implementa toda a API do Keras e pode ser usado com TensorFlow, JAX e PyTorch
  • Qualquer modelo Keras que use apenas camadas embutidas funciona imediatamente em todos os backends suportados
  • Modelos existentes em tf.keras também podem ser executados diretamente em JAX e PyTorch

Escrita de camadas, modelos e métricas multiframe­work

  • O Keras 3 permite criar componentes (como camadas customizadas e modelos pré-treinados) que funcionam da mesma forma em todos os backends
  • Por meio do namespace keras.ops, oferece uma API compatível com NumPy entre backends e funções especializadas para redes neurais
  • Desde que use apenas keras.ops, camadas customizadas e métricas funcionam com o mesmo código em JAX, PyTorch e TensorFlow

Nova API distribuída para paralelismo de dados e paralelismo de modelos em larga escala

  • Fornece uma nova API distribuída para resolver o problema de sharding de modelos em larga escala
  • Separa a definição do modelo, a lógica de treinamento e a configuração de sharding, permitindo escrever modelos como se estivessem rodando em um único dispositivo
  • Oferece uma API para especificar facilmente layouts de sharding para paralelismo de dados e paralelismo de modelos

Modelos pré-treinados

  • Disponibiliza vários modelos pré-treinados que podem ser usados no Keras 3
  • Todos os modelos do Keras Applications e os modelos pré-treinados do KerasCV e KerasNLP funcionam em todos os backends

Suporte a pipelines de dados cross-framework em todos os backends

  • Modelos do Keras 3 podem ser treinados usando vários pipelines de dados, independentemente de o backend ser JAX, PyTorch ou TensorFlow

Divulgação gradual da complexidade

  • A API do Keras segue o princípio de design de oferecer suporte a vários workflows, desde os mais simples até customizações de baixo nível, para atender diferentes perfis de usuário

API sem estado

  • Todos os objetos Keras com estado agora têm uma API sem estado que pode ser usada em funções JAX

Migração do Keras 2 para o Keras 3

  • O Keras 3 mantém um alto nível de compatibilidade com o Keras 2, e a maioria dos usuários pode migrar para o Keras 3 sem alterar o código
  • Codebases maiores podem exigir algumas mudanças no código, mas há um guia de migração completo para ajudar nesse processo
  • Se você quiser continuar usando o Keras 2, pode usar o pacote tf_keras ou definir a variável de ambiente TF_USE_LEGACY_KERAS para usar o Keras 2

Opinião do GN⁺

O ponto mais importante deste texto é o lançamento oficial do Keras 3.0 e os novos recursos que ele oferece aos desenvolvedores. O Keras 3.0 funciona em vários backends, como JAX, TensorFlow e PyTorch, e melhora bastante a flexibilidade e a eficiência do desenvolvimento de machine learning ao aprimorar os recursos de treinamento e implantação de modelos em larga escala. Essas características são uma notícia muito interessante para a comunidade de machine learning e oferecem aos desenvolvedores a oportunidade de experimentar e implantar modelos em ambientes ainda mais diversos.

3 comentários

 
cosine20 2023-12-05

Pessoalmente, eu gosto muito do Keras, então fico realmente feliz em saber que agora também dá para rodá-lo usando o Pytorch como backend.

 
imozart7 2023-11-30

Nossa, então anunciaram uma nova versão do Keras.

Eu só aprendi PyTorch, mas,
como dizem que "os modelos tf.keras existentes também podem ser executados diretamente em JAX e PyTorch", fiquei curioso para saber como isso funciona~

 
kuroneko 2023-11-29

Nossa, o Keras 3 saiu. +_+
Tomara que desenvolver e treinar modelos fique um pouco mais fácil.