Deep Learning (Aprendizagem profunda)

Subcampo da inteligência artificial inspirado no sistema de neurônios de seres inteligentes como o dos humanos, permitindo com que as máquinas aprendam.

Categoria de Tecnologia

Postado em 05 abril 2022

Atualizado em 24 março 2023

Palavras-chave: machine,learning,aprendizado,máquina,algoritmo,ai,inteligência,artificial,deep,learning

Visualizações: 2679

A máquina tem evoluído muito em questão de eficiência de solução de problemas complexos, ajudando o humano em finalizar o seu trabalho com mais rapidez e precisão. Essa eficiência revolucionou o modo de como interpretar dados coletados, usando tecnologias que minimizam o erro humano e valorizam até os mínimos detalhes de dados.

Muitos programas desenvolvidos de modo convencional, podem ter um algoritmo com falhas, trazendo grandes consequências para o serviço e prejudicando a experiência dos usuários. Diversos problemas de programas tem problemas originados pela falta de tempo ou capital para a manutenção do algoritmo ou por simples erros humanos. Por essa razão, um serviço na web deve ser atualizado diversas vezes por humanos para obter melhoras nos resultados.

Mas, se fosse possível criar um algoritmo que pode aprender a solucionar problemas de forma autônoma? Essa foi a solução que a aprendizagem profunda trouxe.

O que é deep learning?

A aprendizagem profunda é um método computacional inspirado no sistema de aprendizagem humano. A aprendizagem humana ocorre através de caminhos formados pelos neurônios que se interligam entre si. Conforme um humano aprende uma nova informação, um novo caminho é formado dentro do cérebro, resultando em um conjunto imenso de caminhos com diversas informações.

Assim como os humanos, conforme aprende novas informações, o algoritmo de deep learning também cria novos caminhos ligados uns aos outros em formato de cascata. Uma imensa quantidade de dados são coletados, lidos e interpretados pela máquina, formando um conjunto de ligações entre as informações tão vasta e complexa, que se torna uma tarefa impossível ao humano tentar rastrear cada estrutura criada. A aprendizagem profunda é chamado de “profunda” pelo fato de utilizar redes neurais artificiais com muitas camadas interconectadas, fazendo com que as máquinas consigam aprender cada vez mais representações complexas.

Mesmo utilizando dados totalmente iguais, o sistema neural gerado deve ser diferente. Por isso, a duplicação de sistemas neurais artificiais não acontece mesmo usando dados iguais. A principal característica do deep learning é a capacidade de aprender sem a intervenção humana, apenas usando grandes volumes de dados que podem ser coletados de diversas maneiras. Por essa razão, a manutenção tradicional com programação pode ser descartada em grande parte dos casos.

O que a aprendizagem profunda pode fazer?

A aprendizagem profunda pode aprender a distinguir informações, fazer previsões do futuro baseando-se nos dados passados e identificar fraudes a partir de ações anormais. A aprendizagem profunda realiza tarefas extremamente complexas a partir de dados não estruturados, identificando padrões que podem passar despercebidos por humanos.

Exemplos de utilização ou integração da aprendizagem profunda para são:

  • Classificação de imagens
  • Identificação de fala
  • Reconhecimento facial
  • Chatbot

Qual é a diferença entre o aprendizado da máquina e a aprendizagem profunda?

Aprendizagem da máquina é um campo dentro do aprendizado da máquina (machine learning)

deep_learning

Assim como o aprendizado da máquina, a aprendizagem profunda também aprende a partir de dados. Porém, a aprendizagem profunda aprende de forma autônoma e machine learning necessita de um supervisor para avaliar seus resultados nas primeiras etapas da aprendizagem.

Funcionamento da aprendizagem profunda

Diferente de machine learning que aprende com dados de modo analítico, deep learning funciona como uma rede neural. Esse modo de aprender foi inspirado nos sistema de neurônios de seres inteligentes como o dos humanos.

Usando o ser humano como um exemplo, todas as coisas ao nosso redor que conseguimos ver, ouvir e cheirar são transformados em pulsos nervosos que são transportados pelos nosso neurônios que são conectados uns aos outros de alguma forma processando a informação.

Camada 3
Camada 2
Camada 1
Resultado
Entrada1
Entrada2

A imagem acima representa essa rede neural idêntica ao cérebro humano.

  1. Na camada 1 é representada a entrada de dados à serem processados. A entrada de dados podem ser de várias formas, assim como nós humanos temos várias entradas de informação(nossos sentidos), o computador pode usar câmeras, microfones, sensores ou até dados brutos(raw data).
  2. Da camada 2 em diante são feitas infinitas interpretações desses dados, desde a fisionomia de um objeto até o resultado final de consequências de certas ações. Todos esses dados vão se conectar à dados passados, como no cérebro humano se conecta em experiências passadas.
  3. Na camada 3 vai ser o resultado final, onde a decisão final que essa máquina vai tomar baseando-se em dados passados, e possivelmente armazenando esses novos dados.

Usando o esquema citado acima, a máquina é capaz de aprender a jogar jogos, dirigir automóveis, reconhecer pessoas de forma autônoma e muitas outras coisas

Quais são as vantagens de deep learning?

Grande parte dos aparelhos eletrônicos precisam de um algoritmo para seu funcionamento, como é o caso do sistema embarcado. Algoritmos precisam ser programadas e testados frequentemente antes de serem implantados em um sistema ou aparelho, o que na maioria das vezes demanda tempo e investimento.

Entretanto, ao invés de criar algoritmos com necessidade de atualização manual frequente, pode-se implementar a aprendizagem profunda, fazendo com que o algoritmo aprenda de forma autônoma, diminuindo drasticamente o custo de manutenção. Quanto mais um algoritmo aprende, mais eficiente, preciso e completo ele se torna, podendo ultrapassar o nível de qualidade de um algoritmo escrito por um humano.

Perigo do deep learning?

Um robô que evolui cada vez mais pode ser sinal de perigo para muitos. Porém isso é muito difícil por que o robô só é bom naquilo que ele foi programado a fazer, portanto ainda estamos bem longe dessa realidade.

Conclusão

Deep Learning ainda está em uma constante fase de progresso. Ter um robô tão bom naquilo que faz ultrapassando os limites do ser humano pode ser uma grande vantagem para a humanidade evoluir, ou ao contrário…

Projetos práticos

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

Implementando um algoritmo de pathfinding

Implementando um programa que encontra a menor distância entre dois pontos dentro de um labirinto usando o algoritmo A* (a-estrela).

Desenvolvendo o campo de visão de um personagem em um plano 2D

Detectando objetos que entram dentro do campo de visão do personagem. Útil para servir de "gatilho" para eventos em um jogo.

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Veja também

Os bancos estão sendo substituídos pelos robôs em transações online

As criptomoedas mudaram totalmente o modo das pessoas pensarem. Usar robôs para autentificar transações online, custa muito menos comparado com os bancos em relação às taxas...

Uma das vantagens de ter um robô trabalhando para você é o aumento da produtividade

Hoje em dia não é mais necessário gastar o nosso tempo com tarefas que podem se automatizadas. Os robôs estão aqui para nos ajudar...

Indústria 4.0

Também conhecida como quarta revolução industrial, utiliza tecnologias modernas para automatizar processos. Iniciou-se em 2011, na Alemanha.

Notação do big-O

A notação do O grande é um método de fácil implementação, usado para avaliar a eficiência de um algoritmo em relação ao tempo de processamento.

Internet profunda (Deep web)

Camada da internet onde sistemas de busca convencionais não conseguem acessar por diversos motivos, deixando de indexar o conteúdo.

Busca linear

A busca linear é um algoritmo de força bruta não muito eficiente, mas com grande simplicidade, sendo utilizada regularmente por programadores.