O que o twitter está pensando? Extraindo Informações em redes sociais usando Python Adolfo Guimarães www.data2learning.com [email protected] Graduado em Ciência da Computação (UFS) • Mestre em Ciência da Computação (UFMG) • Professor Adjunto I na UNIT • Colaborador do Grupo de Pesquisa em Processamento de Imagens e Inteligência (Pii/UFS) • Membro do Grupo de Pesquisa Interdisciplinar em Tecnologia da Informação e Comunicação (GPITIC/UNIT) • http://adolfo.data2learning.com Agenda • Introdução à mineração de dados • Coletando dados do twitter com Python • Pré-processamento de textos utilizando NLTK • Visualizando dados processados Imagem: https://pixabay.com/photo-471549/ BIG DATA “Big Data is data that is significantly large and growing larger fast. In other words Big Data is big data, and you know you have it when the size of your data is part of you problem” Imagem: https://pixabay.com/photo-471549/ BIG DATA A REVOLUÇÃO DO BIG DATA “Big Data is data that is significantly large and growing larger fast. In other words Big Data is big data, and you know you have it when the size of your data is part of you problem” Imagem: https://pixabay.com/photo-591934/ BIG DATA A REVOLUÇÃO DO BIG DATA DATA IS THE NEW OIL “Todo clique, tweet, site navegado está sendo analisado. E estes dados abrem oportunidades inimagináveis. Big Data é o novo óleo, o novo recurso natural” http://g1.globo.com/economia/negocios/noticia/2014/10/preco-de-compra-do-whatsapp-pelo-facebook-sobe-us-22-bilhoes.html http://www.techtudo.com.br/noticias/noticia/2016/08/whatsapp-comeca-compartilhar-dados-com-facebook-entenda-o-que-muda.html OS 4 V’S DO BIG DATA VOLUME VELOCIDADE VARIEDADE VERACIDADE Imagem: https://pixabay.com/photo-998990/ Um minuto na internet 55.555 de fotos upadas 422.340 tweets postados 44.4 milhões de mensagens 400 horas de vídeos upados 3.3 milhões de posts http://www.smartinsights.com/internet-marketing-statistics/happens-online-60-seconds/ O que fazer com todos estes dados? Como extrair informações úteis destes dados? Imagem: https://pixabay.com/photo-1626368/ MINERAÇÃO DE DADOS “Mineração de Dados é análise de grandes conjuntos de dados a fim de encontrar relacionamentos inesperados e de resumir os dados de uma forma que eles sejam tanto úteis quanto compreensíveis ao dono dos dados” Imagem: https://pixabay.com/photo-1626368/ MINERAÇÃO DE DADOS Em outras palavras … … a mineração de dados visa explicar o passado e "prever" o futuro através da análise de dados. Imagens: https://pixabay.com/photo-1052023/ | https://pixabay.com/photo-442544/ | https://pixabay.com/photo-384740/ | https://pixabay.com/photo-1701086/ CONHECIMENTO DADOS TÉCNICAS APLICAÇÕES Imagem: https://pixabay.com/photo-1245959/ DIFERENTES TIPOS DE DADOS DADOS COM RUÍDOS E INCOMPLETOS ALGORITMOS EFICIENTES Quem sobreviveu ao Titanic? Quem sobreviveu ao Titanic? É do sexo masculino? Sim Não idade > 9.5 Não Morreu Sobreviveu Sim parentes > 2.5 Não Morreu Sim Sobreviveu Imagens: https://pixabay.com/photo-1548975/ | https://pixabay.com/photo-775036/ | https://pixabay.com/photo-1174489/ https://pixabay.com/photo-1209719/ | https://pixabay.com/photo-1642989/ | https://pixabay.com/photo-163466/ Isso não é futurologia … … e nem ficção científica Isso é Computação! Imagem: https://pixabay.com/photo-1303617/ Ciência da Computação Inteligência Artificial Aprendizagem de Máquina Mineração de Dados PARA LEITURA … What is Artificial Intelligence? - Jonh McCarthy http://www-formal.stanford.edu/jmc/whatisai/whatisai.html Computing Machinery and Intelligence - A. M. Turing http://www.abelard.org/turpap/turpap.php PARA LEITURA … www.pandoras-brain.com PARA LEITURA … PARA ESTUDAR … https://www.udacity.com/course/intro-to-artificial-intelligence--cs271 PARA ESTUDAR … https://www.udacity.com/course/intro-to-machine-learning--ud120 Imagem: https://pixabay.com/photo-1694137/ Vamos começar … Primeiro Passo • O primeiro passo é registrar uma conta de desenvolvedor no site: http://dev.twitter.com/apps Primeiro Passo Primeiro Passo Primeiro Passo Primeiro Passo Criar seu próprio access token Segundo Passo • Criar uma conta no site Pythonanywhere: www.pythonanywhere.com Ambiente • Nosso ambiente de desenvolvimento é composto por: • Python: linguagem de programação • • Twython: api para coletar dados do twitter • • http://www.nltk.org/ Flask: framework web • • https://twython.readthedocs.io/en/latest/ NLKT: api para pré-processar textos • • https://www.python.org/ http://flask.pocoo.org/ Tudo será instalado e configurado ao longo do curso na conta do PythonAnyWhere. Parte 1 e 2 Coletando dados do Twitter Coletando dados do Twitter • Nesta etapa vamos explorar basicamente a API Twython. • As informações desta etapa estão nos notebook: • • 01_ColetandoDadosTwitter_Parte1.ipynb • 02_ColetandoDadosTwitter_Parte2.ipynb Os notebooks podem ser acessados diretamente através do repositório. Parte 3 Pré-processamento com NLTK Pré-processamento com NLTK • Nesta etapa vamos explorar a API NLTK. • As informações desta etapa estão nos notebook: • • 03_PreProcessamentoDeTextoNLTK.ipynb Os notebooks podem ser acessados diretamente através do repositório. Parte 4 Juntando Tudo Juntando Tudo • Nesta etapa vamos coletar textos utilizando a API do Twitter e préprocessa-los utilizando o NLTK. • As informações desta etapa estão nos notebook: • • 04_JuntandoTudo.ipynb Os notebooks podem ser acessados diretamente através do repositório. Material do Minicurso • Todo o material do minicurso estará disponível no repositório: • • https://github.com/adolfoguimaraes/d2l_minicursotwitter e também no site: • www.data2learning.com/cursos Se interessou pelo tema? Entre em contato: [email protected] Maiores informações, acesse minhas páginas: • • • • Site pessoal: sites.google.com/site/adolfoguimaraes Data2Learning: www.data2learning.com Twitter: www.twitter.com/adolfoguimaraes LinkedIn: www.linkedin.com/in/adolfoguimaraes Obrigado!!!