WEBVTT

00:00.680 --> 00:05.570
Olá e bem-vindo de volta ao curso de aprendizagem profunda no tutorial de hoje, estamos falando

00:05.600 --> 00:06.600
de descida gradiente.

00:06.890 --> 00:13.610
O que aprendemos anteriormente foi que, para que uma rede neural aprenda o que precisa acontecer é

00:13.610 --> 00:21.140
a propagação de trás e é quando o erro a diferença ou a soma de diferenças quadradas entre y

00:21.170 --> 00:28.300
hat e Y é propagada de volta pela rede neural e os pesos são ajustados em conformidade.

00:28.520 --> 00:34.220
Então nós vimos isso e hoje vamos aprender exatamente como esses pesos são ajustados.

00:34.400 --> 00:35.930
Então vamos dar uma olhada.

00:36.080 --> 00:44.030
processo em ação onde temos algum valor de entrada, então temos que esperar, então, uma função de ativação é aplicado.

00:44.030 --> 00:52.280
Esta é a nossa versão muito simples de um trabalho neural de um Traceador Percept uma rede neural de feedforward de

00:52.280 --> 00:57.000
uma única letra e o que podemos ver aqui é todo esse

00:56.990 --> 01:01.850
Nós conseguimos o chapéu e depois o comparamos ao valor real que calculamos a função de custo.

01:01.850 --> 01:05.420
Então, como podemos minimizar a função de custo.

01:05.420 --> 01:07.370
O que podemos fazer sobre isso.

01:07.370 --> 01:14.750
e ver qual deles se parece melhor e o que fazemos é, por exemplo, tentamos por exemplo, por exemplo, mil pesos

01:14.750 --> 01:20.990
e nós experimentá-los-ia fora que iria conseguir algo assim para a função de custo e este é um

01:21.080 --> 01:26.240
gráfico do eixo Y de cross-functional o eixo vertical no eixo horizontal do chapéu.

01:26.810 --> 01:32.900
Bem, uma abordagem para fazê-lo é uma abordagem de força bruta onde nós simplesmente tomamos todos os

01:32.900 --> 01:34.770
diferentes pesos possíveis e olhá-los

01:34.860 --> 01:39.200
E porque você pode ver as fórmulas que tive menos Y quadrado.

01:39.230 --> 01:42.470
Isto é o que a função de custo seria algo assim.

01:42.670 --> 01:47.830
E, basicamente, você acharia que o melhor está por aqui.

01:47.950 --> 01:50.980
Então, uma abordagem muito simples e muito intuitiva.

01:50.980 --> 01:53.200
Por que não faz esse método de força bruta.

01:53.200 --> 02:01.630
experimentar um custo diferente de mil diferentes por mil parâmetros ou entradas diferentes para pesos e ver qual deles funciona melhor.

02:01.690 --> 02:03.030
Por que não

02:03.030 --> 02:04.230
Você encontrará o melhor desse jeito.

02:04.420 --> 02:10.270
Bem, se você tiver apenas uma maneira de otimizar, isso pode funcionar, mas à medida que aumenta o

02:10.480 --> 02:16.630
número de pesos, aumentar o número de sinopses em sua rede, você deve enfrentar a maldição da dimensionalidade.

02:16.630 --> 02:19.370
E então, qual é a causa da dimensionalidade.

02:19.450 --> 02:24.510
A melhor maneira de descrever isso ou explicar isso é apenas olhar para um exemplo prático.

02:24.640 --> 02:30.610
Então, lembre-se deste exemplo que tínhamos quando estávamos falando sobre como as redes neurais

02:30.610 --> 02:37.120
realmente funcionam onde estávamos construindo ou executando uma rede neural para uma avaliação de propriedade.

02:37.120 --> 02:43.030
Então, isso foi o que pareceu quando já foi treinado bem quando não é treinado antes de treinado antes

02:43.030 --> 02:45.290
de saber qual deles são os pesos.

02:45.550 --> 02:47.640
A rede neural real parece assim.

02:47.730 --> 02:54.860
Certamente porque temos todas essas sinopses diferentes possíveis e ainda temos que treinar os pesos e aqui

02:55.280 --> 03:01.190
temos um total de 25 pesos, quatro vezes cinco no início e mais cinco

03:01.310 --> 03:03.430
do hit lá 25 pesos.

03:03.680 --> 03:09.060
E vamos ver como poderíamos possivelmente formas de força bruta.

03:09.070 --> 03:12.610
Esta é uma rede neural muito simples aqui.

03:12.620 --> 03:20.630
Muito simples, apenas um hit lá e como nós podemos forçar nosso meio através de uma rede neural

03:20.630 --> 03:21.320
desse tamanho.

03:21.320 --> 03:24.370
Bem, há alguns cálculos matemáticos simples.

03:24.410 --> 03:25.890
Temos 25 pesos.

03:25.910 --> 03:30.410
Então, isso significa que se tivermos mil combinações que vamos resolver para cada peso,

03:30.410 --> 03:37.790
o número total de combinações é de 1000 para o poder 25 ou mil ou 10 para analisar as cinco combinações diferentes.

03:37.790 --> 03:48.260
Agora vejamos como a Sun é o modo de iluminar o supercomputador mundial de Fosse a partir de junho de 2016, como se

03:48.260 --> 03:49.700
abordaria esse problema.

03:49.700 --> 03:52.390
Certo, então Sunway amarra quem luz.

03:52.680 --> 04:00.980
Parece que este é um enorme edifício praticamente para este supercomputador e obteve o Guinness

04:01.310 --> 04:04.940
World Record por ser o supercomputador Fosses.

04:05.210 --> 04:12.620
Agora é o supercomputador mais rápido do mundo e algumas luzes de ligação podem operar a

04:12.620 --> 04:15.420
uma velocidade de 93 de flops.

04:15.510 --> 04:19.900
Flop significa operação flutuante por segundo.

04:19.970 --> 04:23.310
Então, pode fazer noventa e três ao óleo de poder.

04:23.340 --> 04:28.010
Times dez para o poder de 15 operações flutuantes por segundo.

04:28.100 --> 04:32.340
É assim que é rápido em comparação.

04:32.450 --> 04:38.210
Média de computadores agora, eles gostam apenas de vários gigaflops e assim por diante.

04:38.210 --> 04:41.320
Então, gosto de tais tipos.

04:41.450 --> 04:44.290
Menos do que a luz do tipo TEI Sunway.

04:44.390 --> 04:47.950
Então, de repente, é uma mentira que está na vanguarda da tecnologia.

04:48.360 --> 04:57.920
E digamos hipoteticamente que pode fazer uma prova de uma combinação de quatro em sua própria rede em um disquete e uma

04:58.010 --> 05:04.220
operação flutuante que não é possível, que não é prático porque você precisa de

05:04.220 --> 05:09.470
várias operações flutuantes para testar um único peso no seu próprio pequeno.

05:09.480 --> 05:11.270
Mas até vamos dar uma boa vantagem.

05:11.270 --> 05:17.990
Digamos que ele pode fazê-lo em um mundo ideal, ele pode fazer isso em uma operação flutuante, ele pode fazer

05:18.290 --> 05:19.900
um teste por operação flutuante.

05:20.120 --> 05:23.970
Isso significa que o Doddridge ainda exigirá tendência de cinco.

05:24.080 --> 05:33.080
Divida por noventa e três vezes dez a cerca de 15 segundos para vir a executar todos esses testes para a força bruta

05:33.080 --> 05:34.120
através dessa rede.

05:34.130 --> 05:39.860
Então, isso significa que um ou aproximado tende a poder 58 segundos e é o mesmo

05:39.860 --> 05:42.120
que tende ao poder de 50 anos.

05:42.170 --> 05:49.910
Esse é um grande número que é mais longo do que o universo tem existido e

05:49.910 --> 05:59.150
que definitivamente não vai simplesmente esse número é tão grande que simplesmente não vai funcionar para nós em nossa otimização.

05:59.150 --> 06:00.020
Então vamos lá.

06:00.140 --> 06:01.220
Este é um não não.

06:01.220 --> 06:05.450
Mesmo no supercomputador mais rápido do mundo, Sunway tail light.

06:05.450 --> 06:10.140
Então, temos que encontrar uma abordagem diferente, como vamos encontrar o melhor peso.

06:10.310 --> 06:15.890
A propósito, a nossa rede neural era muito simples, e se as redes neurais

06:15.890 --> 06:22.740
se parecem a algo assim ou mesmo maior do que isso, então, sim, isso não acontecerá nunca.

06:22.760 --> 06:28.490
Então, o método estava olhando para ser chamado de descida gradiente e você já ouviu falar sobre isso.

06:28.580 --> 06:30.770
Se não, descobriremos o que é agora.

06:30.840 --> 06:41.780
Então, nossa função de custo e agora entramos em como podemos fomentar uma maneira mais rápida de encontrar a

06:41.840 --> 06:43.190
melhor opção.

06:43.190 --> 06:45.920
Então, digamos que começamos em algum lugar que você vai começar em algum lugar.

06:45.920 --> 06:47.390
Então começamos por lá.

06:47.390 --> 06:56.990
ponto na parte superior esquerda, o que vamos fazer é que vamos olhar o ângulo da nossa função de custo nesse ponto, então, basicamente, isso é

06:56.990 --> 07:00.800
o que se chama gradiente porque você precisa se diferenciar.

07:00.800 --> 07:02.090
E a partir desse

07:02.150 --> 07:04.190
Não vamos olhar as equações matemáticas.

07:04.250 --> 07:09.370
Nós forneceremos algumas dicas sobre leitura adicional no final da próxima palestra.

07:09.740 --> 07:17.150
Mas, basicamente, você precisa se diferenciar para descobrir o que é a inclinação nesse ponto específico e descobrir se

07:17.150 --> 07:19.330
a inclinação é positiva ou negativa.

07:19.450 --> 07:25.640
Se o caso, se a inclinação for negativa, como neste caso, significa que você está indo para baixo, então, para a direita, é

07:25.640 --> 07:27.350
para baixo, à esquerda, é subida.

07:27.350 --> 07:29.780
E daí, significa que você precisa ir para a direita.

07:29.780 --> 07:31.510
Basicamente você precisa ir para baixo.

07:31.670 --> 07:33.070
E é isso que vamos fazer.

07:33.090 --> 07:35.510
O Boom dá um passo para a direita.

07:35.510 --> 07:37.450
A bola rola novamente.

07:37.460 --> 07:38.300
Mesma coisa.

07:38.390 --> 07:44.120
Você calcula a inclinação e a inclinação é positiva, o que significa que a subida da esquerda está em declive e você precisa ir

07:44.120 --> 07:46.560
para a esquerda e você está na bola para baixo.

07:46.790 --> 07:54.900
em termos simples, como você encontra os melhores WAITES, a melhor situação que minimiza sua função de custo.

07:55.040 --> 08:04.520
E, novamente, você calcula a inclinação e você é todo o touro ali mesmo, então é assim que você encontra

08:04.590 --> 08:08.970
Claro que não vai ser como uma bola de rolamento vai ser um tipo de

08:09.210 --> 08:14.970
abordagem muito ziguezague, mas é mais fácil de lembrar ou é mais divertido olhar isso como uma bola rolando.

08:14.970 --> 08:19.980
Mas, na realidade, sim, você só será como se uma abordagem passo a passo

08:19.980 --> 08:21.920
for um método de ziguezague.

08:22.050 --> 08:25.020
Sim e também há muitos outros elementos para isso.

08:25.050 --> 08:35.190
por exemplo, por que, porque, por que, por que ele não está por aí, pode ter saltado para fora disso, em vez

08:35.190 --> 08:40.740
de baixar e coisas assim, então, existem parâmetros que você pode ajustar.

08:40.740 --> 08:41.950
Há coisas como,

08:41.970 --> 08:45.570
E novamente vamos mencionar onde você pode descobrir mais sobre isso.

08:45.580 --> 08:51.090
E mais, teremos isso em aplicação prática, mas na abordagem intuitiva mais simples, isso é o que

08:51.090 --> 08:51.770
está acontecendo.

08:51.780 --> 08:56.670
Estamos chegando ao fundo apenas entendendo a maneira pela qual precisamos ir.

08:56.700 --> 09:01.890
Em vez de forçar bruto através de milhares e milhares e milhões e bilhões e

09:01.890 --> 09:02.920
quadrilhões de combinações.

09:03.030 --> 09:09.920
que é onde, de onde é, está inclinado tão certo como o seu ou você imagina que você está de pé em uma colina.

09:09.910 --> 09:11.690
Nós podemos simplesmente ver toda vez

09:11.700 --> 09:15.870
De que maneira ele sente que está indo para baixo e, de qualquer maneira, está indo para baixo e você continua caminhando

09:15.870 --> 09:20.760
da mesma forma que você gosta de levar 50 passos de distância e, em seguida, você avalia novamente OK, da maneira que está indo para baixo

09:21.090 --> 09:21.470
dessa maneira.

09:21.500 --> 09:24.620
OK e eu tomarei 50 passos ou menos, levanto 40 passos dessa maneira.

09:24.690 --> 09:28.160
Então, fica cada vez menos e menos quando você se aproxima.

09:28.530 --> 09:32.720
Então, aqui está um exemplo de descida gradiente aplicado em um espaço bidimensional.

09:32.720 --> 09:36.450
Então, esse era um exemplo unidimensional.

09:36.570 --> 09:41.880
Aqui, temos um espaço bidimensional para a descida de gradiente, como você pode ver, está se

09:41.970 --> 09:48.450
aproximando do mínimo e também é chamado de descida de gradiente, porque você está descendo no mínimo da função

09:48.480 --> 09:53.430
de custo e descobre que ele possui uma descida de gradiente aplicada em três dimensões.

09:53.430 --> 09:58.740
Isto é o que parece se você projetou em duas dimensões, você pode ver em ziguezague seu caminho

09:58.740 --> 09:59.600
para o mínimo.

09:59.700 --> 10:03.810
Então, vá lá, foi índice de descida gradiente de Tauriel. Falaremos de estocástico.

10:03.810 --> 10:06.850
Gradient descent é realmente uma continuação deste tutorial.

10:07.020 --> 10:08.720
E espero vê-lo lá.

10:08.740 --> 10:10.610
E, da próxima vez, aproveite a aprendizagem profunda.
