Como começar com redes neurais?

O livro introdutório " Python Neural Network Programming " é recomendado. Pontuação de Douban 9,2.

Se você pode adicionar, subtrair, multiplicar e dividir, então você pode fazer sua própria rede neural. A operação mais difícil que usamos é o cálculo de gradiente, porém, vamos ilustrar esse conceito para que o maior número possível de leitores possa entender o conceito.

Neste livro, vamos zarpar , construir uma rede neural e reconhecer dígitos manuscritos.

Começaremos com neurônios preditivos muito simples e os melhoraremos gradualmente até atingirmos seus limites. Ao longo do caminho, faremos algumas paradas curtas e aprenderemos alguns conceitos matemáticos. Precisamos desses conceitos matemáticos para entender como as redes neurais aprendem e preveem soluções para problemas.

Passaremos por ideias matemáticas como funções, classificadores lineares simples , refinamento iterativo, multiplicação de matrizes , cálculo de gradiente, otimização via gradiente descendente e até mesmo rotação geométrica. No entanto, todos esses conceitos matemáticos são explicados de maneira muito elegante e clara, e o leitor não exige nenhum conhecimento prévio ou experiência técnica além da simples matemática do ensino médio.

Depois de criarmos com sucesso nossa primeira rede neural, levaremos essa ideia conosco e a usaremos de várias maneiras. Por exemplo, podemos usar o processamento de imagem para melhorar o aprendizado de máquina sem recorrer a dados de treinamento adicionais. Vamos dar uma olhada na mente de uma rede neural e ver se ela revela algum insight profundo - muitos livros não mostram como uma rede neural funciona.

À medida que fazemos redes neurais passo a passo, também aprenderemos Python, uma linguagem de programação muito simples, útil e popular . Novamente, você não precisa de nenhuma experiência anterior em programação.

Este livro revela os conceitos por trás das redes neurais e mostra como implementá-los em Python. Todo o livro é dividido em 3 capítulos e dois apêndices. O Capítulo 1 apresenta as ideias matemáticas usadas em redes neurais. O Capítulo 2 apresenta o uso do Python para implementar redes neurais, reconhecer dígitos manuscritos e testar o desempenho de redes neurais. O Capítulo 3 leva os leitores a aprender mais sobre redes neurais simples, observar o interior das redes neurais treinadas, tentar melhorar ainda mais o desempenho das redes neurais e aprofundar sua compreensão do conhecimento relacionado. O apêndice apresenta o conhecimento de cálculo necessário e o conhecimento de Raspberry Pi , respectivamente.

Este livro é uma referência de aprendizado para leitores que desejam se envolver em pesquisa e exploração de redes neurais e também é adequado para leitores interessados ​​em áreas relacionadas, como inteligência artificial, aprendizado de máquina e aprendizado profundo.


"Python Neural Network Programming" Conhecimento Matemático: Introdução ao Cálculo

A.1 Uma linha reta

Primeiro, vamos começar com um cenário muito simples.

Imagine um carro viajando a uma velocidade constante de 30 mph. Nem rápido, nem lento, apenas 30 mph.

A velocidade do carro em vários pontos no tempo é mostrada na tabela abaixo, medida a cada meio minuto.

tempo/minuto Velocidade (mph)
0 30
0,5 30
1,0 30
1,5 30
2.0 30
2.5 30
3.0 30

A figura abaixo visualiza a velocidade nesses pontos no tempo.

Pode-se ver que a velocidade não varia com o tempo, então esta é uma linha horizontal. A linha não sobe (aceleração) nem desce (desaceleração), e o carro permanece a 30 mph.

A expressão matemática para a velocidade, que chamamos de s :

Agora, se alguém perguntar como a velocidade varia com o tempo, diremos que a velocidade não varia com o tempo. A taxa de variação é 0. Em outras palavras, a velocidade não depende do tempo, a correlação é 0.

Acabamos de calcular!

Cálculo é sobre estabelecer relações para expressar como uma coisa muda à medida que outras coisas mudam. Aqui, estamos pensando em como a velocidade muda com o tempo.

Temos uma maneira matemática de expressar essa relação.

Quais são esses símbolos? Pense nesta notação como significando "como a velocidade muda quando o tempo muda" ou "como s está relacionado a t".

Portanto, esta expressão diz que a velocidade não varia com o tempo, que é uma maneira elegante de usar os matemáticos. Ou, em outras palavras, a velocidade não é afetada com o tempo. A dependência da velocidade com o tempo é 0. Isso é o que 0 na expressão significa. Eles são completamente não relacionados.

Na verdade, você pode encontrar essa não correlação ao examinar novamente a expressão para velocidade s = 30. Nesta expressão, o tempo não é mencionado de forma alguma. Ou seja, nesta expressão, não há tempo oculto t . Portanto, não precisamos fazer nenhum cálculo complicado para descobrir que ∂s / ∂t = 0, podemos simplesmente observar a expressão para chegar a essa conclusão. Os matemáticos chamam isso de "método de observação".

Uma expressão como ∂s/∂t, que representa a taxa de variação, é chamada de derivada. Para nossos propósitos, não precisamos saber disso, mas você pode encontrar esse termo em outro lugar.

Agora, se pisarmos no acelerador, vamos ver o que acontece. Isso é tão emocionante!

A.2 Uma barra

Imagine o mesmo carro indo a 30 mph. Pisamos levemente no acelerador e o carro acelerou. Mantivemos o pedal do acelerador pressionado e observamos a escala no painel de instrumentos, registrando a velocidade a cada 30 segundos.

Após 30 segundos, o carro estava viajando a 35 mph. Após 1 minuto, o carro estava viajando a 40 mph. Após 90 segundos, o carro estava atingindo 45 mph. Após 2 minutos, o carro atingiu uma velocidade de 50 mph. A aceleração do carro é de 10 milhas por minuto.

A tabela abaixo resume as mesmas informações.

tempo/minuto Velocidade (mph)
0,0 30
0,5 35
1,0 40
1,5 45
2.0 50
2.5 55
3.0 60

Vamos visualizá-lo novamente.

Você pode ver que a velocidade do carro sobe de 30 mph para 60 mph a uma taxa constante. Como o incremento da velocidade é o mesmo a cada meio minuto, o gráfico da velocidade ao longo do tempo é uma linha reta e a taxa pode ser vista.

Qual é a expressão para a velocidade? No tempo 0, a velocidade é 30. Depois disso, a velocidade aumenta em 10 mph por minuto. Portanto, a expressão para a velocidade é a seguinte.

Ou use a notação da seguinte forma:

Aqui, a constante 30 pode ser vista. E veja também (10 x t), o que significa um aumento de 10 mph por minuto. Você perceberá rapidamente que 10 é a inclinação da linha que traçamos . Lembre-se de que a forma geral de uma linha reta é y  = a x  + b, onde a é a inclinação ou gradiente.

Então, como fica a expressão para velocidade versus tempo? Bem, já discutimos isso, a velocidade aumenta em 10 mph por minuto.

O que esta expressão diz é que como ∂s / ∂t é diferente de zero, existe de fato uma correlação entre velocidade e tempo.

Lembre-se,  a inclinação da reta y  = a x + b é a, e podemos saber que a inclinação de s = 30 + 10t é 10 por meio do "método de observação".

bom trabalho! Cobrimos muitos dos fundamentos do cálculo, que não são nada difíceis. Agora, vamos pisar fundo no acelerador!

A.3 Uma curva

Imagine que eu ligo o carro parado e pressiono o pedal do acelerador com força sem soltá-lo. Como não estamos nos movendo para começar, a velocidade inicial é 0.

Imagine que pressionamos o pedal do acelerador com muita força e o carro não aumenta a velocidade a uma taxa constante. Em vez disso, o carro ganha velocidade mais rápido. Isso significa que, em vez de aumentar 10 mph por minuto, a aceleração do próprio carro aumenta à medida que o pedal do acelerador é pressionado por mais tempo.

Para este exemplo, imagine que medimos a velocidade a cada minuto, conforme listado na tabela abaixo.

tempo/minuto Velocidade (mph)
0 0
1 1
2 4
3 9
4 16
5 25
6 36
7 49
8 64

Se você olhar de perto, verá que escolhi fazer a velocidade o quadrado do tempo em minutos. Ou seja, quando o tempo é 2 minutos, a velocidade é 22 = 4; quando o tempo é 3 minutos, a velocidade é 32 = 9; quando o tempo é 4 minutos, a velocidade é 42 = 16; e assim por diante.

Agora, essa expressão também é fácil de escrever.

Embora eu saiba que a velocidade do carro no exemplo é intencional, é uma boa ilustração de como fazemos o cálculo.

Vamos visualizar essa expressão para que possamos ter uma ideia de como a velocidade muda ao longo do tempo.

Pode-se ver que a velocidade muda cada vez mais rápido. Atualmente, o gráfico não é mais uma linha reta. É concebível que a velocidade aumente de forma explosiva rapidamente para números muito grandes. Em 20 minutos, a velocidade será de 400 mph; em 100 minutos, a velocidade será de 10.000 mph!

Uma pergunta interessante - como é a taxa de variação da velocidade em relação ao tempo? Ou seja, como a velocidade varia com o tempo?

Esta não é a mesma questão que a velocidade real em um determinado ponto no tempo. Já temos a expressão s = t2, então o valor já é conhecido.

O que estamos perguntando é - em qualquer ponto no tempo, qual é a taxa de variação da velocidade? Neste exemplo, esta frase significa onde o gráfico se curva?

Se você se lembra dos dois exemplos anteriores, a taxa de variação é a inclinação da curva velocidade versus tempo. Quando o carro está viajando a uma velocidade constante de 30 mph, a velocidade não está mudando, então a taxa de variação é 0. Quando o carro está acelerando constantemente, a taxa de variação da velocidade é de 10 milhas por hora. Em qualquer ponto no tempo, 10 mph é o certo. Em um tempo de 2 minutos, a taxa de variação é de 10 milhas por minuto. Aos 4 minutos, isso é verdade aos 100 minutos.

Em gráficos, podemos aplicar a mesma ideia? Claro que você pode - mas, aqui, vamos dar como certo.

A.4 Cálculo desenhado à mão

Vamos dar uma olhada no que acontece quando o tempo é igual a 3 minutos.

Em 3 minutos, a velocidade é de 9 mph. Sabemos que após 3 minutos a velocidade ficará mais rápida. Vamos comparar isso com o que acontece aos 6 minutos. Aos 6 minutos, a velocidade era de 36 mph. Após 6 minutos, a velocidade ficará mais rápida.

No entanto, também sabemos que a taxa de aumento da velocidade é maior no momento após 6 minutos do que no momento após 3 minutos. Esta é a diferença real entre o que acontece aos 3 minutos e aos 6 minutos.

Vamos visualizar esse contraste conforme a imagem abaixo.

Pode-se ver que a inclinação em 6 minutos é maior do que a inclinação em 3 minutos. A inclinação é a taxa de variação que queremos. Esta é uma realização importante, digamos novamente. A taxa de variação em qualquer ponto da curva é a inclinação da curva naquele ponto.

Mas como você mede a inclinação de uma curva? Para uma linha reta, é fácil medir a inclinação. Para uma curva, uma linha reta chamada tangente pode ser desenhada. A tangente deve estar o mais próximo possível da inclinação da curva em um ponto, de modo que a inclinação da curva naquele ponto possa ser estimada a partir da inclinação da tangente. Na verdade, era assim que as pessoas mediam a inclinação de uma curva antes que outras medições surgissem.

Para dar ao leitor uma amostra dessa abordagem, vamos tentar esse método rudimentar. A figura abaixo mostra o gráfico da curva de velocidade, aos 6 minutos obtemos a reta tangente com apenas um ponto de interseção com a curva de velocidade.

Sabemos da matemática do ensino médio que, para calcular a inclinação, ou gradiente, você divide a altura da inclinação pela largura. No diagrama acima, a altura (velocidade) é Δs e a largura (tempo) é Δt. O símbolo Δ é chamado de "incremento", ou seja, uma pequena alteração. Δt é, portanto, uma pequena mudança em t.

A inclinação é Δs/Δt. Para o chanfro, escolha um triângulo de qualquer tamanho e use uma régua para medir a altura e a largura. De acordo com os resultados da minha medição, obtive exatamente um triângulo com Δs de 9,6 e Δt de 0,8. Portanto, a inclinação resultante é a seguinte:

Conseguimos um resultado importante! Aos 6 minutos, a taxa de variação da velocidade foi de 12,0 milhas por minuto.

Você deve entender que confiar em uma régua, fazer o melhor que puder ou mesmo tentar desenhar tangentes à mão não será particularmente preciso. Então vamos complicar um pouco mais as coisas.

A.5 Cálculo não desenhado à mão

Dê uma olhada na imagem abaixo, há uma nova linha marcada nesta imagem. A linha intercepta a curva em dois pontos, portanto não é uma tangente. No entanto, a linha parece de alguma forma centrada em torno do ponto de tempo de 3 minutos.

Na verdade, esta linha está relacionada ao ponto de tempo 3 minutos. O ponto de tempo que escolhemos é o ponto de tempo t = 3 minutos acima e abaixo do ponto de tempo em que estamos interessados. Aqui, escolhemos 2 minutos acima e abaixo do ponto de tempo de t = 3 minutos, ou seja, t = 1 minuto et = 5 minutos.

Usando notação matemática , podemos dizer que Δx é 2 minutos. Os pontos de tempo que escolhemos são x-Δx e x+Δx. Lembre-se, o símbolo Δ significa apenas uma "pequena mudança", então Δx é uma pequena mudança na coordenada x.

Por que você faz isso? Os leitores logo entenderão, vamos abrir o apetite do leitor primeiro.

Se você observar as velocidades nos pontos de tempo x-Δx e x+Δx e traçar uma linha reta entre esses dois pontos, obterá uma linha cuja inclinação é aproximadamente igual à inclinação da tangente no ponto médio x. Olhe para o gráfico acima novamente e olhe para aquela linha reta. É claro que essa reta não tem exatamente a mesma inclinação que a verdadeira inclinação da tangente em x, mas vamos corrigir isso.

Vamos calcular o gradiente (inclinação) desta linha. Assim como no método usado anteriormente, dividimos a altura do chanfro pela largura para obter o gradiente. A imagem abaixo mostra a altura e a largura do chanfro com mais clareza.

Altitude é a diferença entre as velocidades nos dois pontos x-Δx e x + Δx, ou seja, a diferença entre as duas velocidades em 1 minuto e 5 minutos. Sabemos que nesses dois pontos as velocidades são 12 = 1 e 52 = 25 mph, então a diferença de velocidade é 24. A largura é muito fácil de calcular, é a distância entre x-Δx e x+Δx, que é a distância entre 1 e 5, que é 4. Portanto, obtemos:

O gradiente da linha se aproxima do gradiente da tangente em t = 3 minutos a 6 milhas por minuto.

Vamos fazer uma pausa e rever o que foi feito. Primeiro, tentamos descobrir a inclinação da curva usando a tangente à mão livre. Este método nunca será preciso e não pode ser usado repetidamente, pois somos humanos e ficamos entediados, entediados e cometemos erros. O próximo método não requer tangentes à mão livre, mas em vez disso cria uma linha diferente de uma forma que tem aproximadamente a mesma inclinação que a correta. O segundo método pode ser feito automaticamente por computador e, como não requer trabalho humano, pode ser feito várias vezes e a velocidade é muito rápida.

Isso é muito bom, mas ainda não é bom o suficiente!

O segundo método obtém apenas uma aproximação . Como esse valor pode ser melhorado para que se torne preciso? Nosso objetivo é descobrir como as coisas mudam de maneira matemática precisa, para obter o valor do gradiente.

É aqui que a mágica acontece! Os matemáticos desenvolveram uma ferramenta muito leve e afiada e se divertem muito com ela.

O que acontece se você diminuir a largura? Em outras palavras, isto é, o que acontece se você tornar Δx menor? A figura abaixo detalha as várias linhas de aproximação ou linhas de inclinação que são obtidas à medida que Δx se torna progressivamente menor.

 

Desenhamos linhas para Δx = 2,0, Δx = 1,0, Δx = 0,5 e Δx = 0,1. Você pode ver que a linha está se aproximando cada vez mais do nosso ponto de interesse, o ponto aos 3 minutos. Você pode imaginar que, à medida que diminuímos o valor de Δx, a linha reta ficará cada vez mais próxima da tangente verdadeira em 3 minutos.

Quando Δx se torna infinitamente pequeno, a linha reta está infinitamente próxima da tangente verdadeira. Isso é tão legal!

A ideia de melhorar a aproximação, aproximando-se da solução tornando o viés cada vez menor, é simplesmente poderosa demais. Os matemáticos usam caminhos sinuosos para resolver problemas difíceis de resolver diretamente. É um pouco como se esgueirar pelo lado, em vez de atacar pela frente.

A.6 Cálculo Sem Diagramas

Dissemos anteriormente que o cálculo é sobre a compreensão de como as coisas mudam de uma forma matemática precisa. Vamos ver se podemos aplicar essa ideia de encolher progressivamente Δx às expressões matemáticas que definem essas coisas -- como a curva de velocidade de um carro.

Sabemos que a velocidade é uma função do tempo, ou seja, s = t2. Queremos saber como a velocidade varia em função do tempo. Vimos que esta é a inclinação de s ao traçar a curva em relação a t.

A taxa de variação ∂s / ∂t é igual à altura dividida pela largura de nossa linha construída, no entanto, onde Δx é infinitamente pequeno.

Qual é a altura? Como vimos anteriormente, isso é (t + Δx)2 - (t - Δx)2. Ou seja, de acordo com a fórmula s = t2, onde t é o deslocamento vertical Δx do ponto de interesse, o s correspondente é calculado e subtraído.

Qual é a largura? Como vimos anteriormente, em termos simples, isso é apenas a distância entre (t + Δx) e (t - Δx), que é 2Δx.

Estamos quase lá,

Vamos expandir e simplificar a expressão

De fato, temos sorte de a própria álgebra ter sido simplificada de maneira bastante organizada.

Atingimos nosso objetivo! Matematicamente, a taxa exata de variação é ∂s / ∂t = 2t. Isso significa que, para qualquer instante t, sabemos que a taxa de variação da velocidade é ∂s / ∂t = 2t.

Em t = 3 minutos temos ∂s / ∂t = 2t = 6. Na verdade, confirmamos esse valor antes de usar o método de aproximação. Em t = 6 minutos, ∂s / ∂t = 2t = 12, o que se ajusta com muita precisão ao valor que encontramos anteriormente.

Qual é esse valor em t = 100 minutos? ∂s / ∂t = 2t = 200 milhas por minuto. Isso significa que, após 100 minutos, o carro está acelerando a 200 mph.

Vamos pensar um pouco sobre o quão importante e legal o que acabamos de fazer! Temos uma expressão matemática que nos permite saber exatamente a taxa de variação da velocidade do carro em qualquer ponto do tempo. Da discussão anterior, podemos ver que a taxa de mudança varia ao longo do tempo.

Temos sorte que a simplificação algébrica é perfeita, mas o simples s = t2 não nos dá a chance de tentar encolher Δx propositalmente. Então tente outro exemplo, onde a velocidade do carro é um pouco mais complicada.

Agora, qual é a altura? Esta é a diferença em s calculada em t+Δx e t-Δx.

Ou seja, a altura é (t + Δx)2 + 2(t + Δx) - (t - Δx)2 - 2(t - Δx).

Qual é a largura? Esta é a distância entre (t + Δx) e (t - Δx), novamente 2Δx.

expandir e simplificar expressões

Este é um resultado importante! Infelizmente, a álgebra novamente simplifica isso com muita facilidade. Há um padrão aqui sobre o qual falaremos mais tarde, para obtermos o resultado sem suar a camisa.

Vamos tentar outro exemplo, não muito complicado. Definimos a velocidade do carro como o cubo do tempo.

expandir e simplificar expressões

Agora, as coisas ficam mais interessantes! Obtemos um resultado que inclui Δx e, antes, os Δx na expressão se anulam.

Bem, lembre-se de que o gradiente só está correto se Δx for menor e infinitamente menor.

Este é o lugar mais legal! O que acontece com Δx na expressão ∂s / ∂t = 3t2 + Δx2 quando Δx fica cada vez menor? foi-se! Se isso parece surpreendente para você, imagine Δx como um valor muito, muito pequeno. Você pode tentar pensar em um valor menor, e então um valor menor... você pode continuar e continuar, de modo que Δx se aproxime cada vez mais de zero. Então, vamos tratá-lo como 0 e evitar todo esse problema.

Isso fornece a resposta matematicamente precisa que eu estava procurando:

Este é um resultado maravilhoso, desta vez, usamos ferramentas matemáticas poderosas para fazer cálculos e não é nada difícil.

A.7 Modo

Pegamos os deltas como Δx, tornamos os deltas cada vez menores, observamos o que acontece, calculamos as derivadas, e a alegria é que podemos calcular diretamente as derivadas sem fazer todo esse trabalho.

Dê uma olhada nas derivadas calculadas para ver se algum padrão pode ser observado:

Pode-se ver que a derivada da função de t é a mesma, exceto que a potência de t é reduzida em 1. Então t4 torna-se t3, t7 torna-se t6 e assim por diante. É muito fácil! t é t1, portanto, a derivada de t é t0 que é 1.

Como as constantes, como 3, 4, 5 (variáveis ​​constantes, podemos chamá-las de a, b, c), não têm taxa de variação, as constantes simplesmente desaparecem. Por isso são chamados de constantes.

Mas espere, observe que t2 se torna 2t em vez de t, e t3 se torna 3t2 e não t2. Há mais uma etapa aqui, o expoente é usado como um multiplicador antes que o expoente seja reduzido. Portanto, antes que o expoente de 2t5 seja subtraído por 1, o expoente de 5 deve ser usado como multiplicador, ou seja, 5 × 2t4 = 10t4.

O seguinte resume esta regra de potência que é usada ao realizar operações de cálculo.

Vamos tentar esta nova técnica em mais exemplos.

Portanto, essa regra permite muita diferenciação e, para a maioria dos propósitos, é tudo o que precisamos. Essa regra se aplica apenas a polinômios , ou seja, expressões compostas por potências de várias variáveis, como y  = a x 3 + b x 2 + c x  + d, mas não expressões como sen x ou cos x . Como o cálculo com a regra da potência tem muitos usos, isso não é uma grande falha.

Para redes neurais, no entanto, precisamos de uma ferramenta adicional, que discutiremos na próxima seção.

A.8 Funções das funções

Imagine uma função

onde y também é uma função

Também poderíamos escrever f  = ( x3  +  x )2 se quiséssemos.

Como f muda quando y muda? Ou seja, quanto é ∂ f  / ∂ y ? Basta aplicar a regra da potência que acabamos de obter, multiplicar o expoente da potência e subtrair 1 do expoente da potência, então esse cálculo é muito fácil, e você consegue obter ∂ f /  ∂ y = 2 y .

Outra questão interessante - como f muda quando x muda? A expressão f  = ( x3x )2 pode ser expandida e as mesmas regras aplicadas. Você não pode simplesmente manipular as regras para que ( x 3 +  x )2 se torne 2( x 3 +  x ) sem pensar.

Se, como antes, resolvermos essa expressão da maneira mais longa e difícil com deltas gradualmente decrescentes, ficaremos surpresos ao descobrir que há outro conjunto de padrões aqui. Vamos pular direto para a resposta.

O padrão se parece com isso:

Este é um resultado muito importante, que chamamos de regra da cadeia .

Como você pode ver, este modo nos permite calcular a derivada camada por camada, assim como descascar uma cebola, desfazendo as camadas compostas camada por camada. Para calcular ∂ f  / ∂ x , podemos achar mais fácil calcular ∂ f  / ∂ y primeiro e depois ∂ y  / ∂ x . Se isso fosse mais fácil, poderíamos fazer cálculos em expressões aparentemente impossíveis. A regra da cadeia nos permite decompor o problema, dividindo-o em problemas menores e mais fáceis.

Olhando para este exemplo novamente, aplicando a regra da cadeia:

Agora, o cálculo produz termos mais simples. O primeiro termo é (∂ f  / ∂ y ) = 2 y e o segundo termo é (∂ y  / ∂ x ) = 3 x 2 + 1. Então, usando a regra da cadeia, combinando esses termos, obtemos:

Sabemos que y  =  x 3 +  x , então obtemos a expressão apenas para x :

Que momento mágico para testemunhar!

Você pode questionar por que isso é feito, por que não primeiro expandir f em termos de x , depois aplicar a regra de potência simples e realizar cálculos no polinômio resultante. É claro que isso poderia ser feito, mas se o fizesse, falharia em especificar a regra da cadeia, que resolve muitos dos problemas mais difíceis.

Vejamos um último exemplo, este demonstra como lidar com múltiplas variáveis ​​independentes.

Se obter uma função

onde x , y e z são variáveis ​​independentes umas das outras. O que queremos dizer com irrelevante? O que queremos dizer é que x, y e z podem assumir qualquer valor e não se importam com os valores das outras variáveis ​​- elas não afetam umas às outras. Isso é diferente do exemplo anterior y = x 3 +  x onde y está relacionado a x .

O que é ∂f /  ∂x ? Vejamos cada termo dessa longa expressão. O primeiro termo é 2 xy , então a derivada é 2 y . Por que é tão simples? Como y não tem nada a ver com x , é bem direto. Quando dizemos ∂ f  / ∂ x , estamos falando sobre como f muda quando x muda . Se y é independente de x , então pode ser tratado como uma constante. Ou seja, y também pode ser outro número, como 2, 3 ou 10.

Vamos seguir em frente, o próximo termo é 3 x 2 z . A regra da potência pode ser aplicada, resultando em 2×3 xz ou 6 xz . Como x não tem nada a ver com z , tratamos z como uma constante chata como 2, 4 ou 100. Uma mudança em z não afeta x .

O último termo é 4 z , x não existe neste termo . Isso desaparece completamente, pois o tratamos como uma constante comum como 2 ou 4.

A resposta definitiva é

No último exemplo, é importante que você tenha confiança para ignorar as variáveis ​​que são consideradas irrelevantes . Isso torna muito simples realizar cálculos em expressões bastante complexas. Esse tipo de insight é muito necessário quando se olha para redes neurais.

Você pode fazer cálculos!

Se você chegou até aqui, você é demais!

Você realmente entende o verdadeiro significado do cálculo, entende como usar a aproximação, melhora passo a passo, até finalmente introduzir o cálculo. Em outros problemas difíceis, se for difícil resolvê-los usando métodos normais, você pode tentar resolvê-los usando esses métodos.

Aprendemos duas técnicas, a regra da potência e a regra da cadeia, que nos permitiram fazer muitos cálculos, inclusive entender como e por que as redes neurais funcionam.

Aproveite seus novos poderes!

leitura adicional

Algoritmos de Inteligência Artificial (Volume 3): Deep Learning e Redes Neurais

Este livro demonstrará redes neurais em uma variedade de tarefas do mundo real, como reconhecimento de imagem e ciência de dados. Examinamos as técnicas atuais de redes neurais, incluindo ativações ReLU, descida de gradiente estocástico, entropia cruzada , regularização, abandono e visualização.

Este livro é adequado como referência para leitores introdutórios de inteligência artificial e leitores interessados ​​em algoritmos de inteligência artificial.

Acho que você gosta

Origin blog.csdn.net/epubit17/article/details/131421277
Recomendado
Clasificación