complete guide artificial neural network machine learning
Este tutorial explica o que é rede neural artificial, como funciona uma RNA, estrutura e tipos de RNA e arquitetura de rede neural:
Nisso Treinamento de aprendizado de máquina para todos , nós exploramos tudo sobre Tipos de aprendizado de máquina em nosso tutorial anterior.
Aqui, neste tutorial, discuta os vários algoritmos em Redes Neurais, juntamente com a comparação entre aprendizado de máquina e RNA. Antes de aprendermos como a RNA contribui para o aprendizado de máquina, precisamos saber o que é uma rede neural artificial e um breve conhecimento sobre o aprendizado de máquina.
Vamos explorar mais sobre aprendizado de máquina e rede neural artificial !!
=> Leia a série completa de treinamento em aprendizado de máquina
O que você aprenderá:
- O que é aprendizado de máquina?
- O que é uma rede neural artificial?
- Estrutura de uma rede neural biológica
- Comparação de neurônio biológico e neurônio artificial
- Características da RNA
- Estrutura da RNA
- Função de Ativação
- O que é um neurônio artificial?
- Como funciona o neurônio artificial?
- Modelos básicos de RNA
- Arquitetura de rede neural
- Exemplo de rede de neurônios artificiais
- Comparação entre aprendizado de máquina e ANN
- Redes neurais e aprendizado profundo
- Aplicativos de rede neural artificial
- Limitações das redes neurais
- Conclusão
- Leitura recomendada
O que é aprendizado de máquina?
O aprendizado de máquina é um campo da ciência que permite aos computadores a capacidade de aprender e agir sem serem programados explicitamente. É um subcampo da Inteligência Artificial.
O que é uma rede neural artificial?
ANN é um modelo não linear amplamente utilizado em Aprendizado de Máquina e tem um futuro promissor na área de Inteligência Artificial.
Rede Neural Artificial é análoga a uma rede neural biológica. Uma rede neural biológica é uma estrutura de bilhões de neurônios interconectados em um cérebro humano. O cérebro humano é composto por neurônios que enviam informações a várias partes do corpo em resposta a uma ação realizada.
Semelhante a isso, uma Rede Neural Artificial (RNA) é uma rede computacional na ciência que se assemelha às características de um cérebro humano. A RNA pode ser modelada como os neurônios originais do cérebro humano, portanto, as partes de processamento da RNA são chamadas de neurônios artificiais.
ANN consiste em um grande número de neurônios interconectados que são inspirados pelo funcionamento de um cérebro. Esses neurônios têm a capacidade de aprender, generalizar os dados de treinamento e derivar resultados de dados complicados.
Essas redes são usadas nas áreas de classificação e previsão, identificações de padrões e tendências, problemas de otimização, etc. A ANN aprende com os dados de treinamento (entrada e saída de destino conhecidas) sem qualquer programação.
A rede neural aprendida é chamada de sistema inteligente com a capacidade de analisar informações e responder às questões de uma área específica.
A definição formal de ANN dada pelo Dr.Robert Hecht-Nielson, inventor de um dos primeiros neurocomputadores é:
“… Um sistema de computação composto por uma série de elementos de processamento simples e altamente interconectados, que processam informações por sua resposta de estado dinâmico a entradas externas”.
Estrutura de uma rede neural biológica
Uma rede neural biológica consiste em:
como configurar um e-mail falso
- Soma: Isso também é chamado de corpo celular. É onde o núcleo da célula está localizado.
- Dendritos: São redes em forma de árvore conectadas ao corpo celular. É feito de fibra nervosa.
- Axônio: Axônio carrega o sinal do corpo celular. Ele se divide em fios e cada fio termina em uma estrutura semelhante a um bulbo chamada sinapse. Os sinais elétricos são transmitidos entre a sinapse e os dendritos.
(imagem fonte )
Comparação de neurônio biológico e neurônio artificial
Neurônio biológico | Neurônio Artificial |
---|---|
ML é aplicado em comércio eletrônico, saúde, recomendações de produtos, etc. | ANN é aplicada no domínio das finanças, aprendizado de máquina e inteligência artificial. |
É feito de células. | As células correspondem a neurônios. |
Possui dendritos que são interconexões entre o corpo celular. | Os pesos de conexão correspondem a dendritos. |
Soma recebe a entrada. | Soma é semelhante ao peso líquido de entrada. |
O axônio recebe o sinal. | A saída da RNA corresponde ao axônio. |
Características da RNA
- Não-linearidade: O mecanismo seguido na RNA para a geração do sinal de entrada é não linear.
- Aprendizagem supervisionada: A entrada e a saída são mapeadas e a RNA é treinada com o conjunto de dados de treinamento.
- Aprendizagem não supervisionada: A saída de destino não é fornecida, de modo que a RNA aprenderá por conta própria, descobrindo os recursos nos padrões de entrada.
- Natureza adaptativa: Os pesos de conexão nos nós da RNA são capazes de se ajustar para dar a saída desejada.
- Analogia do neurônio biológico: A RNA tem uma estrutura e funcionalidade inspiradas no cérebro humano.
- Tolerância ao erro: Essas redes são altamente tolerantes, pois as informações são distribuídas em camadas e a computação ocorre em tempo real.
Estrutura da RNA
Redes Neurais Artificiais são elementos de processamento na forma de algoritmos ou dispositivos de hardware modelados a partir da estrutura neuronal do córtex cerebral humano.
Essas redes também são chamadas simplesmente de Redes Neurais. O NN é formado por várias camadas. As múltiplas camadas interconectadas são freqüentemente chamadas de “Multilayer Perceptron”. Os neurônios em uma camada são chamados de “nós”. Esses nós têm uma “função de ativação”.
A RNA tem 3 camadas principais:
- Camada de entrada: Os padrões de entrada são alimentados nas camadas de entrada. Existe uma camada de entrada.
- Camadas ocultas: Pode haver uma ou mais camadas ocultas. O processamento que ocorre nas camadas internas é denominado “camadas ocultas”. As camadas ocultas calculam a saída com base nos “pesos”, que é a “soma das conexões de sinapses ponderadas”. As camadas ocultas refinam a entrada removendo informações redundantes e enviam as informações para a próxima camada oculta para processamento posterior.
- Camada de saída: Esta camada oculta se conecta à “camada de saída” onde a saída é mostrada.
Função de Ativação
A função de ativação é um estado interno de um neurônio. É uma função da entrada que o neurônio recebe. A função de ativação é usada para converter o sinal de entrada no nó da ANN em um sinal de saída.
O que é um neurônio artificial?
Uma Rede Neural Artificial consiste em elementos de processamento altamente interconectados chamados de nós ou neurônios.
Esses neurônios funcionam em paralelo e são organizados em uma arquitetura. Os nós são conectados uns aos outros por links de conexão. Cada neurônio carrega um peso que contém informações sobre o sinal de entrada.
Como funciona o neurônio artificial?
Um neurônio artificial recebe uma entrada. Essas entradas têm um peso denominado “sinapse”. Esses neurônios (também chamados de nós) têm “função de ativação”. Esta função de ativação trabalha na entrada e a processa para fornecer uma saída.
A soma ponderada das entradas torna-se um sinal de entrada para a função de ativação para fornecer uma saída. Esses pesos de entrada são ajustáveis para que a rede neural possa ajustar seus parâmetros para fornecer a saída desejada.
Algumas funções de ativação comuns que são usadas em redes neurais artificiais são:
# 1) Função de identidade
Pode ser definido como f (x) = x para todos os valores de x. Esta é uma função linear onde a saída é igual à entrada.
# 2) Função de etapa binária
Esta função é usada em redes de camada única para converter a entrada da rede em saída. A saída é binária, ou seja, 0 ou 1. O t representa o valor limite.
(imagem fonte )
# 3) Função Bipolar Step
A função de passo bipolar tem saídas bipolares (+1 ou -1) para a entrada líquida. T representa o valor limite.
# 4) Função sigmoidal
É usado em redes de retropropagação.
É de dois tipos:
- Função Sigmóide Binária: É também chamada de função sigmóide unipolar ou função sigmóide logística. O intervalo do funcional sigmoidal é de 0 a 1.
- Sigmóide Bipolar: A função sigmoidal bipolar varia de -1 a +1. É semelhante à função tangente hiperbólica.
(imagem fonte )
# 5) RampFunction
O soma ponderada de entradas significa o “produto do peso da entrada e do valor da entrada” somados para todas as entradas.
Seja I = {I1, I2, I3… In} o padrão de entrada para o neurônio.
Seja W = {W1, W2, W3… Wn} o peso associado a cada entrada para o nó.
Soma ponderada de entradas = Y = (? Wi * Ii) para i = 1 a n
Modelos básicos de RNA
Os modelos de rede neural artificial consistem em 3 entidades:
- Pesos ou conexões sinápticas
- A regra de aprendizagem usada para ajustar os pesos
- Funções de ativação do neurônio
Arquitetura de rede neural
Na RNA os neurônios estão interconectados e a saída de cada neurônio é conectada ao próximo neurônio por meio de pesos. A arquitetura dessas interconexões é importante em uma RNA. Esse arranjo tem a forma de camadas e a conexão entre as camadas e dentro da camada é a arquitetura da rede neural.
As arquiteturas de rede mais comumente conhecidas são:
- Rede Feed-Forward de Camada Única
- Rede Multi-Layer Feed-Forward
- Nó Único com Seu Próprio Feedback
- Rede Recorrente de Camada Única
- Rede Recorrente Multi-Camada
Vamos dar uma olhada em cada um deles em detalhes.
Nº 1) Rede Feed-Forward de Camada Única
Uma camada é uma rede formada por neurônios. Esses neurônios estão conectados a outros neurônios da próxima camada. Para uma única camada, existem apenas as camadas de entrada e saída. A camada de entrada é conectada aos nós da camada de saída com pesos.
Todos os nós de entrada são conectados a cada um dos nós de saída. O termo feed-forward descreve que não há feedback enviado da camada de saída para a camada de entrada. Isso forma uma rede feed-forward de camada única.
(imagem fonte )
# 2) Rede Feed-Forward Multi-Layer
A rede multicamadas consiste em uma ou mais camadas entre a entrada e a saída. A camada de entrada apenas recebe um sinal e o armazena em buffer enquanto a camada de saída mostra a saída. As camadas entre a entrada e a saída são chamadas de camadas ocultas.
As camadas ocultas não estão em contato com o ambiente externo. Com mais camadas ocultas, a resposta de saída é mais eficiente. Os nós da camada anterior são conectados a cada nó da próxima camada.
Como não há nenhuma camada de saída conectada às camadas de entrada ou ocultas, ele forma uma rede de alimentação de várias camadas.
# 3) Nó único com seu próprio feedback
As redes nas quais a saída da camada de saída é enviada de volta como uma entrada para a camada de entrada ou outras camadas ocultas são chamadas de Redes de Feedback. Em sistemas de feedback de nó único, há uma única camada de entrada onde a saída é redirecionada de volta como feedback.
# 4) Rede recorrente de camada única
Em uma rede recorrente de camada única, a rede de feedback forma um circuito fechado. Nesse modelo, um único neurônio recebe feedback para si mesmo ou para os outros neurônios da rede, ou para ambos.
# 5) Rede Recorrente Multi-Camada
Na rede recorrente multicamadas, existem várias camadas ocultas e a saída é redirecionada de volta para os neurônios das camadas anteriores e outros neurônios nas mesmas camadas ou mesmo neurônio.
Exemplo de rede de neurônios artificiais
Vamos pegar a rede abaixo com a entrada dada e calcular o neurônio de entrada de rede e obter a saída do neurônio Y com função de ativação como sigmoidal binária.
A entrada possui 3 neurônios X1, X2 e X3 e uma única saída Y.
Os pesos associados às entradas são: {0,2, 0,1, -0,3}
Entradas = {0,3, 0,5, 0,6}
Entrada líquida = {x1 * w1 + x2 * w2 + x3 * w3}
Entrada líquida = (0,3 * 0,2) + (0,5 * 0,1) + (0,6 * -0,3)
Entrada líquida = -0,07
Saída para Sigmoidal Binário:
X é -0,07
A saída chega a ser 0,517
Comparação entre aprendizado de máquina e ANN
Aprendizado de Máquina | Rede neural artificial |
---|---|
O Machine Learning aprende com os dados de entrada e descobre padrões de dados de saída de interesse. | ANN são usados em algoritmos de aprendizado de máquina para treinar o sistema usando sinapses, nós e links de conexão. |
ML é um subconjunto do campo da inteligência artificial. | A RNA também faz parte do campo da ciência da Inteligência Artificial e um subconjunto do aprendizado de máquina. |
Os algoritmos de ML aprendem com os dados fornecidos ao algoritmo para fins de tomada de decisão. Alguns desses algoritmos são classificação. Clustering, mineração de dados de associação. | ANN é uma ciência de aprendizado profundo que analisa os dados com estruturas lógicas como os humanos fazem. Alguns dos esquemas de aprendizagem da AN são Hebbian, Perceptron, Back propagation, etc. |
Os algoritmos de ML têm recursos de autoaprendizagem, mas exigiriam intervenção humana se o resultado fosse impreciso. | Os algoritmos de RNA têm recursos para se ajustar usando pesos de conexão se o resultado sair errado. |
Os algoritmos de ML requerem habilidades de programação, estrutura de dados e conhecimento de banco de dados de big data. | ANN também requer fortes habilidades em matemática, probabilidade, estruturas de dados, etc. |
Os programas de ML podem prever o resultado de um conjunto de dados aprendido e se ajustar para novos dados. | ANN pode aprender e tomar decisões inteligentes por conta própria para novos dados, mas é mais profundo do que o aprendizado de máquina. |
O aprendizado supervisionado e o não supervisionado se enquadram no aprendizado de máquina. | Aprendizagem como Kohenen, polarização radial e rede neural feed-forward se enquadram na ANN. |
Alguns exemplos de ML são os resultados de pesquisa do Google, etc. | Alguns exemplos de RNA são reconhecimento facial, reconhecimento de imagem, etc. |
Redes neurais e aprendizado profundo
As redes de Deep Learning contêm várias camadas ocultas entre a entrada e a saída. Essas redes são diferenciadas pela profundidade das camadas ocultas nelas. Os dados de entrada passam por várias etapas antes que a saída seja exibida.
Essas redes diferem do NN anterior, como perceptron, que tinha uma única camada oculta e era chamado de Redes Rasas. Cada camada oculta na rede de aprendizado profundo treina os dados com certos recursos com base na saída da camada anterior.
Os dados passam por muitas camadas de função não linear no nó. Quanto maior o número de camadas, mais recursos complexos podem ser reconhecidos, pois a próxima camada realizará a agregação de recursos das camadas anteriores.
Múltiplas camadas ocultas na rede aumentam a complexidade e a abstração. Essa profundidade também é chamada de hierarquia de recursos. Devido a isso, as redes de aprendizado profundo são capazes de lidar com dados de alta dimensão.
Alguns exemplos de redes de aprendizagem profunda incluem agrupamento de milhões de imagens com base em suas características e semelhanças, filtragem de mensagens de e-mail, aplicação de filtros a mensagens em CRM, identificação de fala, etc.
Deep Learning Networks pode ser treinado em conjuntos de dados rotulados e não rotulados. Para o conjunto de dados não rotulado, as redes, como as máquinas de seleção Boltzmann, executam a extração automática de recursos.
A rede aprende automaticamente analisando a entrada por meio de amostragem e minimizando a diferença na saída e distribuição de entrada. A rede neural aqui encontra correlações entre os recursos e os resultados.
As redes de aprendizagem profunda treinadas em dados rotulados podem ser aplicadas a dados não estruturados. Quanto mais dados de treinamento forem enviados à rede, mais precisos eles se tornarão.
A capacidade da rede de aprender com dados não rotulados é uma vantagem sobre os outros algoritmos de aprendizado.
Aplicativos de rede neural artificial
As redes neurais têm sido usadas com sucesso em uma variedade de soluções, conforme mostrado abaixo.
# 1) Reconhecimento de padrão: ANN é usada em reconhecimento de padrões, reconhecimento de imagem, visualização de imagens, caligrafia, fala e outras tarefas semelhantes.
# 2) Problemas de otimização: Problemas como encontrar a rota mais curta, programação e fabricação, onde as restrições do problema devem ser satisfeitas e as soluções ideais precisam ser alcançadas, estão usando NNs.
# 3) Previsão: NN pode prever o resultado para situações analisando tendências anteriores. Aplicativos como bancos, mercado de ações e previsão do tempo usam Redes Neurais.
# 4) Sistemas de controle: Os sistemas de controle, como produtos de computador, produtos químicos e robótica, usam redes neurais.
Limitações das redes neurais
Alistados abaixo estão algumas das desvantagens das Redes Neurais.
- Essas redes são caixas pretas para o usuário, pois o usuário não tem nenhuma função, exceto alimentar a entrada e observar a saída. O usuário não tem conhecimento do treinamento que está ocorrendo no algoritmo.
- Esses algoritmos são bastante lentos e requerem muitas iterações (também chamadas de épocas) para fornecer resultados precisos. Isso ocorre porque a CPU calcula os pesos, a função de ativação de cada nó separadamente, fazendo com que consuma tempo e recursos. Também causa um problema com uma grande quantidade de dados.
Conclusão
Neste tutorial, aprendemos sobre Redes Neurais Artificiais, sua analogia com Neurônios Biológicos e Tipos de Redes Neurais.
ANN se enquadra no aprendizado de máquina. É um modelo computacional composto por vários nós de neurônios. Esses nós recebem entrada, processam a entrada usando a função de ativação e passam a saída para as próximas camadas.
As entradas são associadas a pesos de link de conexão chamados sinapse. Uma RNA básica consiste em uma camada de entrada, pesos, função de ativação, camada oculta e uma camada de saída.
As funções de ativação são usadas para converter a entrada em saída. Alguns deles são binários, bipolares, sigmoidal e uma função de rampa. Existem diferentes tipos de RNA como Single-Layer Feed Forward, Multilayer Feed Forward, Redes recorrentes, etc. com base no número de camadas ocultas e mecanismos de feedback.
ANN com muitas camadas ocultas entre a rede de aprendizagem profunda de entrada e saída. As redes de aprendizagem profunda possuem alta complexidade e nível de abstração que as torna capazes de computar dados de alta dimensão com milhares de parâmetros.
ANN é usado no campo de previsão, processamento de imagem, sistemas de controle, etc. Estes têm sido aplicados com sucesso como uma solução para uma série de problemas na ciência.
Esperamos que este tutorial tenha explicado tudo o que você precisa saber sobre Redes Neurais Artificiais !!
=> Visite aqui para a série exclusiva de aprendizado de máquina
Leitura recomendada
- Data Mining Vs Machine Learning Vs Artificial Intelligence Vs Deep Learning
- Teste de segurança de rede e as melhores ferramentas de segurança de rede
- Tipos de aprendizado de máquina: aprendizado supervisionado versus aprendizado não supervisionado
- 11 ferramentas de software de aprendizado de máquina mais populares em 2021
- Tutorial de aprendizado de máquina: introdução ao ML e seus aplicativos
- Guia para máscara de sub-rede (sub-rede) e calculadora de sub-rede IP
- Guia de avaliação e gerenciamento de vulnerabilidade de rede
- 15 melhores ferramentas de digitalização em rede (scanner de rede e IP) de 2021