Keras é uma biblioteca de software de código aberto que fornece uma interface Python para redes neurais artificiais. Ela atua como uma interface para a biblioteca TensorFlow. Keras foi lançada pela primeira vez em 2015 e foi projetada para permitir experimentação rápida com redes neurais profundas, com foco em ser amigável ao usuário, modular e extensível. O nome Keras deriva da palavra grega antiga κέρας (keras), que significa 'chifre'.
História
Keras foi desenvolvida como parte do esforço de pesquisa do projeto ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System). Seu principal autor e mantenedor é François Chollet, engenheiro do Google até 2024. Inicialmente, Keras era um software independente, mas foi posteriormente integrada à biblioteca TensorFlow. Até a versão 2.3, Keras suportava múltiplos backends, incluindo TensorFlow, Microsoft Cognitive Toolkit, Theano e PlaidML. Da versão 2.4 até a versão 3.0, apenas TensorFlow era suportado. A partir da versão 3.0 (e sua versão de pré-visualização, Keras Core), Keras voltou a ser multi-backend, suportando TensorFlow, JAX e PyTorch. Keras 3 tornou-se a versão padrão para TensorFlow 2.16 em diante, mas Keras 2 ainda pode ser usada.
Recursos
Keras contém inúmeras implementações de blocos de construção comumente usados em redes neurais, como camadas, objetivos, funções de ativação, otimizadores e uma série de ferramentas para trabalhar com dados de imagem e texto. Isso simplifica a programação para redes neurais profundas. Além de redes neurais padrão, Keras suporta redes neurais convolucionais e recorrentes. Ela também suporta outras camadas utilitárias comuns, como dropout, normalização em lote e pooling. Keras permite que os usuários produzam modelos profundos em smartphones (iOS e Android), na web ou na Máquina Virtual Java. Ela também permite o uso de treinamento distribuído de modelos de aprendizado profundo em clusters de unidades de processamento gráfico (GPU) e unidades de processamento tensorial (TPU).
Adoção e Impacto
Keras tornou-se uma das APIs de redes neurais de alto nível mais amplamente utilizadas, particularmente na comunidade de aprendizado de máquina. Sua integração com TensorFlow tornou-a uma ferramenta padrão para muitas aplicações de aprendizado profundo. A biblioteca é conhecida por sua facilidade de uso, o que contribuiu para sua popularidade entre iniciantes e pesquisadores. Keras também é usada em vários projetos de inteligência artificial, incluindo aqueles que envolvem IA generativa e modelos de linguagem de grande escala. A flexibilidade da biblioteca e o suporte a múltiplos backends tornaram-na uma escolha versátil para desenvolver e implantar redes neurais.
Ver Também
- Comparação de software de aprendizado profundo
- Rede neural
- TensorFlow
- PyTorch
- JAX
Referências
- Documentação do Keras e site oficial
- Notas de lançamento do TensorFlow
- Publicações e palestras de François Chollet