Deep Learning: como surgiu e o que são redes neurais
Tags: deeplearning, neuralnetwork, aprendizadoprofundo, redesneurais
Published: 2021-03-24 00:07:08

### O Aprendizado de Máquina
Primeiramente, é preciso entender o que é a Machine Learning, o Aprendizado de Máquina. O Aprendizado de Máquina é uma área de estudo dentro da Inteligência Artificial na qual faz o uso de algoritmos para organizar dados e fazer com que os computadores aprendam com modelos pré-definidos para então ter ações tidas como humanas. Basicamente, os computadores aprendem como agir em determinadas funções e a tomar decisões. Os algoritmos, resumidamente, são códigos em que você mostra para o computador o passo-a-passo de como realizar uma tarefa ou resolver um problema. 

Como assim ações humanas? Seria, como por exemplo, fazer identificação de imagens, reconhecimentos de sons e até mesmo fazer previsões. Um chatbot é um bom exemplo disso, no qual a máquina aprende o que responder quando recebe determinada mensagem humana. 

### O que é o Aprendizado Profundo e como surgiu
A Deep Learning - ou Aprendizagem Profunda, em português - é uma técnica de aprendizado de máquina que utiliza algoritmos que “imitam” redes neurais do cérebro humano. Os algoritmos de aprendizado profundo são mais complexos e capazes de suportar e trabalhar com grande volume de dados.

Essa área surgiu com os estudos sobre redes neurais artificiais, mais ou menos nos anos 40. Anos se passaram e os estudos sobre redes neurais e o comportamento humano foram avançando, porém a capacidade computacional da época era bem limitada. A aprendizagem profunda ganhou popularidade nos anos 2000 pelo crescimento da capacidade computacional, principalmente pelo avanço das GPUs (unidades de processamentos gráficos). Outro fato importante foi o artigo escrito por Geoffrey Hinton e Ruslan Salakhutdinov, no qual mostram como uma rede neural de várias camadas poderia ser treinada - essa divisão de camadas é muito importante para o treinamento de um conjunto de dados muito grande. 

O crescimento dos estudos nesse ramo também se deu muito por conta da busca por algoritmos de aprendizado não-supervisionados. O aprendizado não-supervisionado é a capacidade do computador em fazer previsões a partir de um conjunto de dados e, dos últimos 10 anos pra cá, muitas empresas buscam esses tipos de previsões para o mercado.


### Como funciona uma Rede Neural Artificial
Vamos primeiro observar como um neurônio humano funciona. O neurônio é uma célula nervosa que possui a propriedade de enviar e receber estímulos. Trata-se de um sistema bem complexo, portanto a visão que teremos aqui será bem simplificada.

Como representado na **Figura 1**, um neurônio possui em sua estrutura os **Dendritos**, que recebem os estímulos de outras células passando então para o **Corpo Celular**, no qual tem a responsabilidade de processar e somar os sinais recebidos. 
![Figura 1 - Esquema de um neurônio biológico típico](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fkv5xkas8f1o525cok99.png)
O **Axônio** conduz a impulsão das informações levando até as **Terminações do Axônio**, que se unem com outros neurônios através das *Sinapses*. As Sinapses são pontos de contato entre as terminações do axônio que, pela liberação de substâncias chamadas *neurotransmissores*, transmitem sinais de um neurônio para o outro. Os neurônios podem ter uma morfologia bem variada, podendo ser de formas e tamanhos diferentes.

As Redes Neurais Artificiais seguem essa ideia de receber sinais, ou valores, processar e impulsionar um resultado. Um modelo artificial, como representado na **Figura 2**, recebe os **Sinais de Entrada** *(x)*, representados por números, no qual é multiplicado pelos **Pesos Sinápticos** *(w)*. Esses valores são somados e o resultado é utilizado em uma **Função** matemática **de Ativação**. Essa última função é utilizada para restringir a amplitude da saída do neurônio, para que o retorno dos valores tenham intervalos fechados entre 0 e 1 ou, até mesmo, entre -1 e 1. Esse valor determina se esse neurônio será ativado ou inibido. Uma rede de neurônios possui muitas camadas e esses valores de saída obtidos são associados a dados de padrões já existentes para então ser feita a comparação e determinar se aquele resultado encontrado é o objetivo. 

![Figura 2 - Modelo matemático de um neurônio biológico](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wwwusrvx3ae3pm9aesak.png)

### Como a deep learning está sendo usada atualmente?
#### Reconhecimento Facial
O objetivo do reconhecimento de face é encontrar pessoas específicas por meio de imagem ou vídeo. Isso é muito usado, por exemplo, em aeroportos para identificar suspeitos por algum crime. Também é usada hoje em dia para autenticação secundária em aplicativos no smartphone. Um caso interessante é da empresa Marinus Analytics, que utiliza o reconhecimento facial para fornecer ferramentas, como o Traffic Jam, a agências que auxiliam na identificação e localização de vítimas do tráfico de pessoas.

#### Redes Neurais Convolucionais 
Descobertas médicas também fazem parte dos estudos na aprendizagem profunda. Uma delas é o uso das redes neurais convolucionais, usadas para identificar doenças de retinopatia diabética em várias categorias.

#### Reconhecimento de Voz
Muito popular hoje em dia, o reconhecimento de voz é usado nos softwares como a Siri da Apple, a Cortana da Microsoft, Alexa da Amazon e recursos de voz do Google, que nos permite interagir com o computador ou smartphone de forma simples.

### Referências
[1] SKANSI, Sandro. **Introduction to Deep Learning: From Logical Calculus to Artificial Intelligence**. Springer, 2018.

[2] PACHECO, César Augusto Rodrigues; PEREIRA, Natasha Sophie. **Deep Learning Conceitos e Utilização nas Diversas Áreas do Conhecimento**. 2018. 49 páginas. UniEVANGÉLICA, Anápolis - GO, 2018.

[3] KRIEGESKORTE, Nikolaus; GOLAN, Tal. **Neural network models and deep learning**, Cell Press, p. R231 - R236, Abril, 2019. 

[4] D. MANNING, Christopher. **Computational Linguistics and Deep Learning**. Stanford University, 2018. 

[5] LECUN, Yann; BENGIO, Yoshua; HILTON, Geoffrey. **Deep Learning**. Review, 2015.

[6] SCHMIDHUBER, Jurgen. **Deep Learning in Neural Networks: An Overview**. Istituto Dalle Molle di Studi sull’Intelligenza Artificiale. University of Lugano & SUPSI. Manno-Lugano Switzerland. 8 October 2014.

[7] VIEIRA, Vinícius Manzoni. **Redes Neurais Artificiais: Uma Aplicação em Petrofísica e Estudo dos Efeitos de Estímulos Persistentes**. Instituto de Física, Universidade Federal de Alagoas. Maceió, Alagoas - Brasil. Janeiro de 2007.

[8] HAYKIN, Simon. **Redes Neurais**. 2ª Edição. Bookman, 2001.

[9] GONZALES, Maria Eunice Quilici. **Redes Neurais e Representação Mental: Um ensaio sobre harmonia e racionalidade**. Departamento de Filosofia da Faculdade de Filosofia e Ciência, UNESP. Marília, São Paulo - Brasil. 1991.