Primeiras impressões sobre Deep Learning e Redes Neurais

Conceituando:

O bom estudante de IA certamente já ouviu falar sobre Redes Neurais e Deep Learning e esses conceitos são fundamentais para entender como as máquinas podem aprender e tomar decisões de forma autônoma. As Redes Neurais são modelos computacionais inspirados no funcionamento do cérebro humano.

As Redes Neurais são compostas por unidades chamadas neurônios, que estão interconectados e trabalham juntos para processar informações. Cada neurônio recebe entradas, realiza cálculos e produz uma saída. A combinação dessas saídas permite que a rede neural resolva problemas complexos.

Uma rede neural básica é composta por três camadas principais:

  1. Camada de Entrada: Recebe os dados de entrada.
  2. Camada Oculta: Processa as informações recebidas da camada de entrada.
  3.  Camada de Saída: Produz o resultado final.

Mas e Deep Learning? Deep Learning é uma subárea das Redes Neurais que envolve o uso de redes neurais profundas, ou seja, redes com muitas camadas ocultas. Essas redes são capazes de aprender padrões complexos e abstratos a partir de grandes volumes de dados.

O Deep Learning utiliza algoritmos de treinamento avançados, como o backpropagation , para ajustar os pesos das conexões entre os neurônios. Esse processo é computacionalmente intensivo e geralmente requer o uso de GPUs para acelerar o treinamento.

Prática em Sala de aula

Após alguns conceitos básicos e importantes, seguindo as aulas de ML, tivemos algumas práticas envolvendo passos iniciais com Redes Neurais. Trabalhamos inicialmente com a preparação do ambiente, que na ocasião migramos para o SO Linux, que até então não havíamos utilizado, instalamos novamente o aplicativo anaconda com todas as ferramentas necessárias, além dos pacotes mais importantes para rodar os modelos a serem treinados e testados.

Uma biblioteca de suma importância para aplicações em ML, biblioteca essa chamada de TensorFlow é uma biblioteca de código aberto criada para aprendizado de máquina, computação numérica e muitas outras tarefas. Foi desenvolvido pelo Google em 2015 e rapidamente se tornou uma das principais ferramentas para ML e DL. O TensorFlow é um Framework, ou seja, uma união de códigos que visa a uma aplicação. A figura a seguir demonstra um exemplo de rede neural.

 


 

TensorBoard

Além da facilidade de poder executar funções prontas no ramo de redes neurais e inteligência artificial, o TensorFlow segue criando recursos extras muito úteis. Um exemplo é o TensorBoard.

TensorBoard é uma plataforma para visualização gráfica dos códigos executados usando TensorFlow. Você pode informar no código quais informações deseja visualizar, e o TensorBoard irá criar uma interface excelente para análise.

Abaixo alguns exemplos de análises de variáveis e resultados de uma rede neural no TensorBoard.


 

 

Em sala foi demonstrado o modelo keras. O Keras, por outro lado, é uma API de alto nível que roda em cima do TensorFlow. Keras simplifica a implementação de redes neurais complexas com sua estrutura fácil de usar. é perfeito para aqueles que não têm uma sólida formação em Deep Learning, mas ainda querem trabalhar com redes neurais. Usando Keras, você pode construir um modelo de rede neural de forma rápida e fácil usando código mínimo, permitindo prototipagem rápida.

Em sala de aula vemos um exemplo de código usando o modelo Keras:


 Em seguida um segundo trecho demonstra o modelo realizando o aprendizado:


 E por fim trabalhamos com um dataset com imagens aonde o 
seria realizado um treinamento usando o modelo Keras para pré-processamento destas imagens, para avaliar, aprender, treinar e testar quais imagens são boas e ruins, a seguir um trecho do aprendizado sendo realizado:


 

 


Comentários