TensorFlow está morto, viva o TensorFlow!

TensorFlow está morto, viva o TensorFlow!

No ano passado eu escrevi 9 coisas que você precisa saber sobre o TensorFlow… mas há uma coisa que você precisa saber acima de todas as outras: TensorFlow 2.0 está aqui!

A revolução está aqui! Bem vindo ao TensorFlow 2.0.
É uma reforma radical. As conseqüências do que acabou de acontecer vão ter grandes efeitos em cascata em todos os setores, apenas espere. Se você é um novato em TF em meados de 2019, tem sorte extra porque escolheu o melhor momento possível para entrar no AI (embora possa querer começar do zero se seus tutoriais antigos tiverem a palavra “sessão” neles).

Resumindo: o TensorFlow acabou de passar por Keras. Aqueles de vocês que conhecem essas palavras simplesmente caíram de suas cadeiras. Estrondo!

Uma experiência espinhosa
Eu duvido que muitas pessoas tenham acusado o TensorFlow 1.x de ser fácil de amar. É o torno industrial da AI … e mais amigável. Na melhor das hipóteses, você pode se sentir grato por ser capaz de realizar sua missão de IA em escala incompreensível.

Você também atrairia algumas sobrancelhas se dissesse que o TensorFlow 1.x foi fácil de entender. Sua curva de aprendizado íngreme tornava quase inacessível para o usuário casual, mas dominá-lo significava que você poderia falar sobre isso do jeito que você se gabaria sobre o que você perdeu ao escalar o Everest. Foi divertido? Não, vamos lá, realmente: foi divertido?

Você não é o único – é como os tutoriais do TensorFlow 1.x costumavam parecer para todos.
A força do núcleo do TensorFlow é o desempenho. Ele foi construído para levar modelos de pesquisa para produção em grande escala e entrega, mas o TF 1.x fez você suar por isso. Persevere e você poderá se juntar às fileiras de praticantes de ML que usam isso para coisas incríveis, como encontrar novos planetas e pioneirismo na medicina.

Pena que uma ferramenta tão poderosa estivesse nas mãos de tão poucos… até agora.

Não se preocupe com o que são tensores. Nós apenas os chamamos de matrizes (generalizadas) onde eu cresci. O nome TensorFlow é um aceno para o fato de que o TF é muito bom em realizar cálculos distribuídos envolvendo matrizes multidimensionais (er, matrizes), que você achará útil para IA em escala. Gostaríamos de adicionar um link de fonte para essa imagem incrível, lmk, se você souber quem fez isso.
Keras bonito e fofinho
Agora que cobrimos os cactos, vamos falar sobre algo que você gostaria de abraçar. Ouvi no meu local de trabalho: “Acho que tenho uma queda por Keras.”

Keras é uma especificação para a criação de modelos camada por camada que funciona com várias estruturas de aprendizado de máquina (não é uma coisa de TF), mas você pode conhecê-la como uma API de alto nível acessada de dentro de TensorFlow como tf.keras.

Aliás, estou escrevendo esta seção no aniversário de 4 anos de Keras (27 de março de 2019) para uma dose extra de recadinhos quentes.
Keras foi construído a partir do zero para ser Pythonic e sempre colocar as pessoas em primeiro lugar – foi projetado para ser convidativo, flexível e simples de aprender.

Por que não temos os dois?
Por que devemos escolher entre o aconchego de Keras e o poderoso desempenho do tradicional TensorFlow? O que não temos os dois?

Boa ideia! Vamos ter os dois! Isso é o TensorFlow 2.0 em poucas palavras.

Este é o TensorFlow 2.0. Você pode misturar esses botões laranja aqui mesmo.
“Não achamos que você deva escolher entre uma API simples e uma API escalonável. Queremos uma API de nível superior que leve você do MNIST à escala planetária. ”- Karmel Allison, líder de engenharia da TF no Google
A revolução da usabilidade
A partir de agora, o Keras será a API de alto nível do TensorFlow e será estendido para que você possa usar todos os recursos avançados do TensorFlow diretamente do tf.keras.

Todo o TensorFlow com Keras simplicidade em todas as escalas e com todo o hardware.

Na nova versão, tudo que você mais detestou sobre o TensorFlow 1.x é a guilhotina. Ter que realizar um ritual sombrio apenas para adicionar dois números juntos? Morto. Sessões TensorFlow? Morto. Um milhão de maneiras de fazer exatamente a mesma coisa? Morto. Reescrevendo o código se você mudar de hardware ou escala? Morto. Reams de boilerplate para escrever? Morto. Mensagens de erro insaturáveis ​​horríveis? Morto. Curva de aprendizado íngreme? Morto.

O TensorFlow está morto, viva o TensorFlow 2.0!
Você está esperando a captura óbvia, não é? Pior desempenho? Adivinhe de novo! Nós não estamos desistindo do desempenho.

O TensorFlow agora é fofinho e isso é um divisor de águas, porque significa que uma das ferramentas mais potentes do nosso tempo simplesmente derrubou a maior parte de suas barreiras à entrada. Os entusiastas da tecnologia de todas as esferas da vida estão finalmente autorizados a participar porque a nova versão abre o acesso para além de pesquisadores e outras pessoas altamente motivadas com um limiar de dor impressionante.

Uma das ferramentas mais potentes do nosso tempo acabou de deixar cair a maior parte de suas barreiras à entrada!
Todos são bem vindos. Quero jogar? Então vem brincar!

Desejoso de agradar
No TensorFlow 2.0, a execução imediata é agora o padrão. Você pode aproveitar os gráficos mesmo em um contexto ávido, o que facilita a depuração e a criação de protótipos, enquanto o tempo de execução do TensorFlow cuida do desempenho e da escala sob o capô.

A disputa de gráficos no TensorFlow 1.x (programação declarativa) era desorientadora para muitos, mas é tudo apenas um pesadelo agora com uma execução ávida (programação imperativa). Se você pulou aprendendo antes, tanto melhor. O TF 2.0 é um novo começo para todos.

Tão fácil quanto um… um… um…
Muitas APIs se consolidaram no TensorFlow em Keras, então agora é mais fácil saber o que você deve usar quando. Por exemplo, agora você só precisa trabalhar com um conjunto de otimizadores e um conjunto de métricas. Quantos conjuntos de camadas? Você adivinhou! 1! Keras-estilo, naturalmente.

Na verdade, todo o ecossistema de ferramentas recebeu uma limpeza de primavera, desde pipelines de processamento de dados até a fácil exportação de modelos para a integração da TensorBoard com a Keras, que agora é uma… one-liner!

Há também ótimas ferramentas que permitem alternar e otimizar estratégias de distribuição para uma incrível eficiência de dimensionamento sem perder a conveniência de Keras.

Essas estratégias de distribuição são bonitas, não são?
A pegada!
Se a captura não for performance, o que é isso? Tem que haver uma pegadinha, certo?

Na verdade, o problema foi o seu sofrimento até agora. A TensorFlow exigiu muita paciência de seus usuários enquanto uma versão amigável estava sendo preparada. Isso não foi uma questão de sadismo. Fazer ferramentas para o aprendizado profundo é um novo território, e todos nós o mapeamos à medida que avançamos. Voltas erradas eram inevitáveis, mas aprendemos muito ao longo do caminho.

A comunidade TensorFlow aplicou muita lubrificação para fazer a mágica inicial acontecer, e depois mais esforço para polir as melhores gemas enquanto criava designs menos afortunados. O plano nunca foi forçá-lo a usar um rascunho para sempre, mas talvez você se habituasse tão bem ao desconforto que não percebeu que era temporário. Obrigado pela sua paciência!

Nós não estamos desistindo do desempenho!
A recompensa é tudo o que você aprecia sobre o TensorFlow 1.x ser amigável em uma API consistente, com várias funcionalidades duplicadas removidas para que seja mais limpo de usar. Até mesmo os erros são limpos para serem concisos, simples de entender e acionáveis. Desempenho poderoso permanece!

Qual é o grande problema?
Os aborrecedores (que vão odiar) podem dizer que muito da v2.0 poderia ser combinada na v1.x se você pesquisasse com afinco o suficiente, então, por que toda essa agitação? Bem, nem todo mundo quer passar nossos dias cavando em desordem para o tesouro enterrado. A reforma e limpeza valem uma ovação de pé. Mas esse não é o maior problema.

O ponto a não perder é o seguinte: o TensorFlow acaba de anunciar um foco intransigente na usabilidade.

É um passo sem precedentes na democratização da IA!
A AI permite que você automatize tarefas para as quais não é possível obter instruções. Ele permite automatizar o inefável. Democratização significa que a IA em escala não será mais a província de uma minúscula elite tecnológica.

Agora qualquer um pode colocar as mãos no volante!
Imagine um futuro onde “Eu sei fazer coisas com Python” e “Eu sei fazer coisas com AI” são declarações igualmente comuns… Exatamente! Estou quase tentada a usar essa palavra de ordem “disruptiva” aqui.

A grande migração
Sabemos que é difícil fazer o upgrade para uma nova versão, especialmente quando as alterações são tão drásticas. Se você está prestes a migrar sua base de código para a versão 2.0, você não está sozinho – faremos o mesmo aqui no Google, com uma das maiores bases de código do mundo. Conforme avançamos, compartilharemos guias de migração para ajudá-lo.

Estamos oferecendo ótimas ferramentas para facilitar sua migração.
Se você confiar em funcionalidades específicas, não será deixado para trás – exceto pelo contrib, todas as funções do TF 1.x vão continuar no módulo de compatibilidade compat.v1. Também estamos fornecendo um script que atualiza automaticamente seu código para que ele seja executado no TensorFlow 2.0. Saiba mais no vídeo abaixo.

Este vídeo é um excelente recurso, se você estiver ansioso para ir mais fundo no TF 2.0 e ficar de olho nos snippets de código.
Sua ardósia limpa
O TF 2.0 é um paraíso para iniciantes, por isso será uma pena para aqueles que estão ansiosos para assistir os novatos a sofrer como você já sofreu. Se você estava esperando usar o TensorFlow para criar novos recrutas, talvez seja necessário procurar outra forma de infligir horror existencial.

Se você é um iniciante no TensorFlow, pode se atrasar para a festa do AI, mas o seu tempo está chegando na moda. Agora é a melhor hora para chegar!
Ficar de fora pode ter sido o movimento mais inteligente, porque agora é a melhor hora para chegar ao local. Em março de 2019, o TensorFlow 2.0 está disponível em alpha (isso é uma prévia, você é o hipster), então aprender agora o deixa pronto a tempo para o lançamento completo que a comunidade está preparando para o próximo trimestre.

Após as mudanças dramáticas, você não será tanto um iniciante quanto você imaginou. O campo de jogo foi nivelado, o jogo ficou mais fácil, e há um lugar guardado apenas para você. Bem vinda! Fico feliz que você esteja finalmente aqui e espero que esteja tão animado com esse novo mundo de possibilidades quanto eu.

Notícias de Informática, Tecnologia, Novidades