JavaRush /Blogue Java /Random-PT /Deep Learning, inteligência artificial e aprendizado de m...

Deep Learning, inteligência artificial e aprendizado de máquina para manequins: explicado com um exemplo

Publicado no grupo Random-PT
Quer brilhar com seu intelecto na companhia de colegas ou surpreender seus amigos em uma conversa sobre temas técnicos atuais? Mencione “Inteligência Artificial” ou “Aprendizado de Máquina” em uma conversa e pronto. Deep Learning, inteligência artificial e aprendizado de máquina para manequins: explicado com um exemplo - 1O termo “Inteligência Artificial” é agora amplamente ouvido. Os programadores querem aprender IA. Os líderes querem implementar IA nos seus serviços. Mas, na prática, mesmo os profissionais nem sempre entendem o que é “IA”. Este artigo tem como objetivo ajudá-lo a compreender os termos “inteligência artificial” e “aprendizado de máquina”. Você também aprenderá como funciona o Deep Learning, o tipo mais popular de aprendizado de máquina. E, o que é importante, estas instruções estão escritas em linguagem bastante acessível. A matemática aqui não será muito difícil de entender.

Fundamentos

O primeiro passo para entender o que é Deep Learning é entender a diferença entre os termos-chave.
Deep Learning, inteligência artificial e aprendizado de máquina para manequins: explicado com um exemplo - 2
Foto: Datanami

Inteligência Artificial vs Aprendizado de Máquina

A inteligência artificial (IA ou IA agnl.) é uma tentativa de copiar o processo de pensamento humano por um computador. Quando as pesquisas no campo da Inteligência Artificial estavam apenas começando, os cientistas tentaram copiar o comportamento da inteligência humana estritamente sob certas condições, ou seja, aprimorá-la para resolver determinados problemas. Por exemplo, para que a máquina possa jogar. Eles estabeleceram uma série de regras que a máquina computacional deveria seguir. O computador tinha uma lista de ações possíveis e tomava decisões com base nas regras e restrições definidas durante a fase de projeto.
Aprendizado de máquina (ML ou ML em inglês) significa a capacidade de uma máquina aprender processando grandes conjuntos de informações em vez de regras claramente definidas.
O ML permite que os computadores aprendam por conta própria. Esse tipo de aprendizagem aproveita a moderna tecnologia de computação, que pode processar facilmente grandes quantidades de dados.

Aprendizagem supervisionada versus aprendizagem não supervisionada

A aprendizagem supervisionada usa conjuntos de dados rotulados que consistem em entradas e resultados esperados. Ao treinar inteligência artificial usando aprendizagem supervisionada, você fornece dados como entrada e especifica qual deve ser o resultado. Se o resultado que a IA produz for diferente do esperado, então a IA deverá corrigir seus cálculos. O processo é repetido muitas vezes na matriz de dados, desde que a IA cometa erros. Um exemplo de aprendizagem supervisionada seria a Inteligência Artificial prevendo o tempo. Ele aprende a prever o tempo usando dados históricos. Os dados de entrada são pressão, umidade e velocidade do vento e, como resultado, devemos obter a temperatura. A aprendizagem não supervisionada é uma tarefa que consiste em treinar IA utilizando dados não estruturados. Ao treinar inteligência artificial usando aprendizado não supervisionado, você permite que a IA faça classificações lógicas de dados. Um exemplo de inteligência artificial que usa aprendizado de máquina não supervisionado é um robô preditor do comportamento do cliente em uma loja online. Aprende sem usar entradas e saídas pré-conhecidas. Em vez disso, ele próprio deve classificar os dados de entrada. O algoritmo deve identificar e informar que tipo de usuário prefere quais produtos.

Como funciona o aprendizado de máquina

Portanto, Deep Learning é uma das abordagens de aprendizado de máquina. Ele permite prever resultados a partir de determinados dados de entrada. Para treinar IA, você pode usar ambas as opções acima: aprendizagem supervisionada e não supervisionada. Vamos entender como funciona o Deep Learning usando um exemplo claro: digamos que precisamos desenvolver um serviço de previsão de preços de viagens aéreas. Treinaremos nosso algoritmo usando um método supervisionado. Queremos que nosso serviço de previsão de preços de viagens aéreas preveja o preço com base nos seguintes dados de entrada (não levamos em consideração o voo de volta para facilitar a apresentação):
  • aeroporto de partida;
  • Aeroporto de chegada;
  • data de partida planejada;
  • CIA aérea.
Redes Neurais Vamos dar uma olhada no cérebro da inteligência artificial. Assim como no caso dos seres vivos biológicos, nosso preditor possui neurônios em sua “cabeça”. Na foto eles são apresentados em forma de círculos. Os neurônios estão conectados uns aos outros.
Deep Learning, inteligência artificial e aprendizado de máquina para manequins: explicado com um exemplo - 3
Na imagem, os neurônios são combinados em três grupos de camadas:
  • camada de entrada;
  • camada oculta 1 (camada oculta 1) e camada oculta 2 (camada oculta 2);
  • camada de saída.
Alguns dados entram na camada de entrada. No nosso caso, temos quatro neurônios na camada de entrada: aeroporto de partida, aeroporto de chegada, data de partida, companhia aérea. A camada de entrada passa dados para a primeira camada oculta. As camadas ocultas realizam cálculos matemáticos com base nos dados de entrada recebidos. Uma das principais questões na construção de redes neurais é a escolha do número de camadas ocultas e do número de neurônios em cada camada.
A palavra Deep na frase Deep Learning indica a presença de mais de uma camada oculta.
A camada de saída nos retorna as informações resultantes. No nosso caso, o preço esperado do voo.
Deep Learning, inteligência artificial e aprendizado de máquina para manequins: explicado com um exemplo - 4
Perdemos o mais interessante até agora: como exatamente é calculado o preço esperado? É aqui que começa a magia do Deep Learning. Cada conexão entre neurônios recebe um determinado peso (coeficiente). Este peso determina a importância do valor de entrada. Os pesos iniciais são definidos aleatoriamente. Ao prever o custo da viagem aérea, a data de partida é a que mais afeta o preço. Portanto, as conexões do neurônio “data de partida” têm mais peso.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 5
Cada neurônio tem uma função de ativação associada a ele. É difícil entender o que é essa função sem conhecimento matemático. Então, vamos simplificar: o objetivo da função de ativação é “padronizar” a saída do neurônio. Depois que o conjunto de dados passa por todas as camadas da rede neural, ele retorna o resultado pela camada de saída. Até agora está tudo claro, certo?

Treinamento de rede neural

Treinar uma rede neural é a parte mais difícil do Deep Learning! Por que? Porque você precisa de uma grande quantidade de dados. Porque você precisa de mais poder de computação. Para nosso projeto, precisamos encontrar dados históricos de passagens aéreas. Além disso, para todas as combinações possíveis de aeroportos de partida e de destino, datas de partida e diferentes companhias aéreas. Precisamos de uma quantidade muito grande de dados com preços de ingressos. Devemos alimentar os dados de entrada do nosso conjunto com as entradas da nossa rede neural e verificar se eles correspondem aos resultados que já temos. Se os resultados obtidos pela inteligência artificial diferirem dos esperados, isso significa que ela ainda não treinou o suficiente. Depois de executarmos toda a quantidade de dados em nossa rede neural, podemos construir uma função que indicará quão diferentes são os resultados da IA ​​dos resultados reais em nosso conjunto de dados. Tal função é chamada de função de custo . No caso ideal, pelo qual nos esforçamos com todas as nossas forças, os valores da nossa função de custo são iguais a zero. Isso significa que os resultados de custo selecionados pela rede neural não diferem do custo real dos tickets em nosso conjunto de dados.

Como podemos reduzir o valor da função de custo?

Mudamos os pesos das conexões entre os neurônios. Isso pode ser feito aleatoriamente, mas essa abordagem não é eficiente. Em vez disso, usaremos um método chamado Gradient Descent .
O gradiente descendente é um método que nos permite encontrar o mínimo de uma função. No nosso caso, procuramos o mínimo da função de custo.
Este algoritmo funciona aumentando gradualmente os pesos após cada nova iteração de processamento do nosso conjunto de dados. Ao calcular a derivada (ou gradiente) da função de custo para certos conjuntos de pesos, podemos ver em que direção está o mínimo.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 6
Na foto: Peso inicial - peso inicial, Custo mínimo global - mínimo global da função de custo. Para minimizar a função de custo, devemos realizar cálculos em nosso conjunto de dados várias vezes. É por isso que você precisa de muito poder de computação. Os pesos são atualizados automaticamente usando o método gradiente descendente. Esta é a magia do Deep Learning! Depois de treinarmos nosso serviço de previsão de preços de voos com IA, podemos usá-lo com segurança para prever os preços na realidade.

Vamos resumir...

  • O aprendizado profundo usa redes neurais para simular inteligência.
  • Existem três tipos de neurônios em uma rede neural: camada de entrada, camadas ocultas e camada de saída.
  • Cada conexão entre neurônios tem seu próprio peso, indicando a importância daquela entrada.
  • Os neurônios usam uma função de ativação para “padronizar” a saída do neurônio.
  • Para treinar uma rede neural, você precisa de uma grande quantidade de dados.
  • Se processarmos uma matriz de dados usando uma rede neural e compararmos os dados de saída com os dados reais, obteremos uma função de custo que mostra o quanto a IA está errada.
  • Após cada processamento de dados, os pesos entre os neurônios são ajustados usando o método gradiente descendente para obter uma redução na função de custo.
Link para o original
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION