terça-feira, 18 de junho de 2019

Deeplearning4J: Finalmente uma alternativa!


#ia #neuralnetwork #java #deeplearning4j
DeepLearning4J é a grande alternativa para desenvolver modelos de IA robustos e de alto desempenho. É capaz de usar CUDA e OpenCV, e até importar modelos criados com #keras, independentemente da plataforma em que foram criados e treinados (Python, R...). Veja este tutorial que eu fiz: https://github.com/cleuton/neuraljava/tree/master/python_java_keras

sexta-feira, 14 de junho de 2019

Deep learning colaborativo: Python e Java


#deeplearning #produção #java #keras
Desenvolvimento em Python, Produção em Java!
Não é preciso muito para concluir que Java é uma ótima opção para entregar aplicações em ambiente produtivo. É mais limpa e possui menos dependências espalhadas que outras linguagens de programação, como Python (que, por sinal, eu adoro). Enquanto Python é excelente para desenvolvimento, prototipação e experimentação, especialmente em ciência de dados e IA, perde um pouco quando pensamos em ambiente produtivo. Por quê?
* Performance: Além da questão do GIL, há vários benchmarks que comprovam o desempenho superior de aplicações Java, como este: https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/python.html;
* Robustez: Com Java, temos pouca entropia de ambiente, isso quer dizer, menos dependências espalhadas e menos fragilidade. Basta que a JVM esteja instalada corretamente, que o resto das dependências pode ser embutida em um uber jar ou um war;
* Segurança: Embora existam decompiladores Java, podemos obfuscar o bytecode e entregar apenas o executável. Em outras linguagens, como Python, ficamos limitados a entregar o código-fonte. 

quinta-feira, 13 de junho de 2019

Desenvolvimento com Python, Produção com Java!


#ia #deeplearning #python #java #tensorflow #deeplearning4j #keras #neuraljava
Mais um artigo da série NeuralJava: Desenvolvimento com Python, Produção com Java! Como desenvolver e treinar modelos com Python, Keras e Tensorflow, e exportá-los para uma aplicação Java com DeepLearning4J:

https://github.com/cleuton/neuraljava/tree/master/python_java_keras

Deep learning com Java


#ia #deeplearning #java
Esqueçam a política e aprendam algo novo! Isso põe "pão na mesa"!
Tudo o que você precisa para realizar trabalhos de deep learning de forma profissional, com Java, esta aqui! Grátis! Te esperando! Em breve, mais um tutorial e mais um vídeo! https://github.com/cleuton/neuraljava

quarta-feira, 12 de junho de 2019

Inteligência artificial aplicada



#ia #GAN #VAE #RBM #DeepReinforcementLearning
Veja neste artigo alguns exemplos de IA aplicada, utilizando modelos de redes neurais diferentes.

Generative Adversarial Networks é uma tecnologia de Inteligência Artificial baseada em redes neurais competitivas, em que uma tenta gerar novos dados falsos e enganar a segunda, que tenta distinguir os falsos dos verdadeiros. É possível gerar tudo, de música até imagens, e é assustadora a melhoria deste tipo de modelo. 
Este artigo é muito bom e oportuno, pois ensina a identificar rostos falsos, gerados por GANs. Em breve, publicarei um pequeno tutorial sobre o assunto.

Variational AutoEncoders são um tipo de modelo de redes neurais que podem recriar objetos originais, removendo ruídos e até produzindo novos textos, por exemplo. Em breve, será quase impossível distinguir um texto falso. Veja este projeto! 

Restricted Boltzmann Machine é um tipo de rede neural generativa, que pode aprender uma distribuição de probabilidades a partir da entrada, sendo capaz de reconstruir ou gerar novos dados sem supervisão. Veja este projeto de geração de música: 

Deep reinforcement learning é uma técnica de IA para treinar agentes autônomos a interagirem com o ambiente e conquistarem objetivos. Esse tipo de tecnologia é algo a se considerar e temer. Veja este projeto:

quinta-feira, 6 de junho de 2019

Serverless é a solução

#serverless
Arquitetura Serverless é a verdadeira "disrupção" (eu sei que tem gente que gosta desse termo)! Eu já pregava isso há alguns anos: REST + Microservices + Serverless! Este ótimo artigo ajuda a entender como é essa implementação https://dev.to/trek10inc/ci-cd-aws-and-serverless-5-tips-i-learned-the-hard-way-223p

Datascience e Romantismo

#ia #NLP #R #datascience
Processar textos e informações não estruturadas é cada vez mais importante. Uma das coisas mais fundamentais é resumir e abstrair textos, classificando-os. Com R podemos fazer isto rapidamente, extraindo e pesando os termos mais importantes, como neste exemplo, no qual analiso "A Canção do Exílio", de Gonçalves Dias, escrita em 1843. Podemos notar a relevância dos termos e entender que se trata de um texto dos primeiros momentos do Romantismo Brasileiro. https://github.com/cleuton/datascience/blob/master/book-R/tidy.ipynb