Como o engenheiro de energia estudou as redes neurais e a revisão do curso gratuito “Udacity: Introdução ao TensorFlow for Deep Learning”

Durante toda a minha vida consciente, fui engenheiro de energia (não, agora não estamos falando de uma bebida com propriedades duvidosas).

Eu realmente nunca me interessei pelo mundo da tecnologia da informação e é improvável que eu consiga multiplicar as matrizes em um pedaço de papel. Sim, e eu nunca precisei disso, para que você entenda um pouco sobre os detalhes do meu trabalho, posso compartilhar uma história maravilhosa. Certa vez, pedi aos meus colegas que trabalhassem em uma planilha do Excel, meio dia se passou, eu os acompanhei e eles se sentaram e resumiram os dados em uma calculadora, sim, em uma calculadora preta comum com botões. Bem, que tipo de redes neurais podem ser discutidas depois disso? .. Portanto, nunca tive pré-requisitos especiais para imersão no mundo da TI. Mas, como dizem "bem, onde não estamos", meus amigos ouviram meus ouvidos sobre realidade aumentada, redes neurais, linguagens de programação (principalmente sobre Python).

Em palavras, parecia muito simples e decidi por que não dominar essa arte mágica para aplicá-la no meu campo de atividade.

Neste artigo, vou omitir minhas tentativas de aprender o básico do Python e compartilhar com você minha impressão do curso gratuito TensorFlow da Udacity.



Introdução


Para começar, é importante notar que, após 11 anos no setor de energia, quando você sabe e pode fazer tudo e até um pouco mais (em termos de suas responsabilidades), aprender coisas radicalmente novas - por um lado, causa intenso entusiasmo, mas por outro - se transforma em dor física " engrenagens na cabeça ".

Ainda não compreendo completamente todos os conceitos básicos de programação e aprendizado de máquina, portanto não devo ser rigorosamente julgado. Espero que meu artigo seja interessante e útil para pessoas como eu - longe do desenvolvimento de software.

Antes de passar para a revisão do curso, direi que será necessário pelo menos um conhecimento mínimo do Python para estudá-lo. Você pode ler alguns livros para manequins (eu ainda comecei a fazer um curso sobre Stepic, mas ainda não o dominei).

Não haverá construções complexas no curso TensorFlow, mas será necessário entender por que as bibliotecas são importadas, como uma função é definida e por que algo é substituído nela.

Por que TensorFlow e Udacity?


O principal objetivo do meu treinamento foi o desejo de reconhecer fotografias de elementos de instalações elétricas usando redes neurais.

Escolhi o TensorFlow porque ouvi falar dos meus amigos. E pelo que entendi, este curso é bastante popular.

Tentei começar a aprender com o tutorial oficial .

E então eu tive dois problemas.

  • Existem muitos materiais de treinamento, e eles entram em discórdia. Foi muito difícil para mim fazer pelo menos uma imagem mais ou menos completa da solução do problema do reconhecimento de imagem.
  • A maioria dos artigos de que preciso não está traduzida para o russo. Aconteceu que na minha infância eu estudei alemão e agora, como muitas crianças soviéticas, não sei alemão nem inglês. É claro que, durante toda a minha vida consciente, tentei aprender inglês, mas o resultado foi aproximadamente como na foto.



Tendo vasculhado ainda em um site oficial, encontrei recomendações para fazer um dos dois cursos on-line .

Pelo que entendi, o curso na Courcera foi pago e o curso Udacity: Introdução ao TensorFlow for Deep Learning pode ser realizado "de graça, ou seja, por nada".

Conteúdo do curso


O curso consiste em 9 lições.

A primeira seção é introdutória; eles lhe dirão por que é necessário em princípio.

A lição número 2 foi a minha favorita. Era simples o suficiente para ser entendido e também demonstrava as maravilhas da ciência. Em resumo, nesta lição, além de informações básicas sobre redes neurais, os criadores demonstram como resolver o problema de converter a temperatura de graus Fahrenheit para graus Celsius usando uma rede neural de camada única.

Este é realmente um exemplo muito bom. Ainda estou pensando em como criar e resolver um problema semelhante, mas apenas para eletricistas.

Infelizmente, eu parei ainda mais, porque é bastante difícil aprender coisas estranhas em um idioma desconhecido. Salvou-me que encontrei em Habré uma tradução deste curso para o russo .

A tradução foi feita com alta qualidade, os cadernos da Colab também foram traduzidos e, mais tarde, espiei o original e a tradução.

A lição número 3 é, de fato, a organização dos materiais do tutorial oficial do TensorFlow. Nesta lição, aprendemos como classificar imagens de roupas usando a Rede Neural Multilayer (conjunto de dados Fashion MNIST).

As lições do número 4 ao número 7 também são um arranjo do tutorial. Mas, devido ao fato de estarem organizadas corretamente, não há necessidade de entender a sequência do estudo. Nestas lições, falaremos brevemente sobre redes neurais ultraprecisas, como melhorar a precisão do treinamento e salvar o modelo. Ao mesmo tempo, resolveremos simultaneamente o problema de classificação de gatos e cães na imagem.

A lição número 8 é geralmente um curso separado, há outro professor e o curso em si é bastante volumoso. A lição é sobre séries temporais. Como isso ainda não me interessa, olhei na diagonal.

Conclui toda a lição número 9, que é um convite para fazer um curso gratuito no TensorFlow Lite.

O que eu gostei e o que não gostei


Vou começar com os profissionais:

  • Curso - Gratuito
  • O curso é sobre o TensorFlow 2. Alguns livros que eu vi e alguns cursos na Internet foram sobre o TensorFlow 1. Não sei se há uma grande diferença, mas é bom aprender a versão atual.
  • Os professores no vídeo não são irritantes (embora na versão russa não estejam lendo tão alegremente quanto no original)
  • O curso não leva muito tempo
  • O curso não leva a um sentimento de melancolia e desesperança. As tarefas do curso são simples e sempre há uma dica na forma de Colab com a solução certa, se algo não estiver claro (e uma boa metade das tarefas não estava clara para mim)
  • Não é necessário instalar nada, todo o trabalho de laboratório do curso pode ser feito no navegador

Agora os contras:

  • Praticamente não há material de controle. Sem testes, sem tarefas, nada para pelo menos verificar o curso
  • Nem todos os notebooks funcionaram para mim como deveriam. Na minha opinião, na terceira lição do curso de inglês original, Colab cometeu um erro e eu não sabia o que fazer com ele
  • . , Udacity . , , , . . 6
  • , , . (, Max Pooling).


Certamente você já adivinhou que o milagre não aconteceu. E depois de concluir este pequeno curso, é impossível realmente descobrir como as redes neurais funcionam.

Obviamente, depois disso, não consegui resolver meu problema com a classificação de fotos de disjuntores e botões de manobra.

Mas, no geral, o curso é útil. Ele mostra o que pode ser feito com o TensorFlow e em qual direção seguir.

Penso que, para começar, preciso aprender o básico do Python e ler livros em russo sobre como as redes neurais funcionam e, então, enfrentar o TensorFlow.

Concluindo, quero agradecer aos meus amigos por me obrigarem a escrever o primeiro artigo sobre "Habr" e por ajudar a organizá-lo.

PS Ficarei feliz em seus comentários e em qualquer crítica construtiva.

All Articles