SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
Minerando dados com Python -
FTSL 2016
Visão Geral
Palestra apresentada no FTSL em 31 de agosto de 2016.
A palestra apresenta uma introdução aos conceitos de mineração de dados com exemplos em Python.
A mineração de dados é muito utilizada para identificar padrões e então recomendar e classificar informação.
Quando são apresentadas sugestões de livros, músicas ou produtos em sites de comércio eletrônico, são
utilizadas técnicas de mineração de dados.
Comunidades
Características da linguagem
Python é uma linguage de programação interpretada, com tipagem dinâmica e forte, interativa e muito
utilizada por pesquisadores, porque:
• Python é fácil
• Python é eficiênte
• Python é rápido
http://dataconomy.com/python-packages-for-data-mining/
Conhecendo o Python
Python possui um interpretador que pode ser usado de forma interativa ou para interpretar um módulo.
• Usando o interpretador.
• Função help(), type() e dir().
• Interpretador turbinado.
Exemplo de módulo
Os programas ou scripts escritos em Python são chamados de módulo.
1 #!/usr/bin/env python3
2 import webbrowser
3
4 links = ['http://www.python.org', 'http://www.python.org.br']
5 for link in links:
6 webbrowser.open_new_tab(link)
7 parar = input('Digite "parar" para interromper: ')
8 if parar == 'parar':
9 break
Bibliotecas científicas, extração e
mineração de dados
• numpy
• scipy
• matplotlib
• mlpy, Machine Learning Python
• pandas
• scikits-learn
• NLTK, Natural Language Toolkit
• Scrapy
http://www.kdnuggets.com/2012/11/best-python-modules-for-data-mining.html
A arte dos Numerati. Conceitos de Data
Mining
Projeto baseado no livro A Programmer's Guide to Data Mining.
• Extração de dados relevantes.
• Sistemas de recomendação.
• Filtros baseados em itens.
• Classificação
• Naïve Bayes
• Texto não estruturado
• Clustering
Sistemas de recomendação
Sistemas de recomendação são aqueles que sugerem algo o mais próximo possível do seu gosto pessoal.
• Como encontrar algo próximo?
• Distância de Manhattan (distância de motorista de taxi).
• Distância Euclideana.
• Cálculo N-dimensional. Métrica de distância de Minkowski.
• Correlação de Coeficiente de Pearson.
• Similaridade de Coseno.
• Vizinho K-nearest
Filtros baseados em itens
Algumas preferências são explicitas, joinha, carinha alegre/triste, estrelas, etc... Outras são implicitas, a
compra de um item indica que você gosta ou precisa dele.
• Preferências implicitas.
• Implicito ou explicito?
• Similaridade de itens.
• Similaridade de coseno ajustada. (subtraindo a média do usuário).
• Slope one. (desvio entre cada par de itens e predição com o peso ("Weighted") slope one).
Classificação
A recomendação colaborativa pode falhar pois começa a pesar a popularidade de um item. Uma alternativa é
classificar itens baseando-se em similaridade de seus atributos.
• O gene de um item.
• Problema de escalas.
• Normalização.
• Desvio padrão e score padronizado.
• Casos extremos, score padronizado modificado e desvio padrão absoluto.
• Avaliando sistemas de recomendação.
Naive Bayes
• Classificação probabilística.
• Aprendizado preguiçoso (vizinho mais próximo) e fominha (bayes).
• Probabilidade.
• Teorema de Bayes.
Classificando dados não estruturados
Nem sempre nossos dados irão possuir atributos, por exemplo um post no twitter ou facebook.
• Dados de treinamento.
• Teste de acertos.
Clustering
Quando não sabemos previamente quais são as classes ou nomes dos grupos.
• Descobrindo grupos.
• k-means clustering.
• hierarchical clustering.
• Single-linkage clustering
• Complete-linkage clustering
• Average-linkage clustering
Referências
Algoritimo de rankeamento de palavras. https://github.com/aneesha/RAKE
Python code for the free book A Programmer's Guide to Data Mining https://github.com/zacharski/pg2dm-
python
http://dataconomy.com/python-packages-for-data-mining/
http://www.kdnuggets.com/2012/11/best-python-modules-for-data-mining.html
Natural Language Toolkit http://www.nltk.org/
Machine Learning in Python http://scikit-learn.org/stable/
Scrapy, An open source web scraping framework for Python http://scrapy.org/
What are the best Python 2.7 modules for data mining? https://www.quora.com/What-are-the-best-
Python-2-7-modules-for-data-mining
Data mining and integration with Python https://www.youtube.com/watch?v=qWcas-OUE9I
Datamining for Hackers 28C3 - (Análise de VOIP) https://www.youtube.com/watch?v=__s45TTXxps
Practical Machine Learning in Python https://www.youtube.com/watch?v=mS4k0hFhPeQ

Contenu connexe

Tendances

Mineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfMineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfCloves da Rocha
 
Ciência de Dados: a revolução na tomada de decisões
Ciência de Dados: a revolução na tomada de decisõesCiência de Dados: a revolução na tomada de decisões
Ciência de Dados: a revolução na tomada de decisõesMarlesson Santana
 
Descoberta de Conhecimento em Bancos de Dados e Mineração de Dados
Descoberta de Conhecimento em Bancos de Dados e Mineração de DadosDescoberta de Conhecimento em Bancos de Dados e Mineração de Dados
Descoberta de Conhecimento em Bancos de Dados e Mineração de DadosEduardo de Lucena Falcão
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Leinylson Fontinele
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresAragon Vieira
 
Governança de Dados e Big Data_v02
Governança de Dados e Big Data_v02Governança de Dados e Big Data_v02
Governança de Dados e Big Data_v02Carlos Barbieri
 
Apresentação metodologia do trabalho científico
Apresentação metodologia do trabalho científicoApresentação metodologia do trabalho científico
Apresentação metodologia do trabalho científicoLarissa Almada
 
Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01thomasdacosta
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na práticaRafael Cassau
 
Métodos quantitativos e_qualitativos1
Métodos quantitativos e_qualitativos1Métodos quantitativos e_qualitativos1
Métodos quantitativos e_qualitativos1queenbianca
 
Palestra tcc
Palestra tccPalestra tcc
Palestra tccwapiva
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoLeinylson Fontinele
 
O Product Owner e o Scrum
O Product Owner e o ScrumO Product Owner e o Scrum
O Product Owner e o ScrumVitor Massari
 
Métodos de pesquisa: survey
Métodos de pesquisa: surveyMétodos de pesquisa: survey
Métodos de pesquisa: surveyAristides Faria
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01thomasdacosta
 
KPIs - Indicadores Chave de Performance
KPIs - Indicadores Chave de PerformanceKPIs - Indicadores Chave de Performance
KPIs - Indicadores Chave de PerformanceFábio Póvoa
 

Tendances (20)

Modelagem Ágil
Modelagem ÁgilModelagem Ágil
Modelagem Ágil
 
Mineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfMineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdf
 
Ciência de Dados: a revolução na tomada de decisões
Ciência de Dados: a revolução na tomada de decisõesCiência de Dados: a revolução na tomada de decisões
Ciência de Dados: a revolução na tomada de decisões
 
Descoberta de Conhecimento em Bancos de Dados e Mineração de Dados
Descoberta de Conhecimento em Bancos de Dados e Mineração de DadosDescoberta de Conhecimento em Bancos de Dados e Mineração de Dados
Descoberta de Conhecimento em Bancos de Dados e Mineração de Dados
 
Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de Softwares
 
Governança de Dados e Big Data_v02
Governança de Dados e Big Data_v02Governança de Dados e Big Data_v02
Governança de Dados e Big Data_v02
 
Apresentação metodologia do trabalho científico
Apresentação metodologia do trabalho científicoApresentação metodologia do trabalho científico
Apresentação metodologia do trabalho científico
 
Apresentação tcc1
Apresentação tcc1Apresentação tcc1
Apresentação tcc1
 
Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01
 
Análise de Dados
Análise de DadosAnálise de Dados
Análise de Dados
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na prática
 
Métodos quantitativos e_qualitativos1
Métodos quantitativos e_qualitativos1Métodos quantitativos e_qualitativos1
Métodos quantitativos e_qualitativos1
 
Palestra tcc
Palestra tccPalestra tcc
Palestra tcc
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
O Product Owner e o Scrum
O Product Owner e o ScrumO Product Owner e o Scrum
O Product Owner e o Scrum
 
Métodos de pesquisa: survey
Métodos de pesquisa: surveyMétodos de pesquisa: survey
Métodos de pesquisa: survey
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01
 
KPIs - Indicadores Chave de Performance
KPIs - Indicadores Chave de PerformanceKPIs - Indicadores Chave de Performance
KPIs - Indicadores Chave de Performance
 

Similaire à Minerando dados com Python

WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...Celso Crivelaro
 
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...Celso Crivelaro
 
Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1Ralph Rassweiler
 
Sistemas de Recomendação e Inteligência Coletiva
Sistemas de Recomendação e Inteligência ColetivaSistemas de Recomendação e Inteligência Coletiva
Sistemas de Recomendação e Inteligência ColetivaMarcel Caraciolo
 
Os 7 processos da Arquitetura da Informação
Os 7 processos da Arquitetura da InformaçãoOs 7 processos da Arquitetura da Informação
Os 7 processos da Arquitetura da InformaçãoEdyd B. Junges
 
Collaborative filtering
Collaborative filteringCollaborative filtering
Collaborative filteringZhang Yi Ling
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de RecomendacaoAhirton Lopes
 
Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2Ralph Rassweiler
 
Pesquisa Exploratória em Marketing
Pesquisa Exploratória em MarketingPesquisa Exploratória em Marketing
Pesquisa Exploratória em MarketingGraziela Rodrigues
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao IIAhirton Lopes
 
Avaliar_informacao.pdf
Avaliar_informacao.pdfAvaliar_informacao.pdf
Avaliar_informacao.pdfjpedrosilva1
 
Teste de usabilidade - Site 2AB
Teste de usabilidade - Site 2ABTeste de usabilidade - Site 2AB
Teste de usabilidade - Site 2ABLuiz Agner
 
Workshop ExtJS4
Workshop ExtJS4Workshop ExtJS4
Workshop ExtJS4javamanrj
 
Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2Alison Marczewski
 

Similaire à Minerando dados com Python (18)

Sistemas de Recomendação na web
Sistemas de Recomendação na webSistemas de Recomendação na web
Sistemas de Recomendação na web
 
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
 
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
 
Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1
 
Sistemas de Recomendação e Inteligência Coletiva
Sistemas de Recomendação e Inteligência ColetivaSistemas de Recomendação e Inteligência Coletiva
Sistemas de Recomendação e Inteligência Coletiva
 
Sistemas de Recomendação
Sistemas de Recomendação Sistemas de Recomendação
Sistemas de Recomendação
 
Talk conexao
Talk conexaoTalk conexao
Talk conexao
 
Os 7 processos da Arquitetura da Informação
Os 7 processos da Arquitetura da InformaçãoOs 7 processos da Arquitetura da Informação
Os 7 processos da Arquitetura da Informação
 
Collaborative filtering
Collaborative filteringCollaborative filtering
Collaborative filtering
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao
 
Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2
 
Pesquisa Exploratória em Marketing
Pesquisa Exploratória em MarketingPesquisa Exploratória em Marketing
Pesquisa Exploratória em Marketing
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
 
Avaliar_informacao.pdf
Avaliar_informacao.pdfAvaliar_informacao.pdf
Avaliar_informacao.pdf
 
Teste de usabilidade - Site 2AB
Teste de usabilidade - Site 2ABTeste de usabilidade - Site 2AB
Teste de usabilidade - Site 2AB
 
Workshop ExtJS4
Workshop ExtJS4Workshop ExtJS4
Workshop ExtJS4
 
Prz 25 03_11
Prz 25 03_11Prz 25 03_11
Prz 25 03_11
 
Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2
 

Plus de Ramiro Luz

Institutional Website - the longest project of my life
Institutional Website - the longest project of my lifeInstitutional Website - the longest project of my life
Institutional Website - the longest project of my lifeRamiro Luz
 
Plone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsPlone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsRamiro Luz
 
Portal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsPortal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsRamiro Luz
 
Para que serve o Python
Para que serve o PythonPara que serve o Python
Para que serve o PythonRamiro Luz
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Ramiro Luz
 
Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Ramiro Luz
 
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Ramiro Luz
 
Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015Ramiro Luz
 
Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com PloneRamiro Luz
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Ramiro Luz
 
Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Ramiro Luz
 
Python 3, patterns and indioms
Python 3, patterns and indiomsPython 3, patterns and indioms
Python 3, patterns and indiomsRamiro Luz
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de ProgramaçãoRamiro Luz
 
Teaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleTeaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleRamiro Luz
 
Usando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDUsando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDRamiro Luz
 
Sabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonSabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonRamiro Luz
 
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Ramiro Luz
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionRamiro Luz
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitecRamiro Luz
 
Testes de Unidade para C++
Testes de Unidade para C++Testes de Unidade para C++
Testes de Unidade para C++Ramiro Luz
 

Plus de Ramiro Luz (20)

Institutional Website - the longest project of my life
Institutional Website - the longest project of my lifeInstitutional Website - the longest project of my life
Institutional Website - the longest project of my life
 
Plone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsPlone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizations
 
Portal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsPortal Modelo - Plone for Parliaments
Portal Modelo - Plone for Parliaments
 
Para que serve o Python
Para que serve o PythonPara que serve o Python
Para que serve o Python
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.
 
Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015
 
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
 
Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015
 
Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com Plone
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014
 
Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?
 
Python 3, patterns and indioms
Python 3, patterns and indiomsPython 3, patterns and indioms
Python 3, patterns and indioms
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
 
Teaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleTeaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo Style
 
Usando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDUsando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDD
 
Sabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonSabores do desenvolvimento web com Python
Sabores do desenvolvimento web com Python
 
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoption
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitec
 
Testes de Unidade para C++
Testes de Unidade para C++Testes de Unidade para C++
Testes de Unidade para C++
 

Dernier

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Dernier (6)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Minerando dados com Python

  • 1. Minerando dados com Python - FTSL 2016
  • 2. Visão Geral Palestra apresentada no FTSL em 31 de agosto de 2016. A palestra apresenta uma introdução aos conceitos de mineração de dados com exemplos em Python. A mineração de dados é muito utilizada para identificar padrões e então recomendar e classificar informação. Quando são apresentadas sugestões de livros, músicas ou produtos em sites de comércio eletrônico, são utilizadas técnicas de mineração de dados.
  • 4. Características da linguagem Python é uma linguage de programação interpretada, com tipagem dinâmica e forte, interativa e muito utilizada por pesquisadores, porque: • Python é fácil • Python é eficiênte • Python é rápido http://dataconomy.com/python-packages-for-data-mining/
  • 5. Conhecendo o Python Python possui um interpretador que pode ser usado de forma interativa ou para interpretar um módulo. • Usando o interpretador. • Função help(), type() e dir(). • Interpretador turbinado.
  • 6. Exemplo de módulo Os programas ou scripts escritos em Python são chamados de módulo. 1 #!/usr/bin/env python3 2 import webbrowser 3 4 links = ['http://www.python.org', 'http://www.python.org.br'] 5 for link in links: 6 webbrowser.open_new_tab(link) 7 parar = input('Digite "parar" para interromper: ') 8 if parar == 'parar': 9 break
  • 7. Bibliotecas científicas, extração e mineração de dados • numpy • scipy • matplotlib • mlpy, Machine Learning Python • pandas • scikits-learn • NLTK, Natural Language Toolkit • Scrapy http://www.kdnuggets.com/2012/11/best-python-modules-for-data-mining.html
  • 8. A arte dos Numerati. Conceitos de Data Mining Projeto baseado no livro A Programmer's Guide to Data Mining. • Extração de dados relevantes. • Sistemas de recomendação. • Filtros baseados em itens. • Classificação • Naïve Bayes • Texto não estruturado • Clustering
  • 9. Sistemas de recomendação Sistemas de recomendação são aqueles que sugerem algo o mais próximo possível do seu gosto pessoal. • Como encontrar algo próximo? • Distância de Manhattan (distância de motorista de taxi). • Distância Euclideana. • Cálculo N-dimensional. Métrica de distância de Minkowski. • Correlação de Coeficiente de Pearson. • Similaridade de Coseno. • Vizinho K-nearest
  • 10. Filtros baseados em itens Algumas preferências são explicitas, joinha, carinha alegre/triste, estrelas, etc... Outras são implicitas, a compra de um item indica que você gosta ou precisa dele. • Preferências implicitas. • Implicito ou explicito? • Similaridade de itens. • Similaridade de coseno ajustada. (subtraindo a média do usuário). • Slope one. (desvio entre cada par de itens e predição com o peso ("Weighted") slope one).
  • 11. Classificação A recomendação colaborativa pode falhar pois começa a pesar a popularidade de um item. Uma alternativa é classificar itens baseando-se em similaridade de seus atributos. • O gene de um item. • Problema de escalas. • Normalização. • Desvio padrão e score padronizado. • Casos extremos, score padronizado modificado e desvio padrão absoluto. • Avaliando sistemas de recomendação.
  • 12. Naive Bayes • Classificação probabilística. • Aprendizado preguiçoso (vizinho mais próximo) e fominha (bayes). • Probabilidade. • Teorema de Bayes.
  • 13. Classificando dados não estruturados Nem sempre nossos dados irão possuir atributos, por exemplo um post no twitter ou facebook. • Dados de treinamento. • Teste de acertos.
  • 14. Clustering Quando não sabemos previamente quais são as classes ou nomes dos grupos. • Descobrindo grupos. • k-means clustering. • hierarchical clustering. • Single-linkage clustering • Complete-linkage clustering • Average-linkage clustering
  • 15. Referências Algoritimo de rankeamento de palavras. https://github.com/aneesha/RAKE Python code for the free book A Programmer's Guide to Data Mining https://github.com/zacharski/pg2dm- python http://dataconomy.com/python-packages-for-data-mining/ http://www.kdnuggets.com/2012/11/best-python-modules-for-data-mining.html Natural Language Toolkit http://www.nltk.org/ Machine Learning in Python http://scikit-learn.org/stable/ Scrapy, An open source web scraping framework for Python http://scrapy.org/ What are the best Python 2.7 modules for data mining? https://www.quora.com/What-are-the-best- Python-2-7-modules-for-data-mining Data mining and integration with Python https://www.youtube.com/watch?v=qWcas-OUE9I Datamining for Hackers 28C3 - (Análise de VOIP) https://www.youtube.com/watch?v=__s45TTXxps Practical Machine Learning in Python https://www.youtube.com/watch?v=mS4k0hFhPeQ