Aula 11 – Tensor Flow – Redes Neurais – Variáveis e Marcadores de posição

Aula 11 – Tensor Flow – Redes Neurais – Variables e Placeholders

Voltar para página principal do blog

Todas as aulas desse curso

Aula 10                      Aula 11 (Ainda não disponível)

Meu github:

https://github.com/toticavalcanti

Documentação oficial do TensorFlow:

https://www.tensorflow.org/

Link para o notebook da aula:

notebook-da-aula

Python com Tensorflow

Python com Tensorflow

Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook

https://digitalinnovation.one/

Link do código fluente no Pinterest

Aproveito para deixar meus link de afiliados:

Hostinger

Digital Ocean

One.com

Toti:

https://www.youtube.com/channel/UCUEtjLuDpcOvR3mIUr-viOA

Backing track / Play-along:

https://www.youtube.com/channel/UCT3TryVMqTqYBjf5g5WAHfA

Código Fluente

https://www.youtube.com/channel/UCgn-O-88XBAwdG9gUWkkb0w

Putz!

https://www.youtube.com/channel/UCZXop2-CECwyFYmHbhnAkAw

Fiquem a vontade para me adicionar ao linkedin.

Aula 11 – Tensor Flow – Redes Neurais – Variables e Placeholders

Existem dois tipos principais de objetos tensores em grafos tensorflow: 

  • Variables
  • Placeholders

Otimização

Durante o processo de otimização, o tensorflow ajusta os parâmetros do modelo.

As variables podem guardar os valores dos pesos e vieses, por toda a session.

As variables precisam ser inicializadas.

Placeholders são vazios inicialmente e são usados para alimentar o exemplo de treinamento atual.

Mas, eles precisam da declaração do tipo esperado, exemplo, tf.float32 e o formato dos dados.

Variables


import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
sess = tf.InteractiveSession()
my_tensor = tf.random_uniform((4, 4), 0, 1)
my_var = tf.Variable(initial_value = my_tensor)

Nas linhas acima, importamos o tensorflow com comportamentos da versão v2 desabilitado.

Depois criamos uma sessão, um tensor random_uniform no formato 4 por 4 com os números variando entre o mínimo que é zero e o máximo que é 1.

Em seguida criamos uma variável chamada my_var.

Nesse ponto, se a gente rodar:


sess.run(my_var)

Vai dá o seguinte erro:

FailedPreconditionError: Attempting to use uninitialized value Variable [[{{node _retval_Variable_0_0}}]]

Porque as variáveis precisam ser inicializadas.

Inicializando variáveis


init = tf.global_variables_initializer()
sess.run(init)

Agora sim, podemos rodar:


sess.run(my_var)

Saída:

array([[0.24794829, 0.45281565, 0.01025438, 0.11464036], [0.93829536, 0.29546058, 0.21686137, 0.23481607], [0.220119 , 0.7086921 , 0.01936626, 0.47006845], [0.48482347, 0.39950764, 0.95991206, 0.18866229]], dtype=float32)

Placeholder


ph = tf.placeholder(tf.float32)

É comum termos placeholders declarados assim:


ph = tf.placeholder(tf.float32, shape=(None, 4))

Esse primeiro campo com None, ele é preenchido com o número de amostras no conjunto dados que alimentam em lotes esse placeholder da rede.

Só que muitas vezes não sabemos qual é o número de amostras antes de criar o placeholder, nesse caso, coloca-se None no primeiro campo.

Por essa aula é só, na próxima a gente constrói nossa primeira rede neural.

Nos vemos na próxima, \o/ e até lá.

notebook-da-aula

Ficamos por aqui e até a próxima.

Voltar para página principal do blog

Todas as aulas desse curso

Aula 10                      Aula 12 (Ainda não disponível)

Meu github:

https://github.com/toticavalcanti

Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook

Link do código fluente no Pinterest

Novamente deixo meus link de afiliados:

Hostinger

Digital Ocean

One.com

Obrigado, até a próxima e bons estudos. 😉

About The Author
-

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>