Guia para o aprendizado profundo da CNN
Publicados: 2022-10-14A capacidade da inteligência artificial para fechar a lacuna entre as habilidades humanas e da máquina aumentou drasticamente. Tanto profissionais quanto amadores se concentram em muitas facetas do campo para alcançar ótimos resultados. O campo da visão computacional é uma das várias disciplinas.
Nossos programas de IA e ML nos EUA
Master of Science em Machine Learning & AI pela LJMU e IIITB | Programa PG Executivo em Aprendizado de Máquina e Inteligência Artificial do IIITB |
Para explorar todos os nossos cursos, visite nossa página abaixo. | |
Cursos de aprendizado de máquina |
O campo visa dar aos computadores a capacidade de ver e entender o mundo como humanos e usar essa compreensão para várias tarefas, incluindo reconhecimento de imagem e vídeo, análise e categorização de imagem, recriação de mídia, sistemas de recomendação, processamento de linguagem natural, etc. Rede Neural Convolucional é o principal algoritmo usado para desenvolver e refinar as melhorias de aprendizado profundo na visão computacional ao longo do tempo. Vamos descobrir mais sobre o algoritmo de aprendizado profundo!
Obtenha a certificação de aprendizado de máquina das melhores universidades do mundo. Ganhe Masters, Executive PGP ou Advanced Certificate Programs para acelerar sua carreira.
O que é Rede Neural de Convolução?
Uma Rede Neural Convolucional ou CNN é um método de aprendizado profundo que pode receber uma imagem de entrada, dar importância a vários elementos e objetos na imagem, como pesos e vieses aprendíveis, e distinguir entre eles. Comparativamente falando, uma CNN requer substancialmente menos pré-processamento do que outras técnicas de classificação. A CNN tem a capacidade de aprender esses filtros e propriedades, enquanto que, em técnicas primitivas, os filtros são projetados à mão.
A arquitetura de uma CNN é influenciada pela forma como o Visual Cortex é organizado e se assemelha à rede de conectividade de neurônios no cérebro humano. Neurônios individuais reagem a estímulos apenas nesta área restrita do campo visual, conhecida como Campo Receptivo. Uma série de tais sobreposições cobre todo o campo visual.
A arquitetura da Rede Neural de Convolução
A arquitetura das redes neurais convolucionais difere daquela das redes neurais convencionais. Uma rede neural regular transforma uma entrada, passando-a por várias camadas ocultas. Cada camada consiste em um conjunto de neurônios ligados a todos os neurônios da camada abaixo dela. A camada final de saída totalmente conectada é onde as previsões são representadas.
As redes neurais convolucionais são estruturadas de forma um pouco diferente. As camadas são organizadas primeiro em três dimensões: largura, altura e profundidade. Além disso, apenas uma parte dos neurônios na camada seguinte está conectada aos da camada abaixo. A saída será então condensada em um único vetor de pontuação de probabilidade e agrupada junto com a camada de convolução.
CNN consiste em duas partes:
A extração de recursos de camadas ocultas
A rede fará uma série de operações convolucionais e de agrupamento nesta seção para detectar os recursos. É aqui que a rede identificaria as listras de um tigre, duas orelhas e quatro patas se você tivesse uma imagem de um.
Classificação da Seção
Além desses recursos recuperados, as camadas de convolução funcionarão como um classificador neste caso. Eles darão a probabilidade de que o objeto da imagem corresponda à previsão do algoritmo.
Extração de funcionalidades
Um dos principais componentes da CNN é a convolução. A combinação matemática de duas funções para produzir uma terceira função é chamada de convolução. Ele combina dois conjuntos de dados. Um mapa de recursos é criado realizando a convolução nos dados de entrada no caso de uma CNN usando um filtro ou kernel. A convolução é realizada movendo o filtro sobre a entrada. Cada local executa uma multiplicação de matrizes e soma a saída no mapa de recursos.
Fazemos várias convoluções na entrada, usando um filtro diferente para cada operação. Como resultado, vários mapas de recursos são produzidos. A saída da camada de convolução é finalmente montada usando todos esses mapas de recursos.
Como qualquer outra rede neural, empregamos um processo de ativação para tornar nossa saída não linear, onde a função de ativação é usada para enviar a saída da convolução em uma rede neural convolucional.
Tipos de Rede Neural de Convolução
Camada de Convolução:
O componente fundamental da CNN é a camada de convolução. Ele carrega a maior parte da carga computacional na rede. Essa camada faz um produto escalar entre duas matrizes, uma das quais é o kernel, uma coleção de parâmetros que podem ser aprendidos, e a outra é a área restrita do campo receptivo. Comparado a uma imagem, o kernel é menor no espaço, mas mais profundo. Isso indica que a largura e a altura do kerne serão espacialmente pequenas se a imagem consistir em três canais; no entanto, a profundidade aumentará para todos os três canais.
O kernel se move pela altura e largura da imagem durante a passagem para frente, criando uma representação de imagem daquela região receptiva. Como resultado, uma representação bidimensional da imagem chamada de mapa de ativação é criada, revelando a resposta do kernel em cada local da imagem. Um passo é um nome para o tamanho deslizável do kernel.
Camada de pool:
Essa camada reduz apenas o poder de computação necessário para processar os dados. Isso é feito reduzindo ainda mais as dimensões da matriz destacada. Tentamos extrair as feições dominantes de uma pequena porção da vizinhança nesta camada.
O pooling médio e o pooling máximo são dois tipos diferentes de estratégias de pooling.
Em contraste com o Max-pooling, que simplesmente obtém o valor mais alto entre todos os que estão dentro da região de pool, o Average-pooling calcula a média de todos os valores dentro da região de pool.
Agora temos uma matriz com os principais elementos da imagem depois de agrupar as camadas, e essa matriz tem dimensões ainda menores, o que será muito útil na etapa seguinte.
Camada totalmente conectada:
Um método barato de aprender permutações não lineares das características de alto nível fornecidas pela saída da camada convolucional é adicionar uma camada totalmente conectada. Nessa área, a camada totalmente conectada agora está aprendendo uma função que pode não ser linear.
Depois de convertê-lo em um formato apropriado para nosso perceptron multinível, achataremos a imagem de entrada em um vetor de coluna. Uma rede neural feed-forward recebe a saída achatada e a retropropagação é usada para cada iteração de treinamento. O modelo pode categorizar imagens usando o método Softmax Classification, identificando características dominantes e específicas de baixo nível em muitas épocas.
Camadas não lineares:
As camadas de não linearidade são frequentemente incluídas logo após a camada convolucional para adicionar não linearidade ao mapa de ativação porque a convolução é uma operação linear e as imagens são tudo menos lineares.
As operações não lineares vêm em uma variedade de formas, sendo as mais comuns:
Sigmóide
A fórmula matemática para a não linearidade sigmóide é () = 1/(1+e ). Ele destrói um número de valor real no intervalo entre 0 e 1. O gradiente de um sigmóide se torna quase zero quando a ativação é na cauda, o que é uma característica sigmóide muito desfavorável. A retropropagação matará efetivamente o gradiente se o gradiente local ficar muito pequeno. Além disso, suponha que a entrada para o neurônio seja exclusivamente positiva. Nesse caso, a saída sigmóide será exclusivamente positiva ou exclusivamente negativa, levando a uma dinâmica em ziguezague de atualizações de gradiente para peso.
Tanh
Tanh condensa um número de valor real no intervalo [-1, 1]. Como os neurônios sigmóides, a ativação satura, mas, diferentemente deles, sua saída é centrada em zero.
ReLU
A Unidade Linear Retificada (ReLU) ganhou recentemente muita popularidade. Ele executa o cálculo da função ()=max (0,). Dito de outra forma, a ativação existe apenas em limiares zero. ReLU acelera a convergência em seis vezes e é mais confiável do que sigmoid e tanh.
Infelizmente, o ReLU pode ser frágil durante o treinamento, o que é uma desvantagem. Um gradiente forte pode atualizá-lo impedindo que o neurônio se atualize ainda mais. No entanto, podemos fazer isso funcionar escolhendo uma taxa de aprendizado apropriada.
Blogs populares de aprendizado de máquina e inteligência artificial
IoT: História, Presente e Futuro | Tutorial de aprendizado de máquina: aprender ML | O que é Algoritmo? Simples e fácil |
Salário de engenheiro de robótica na Índia: todas as funções | Um dia na vida de um engenheiro de aprendizado de máquina: o que eles fazem? | O que é IoT (Internet das Coisas) |
Permutação vs Combinação: Diferença entre Permutação e Combinação | As 7 principais tendências em inteligência artificial e aprendizado de máquina | Aprendizado de máquina com R: tudo o que você precisa saber |
Comece seu guia para CNN Deep Learning com UpGrad
Inscreva-se no Master of Science em Machine Learning e Inteligência Artificial no UpGrad em colaboração com a LJMU.
O programa de certificação prepara os alunos para as funções técnicas atuais e futuras, fornecendo tópicos relevantes para o setor. Projetos reais, estudos de caso múltiplos e acadêmicos internacionais oferecidos por especialistas no assunto também são fortemente enfatizados no programa.
Ao se inscrever, você pode aproveitar os recursos exclusivos do UpGrad, como monitoramento de rede, sessões de estudo e suporte ao aprendizado de 360 graus.
O que é o algoritmo de aprendizado profundo da CNN?
A maneira como a CNN opera é obter uma imagem, atribuir-lhe um peso dependendo dos vários itens da imagem e depois separá-los uns dos outros. Comparado a outros algoritmos de aprendizado profundo, o CNN requer muito pouco pré-processamento dos dados.
O que distingue a CNN do aprendizado profundo?
O aprendizado profundo é mais frequentemente usado em marketing para parecer mais profissional do que é. Existem inúmeras variedades de redes neurais profundas, incluindo a CNN. As CNNs são muito apreciadas devido aos seus inúmeros usos vantajosos na identificação de imagens.
Por que a CNN é superior a totalmente conectada?
As convoluções não possuem conexões densas e nem todos os nós de entrada têm impacto em todos os nós de saída. Graças a isso, as camadas convolucionais agora podem aprender com mais flexibilidade. Além disso, há menos pesos por camada, o que beneficia entradas de alta dimensão, como dados de imagem.
A CNN é usada apenas para fotos?
Sim. Qualquer matriz de dados 2D e 3D pode ser processada usando CNN.