SlideShare uma empresa Scribd logo
1 de 52
Baixar para ler offline
O
cina: construc~ao de modelos 
descritivos e preditivos utilizando R 
Fabrcio J. Barth 
fabricio.barth@gmail.com 
Faculdade BandTec e Watson Group IBM 
Outubro de 2014
Objetivo 
O objetivo desta o
cina e apresentar exemplos de 
construc~ao de modelos descritos e preditivos utilizando a 
linguagem de programac~ao R. 
O
cina: construc~ao de modelos descritivos e preditivos utilizando R | Objetivo 2
Sumario 
 Conceitos: aprendizagem de maquina, knowledge 
discovery in databases e a linguagem de programac~ao 
R. 
 Analise de mensagens do twitter usando algoritmos de 
agrupamento. 
 Desenvolvimento de algoritmos anti-spam. 
 Considerac~oes
nais. 
 Refer^encias. 
O
cina: construc~ao de modelos descritivos e preditivos utilizando R | Sumario 3
Conceitos 
4
Knowledge Discovery in Databases 
(KDD) 
KDD e o processo n~ao trivial de identi
cac~ao de padr~oes 
em dados que sejam validos, novos, potencialmente uteis e 
compreensveis [Fayyad, 1996]. 
Conceitos | Knowledge Discovery in Databases (KDD) 5
Descobrir conhecimento util: 
 Sintetizar informac~ao: 
? a partir de logs de servidores web, identi
car qual e o 
caminho mais frequente de navegac~ao dos usuarios no 
site. 
? a partir de notcias publicadas em veculos web, 
sumarizar os principais eventos do dia. 
 Prescrever ac~oes: 
? a partir do historico de candidaturas em vagas de um 
candidato, recomendar novas vagas para o mesmo. 
? a partir de conteudo previamente moderado, construir 
uma aplicac~ao capaz de moderar conteudo 
automaticamente. 
Conceitos | Knowledge Discovery in Databases (KDD) 6
Processo de KDD 
1. Qual e a pergunta? 
2. Aquisic~ao e pre-processamento dos dados. 
3. Analise Descritiva. 
4. Modelagem: construc~ao do modelo descritivo ou 
preditivo. 
5. Avaliac~ao do modelo. 
6. Entrega: relatorios estaticos, din^amicos, sistemas ou 
funcionalidade de sistemas. 
Conceitos | Processo de KDD 7
Aprendizagem de maquina 
Supervisionada 
Modelos preditivos 
Classificação Regressão 
Não supervisionada 
Modelos descritivos 
Aprendizagem 
Sumarização Associação Agrupamento 
Conceitos | Aprendizagem de maquina 8
Exemplo de dataset com classe 
Sepal.Length Sepal.Width Petal.Length Petal.Width Species 
1 5.10 3.50 1.40 0.20 setosa 
2 4.90 3.00 1.40 0.20 setosa 
3 4.70 3.20 1.30 0.20 setosa 
4 4.60 3.10 1.50 0.20 setosa 
5 5.00 3.60 1.40 0.20 setosa 
52 6.40 3.20 4.50 1.50 versicolor 
53 6.90 3.10 4.90 1.50 versicolor 
54 5.50 2.30 4.00 1.30 versicolor 
55 6.50 2.80 4.60 1.50 versicolor 
56 5.70 2.80 4.50 1.30 versicolor 
104 6.30 2.90 5.60 1.80 virginica 
105 6.50 3.00 5.80 2.20 virginica 
110 7.20 3.60 6.10 2.50 virginica 
115 5.80 2.80 5.10 2.40 virginica 
Conceitos | Exemplo de dataset com classe 9
Exemplo de modelo preditivo 
Conceitos | Exemplo de modelo preditivo 10
Exemplos de aprendizagem n~ao 
supervisionada 
Table 1: Exemplo de tabela com conex~oes entre usuarios 
usuario user1 user2 user3    usern 
user1 1 1 0    1 
user2 1 1 0    0 
user3 1 0 1    0 
user4 0 1 0    0 
                  
usern 1 1 0    1 
Conceitos | Exemplos de aprendizagem n~ao supervisionada 11
Exemplo de identi
cac~ao de grupos em 
redes sociais 
Conceitos | Exemplo de identi
cac~ao de grupos em redes sociais 12
Ferramentas que suportam o processo de 
KDD 
O processo de KDD (pode/deve) ser suportado por 
ferramentas computacionais, tais como: 
 R 
 SPSS 
 RapidMiner 
 Weka 
 Tableau 
 Python, Julia, Octave, Matlab. 
Conceitos | Ferramentas que suportam o processo de KDD 13
Projeto R 
 http://www.r-project.org/ 
 R Studio - http://www.rstudio.com/ 
 E 
free 
 E 
a linguagem de programac~ao mais popular para 
analise de dados 
 Script e melhor que clicar e arastar: 
? E 
mais facil de comunicar. 
? Reproduzvel. 
? E 
necessario pensar mais sobre o problema. 
 Existe uma quantia grande de pacotes disponveis 
Conceitos | Projeto R 14
Analise de mensagens do 
twitter usando 
algoritmos de 
agrupamento 
15
Componentes para uma soluc~ao... 
Coletor 
Fonte 
Pré-processamento 
dos documentos 
Agrupa 
documentos 
Agrupamentos de 
documentos 
Analise de mensagens do twitter usando algoritmos de agrupamento | Componentes para uma soluc~ao... 16
Acessar e fazer o download do projeto 
https://github.com/fbarth/mlr 
Analise de mensagens do twitter usando algoritmos de agrupamento | Acessar e fazer o download do projeto 17
Formato de um documento 
... Esta disciplina tem como objetivo apresentar os principais 
conceitos da area de Intelig^encia Arti
cial, caracterizar as 
principais tecnicas e metodos, e implementar alguns problemas 
classicos desta area sob um ponto de vista introdutorio. 
A estrategia de trabalho, o conteudo ministrado e a forma 
depender~ao dos projetos selecionados pelos alunos. 
Inicialmente, os alunos dever~ao trazer os seus Projetos de 
Conclus~ao de Curso, identi
car intersecc~oes entre o projeto e a 
disciplina, e propor atividades para a disciplina. ... 
Analise de mensagens do twitter usando algoritmos de agrupamento | Formato de um documento 18
Conjunto de Exemplos - Atributo/Valor 
Doc. apresent form tecnic caracteriz    
d1 0.33 0.33 0.33 0.33    
d2 0 0.5 0.2 0.33    
d3 1 0.6 0 0    
d4 0.4 0.3 0.33 0.4    
d5 1 0.4 0.1 0.1    
dn                
Analise de mensagens do twitter usando algoritmos de agrupamento | Conjunto de Exemplos - Atributo/Valor 19
Atributo/Valor usando vetores 
Como representar os documentos? 
!d 
i = (pi1; pi2;    ; pin) (1) 
 Os atributos s~ao as palavras que aparecem nos 
documentos. 
 As palavras do texto precisam ser normalizadas: caixa 
baixa, remover acentuac~ao, remover stop-words, 
aplicar algoritmos de steamming. 
Analise de mensagens do twitter usando algoritmos de agrupamento | Atributo/Valor usando vetores 20
Remover stop-words 
 Em todos os idiomas existem atomos (palavras) que 
n~ao signi
cam muito. Stop-words 
Esta disciplina tem como objetivo apresentar os principais 
conceitos da area de Intelig^encia Arti
cial, caracterizar as 
principais tecnicas e metodos, e implementar alguns problemas 
classicos desta area sob um ponto de vista introdutorio. 
   
Analise de mensagens do twitter usando algoritmos de agrupamento | Remover stop-words 21
Algoritmos de steamming 
 Algumas palavras podem aparecer no texto de diversas 
maneiras: tecnica, tecnicas, implementar, 
implementac~ao... 
 Stemming - encontrar o radical da palavra e usar 
apenas o radical. 
Analise de mensagens do twitter usando algoritmos de agrupamento | Algoritmos de steamming 22
Atributo/Valor usando vetores 
 Ja conhecemos os atributos. 
 E os valores? 
? Booleana - se a palavra aparece ou n~ao no 
documento (1 ou 0) 
? Por frequ^encia do termo - a frequ^encia com que 
a palavra aparece no documento (normalizada ou 
n~ao) 
? Ponderac~ao tf-idf - o peso e proporcional ao 
numero de ocorr^encias do termo no documento e 
inversamente proporcional ao numero de 
documentos onde o termo aparece. 
Analise de mensagens do twitter usando algoritmos de agrupamento | Atributo/Valor usando vetores 23
Por frequ^encia do termo 
(apresent,0.33) (form,0.33) (tecnic,0.33) (caracteriz,0.33) 
(projet,1.0) (introdutori,0.33) (objet,0.33) (inteligente,0.33) 
(conclusa,0.33) (selecion,0.33) (intersecco,0.33) (classic,0.33) 
(identi
c,0.33) (conceit,0.33) (trabalh,0.33) (disciplin,1.0) 
(traz,0.33) 
Analise de mensagens do twitter usando algoritmos de agrupamento | Por frequ^encia do termo 24
Componentes para uma soluc~ao... 
Coletor 
Fonte 
Pré-processamento 
dos documentos 
Agrupa 
documentos 
Agrupamentos de 
documentos 
Analise de mensagens do twitter usando algoritmos de agrupamento | Componentes para uma soluc~ao... 25
Algoritmos para 
Agrupamento 
26
De
nic~oes de Algoritmos de Agrupamento 
 O objetivo dos algoritmos de agrupamento e colocar 
os objetos similares em um mesmo grupo e objetos 
n~ao similares em grupos diferentes. 
 Normalmente, objetos s~ao descritos e agrupados 
usando um conjunto de atributos e valores. 
 N~ao existe nenhuma informac~ao sobre a classe ou 
categoria dos objetos. 
Algoritmos para Agrupamento | De
nic~oes de Algoritmos de Agrupamento 27
Algoritmos para Agrupamento - K-means 
 K signi
ca o numero de agrupamentos (que deve ser 
informado a priori). 
 Sequ^encia de ac~oes iterativas. 
 A parada e baseada em algum criterio de qualidade 
dos agrupamentos (por exemplo, similaridade media). 
Algoritmos para Agrupamento | Algoritmos para Agrupamento - K-means 28
Algoritmo para Agrupamento - K-means 
5 
4 
3 
2 
5 
4 
3 
2 
1 
0 
1 2 3 4 5 6 7 8 
5 
4 
3 
2 
5 
4 
3 
2 
1 
0 
1 2 3 4 5 6 7 8 
1 
0 
1 2 3 4 5 6 7 8 
(1) Objetos que devem ser agrupados 
1 
0 
1 2 3 4 5 6 7 8 
(2) Sorteio dos pontos centrais dos agrupamentos 
(3) Atribuição dos objetos aos agrupamentos (4) Definição do centro do agrupamento 
Algoritmos para Agrupamento | Algoritmo para Agrupamento - K-means 29
Algoritmo K-means 
 A medida de dist^ancia pode ser a dist^ancia Euclidiana: 
j !x 
 !yj= 
vuut 
Xn 
i=1 
(xi  yi)2 (2) 
 a func~ao para computar o ponto central pode ser: 
! 
= 
1 
M 
X 
!x 
2C 
!x 
(3) 
onde M e igual ao numero de pontos no agrupamento 
C. 
Algoritmos para Agrupamento | Algoritmo K-means 30
Algoritmos para Agrupamento | 31
Como determinar o melhor k? 
A medida de distribuic~ao dos pontos normalmente empregada e sum of squared errors. 
Algoritmos para Agrupamento | Como determinar o melhor k? 32
Desenvolvimento de 
algoritmos anti-spam 
33
Exemplos onde aplicar 
Desenvolvimento de algoritmos anti-spam | Exemplos onde aplicar 34
Desenvolvimento de algoritmos anti-spam | 35

Mais conteúdo relacionado

Semelhante a Oficina: construção de modelos descritivos e preditivos utilizando R

TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Sciencetdc-globalcode
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 
Gestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesGestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesRogerio P C do Nascimento
 
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...Rogerio P C do Nascimento
 
Introducao ao python - Luciana Mota
Introducao ao python - Luciana MotaIntroducao ao python - Luciana Mota
Introducao ao python - Luciana Motalucianacmota
 
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...Tchelinux
 
Uma introdução à mineração de informações
Uma introdução à mineração de informaçõesUma introdução à mineração de informações
Uma introdução à mineração de informaçõesFabrício Barth
 
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFS
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFSApresentação da Disciplina Gerência de Projetos - DCOMP - UFS
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFSRogerio P C do Nascimento
 
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
[TDC2016] Apache SparkMLlib:  Machine Learning na Prática[TDC2016] Apache SparkMLlib:  Machine Learning na Prática
[TDC2016] Apache SparkMLlib: Machine Learning na PráticaEiti Kimura
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Robson Ferreira
 
Apostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cApostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cMaicon Rodrigues
 
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014 Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014 Marcos Vinicius Fidelis
 
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Filipe Chagas Ferraz
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoHelder Lopes
 
Padrões De Projeto e Anti Patterns
Padrões De Projeto e Anti PatternsPadrões De Projeto e Anti Patterns
Padrões De Projeto e Anti PatternsHerval Freire
 
TDC2016SP - SparkMLlib Machine Learning na Prática
TDC2016SP -  SparkMLlib Machine Learning na PráticaTDC2016SP -  SparkMLlib Machine Learning na Prática
TDC2016SP - SparkMLlib Machine Learning na Práticatdc-globalcode
 

Semelhante a Oficina: construção de modelos descritivos e preditivos utilizando R (20)

TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Science
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Gestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesGestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e Planificações
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Analise Algoritmos
 
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...
PROCC UFS.br :: Apresentação Disciplina PGPS - Planejamento e Gerencia de Pro...
 
Introducao ao python - Luciana Mota
Introducao ao python - Luciana MotaIntroducao ao python - Luciana Mota
Introducao ao python - Luciana Mota
 
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...
Data Mining e Machine Learning com Python - Mateus Grellert - Tchelinux Pelot...
 
Uma introdução à mineração de informações
Uma introdução à mineração de informaçõesUma introdução à mineração de informações
Uma introdução à mineração de informações
 
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFS
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFSApresentação da Disciplina Gerência de Projetos - DCOMP - UFS
Apresentação da Disciplina Gerência de Projetos - DCOMP - UFS
 
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
[TDC2016] Apache SparkMLlib:  Machine Learning na Prática[TDC2016] Apache SparkMLlib:  Machine Learning na Prática
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
 
Projeto de Software
Projeto de SoftwareProjeto de Software
Projeto de Software
 
Apostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cApostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-c
 
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014 Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014
Construção de Classificadores utilizando Pentaho Data Mining (WEKA) - FTSL 2014
 
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de Informação
 
LabTeX Presentation
LabTeX  PresentationLabTeX  Presentation
LabTeX Presentation
 
Padrões De Projeto e Anti Patterns
Padrões De Projeto e Anti PatternsPadrões De Projeto e Anti Patterns
Padrões De Projeto e Anti Patterns
 
TDC2016SP - SparkMLlib Machine Learning na Prática
TDC2016SP -  SparkMLlib Machine Learning na PráticaTDC2016SP -  SparkMLlib Machine Learning na Prática
TDC2016SP - SparkMLlib Machine Learning na Prática
 
Artigo c#
Artigo c#Artigo c#
Artigo c#
 

Mais de Fabrício Barth

Mineração de padrões frequentes - Pós Graduação em Big Data
Mineração de padrões frequentes - Pós Graduação em Big DataMineração de padrões frequentes - Pós Graduação em Big Data
Mineração de padrões frequentes - Pós Graduação em Big DataFabrício Barth
 
Redução de dimensionalidade - Pós Graduação em Big Data
Redução de dimensionalidade - Pós Graduação em Big DataRedução de dimensionalidade - Pós Graduação em Big Data
Redução de dimensionalidade - Pós Graduação em Big DataFabrício Barth
 
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big Data
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big DataHierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big Data
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big DataFabrício Barth
 
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big Data
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big DataContexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big Data
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big DataFabrício Barth
 
Pré-processamento [no R] e Análise Exploratória - Curso de Big Data
Pré-processamento [no R] e Análise Exploratória - Curso de Big DataPré-processamento [no R] e Análise Exploratória - Curso de Big Data
Pré-processamento [no R] e Análise Exploratória - Curso de Big DataFabrício Barth
 
Algoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoAlgoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoFabrício Barth
 
Human Activity Recognition
Human Activity RecognitionHuman Activity Recognition
Human Activity RecognitionFabrício Barth
 
Iniciativas em Big Data no VAGAS.com
Iniciativas em Big Data no VAGAS.comIniciativas em Big Data no VAGAS.com
Iniciativas em Big Data no VAGAS.comFabrício Barth
 
Web Data Mining com R: identificação de spam utilizando Random Forest
Web Data Mining com R: identificação de spam utilizando Random ForestWeb Data Mining com R: identificação de spam utilizando Random Forest
Web Data Mining com R: identificação de spam utilizando Random ForestFabrício Barth
 
Web Data Mining com R: design de projetos para criação de modelos preditivos
Web Data Mining com R: design de projetos para criação de modelos preditivosWeb Data Mining com R: design de projetos para criação de modelos preditivos
Web Data Mining com R: design de projetos para criação de modelos preditivosFabrício Barth
 
Web Data Mining com R: criação de regras de associação a partir da navegação ...
Web Data Mining com R: criação de regras de associação a partir da navegação ...Web Data Mining com R: criação de regras de associação a partir da navegação ...
Web Data Mining com R: criação de regras de associação a partir da navegação ...Fabrício Barth
 
Web Data Mining com r: aprendizagem de máquina
Web Data Mining com r: aprendizagem de máquinaWeb Data Mining com r: aprendizagem de máquina
Web Data Mining com r: aprendizagem de máquinaFabrício Barth
 
Web Data Mining com R: pré-processamento de dados [no R]
Web Data Mining com R: pré-processamento de dados [no R]Web Data Mining com R: pré-processamento de dados [no R]
Web Data Mining com R: pré-processamento de dados [no R]Fabrício Barth
 
Data Science, Machine Learning and Big Data
Data Science, Machine Learning and Big DataData Science, Machine Learning and Big Data
Data Science, Machine Learning and Big DataFabrício Barth
 
Uma introdução à mineração de informações na era do Big Data
Uma introdução à mineração de informações na era do Big DataUma introdução à mineração de informações na era do Big Data
Uma introdução à mineração de informações na era do Big DataFabrício Barth
 
Data, Text and Web Mining
Data, Text and Web MiningData, Text and Web Mining
Data, Text and Web MiningFabrício Barth
 
Ferramentas Java para Recuperação e Mineração de Informações
Ferramentas Java para Recuperação e Mineração de InformaçõesFerramentas Java para Recuperação e Mineração de Informações
Ferramentas Java para Recuperação e Mineração de InformaçõesFabrício Barth
 
Atena: um sistema para suporte ao planejamento na área de Gestão de Projeto
Atena: um sistema para suporte ao planejamento na área de Gestão de ProjetoAtena: um sistema para suporte ao planejamento na área de Gestão de Projeto
Atena: um sistema para suporte ao planejamento na área de Gestão de ProjetoFabrício Barth
 

Mais de Fabrício Barth (19)

Mineração de padrões frequentes - Pós Graduação em Big Data
Mineração de padrões frequentes - Pós Graduação em Big DataMineração de padrões frequentes - Pós Graduação em Big Data
Mineração de padrões frequentes - Pós Graduação em Big Data
 
Redução de dimensionalidade - Pós Graduação em Big Data
Redução de dimensionalidade - Pós Graduação em Big DataRedução de dimensionalidade - Pós Graduação em Big Data
Redução de dimensionalidade - Pós Graduação em Big Data
 
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big Data
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big DataHierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big Data
Hierarquia de modelos e Aprendizagem de Máquina - Pós Graduação em Big Data
 
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big Data
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big DataContexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big Data
Contexto de Big Data, Ciência de Dados e KDD - Pós Graduação em Big Data
 
Pré-processamento [no R] e Análise Exploratória - Curso de Big Data
Pré-processamento [no R] e Análise Exploratória - Curso de Big DataPré-processamento [no R] e Análise Exploratória - Curso de Big Data
Pré-processamento [no R] e Análise Exploratória - Curso de Big Data
 
Algoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoAlgoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionado
 
Human Activity Recognition
Human Activity RecognitionHuman Activity Recognition
Human Activity Recognition
 
Iniciativas em Big Data no VAGAS.com
Iniciativas em Big Data no VAGAS.comIniciativas em Big Data no VAGAS.com
Iniciativas em Big Data no VAGAS.com
 
Web Data Mining com R: identificação de spam utilizando Random Forest
Web Data Mining com R: identificação de spam utilizando Random ForestWeb Data Mining com R: identificação de spam utilizando Random Forest
Web Data Mining com R: identificação de spam utilizando Random Forest
 
Web Data Mining com R: design de projetos para criação de modelos preditivos
Web Data Mining com R: design de projetos para criação de modelos preditivosWeb Data Mining com R: design de projetos para criação de modelos preditivos
Web Data Mining com R: design de projetos para criação de modelos preditivos
 
Web Data Mining com R: criação de regras de associação a partir da navegação ...
Web Data Mining com R: criação de regras de associação a partir da navegação ...Web Data Mining com R: criação de regras de associação a partir da navegação ...
Web Data Mining com R: criação de regras de associação a partir da navegação ...
 
Web Data Mining com r: aprendizagem de máquina
Web Data Mining com r: aprendizagem de máquinaWeb Data Mining com r: aprendizagem de máquina
Web Data Mining com r: aprendizagem de máquina
 
Web Data Mining com R: pré-processamento de dados [no R]
Web Data Mining com R: pré-processamento de dados [no R]Web Data Mining com R: pré-processamento de dados [no R]
Web Data Mining com R: pré-processamento de dados [no R]
 
Data Science, Machine Learning and Big Data
Data Science, Machine Learning and Big DataData Science, Machine Learning and Big Data
Data Science, Machine Learning and Big Data
 
Uma introdução à mineração de informações na era do Big Data
Uma introdução à mineração de informações na era do Big DataUma introdução à mineração de informações na era do Big Data
Uma introdução à mineração de informações na era do Big Data
 
Projeto Simple Maps
Projeto Simple MapsProjeto Simple Maps
Projeto Simple Maps
 
Data, Text and Web Mining
Data, Text and Web MiningData, Text and Web Mining
Data, Text and Web Mining
 
Ferramentas Java para Recuperação e Mineração de Informações
Ferramentas Java para Recuperação e Mineração de InformaçõesFerramentas Java para Recuperação e Mineração de Informações
Ferramentas Java para Recuperação e Mineração de Informações
 
Atena: um sistema para suporte ao planejamento na área de Gestão de Projeto
Atena: um sistema para suporte ao planejamento na área de Gestão de ProjetoAtena: um sistema para suporte ao planejamento na área de Gestão de Projeto
Atena: um sistema para suporte ao planejamento na área de Gestão de Projeto
 

Último

Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINFabioFranca22
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralFranciscaArrudadaSil
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animalleandroladesenvolvim
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfSamuel Ramos
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfAroldoMenezes1
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individualpablocastilho3
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAMCassio Rodrigo
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalPauloHenrique154965
 

Último (11)

Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DIN
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboral
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animal
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individual
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
 

Oficina: construção de modelos descritivos e preditivos utilizando R

  • 1. O
  • 2. cina: construc~ao de modelos descritivos e preditivos utilizando R Fabrcio J. Barth fabricio.barth@gmail.com Faculdade BandTec e Watson Group IBM Outubro de 2014
  • 4. cina e apresentar exemplos de construc~ao de modelos descritos e preditivos utilizando a linguagem de programac~ao R. O
  • 5. cina: construc~ao de modelos descritivos e preditivos utilizando R | Objetivo 2
  • 6. Sumario Conceitos: aprendizagem de maquina, knowledge discovery in databases e a linguagem de programac~ao R. Analise de mensagens do twitter usando algoritmos de agrupamento. Desenvolvimento de algoritmos anti-spam. Considerac~oes
  • 8. cina: construc~ao de modelos descritivos e preditivos utilizando R | Sumario 3
  • 10. Knowledge Discovery in Databases (KDD) KDD e o processo n~ao trivial de identi
  • 11. cac~ao de padr~oes em dados que sejam validos, novos, potencialmente uteis e compreensveis [Fayyad, 1996]. Conceitos | Knowledge Discovery in Databases (KDD) 5
  • 12. Descobrir conhecimento util: Sintetizar informac~ao: ? a partir de logs de servidores web, identi
  • 13. car qual e o caminho mais frequente de navegac~ao dos usuarios no site. ? a partir de notcias publicadas em veculos web, sumarizar os principais eventos do dia. Prescrever ac~oes: ? a partir do historico de candidaturas em vagas de um candidato, recomendar novas vagas para o mesmo. ? a partir de conteudo previamente moderado, construir uma aplicac~ao capaz de moderar conteudo automaticamente. Conceitos | Knowledge Discovery in Databases (KDD) 6
  • 14. Processo de KDD 1. Qual e a pergunta? 2. Aquisic~ao e pre-processamento dos dados. 3. Analise Descritiva. 4. Modelagem: construc~ao do modelo descritivo ou preditivo. 5. Avaliac~ao do modelo. 6. Entrega: relatorios estaticos, din^amicos, sistemas ou funcionalidade de sistemas. Conceitos | Processo de KDD 7
  • 15. Aprendizagem de maquina Supervisionada Modelos preditivos Classificação Regressão Não supervisionada Modelos descritivos Aprendizagem Sumarização Associação Agrupamento Conceitos | Aprendizagem de maquina 8
  • 16. Exemplo de dataset com classe Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.10 3.50 1.40 0.20 setosa 2 4.90 3.00 1.40 0.20 setosa 3 4.70 3.20 1.30 0.20 setosa 4 4.60 3.10 1.50 0.20 setosa 5 5.00 3.60 1.40 0.20 setosa 52 6.40 3.20 4.50 1.50 versicolor 53 6.90 3.10 4.90 1.50 versicolor 54 5.50 2.30 4.00 1.30 versicolor 55 6.50 2.80 4.60 1.50 versicolor 56 5.70 2.80 4.50 1.30 versicolor 104 6.30 2.90 5.60 1.80 virginica 105 6.50 3.00 5.80 2.20 virginica 110 7.20 3.60 6.10 2.50 virginica 115 5.80 2.80 5.10 2.40 virginica Conceitos | Exemplo de dataset com classe 9
  • 17. Exemplo de modelo preditivo Conceitos | Exemplo de modelo preditivo 10
  • 18. Exemplos de aprendizagem n~ao supervisionada Table 1: Exemplo de tabela com conex~oes entre usuarios usuario user1 user2 user3 usern user1 1 1 0 1 user2 1 1 0 0 user3 1 0 1 0 user4 0 1 0 0 usern 1 1 0 1 Conceitos | Exemplos de aprendizagem n~ao supervisionada 11
  • 20. cac~ao de grupos em redes sociais Conceitos | Exemplo de identi
  • 21. cac~ao de grupos em redes sociais 12
  • 22. Ferramentas que suportam o processo de KDD O processo de KDD (pode/deve) ser suportado por ferramentas computacionais, tais como: R SPSS RapidMiner Weka Tableau Python, Julia, Octave, Matlab. Conceitos | Ferramentas que suportam o processo de KDD 13
  • 23. Projeto R http://www.r-project.org/ R Studio - http://www.rstudio.com/ E free E a linguagem de programac~ao mais popular para analise de dados Script e melhor que clicar e arastar: ? E mais facil de comunicar. ? Reproduzvel. ? E necessario pensar mais sobre o problema. Existe uma quantia grande de pacotes disponveis Conceitos | Projeto R 14
  • 24. Analise de mensagens do twitter usando algoritmos de agrupamento 15
  • 25. Componentes para uma soluc~ao... Coletor Fonte Pré-processamento dos documentos Agrupa documentos Agrupamentos de documentos Analise de mensagens do twitter usando algoritmos de agrupamento | Componentes para uma soluc~ao... 16
  • 26. Acessar e fazer o download do projeto https://github.com/fbarth/mlr Analise de mensagens do twitter usando algoritmos de agrupamento | Acessar e fazer o download do projeto 17
  • 27. Formato de um documento ... Esta disciplina tem como objetivo apresentar os principais conceitos da area de Intelig^encia Arti
  • 28. cial, caracterizar as principais tecnicas e metodos, e implementar alguns problemas classicos desta area sob um ponto de vista introdutorio. A estrategia de trabalho, o conteudo ministrado e a forma depender~ao dos projetos selecionados pelos alunos. Inicialmente, os alunos dever~ao trazer os seus Projetos de Conclus~ao de Curso, identi
  • 29. car intersecc~oes entre o projeto e a disciplina, e propor atividades para a disciplina. ... Analise de mensagens do twitter usando algoritmos de agrupamento | Formato de um documento 18
  • 30. Conjunto de Exemplos - Atributo/Valor Doc. apresent form tecnic caracteriz d1 0.33 0.33 0.33 0.33 d2 0 0.5 0.2 0.33 d3 1 0.6 0 0 d4 0.4 0.3 0.33 0.4 d5 1 0.4 0.1 0.1 dn Analise de mensagens do twitter usando algoritmos de agrupamento | Conjunto de Exemplos - Atributo/Valor 19
  • 31. Atributo/Valor usando vetores Como representar os documentos? !d i = (pi1; pi2; ; pin) (1) Os atributos s~ao as palavras que aparecem nos documentos. As palavras do texto precisam ser normalizadas: caixa baixa, remover acentuac~ao, remover stop-words, aplicar algoritmos de steamming. Analise de mensagens do twitter usando algoritmos de agrupamento | Atributo/Valor usando vetores 20
  • 32. Remover stop-words Em todos os idiomas existem atomos (palavras) que n~ao signi
  • 33. cam muito. Stop-words Esta disciplina tem como objetivo apresentar os principais conceitos da area de Intelig^encia Arti
  • 34. cial, caracterizar as principais tecnicas e metodos, e implementar alguns problemas classicos desta area sob um ponto de vista introdutorio. Analise de mensagens do twitter usando algoritmos de agrupamento | Remover stop-words 21
  • 35. Algoritmos de steamming Algumas palavras podem aparecer no texto de diversas maneiras: tecnica, tecnicas, implementar, implementac~ao... Stemming - encontrar o radical da palavra e usar apenas o radical. Analise de mensagens do twitter usando algoritmos de agrupamento | Algoritmos de steamming 22
  • 36. Atributo/Valor usando vetores Ja conhecemos os atributos. E os valores? ? Booleana - se a palavra aparece ou n~ao no documento (1 ou 0) ? Por frequ^encia do termo - a frequ^encia com que a palavra aparece no documento (normalizada ou n~ao) ? Ponderac~ao tf-idf - o peso e proporcional ao numero de ocorr^encias do termo no documento e inversamente proporcional ao numero de documentos onde o termo aparece. Analise de mensagens do twitter usando algoritmos de agrupamento | Atributo/Valor usando vetores 23
  • 37. Por frequ^encia do termo (apresent,0.33) (form,0.33) (tecnic,0.33) (caracteriz,0.33) (projet,1.0) (introdutori,0.33) (objet,0.33) (inteligente,0.33) (conclusa,0.33) (selecion,0.33) (intersecco,0.33) (classic,0.33) (identi
  • 38. c,0.33) (conceit,0.33) (trabalh,0.33) (disciplin,1.0) (traz,0.33) Analise de mensagens do twitter usando algoritmos de agrupamento | Por frequ^encia do termo 24
  • 39. Componentes para uma soluc~ao... Coletor Fonte Pré-processamento dos documentos Agrupa documentos Agrupamentos de documentos Analise de mensagens do twitter usando algoritmos de agrupamento | Componentes para uma soluc~ao... 25
  • 41. De
  • 42. nic~oes de Algoritmos de Agrupamento O objetivo dos algoritmos de agrupamento e colocar os objetos similares em um mesmo grupo e objetos n~ao similares em grupos diferentes. Normalmente, objetos s~ao descritos e agrupados usando um conjunto de atributos e valores. N~ao existe nenhuma informac~ao sobre a classe ou categoria dos objetos. Algoritmos para Agrupamento | De
  • 43. nic~oes de Algoritmos de Agrupamento 27
  • 44. Algoritmos para Agrupamento - K-means K signi
  • 45. ca o numero de agrupamentos (que deve ser informado a priori). Sequ^encia de ac~oes iterativas. A parada e baseada em algum criterio de qualidade dos agrupamentos (por exemplo, similaridade media). Algoritmos para Agrupamento | Algoritmos para Agrupamento - K-means 28
  • 46. Algoritmo para Agrupamento - K-means 5 4 3 2 5 4 3 2 1 0 1 2 3 4 5 6 7 8 5 4 3 2 5 4 3 2 1 0 1 2 3 4 5 6 7 8 1 0 1 2 3 4 5 6 7 8 (1) Objetos que devem ser agrupados 1 0 1 2 3 4 5 6 7 8 (2) Sorteio dos pontos centrais dos agrupamentos (3) Atribuição dos objetos aos agrupamentos (4) Definição do centro do agrupamento Algoritmos para Agrupamento | Algoritmo para Agrupamento - K-means 29
  • 47. Algoritmo K-means A medida de dist^ancia pode ser a dist^ancia Euclidiana: j !x !yj= vuut Xn i=1 (xi yi)2 (2) a func~ao para computar o ponto central pode ser: ! = 1 M X !x 2C !x (3) onde M e igual ao numero de pontos no agrupamento C. Algoritmos para Agrupamento | Algoritmo K-means 30
  • 49. Como determinar o melhor k? A medida de distribuic~ao dos pontos normalmente empregada e sum of squared errors. Algoritmos para Agrupamento | Como determinar o melhor k? 32
  • 51. Exemplos onde aplicar Desenvolvimento de algoritmos anti-spam | Exemplos onde aplicar 34
  • 54. cac~ao Desenvolvimento de algoritmos anti-spam | Modelos preditivos para classi
  • 56. Desenvolvimento de modelos preditivos para classi
  • 57. cac~ao Desenvolvimento de algoritmos anti-spam | Desenvolvimento de modelos preditivos para classi
  • 59. Aprendizado de arvores de decis~ao Desenvolvimento de algoritmos anti-spam | Aprendizado de arvores de decis~ao 38
  • 61. cac~ao de Spam Objetivo: identi
  • 62. cac~ao de spam no www.apontador.com.br (Location Based Social Network). Tipos de atributos utilizados para caracterizar o conjunto de posts no site: conteudo, sobre o usuario, sobre o lugar e social. Desenvolvimento de algoritmos anti-spam | Exemplo de classi
  • 64. Desenvolvimento de algoritmos anti-spam | Exemplo de classi
  • 66. Quest~oes... Q1: Sera que e possvel construir uma func~ao de anti-spam com acuracia acima de 90 % apenas com atributos de conteudo? Desenvolvimento de algoritmos anti-spam | Quest~oes... 41
  • 67. Metodo para construc~ao do modelo: Florestas de arvores de decis~ao Desenvolvimento de algoritmos anti-spam | Metodo para construc~ao do modelo: Florestas de arvores de decis~ao 42
  • 68. Codigo Projeto: https://github.com/fbarth/mlr Arquivo: scripts/antiSpam/attr conteudos.R Desenvolvimento de algoritmos anti-spam | Codigo 43
  • 69. Quest~oes... Q1: Sera que e possvel construir uma func~ao de anti-spam com acuracia acima de 90 % apenas com atributos de conteudo? Q2: Sera que e possvel construir uma func~ao de anti-spam com acuracia acima de 90 % utilizando todos os tipos de atributos coletados? Desenvolvimento de algoritmos anti-spam | Quest~oes... 44
  • 70. Codigo Projeto: https://github.com/fbarth/mlr Arquivo: scripts/antiSpam/attr todos.R Desenvolvimento de algoritmos anti-spam | Codigo 45
  • 72. nais Analise de mensagens do twitter ? Transformac~ao de informac~ao n~ao-estruturada em estruturada. ? Uso do algoritmo k-means ? Este mesmo processo pode ser aplicado para outros problemas similares: analise de notcias, analise de patentes e artigos cient
  • 73. cos. Desenvolvimento de algoritmos anti-spam | Considerac~oes
  • 75. Desenvolvimento de algoritmos anti-spam ? Uso do algoritmo random forest. ? Como desenvolver e avaliar um modelo preditivo. ? Este mesmo processo pode ser aplicado para outros problemas similares, inclusive problemas de recomendac~ao de itens. Desenvolvimento de algoritmos anti-spam | Considerac~oes
  • 77. Material de consulta Estes slides, inclusive o codigo fonte em LATEX, podem ser acessados no projeto http://github.com/fbarth/lectures. Todo o material do projeto palestras e Creative Commons. Ou seja, pode copiar a vontade! Mas tem que citar a origem! Desenvolvimento de algoritmos anti-spam | Material de consulta 48
  • 78. http://fbarth.net.br/materiais/webMiningR.html: tutorial apresentado no Mozilla Tech Day 2013. http://rpubs.com/fbarth/: scripts em R para problemas de Aprendizagem de Maquina. Outros projetos na conta fbarth do GitHub. fabricio.barth@gmail.com Desenvolvimento de algoritmos anti-spam | Material de consulta 49
  • 79. Refer^encias Bing Liu. Web Data Mining: exploring hyperlinks, contents, and usage data, 2008. Tom Mitchell. Machine Learning, 1997. Iah H. Witteh and Eibe Frank. Data Mining: Practical Machine Learning Tools and Techniques (Third Edition), 2011. Pang-Ning Tan, Michael Steinbach and Vipin Kumar. Introduction to Data Mining, 2006. Andrew Ng. http://www.ml-class.org Desenvolvimento de algoritmos anti-spam | Refer^encias 50
  • 81. cation and regression by randomForest. R News, vol. 3, number 3, pages 18-22, 2002. Costa, H.; Merschmann, L. H. C.; Barth, F.; Benevenuto, F. Pollution, Bad-mouthing, and Local Marketing: The Underground of Location-based Social Networks. Information Sciences, 2014. RDataMining.com: Text Mining. http://www.rdatamining.com/examples/text-mining. Acessado em 14 de junho de 2013. Ingo Feinerer. Introduction to the tm Package: Text Mining in R. http://cran.r-project. org/web/packages/tm/vignettes/tm.pdf. Acessado em 14 de junho de 2013. Desenvolvimento de algoritmos anti-spam | Refer^encias 51
  • 82. Barth, F. J. Ferramentas para a detecc~ao de grupos em Wikis. In: VII Simposio Brasileiro de Sistemas Colaborativos, 2010, Belo Horizonte. Anais do VII Simposio Brasileiro de Sistemas Colaborativos. IEEE Computer Society, 2010. v.II. p.8 - 11. Barth, F. J. ; Belderrain, M. C. R. ; Quadros, N. L. P. ; Ferreira, L. L. ; Timoszczuk, A. P. . Recuperac~ao e minerac~ao de informac~oes para a area criminal. In: VI Encontro Nacional de Intelig^encia Arti
  • 83. cial, 2007, Rio de Janeiro. Anais do XXVII Congresso da SBC, 2007. Desenvolvimento de algoritmos anti-spam | Refer^encias 52