Aqui no Didática Tech, já tratamos de diversos assuntos teóricos sobre redes neurais. É claro que temos muito mais coisas para aprender, mas já podemos começar a conversar sobre questões práticas.
Acreditamos que tanto a teoria quanto a prática são partes essenciais de seu aprendizado. Para tanto, é importante que você conheça um pouco sobre frameworks, pois eles são muito utilizados em redes neurais.
O que são frameworks?
Podemos pensar em frameworks da mesma forma que pensamos nas bibliotecas utilizadas no Python – como Pandas, scikit-learn e NumPy por exemplo. Dentro dessas bibliotecas, encontramos pacotes e funções de código que podem ser importadas e utilizadas em nossos programas.
Isso é muito parecido com o framework: ele é uma estrutura de biblioteca de códigos que possui várias funções prontas para serem importadas e utilizadas.
Existem alguns frameworks com aplicações voltadas especificamente para a inteligência artificial. Eles possuem diversos recursos e algoritmos diferentes – como gradiente descendente e gradiente descendente estocástico, por exemplo.
Nos frameworks, todos esses algoritmos já estão otimizados; os códigos que rodam essas funções já estão implementados de maneira que podem simplesmente ser importados e rodados automaticamente.
Tudo acontece como se fosse mágica e podemos facilmente rodar nossas aplicações de inteligência artificial. Nesse âmbito, dois dos principais frameworks utilizados em deep learning são o Keras e o Tensorflow.
O Tensorflow é uma das bibliotecas mais usuais para aplicações de ponta em inteligência artificial. Apesar de muito utilizado, ele requer um pouco mais de conhecimento.
O Keras, por sua vez, é muito simples e intuitivo de ser utilizado, pois requer menos linhas de código: basicamente está tudo implementado por baixo dos panos; conseguimos, com poucas linhas de código, construir redes neurais bem complexas com ele.
Devido à fácil instalação e sua simplicidade, recomendamos que você comece seus estudos com o Keras. Assim, é possível ter mais motivação e ver como a programação de redes neurais não é algo de outro mundo.
O Keras é muito bom, principalmente para quem já rodou alguns modelos de machine learning usando o Python. Além disso, as suas primeiras redes neurais utilizando o programa podem ser criadas sem ter uma GPU instalada no computador; você pode fazer todas as operações utilizando uma CPU e começando com datasets pequenos.
Ou seja, você pode primeiramente aprender a usar o software e se adaptar com ele; após isso, se for necessário, ou se assim desejar, você pode adquirir uma GPU e aumentar os tamanhos das bases para complementar seu aprendizado.
Na medida em que for avançando no estudo, você poderá ver como cada um desses frameworks pode ser aplicado nos conceitos de redes neurais, tanto de forma paralela, alguns problemas em Keras e outros em TensorFlow, por exemplo, quanto de forma conjunta, em uma aplicação dinâmica das duas bibliotecas de códigos.
Capacite-se para a prática
Como já conhecemos grande parte da teoria (conheça nossos artigos), a programação será mais simples: basicamente colocaremos as funções para rodar e veremos os resultados.
Para se utilizar os frameworks, é muito importante que se tenha um conhecimento prévio de Python. É possível que você tenha vindo do ramo de machine learning por meio da linguagem R ou Java.
Se você não tem nenhum conhecimento de Python, pode começar a aprender com nossos cursos de Python básico e Python para machine learning.
Ambos são gratuitos e neles você se ambientará muito bem; eles darão uma base necessária para que você consiga avançar na programação voltada para redes neurais.
Além disso, se você já sabe programar em Python, mas quer relembrar algumas coisas, você também pode fazer os cursos. Em poucos dias você já terá um bom conhecimento de Python.
Após consolidada essa base, você pode continuar construindo seu conhecimento conosco. Se você se interessou sobre a prática de redes neurais utilizando frameworks, talvez você goste do nosso curso Redes Neurais, Deep Learning e Visão Computacional.
Neste curso nós falamos diretamente sobre a aplicação e para que serve cada função de forma otimizada, e também detalhamos a teoria necessária sobre deep learning; nosso objetivo são aulas eficientes, didáticas, focadas e direcionadas.
Leia também: