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: 3347

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

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).

Criando o esqueleto de um jogo de tiro 2D visto de cima usando P5.js

Usando lógicas matemáticas como trigonometria para criar e calcular o esqueleto de um jogo de tiro 2D em javascript

Criando artes de texto usando imagens

Convertendo imagens para ascii art usando o valor da intensidade das cores cinzentas.

Criando um sistema de mini garagem automatizada integrada com um sistema de monitoramento independente

Desenvolvimento de um sistema de monitoramento que exibi todos os eventos que acontecem na garagem automatizada, como abertura de portões ou ocupação de vagas.

Desenvolvendo um jogo de quebra blocos em javascript

Programando um jogo clássico de arcade usando javascript e p5.js. O usuário deve quebrar os blocos utilizando uma bola ao mesmo tempo que evita que a bola saia pela parte inferior da tela

Veja também

Afinal, para que servem os cookies que sempre são solicitados quando entramos em uma página?

A política de privacidade é obrigatória para qualquer site que utiliza dados pessoais do usuário. Porém, quais dados são esses especificamente?

Afinal, vale a pena gastar tempo com web marketing?

Expressões como gastar tempo e investir tempo andam lado a lado. Quando algo investido não tem o retorno esperado isso se torna uma perde de tempo...

Blockchain Parte2

PoW atua como um intermediário não-humano entre os negociadores de criptomoedas. Em média, uma transação em bitcoin dura 10 minutos.

Algoritmo

O algoritmo é um conjunto de instruções escritas por um programador com intuito de solucionar um problema ou obter um resultado previsto.

Steering Behaviors (Comportamentos de navegação)

Conjunto de técnicas de algoritmo que simulam comportamentos realísticos. Usado em jogos e em pesquisas biológicas para o estudo de comportamentos.

Ciência de dados

Data Science ou ciência de dados, é uma área de computação que se concentra em extrair informações valiosas de grandes quantidades de dados.