Kaique Dias
7/12/2023

Entenda de uma vez por todas o que é Inteligência Artificial, Machine Learning e Deep Learning

Imagem Principal

Caro leitor, você provavelmente já se deparou com publicações em diversos lugares que falavam de um desses temas de forma superficial ou individual, e isso pode ter causado certa estranheza na hora de defini-los em sua mente, neste artigo eu irei apresentar a você de maneira sucinta, mas, levando em consideração os principais pontos para que você seja capaz de compreender de uma vez por todas o que é a Inteligência Artificial, Machine Learning e Deep Learning, e assim conseguir perceber quais as diferenças e importâncias de cada uma delas no nosso mundo da tecnologia.

1. Inteligência Artificial

Para entendermos o termo Inteligência Artificial, devemos dar um passo para o lado e compreender o que significa Artificialidade.

A palavra Artificial significa algo que imita/simula o natural mas não tem origem natural, ou seja, não foi produzido na ou pela natureza, de alguma forma foi produzido por nós, seres humanos, exemplos de coisas que podem ser reproduzidas de maneira artificial: Plantas, Flores, Árvores, Alimentos, Couro e inclusive alguns Elementos Químicos presentes na tabela periódica são sintetizados de maneira artificial, ou seja, pelas mãos do homem. Familiarizado com a palavra artificial? Perfeito, portanto, agora você é capaz de compreender o que é a Inteligência Artificial. Sabendo que a junção das palavras Inteligência + Artificial significa a sintetização de uma inteligência pelas mãos do homem, ou seja, a criação de uma máquina capaz de realizar tarefas que um ser humano racional é capaz de executar, mas, de forma autônoma, sem a intervenção da mente humana. A partir da Inteligência Artificial foi possível a criação dos carros 100% Autônomos pela Tesla e dos foguetes da SpaceX, que retornam para algum ponto específico do planeta após o lançamento, diminuindo drasticamente o custo com essa operação. Esses são apenas um dos exemplos do uso da Inteligência Artificial, existem centenas de outras aplicações, e uma que inclusive aconselho que você utilize é o ChatGPT, que nada mais é do que um assistente virtual, um robô que foi treinado com uma infinidade de dados disponíveis na internet e que hoje é capaz de trazer respostas plausíveis para diversas perguntas, podemos utilizá-lo para aprender uma nova língua, aprender conceitos avançados de cálculo, sobre música, política, uma infinidade de assuntos, onde a sua criatividade é o limite e não a máquina!

1.1 De onde surgiu a ideia de Inteligência Artificial?

A ideia da criação de uma inteligência artificial surgiu na década de 40, com o Cientista Alan Turing, que propôs a criação de um experimento querendo verificar se um computador seria capaz de demonstrar a mesma inteligência que nós seres humanos, e com essa ideia foi desenvolvido na época uma máquina chamada de “A Bomba” com o intuito de decifrar as mensagens trocadas pelas tropas da Alemanha durante a Primeira Guerra Mundial, mensagens essas que eram criptografadas por uma outra máquina, chamada de “Enigma”. Esse feito contribuiu consideravelmente para a derrota da Alemanha na Primeira Guerra Mundial.

Podemos então dizer que Alan Turing foi o pai da computação e um dos pais da Inteligência Artificial, mas, a expressão de Inteligência Artificial não foi apresentado por Alan Turing, esta expressão surgiu anos depois, na conferência  de Dartmouth, realizada no Dartmouth College, nos EUA. A expressão foi utilizada por John McCarthy, um dos pais da Inteligência Artificial, e que em 1972 recebeu o Prêmio Turing, que é dado anualmente pela ACM (Association for Computing Machinery) para aquele que obteve maior contribuição na computação daquele ano.

Na conferência de Dartmouth estiveram presentes vários pesquisadores, além do John McCarthy, todos estavam animados com a ideia da criação de máquinas que fossem capazes de reproduzir as funções de inteligência dos homens. Apesar da expressão Inteligência Artificial ter sido formalizada em Dartmouth, os conceitos e teorias vinham sendo elaborados durante décadas anteriores.

1.2 Tá, mas afinal o que é a Inteligência Artificial?

Depois de ter apresentado alguns conceitos que eu julgo fundamentais para o entendimento da Inteligência Artificial propriamente dita, podemos definir academicamente o que é Inteligência Artificial. A IA é uma das áreas da Ciência da Computação, que tem como objetivo o desenvolvimento de sistemas e algoritmos que sejam capazes de realizar tarefas que antes só poderiam ser executadas por um ser humano, devido ao fator “Inteligência Humana”. Com o advento da tecnologia, e o avanço das pesquisas nas mais diversas áreas da matemática, estatística e computação, hoje é possível a elaboração desses sistemas e algoritmos, que possuem uma performance espetacular.

A área da Inteligência Artificial possui diversas subáreas, não vamos abordar todas elas tópico a tópico, iremos enxergar o Macro da IA, que se dá pela junção do Machine Learning e Deep Learning, a figura abaixo exemplifica bem o funcionamento hierárquico da Inteligência Artificial

Analisando a figura é de fácil compreensão que, DEEP LEARNING está contido dentro do MACHINE LEARNING, que por sua vez está contido dentro da INTELIGÊNCIA ARTIFICIAL, ou seja, IA ≠ ML ≠ DL, onde o símbolo significa DIFERENTE. Portanto, agora é compreensível que, os 3 conceitos são diferentes entre si, porém, fazem parte do mesmo universo, e com a junção das técnicas de Machine Learning e Deep Learning, é possivel a criação de sistemas ou máquinas que podem pensar, agir, sentir e se adaptar a situações diversas, assim como nós, os Humanos.

2. Machine Learning

Neste tópico você irá entender o que é Machine Learning e seus principais conceitos, também vai entender o porquê este assunto que está em grande evidência na mídia e é tão importante no mundo da Ciência de Dados e Inteligência Artificial.

Você já sabe que o Machine Learning, ou Aprendizado de Máquina é uma subcategoria da inteligência artificial, esta tecnologia faz uso de algoritmos desenvolvidos por equipes de Matemáticos, Estatísticos e Cientistas da Computação, juntos eles criam formas de reproduzir via programação os passos lógicos para solucionar algum problema. Mas, antes de me aprofundar nos conceitos de Machine Learning, gostaria de apresentá-los os conceitos de Algoritmos, pois, é de extrema importância que você compreenda o que é um Algoritmo.

2.1 O que é um Algoritmo?

Para explicar a você o que é um algoritmo, gostaria de ilustrar a seguinte situação, imagine que você deseja fazer um bolo de chocolate, qual é o primeiro passo que você faz para conseguir avançar nessa tarefa? Provavelmente você se dirige a cozinha e separa os ingredientes, logo após, você vai adicionando os ingredientes em uma vasilha, mexe até que os mesmos formem uma massa homogênea, e quando estiver pronta, busca uma forma no formato de sua preferência, unta a forma de manteiga, adiciona a massa a forma untada e depois coloca ao forno, que você pré-aqueceu previamente a 200 °C, você liga um timer de 30 minutos, e após o apito do timer você retorna até o forno e verifica se a massa está no ponto desejado.

Ao ler este relato, você percebe que uma série de eventos aconteceram com o intuito de resolver um problema, e eu gostaria de te fazer algumas perguntas, que são:

1° Qual o problema deste relato?

R: O problema é fazer um bolo de chocolate.

2° Quais são as etapas que você deve seguir para fazer um bolo de chocolate?

R:

1° - Separar os ingredientes;

2° - Adicioná Los a um recipiente apropriado;

3° - Mexer todos os Ingredientes até que a massa fique homogênea;

4° - Untar uma forma escolhida previamente;

5° - Adicionar a massa homogênea;

6° - Pré Aquecer o forno a 200 °C;

7° - Colocar a forma que está com a massa dentro do forno;

8° - Aguardar 30 minutos;

9° - Verificar se o bolo assou;

10° - Retirar o bolo do forno.

3° Imagine que os únicos passos possíveis para fazer um bolo sejam os apresentados anteriormente, é possível fazer um bolo sem seguir os passos de maneira progressiva e sequencial, ou seja, do primeiro ao último?

R: Não, pois, sem separar os ingredientes não é possível adicioná-los a um recipiente, consequentemente não é possível mexer os ingrediente até que a massa fique homogênea e assim por diante.

Concluímos então, que um algoritmo é a sequência lógica de passos, que são executados com o objetivo de solucionar um determinado problema, portanto, tudo que fazemos em nossas vidas segue um algoritmo, seguimos uma sequência lógica de passos para resolver problemas diariamente, logo, muitos desses problemas podem ser resolvidos com tecnologias que são capazes de entender o problema, e seguir a sequência lógica de passos necessárias para resolvê-lo, e essa é a proposta do Machine Learning, mas, nem tudo são flores, o Aprendizado de Máquina possui suas limitações e portanto, é aplicado em situações específicas, ele não resolve todos os problemas, ou seja, não é apenas com ele que você vai conseguir criar um robô capaz de cozinhar o que você pede diretamente a ele de forma totalmente independente. 

Este tipo de inteligência artificial, é chamado de Inteligência Artificial “Fraca”, que no caso, é a inteligência artificial que não é capaz de aprender de maneira autônoma, é dependente da interferência humana para garantir um aprendizado robusto.

Abaixo deixo o link sobre IA Forte x IA Fraca da IBM:

https://www.ibm.com/br-pt/topics/strong-ai

No Machine Learning, temos 3 tipos de aprendizado, no tópico seguinte falaremos sobre cada um deles.

2.2 Quais os tipos de Aprendizado de Máquina existentes?

2.2.1 Aprendizado Supervisionado

O aprendizado supervisionado acontece com os conjuntos de dados rotulados, o rótulo é a definição do que queremos descobrir, e está relacionado a dezenas, centenas e até mesmo milhares de outras variáveis, por exemplo, vamos supor que você trabalhe em um departamento em um determinado banco, e sua função é definir se um cliente é um bom pagador ou mal pagador, para isso você avalia algumas variáveis, e entende que o cliente A é bom pagador e o cliente B é mal pagador, logo, você segue um algoritmo para realizar esta tarefa, o rótulo neste caso é o cliente ser mal pagador ou bom pagador, e as variáveis que levaram você a tomar essa decisão, podem ser, saldo em conta, quantidade de boletos pagos no último ano, quantidade de empréstimos feitos e etc. Hoje é totalmente viável utilizar um Modelo de Machine Learning capaz de efetuar este processo de classificação, bastando apenas ter os dados históricos daquele problema, para que o modelo seja treinado e aprenda com eles. Não iremos nos aprofundar aqui sobre os modelos, cada um deles merece um artigo dedicado devido ao grande volume de informações existentes para cada um. Seguem abaixo áreas que podem utilizar este tipo de Aprendizado de Máquina:

  • Marketing: Escolha de clientes para campanhas dedicadas;

  • Saúde: Diagnóstico médico baseado no histórico e sintomas do paciente;

  • Financeira: Previsão de risco de crédito para empréstimos.

Quando existem dados rotulados, ou seja, conhecidos, é muito convidativo fazer o uso de Algoritmos de Machine Learning Supervisionado.

2.2.2 Aprendizado Não Supervisionado

Ao contrário do aprendizado supervisionado, os modelos de Algoritmo de Machine Learning não Supervisionados são treinados com conjuntos de dados sem rótulos, ou seja, não existe nenhum resultado da variável alvo atrelado às demais variáveis do seu dataset. São algoritmos utilizados para explorar a estrutura e os padrões dos dados, utilizamos quando queremos clusterizar pessoas em grupos diferentes, quando queremos agrupar imagens que são semelhantes em determinadas coleções, descobrir produtos que frequentemente são comprados em conjunto, todas aplicações que não são rotuladas previamente, ou seja, que não possuem uma variável de entrada ligada com a variável de saída que seja conhecida. Seguem abaixo exemplos de aplicações deste tipo de modelo:

  • Processamento de Imagem: Agrupamento de imagens que são semelhantes;

  • Detecção de Anomalias: identificar transações fraudulentas na área financeira;

  • Recomendação de Conteúdo: Sugestão de músicas, filmes ou produtos com base nos padrões de consumo dos clientes

Podemos perceber que os algoritmos de  Aprendizado Não Supervisionado são ideais para efetuar a descoberta de padrões nos dados, principalmente quando não temos informações previamente definidas sobre os rótulos desejados. 

2.2.3 Aprendizado por Reforço

O Aprendizado por reforço, como o próprio nome sugere, acontece com o acerto ou com o erro do algoritmo treinado com relação ao dado de entrada e a saída esperada para aquele dado, nestes modelos de Machine Learning, o algoritmo é recompensado em caso de acerto e punido em caso de erro, o algoritmo busca sempre maximizar os acertos para que seja recompensado o maior número de vezes, abaixo deixo um diagrama que representa da maneira mais simples possível o funcionamento deste tipo de modelo:

RML = Reinforcement Machine Learning

Os sinais de + e - representam a ação tomada dependendo do resultado da saída, enquanto o + representa uma recompensa, o - representa uma punição.

Em resumo, podemos fazer uma analogia com o aprendizado dos bebês, quando com fome, sujo ou com sono, eles começam a chorar, os pais por sua vez ou dão mamadeira, ou dão banho ou colocam o bebê para dormir, sendo assim, o bebê compreende que quando ele chora ele é recompensado, logo, sempre vai agir dessa maneira quando for necessário. Abaixo seguem alguns exemplos de aplicações destes modelos de Machine Learning:

  • Jogos Eletrônicos: Treinar o algoritmo para jogar Xadrez contra uma pessoa, ou, treinar o algoritmo para superar desafios dos jogos eletrônicos.

  • Robótica: Controlar robôs para tarefas complexas

  • Direção Autônoma: Desenvolver sistema de direção autônoma para veículos automotores, como os carros da Tesla.

3. Deep Learning

Neste tópico iremos abordar os conceitos básicos para que você entenda esta subárea fantástica do Machine Learning, área onde seus algoritmos simulam o funcionamento das redes de neurônios biológicas, ou seja, reproduzem o funcionamento de aprendizado do cérebro humano.

Para entendermos o que é o Deep Learning, precisamos revisitar as nossas aulas de biologia e recordar como as bilhões de células minúsculas que possuímos no nosso cérebro, conhecidas como Neurônios e que são responsáveis por receber e processar os estímulos elétricos advindos de todo o nosso corpo funcionam.

3.1 O que são neurônios e como eles funcionam?

Em algum momento da sua vida você se deparou com a palavra neurônio, e sabe que eles são os responsáveis por fazer com que o nosso corpo funcione da maneira perfeita como funciona, mas, como os neurônios funcionam, para isso quero trazer a vocês uma imagem e explicar alguns detalhes importantes dela, e tenha calma, essas informações serão fundamentais para que você entenda o que é Deep Learning  e como esses algoritmos funcionam posteriormente, portanto, observem a imagem abaixo:

Essa é a formação básica de um neurônio, nesta figura, o neurônio de cor amarelo alaranjado está se conectando a um segundo neurônio de cor azul, contudo, prestem atenção apenas no neurônio amarelo. Os neurônios são células minúsculas constituídas por seu núcleo, corpo celular, dendritos, axônios e sinapses, a imagem indica quem é quem. 

Vamos falar por tópicos a função de cada uma dessas partes do neurônio:

Corpo Celular: É onde toda a estrutura do neurônio é formada, ou seja, onde os dendritos e axônio são acoplados e o núcleo incorporado.

Dendritos: São os responsáveis por fazer com que os estímulos elétricos provenientes de todo o nosso corpo cheguem até o corpo celular, que por sua vez transmite essa informação para o núcleo.

Núcleo: Responsável por processar o sinal elétrico que chega até o corpo celular através dos dendritos, e através deste processamento uma decisão é tomada e um sinal elétrico baseado nesta decisão é passado para frente através do Axônio.

Axônio: Tem a função de encaminhar um sinal elétrico para outros neurônios, através das sinapses, sinal este que é resultado do processamento advindo no núcleo do neurônio.

Sinapses: Tem a função de conectar aquele determinado neurônio a outros neurônios próximos, é através das sinapses que as informações transitam pelo nosso cérebro, chegando nas regiões que devem chegar.

Agora que você compreendeu a estrutura básica do neurônio, vamos exemplificar como os seres humanos aprendem, imagine que você está em seu carro e chega até um cruzamento, onde o semáforo entra no estágio “Amarelo”, que é um estágio de atenção, você então vai diminuindo a velocidade do carro apertando o pedal do freio, logo após o estágio “Amarelo”, o semáforo entra no estágio “Vermelho”, que é o estágio indicando “Permaneça com seu carro parado”, perceba que todas essas ações aconteceram pois, o seu cérebro recebeu informações externas provenientes de seus olhos, pés e mãos em forma de estímulos elétricos, esses estímulos elétricos chegaram aos seus neurônios, foram processados e transmitidos de neurônio para neurônio até chegarem ao cérebro, que por fim vai processar toda essa informação e enviar os estímulos necessários para os membros que vão fazer parte do processo de desaceleração do carro até que o mesmo pare. Uma curiosidade, existem em média 86 bilhões de neurônios no cérebro adulto, e cerca de 126 trilhões de sinapses.

Agora imagine se fosse possível reproduzir o funcionamento da rede neural biológica de forma artificial, de alguma maneira, replicar de maneira idêntica a transmissão de sinais, ou, informações como acontece com os neurônios no cérebro humano, porém, temos diversos estímulos, no exemplo dado anteriormente tivemos os estímulos responsáveis por fazer o cérebro tomar a decisão de parar o carro, e se fosse ao contrário? também é necessário termos a informação de continuar com o nosso trajeto, ou seja, manter o carro em movimento, para isso vamos responder a pergunta do tópico a seguir.

3.2 Como criar neurônios que aprendem e interagem entre si artificialmente?

Essa pergunta foi realizada e respondida pelo psicólogo Frank Rosenblatt em 1957, ele sugeriu a criação de um modelo nomeado de Perceptron, que foi concebido a priori como sendo um modelo de neurônio único. Abaixo deixo uma imagem ilustrando o que é o perceptron:

Entradas = São equivalentes aos dendritos dos neurônios.

Pn (P1, P2, P3,...,Pn) = São os pesos para cada um dos sinais de entrada, ou seja, cada um deles tem um peso diferente que deve ser ajustado buscando a melhor resposta na saída.

Somatório = São equivalentes ao neurônio em si, é aqui onde acontece o processamento dos sinais de entrada, que na verdade são somados, portanto, temos uma soma ponderada acontecendo nesse estágio.

Saída: É equivalente ao Axônio, ou seja, é através da saída que o sinal processado é passado adiante.

Agora, vamos entender com um exemplo prático o funcionamento do perceptron, imagine que seu modelo precisa adivinhar qual o objeto da imagem abaixo:

Para nós, seres humanos, é muito fácil concluir que é uma moto, mas e como o perceptron opera para dizer que isso de fato é uma moto, bom, os pesos são ajustados baseado nas características daquilo que está sendo avaliado, logo, ele faz a leitura que o objeto possui duas rodas, processa e então ele responde que é uma bicicleta, porém, não se trata de uma bicicleta, portanto o peso equivalente a roda diminui, logo, ele verifica que o objeto tem manoplas e um banco central, então ele conclui que é um jet-ski, e ele errou novamente, e mais uma vez ele diminui os pesos do banco e das manoplas, ele verifica que possui escapamento e espelho retrovisor, além do motor, e dessa vez ele responde como sendo uma moto. 

Porém, até para o exemplo ilustrado anteriormente apenas um perceptron iria sofrer para conseguir dar a resposta esperada, então, como podemos fazer com que essa tecnologia realize tarefas mais complexas? É aí que surgiram as redes de perceptron, ou seja, diversos perceptrons ligados uns com os outros, assim como os neurônios no cérebro humano, que como explicado anteriormente, dependem de bilhões deles para executar suas tarefas. Sendo assim, a junção de diversos perceptron formam as redes de neurônios artificiais, que agora são capazes de aprender tarefas extremamente complexas, equivalente ao cérebro humano.

3.3 Mas afinal o que é o Deep Learning?

Após toda essa explicação, deixo abaixo um exemplo gráfico de uma Rede Neural Profunda:

Esta representação gráfica tem o intuito de copiar a representação neural biológica, que funciona exatamente da mesma maneira, esta é a Rede Neural Artificial, perceba que ela forma uma estrutura de neurônios conectados através de camadas, temos a Camada de Entrada, que é a responsável por receber as informações e aplicar seus pesos que são determinados, temos as camadas Escondidas, que são os neurônios conectados, responsáveis por fazer o processamento dos sinais originários da camada de entrada, e por fim a camada de saída, que é a responsável por apresentar o resultado esperado.

Temos dois tipos de Redes Neurais, a primeira é a Rede Neural Superficial e a segunda é a Rede Neural Profunda, a diferença entre elas se dá pela quantidade de camadas escondidas, enquanto que na Superficial nós temos a presença de apenas uma camada escondida, na profunda nós temos a presença de múltiplas camadas escondidas.

Portanto, depois de toda essa explicação, podemos concluir que os algoritmos de Deep Learning são Algoritmos de Redes Neurais Profundas, por isso do nome Deep Learning, que ao traduzirmos para o português ao pé da letra, significa Aprendizado Profundo. Basta apresentarmos os dados na entrada e a resposta esperada é apresentada na saída, sendo extremamente difícil de responder qual das camadas ou quais dos neurônios foram responsáveis por chegar na conclusão em si, devido a complexidade da rede.

E onde o Deep Learning é utilizado no nosso dia a dia, seguem abaixo algumas aplicações dessa tecnologia:

  • Reconhecimento Facial: Utilizado para fazer o reconhecimento facial em segurança, autenticação e identificação em redes sociais, aplicativos de bancos entre outros.

  • Assistentes Virtuais: Existem algoritmos chamados de processamento de linguagem natural, que são baseados em Deep Learning, ou seja, aprendem com os estimulos que são imputados, por exemplo, a Siri, a Alexa e o Google Assistant.

  • Saúde: Capaz de fazer uma previsão de doença, ou diagnosticar alguma enfermidade baseado nas imagens apresentadas.

  • Jogos: Capaz de simular os comportamentos de forma artificial dos NPCs (non-playable character) nos jogos de videogame.

4. Conclusão

Após realizar essa leitura, espero que tenha conseguido atingir meu objetivo, que é fazer você compreender o que é a Inteligência Artificial, o que é o Machine Learning e Deep Learning. Portanto, você deve ter entendido que a Inteligência Artificial é uma ramificação da área de Ciência da Computação que tem como objetivo criar sistemas ou máquinas capazes de executar tarefas que antes eram possíveis de serem realizadas apenas pelos homens, devido o fator inteligência, mas, que com o avanço tecnológico e das pesquisas nas área da estatística, matemática e computação, hoje é possível criar sistemas de inteligência artificial capazes de executar diversas tarefas, esses sistemas são criados por Algoritmos de aprendizado de máquina (Machine Learning), que por sua vez tem diversas subáreas e o Deep Learning é uma das que mais se destaca na mídia, pois, simula o funcionamento das redes de neurônios biológicas, o que é algo extremamente futurista, mesmo para os dias atuais, ter um sistema ou máquina aprendendo como os seres Humanos é algo empolgante e ao mesmo tempo assustador. Portanto, o Deep Learning é uma subárea do Machine Learning que por sua vez é uma Subárea da Inteligência Artificial, são com suas particularidades intrínsecas, mas, que trabalham juntos, ou melhor dizendo, uma dentro da outra.