Submissão de Sprints Python Brasil 2019

O Sprint é um espaço proporcionado pela conferência Python Brasil para desenvolvimento e contribuição de projetos open source.

Caso ainda não saiba o que é um sprint você pode assistir o vídeo que o Álvaro Justen fez explicando tudo o que você precisa saber: https://www.youtube.com/watch?v=8QNjwSNd4s0

A ideia das submissões de Sprint servirá para que os participantes da Python Brasil tenham noção dos projetos previamente, porém algumas ideias irão aparecer durante o evento, por isso as sugestões ficarão abertas até o último dia e sem a necessidade de submeter aqui.

Datas Importantes

28/10/2019 - Dia dos sprints

 

Dados do projeto 

Nome

Qual projeto open-source você estará apresentando para que os participantes contribuam? Exempo: Operação Serenata de Amor

 

Resumo

Descrição sobre o projeto. Exemplo: "A Operação Serenata de Amor é um projeto de inteligência artificial para análise de gastos públicos no Brasil."


author photo

A deep learning application on raspberry pi

Discover how to train and deploy a convolutional neural net on a raspberry pi. We will talk about application development, handling and labelling the data to enhance the model, some viz to understand the model and a special method based on entropy to get automatic threshold for black and white pictures.

Use the buttons bellow to vote:

author photo

COLABORADADOS: O VEÍCULO COLABORATIVO SOBRE TRANSPARÊNCIA E OPEN DATA NO BRASIL.

O Colaboradados é um veículo que busca, de forma colaborativa, reunir, demonstrar, investigar e monitorar o acesso à informação no Brasil
Com o uso de ferramentas diversas, nosso objetivo é apenas um: tornar mais democrático o acesso a dados e informação. Para isso, temos o compromisso com a veracidade e o fácil acesso à informação. Possuímos diversas 'veias' de atuação, que auxiliam a sociedade nessa missão:


1. Uma de nossas ferramentas é o nosso robô, o @colaborabot, feito em Python, que monitora o acesso aos portais de transparência governamental do país. Aliando tecnologia e cidadania, nosso bot avisa no Twitter sempre que um portal de dados do governo saí do ar. Produzindo também uma base de dados de quedas de sites, o @colaborabot já foi, inclusive, materia de reportagem no Portal G1.
Links:
https://g1.globo.com/economia/tecnologia/noticia/2019/03/01/regras-do-twitter-afetam-robos-que-monitoram-politicos-e-orgaos-publicos.ghtml;
https://twitter.com/colabora_bot


2. Nosso banco de bases de dados permite que o usuário navegue em meio a centenas de bases onde todas passaram por uma curadoria que atestaram a sua confiança e veracidade. Organizadas por assunto, nosso banco permite que você entre em links e baixe dados abertos.
Link:
http://colaboradados.com.br/


3. O podcast brasileiro de jornalismo de dados, o Coluna7, é feito para levar para você, que nunca ouviu falar sobre jornalismo de dados, conhecimentos sobre educação, dados abertos e como é usar programação no jornalismo - e em outras áreas também. Estamos presentes no Spotify, Google Podcasts, e também no nosso site.
Link:
http://colaboradados.com.br/podcast.html


 

Use the buttons bellow to vote:

author photo

How to trick your convolutional neural network

In this talk you will learn a type of attack for convolutional neural net. This consists in modifying slightly your input data in order to fool the inference of your neural net. this this a hot topic in IA security.

Use the buttons bellow to vote:

author photo

Quantifying uncertainty in machine learning models

Many models give a lot more information during the inference process that we usually know. We'll begin with an intrinsic estimation of all the distribution with random forest algorithm. Then we will extend those "prediction intervals" to almost every regression models thanks to the quantile loss. Eventually we'll discuss about probability calibration to measure uncertainty in classification. 

Use the buttons bellow to vote:

author photo

sinesp-bot

O sinesp-client tornou possível a consulta à base de dados do SINESP Cidadão sem a necessidade do preenchimento de captchas ou algum outro tipo de autenticação. O SINESP Cidadão é uma base de dados pública de veículos brasileiros. É muito útil para identificar carros ou motos roubados ou suspeitos.


Não sabemos o porquê, mas o governo não mantém uma API verdadeiramente pública para este serviço. A única maneira de acessar os dados é acessando o site do SINESP e respondendo a perguntas de verificação (captchas) para cada uma das requisições.


Felizmente as aplicações para Android e iOS permitem que a busca seja feita sem que seja preciso responder a nenhum teste captcha. A comunidade então fez uma engenharia reversa no aplicativo para que pudéssemos ter acesso a essas informações públicas sem que fosse preciso responder a esses captchas. Isso deu origem a diversas bibliotecas nas mais diversas linguagens de programação. Eu estava mantendo a sinesp-client, que era a versão em Python, amplamente utilizada por empresas de segurança, estacionamentos e até mesmo algumas repartições públicas, incluindo DETRAN e delegacias de polícia.


No entanto, a equipe do SINESP constantemente lança atualizações do aplicativo dificultando o acesso automatizado das informações e obfuscando a forma com a qual o acesso é feito. Foi então que tive a ideia de criar um repositório demonstrando a utilização de uma técnica não invasiva utilizada principalmente em testes de QA. Usei o SDK do Android e suas ferramentas agregadas e o software Appium para automatizar as consultas, simulando o comportamento de um usuário comum, ou seja, utilizando um dispositivo físico ou o emulador oficial da plataforma.


Assim, o aplicativo funciona como uma caixa preta, não sendo necessário obter detalhes sobre sua implementação, dependendo apenas dos identificadores únicos utilizados na plataforma Android e que ficam disponíveis por questões de usabilidade da Interface de Usuário do sistema operacional. Sua assinatura digital é mantida.


A prova de conceito funciona, mas o processo ainda possui muitas partes manuais, como a instalação e configuração do ambiente e do emulador do Android. Possível linha de melhorias pra tornar a utilização mais fácil e pronta para utilização em produção:



  • criar um container docker com todas as dependências para execução stand-alone

  • melhorar a documentação (incluindo instruções para uso de proxy)

  • melhorar o código fonte (foi feito bem rápido apenas como prova de conceito)

  • criar e distribuir um pacote python (setup.py e afins; pode ser no docker hub também)


Links:


https://github.com/victor-torres/sinesp-client


https://github.com/victor-torres/sinesp-bot

Use the buttons bellow to vote:

author photo

Vamos conversar com robôs?

Em nosso dia à dia, estamos sempre conectados de alguma forma, e, um dos sistemas que nos ajudam a se conectar ou tirar dúvidas, são os ChatBots, ChatBot é um programa de computador que faz o que é programado, simulando uma conversa humana em um chat. Dessa forma, é possível automatizar tarefas repetitivas e burocráticas, como dúvidas frequentes, na forma de diálogo pré-definido entre o usuário e um “robô”. Além de explicar o que é um ChatBot, e quais são as suas funcionalidades aplicadas, estarei demonstrando um de meus projetos, que é um ChatBot feito por mim, desenvolvido em python, utilizando processamento de linguaguem natural(PLN), deep learning e redes neurais, desenvolvido em Python.

Use the buttons bellow to vote: