Dentro dos campos de processamento adaptativo de sinais / aprendizado de máquina, o aprendizado profundo (DL) é uma metodologia específica na qual podemos treinar representações complexas de máquinas.
Geralmente, eles terão uma formulação que pode mapear sua entrada , até o objetivo de destino, y , por meio de uma série de operações empilhadas hierarquicamente (é daí que vem o 'profundo'). Essas operações são tipicamente operações / projeções lineares ( W i ), seguidas de não linearidades ( f i ), como:xyWEufEu
y = fN( . . . F2( f1 1( xTW1 1) W2) . . . WN)
Agora, dentro da DL, existem muitas arquiteturas diferentes : uma dessas arquiteturas é conhecida como rede neural convolucional (CNN). Outra arquitetura é conhecida como perceptron de múltiplas camadas (MLP) etc. Diferentes arquiteturas se prestam à solução de diferentes tipos de problemas.
Um MLP é talvez um dos tipos mais tradicionais de arquiteturas de DL que podemos encontrar, e é quando todos os elementos de uma camada anterior são conectados a todos os elementos da próxima camada. Se parece com isso:
WEuW ∈ R10 x 20v ∈ R10 x 1u ∈ R1 x 20você = vTWW dos elementos da próxima camada.
Os MLPs caíram em desuso, em parte porque eram difíceis de treinar. Embora existam muitas razões para essas dificuldades, uma delas também ocorreu porque suas densas conexões não permitiram que elas se dimensionassem facilmente para vários problemas de visão computacional. Em outras palavras, eles não possuíam equivalência de tradução incorporada. Isso significava que, se houvesse um sinal em uma parte da imagem à qual eles precisavam ser sensíveis, eles precisariam reaprender a ser sensíveis a ela se esse sinal se moveu. Isso desperdiçou a capacidade da rede e, portanto, o treinamento ficou difícil.
Foi aqui que as CNNs entraram! Aqui está o que se parece:
WEu
É comum ver "CNNs" se referir a redes nas quais temos camadas convolucionais em toda a rede e MLPs no final, de modo que essa é uma ressalva a ser observada.