SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
Apache Mahout
Biblioteca Open-Source para Aprendizagem de Máquina com ALTA
                       ESCALABILIDADE


                         J. Gabriel Lima
                    jgabriel.ufpa@gmail.com
             LINC - Laboratório de Inteligência Artificial
• Outrora domínio exclusivo de acadêmicos e corporações
  com grandes orçamentos de pesquisa, as aplicações
  inteligentes que aprendem a partir de dados e
  contribuição de usuário estão se tornando mais comuns.
• A necessidade por técnicas de aprendizagem de máquina,
  como      armazenamento     em     cluster,   filtragem
  colaborativa, e categorização nunca foi maior, seja para
  localizar aspectos em comum entre grandes grupos de
  pessoas ou rotular automaticamente grandes volumes de
  conteúdo de Web.
• A aprendizagem por máquina é um subcampo da
  inteligência artificial referente a técnicas que permitem
  os computadores melhorarem seus resultados com base
  em experiências anteriores.
  • O campo é estritamente relacionado à mineração de dados e
    geralmente utiliza técnicas de estatística, teoria da
    probabilidade, reconhecimento de padrões, e uma série
    de outras áreas.
O projeto Apache Mahout visa facilitar e acelerar a
      construção de aplicações inteligentes.
CENÁRIO:
• Processar centenas ou milhares de mensagens de e-mail
  pessoais por dia ou vasculhar a intenção de usuários a partir
  de petabytes de weblogs...
Embora a aprendizagem por máquina não seja um campo
 recente, encontra-se definitivamente em crescimento
A cada dia muito mais empresas se beneficiam do
  aproveitamento da aprendizagem por máquina em suas
aplicações para aprender com usuários e situações passadas.
• Os usos da aprendizagem por máquina abrangem desde jogos
  passando pela detecção de fraudes até a análise da bolsa de valores


• Exemplos:
  • Netflix
  • Amazon
       • Recomendam produtos aos usuários com base em compras passadas.
  • Sistemas que encontram todos os artigos de notícias similares em um
    determinado dia.


  • Categorizar páginas de Web automaticamente conforme o gênero
    (esportes, economia, guerra).


  • Marcar mensagens de e-mail como spam.
• O projeto foi iniciado por várias pessoas envolvidas na
  comunidade Apache Lucene (busca de fonte aberta) com um
  interesse ativo em aprendizagem por máquina e um anseio por
  implementações robustas, bem-documentadas e escaláveis de
  algoritmos de aprendizagem por máquina para armazenamento
  em cluster e categorização.
• O Mahout também visa:
  • Construir e suportar uma comunidade de usuários e contribuidores,
    de modo que o código dure mais do que qualquer envolvimento de
    contribuidor particular ou qualquer empresa privada ou fundo
    universitário.



• Concentra-se em casos de uso prático do mundo real em oposição
  a pesquisas de vanguarda ou técnicas não comprovadas.


• Fornece documentação de qualidade e exemplos.
Algoritmo                               Breve descrição                             Caso de uso
Regressão logística, solucionada pelo   Classificador sequencial simples e          Recomendação de anúncios a usuários,
Stochastic Gradient Descent (SGD)       extremamente rápido com capacidade de       classificação de texto em categorias
                                        aprendizado on-line em ambientes
                                        exigentes

Hidden Markov Models (HMM)              Implementações sequenciais e paralelas do Identificação de texto de parte do discurso;
                                        clássico algoritmo de classificação para  reconhecimento de discurso
                                        modelar processos do mundo real quando o
                                        processo de geração subjacente é
                                        desconhecido


Singular Value Decomposition (SVD)      Projetada para reduzir o ruído em grandes   Como um precursor ao armazenamento em
                                        matrizes, tornando-as menores e mais        cluster, recomendadores e classificação
                                        fáceis de trabalhar                         para realizar a seleção de recurso
                                                                                    automaticamente

Armazenamento em cluster Dirichlet      Abordagem com base em modelo ao          Útil quando os dados têm sobreposição ou
                                        armazenamento em cluster que determina a hierarquia
                                        associação de acordo com se os dados se
                                        ajustam ao modelo subjacente


Armazenamento em cluster espectral      Família de abordagens similares que usam Como todos os algoritmos de
                                        uma abordagem com base em gráfico para armazenamento em cluster, útil para
                                        determinar a associação do cluster       explorar conjuntos de dados grandes e não
                                                                                 vistos

Armazenamento em cluster Minhash        Usa uma estratégia de hashing para          Igual a outras abordagens de
                                        agrupar itens similares, produzindo, assim, armazenamento em cluster
                                        os clusters

Diversas melhorias de recomendador      Coocorrências distribuídas, SVD, mínimos    Sites de namoro, e-commerce,
                                        quadrados alternados                        recomendações de filmes ou livros

Disposições                             Implementação de disposições ativadas       Localização de frases estatisticamente
                                        para redução de mapa                        interessantes em texto
• Para o Mahout, essa evolução levou a diversas melhorias. A mais
  importante é uma interface de linha de comando muito aprimorada e
  consistente, que torna mais fácil enviar e executar tarefas
  localmente e no Apache Hadoop.
• Não apenas implementar algoritmos de aprendizagem de
  máquina...
• ESCALABILIDADE!!!!




Mahout?... PQ?!
• Com a necessidade de aplicações mais escaláveis nos dias atuais, talvez você precise
  “desnormalisar” o seu banco de dados:


 •   O que adiantaria uma foreign key se você tem tabelas espalhadas em diversos data
     centers? Por questões de performance, dados podem ser distribuídos em data centers
     distintos, então como buscar pelo id se você não sabe onde está esse dado? Por isso é
     importantíssimo que a aplicação controle essa integridade, para não depender de
     constraints e stored procedures do banco de dados.




      Apache Handoop
• Implementações de MapReduce
 •   Um modelo de programação, e framework introduzido pelo Google para suportar
     computações paralelas em grandes coleções de dados em clusters de computadores.
• Aplicações que usam o Hadoop

Com essa grande capacidade de processamento e armazenamento
de dados o Hadoop tem uma ampla aplicação no ramo de
tecnologia de informação, por exemplo, na busca (Google),
processamento de log, Business Intelligence, Data Warehousing,
análise de video e imagens e outros.
• Conforme mais pessoas usam um projeto de software
  livre e trabalham para fazer o código do projeto
  funcionar com o seu código, mais a infraestrutura é
  preenchida.


• Para o Mahout, essa evolução levou a diversas melhorias.
Considerações Finais e
  Trabalhos futuros

Weitere ähnliche Inhalte

Ähnlich wie Apache Mahout: Biblioteca Open-Source para Aprendizagem de Máquina com ALTA ESCALABILIDADE

Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisLuiz Bettega
 
Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Ambiente Livre
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsHoracio Ibrahim
 
OS CINCO Vs DO BIG DATA
OS CINCO Vs DO BIG DATAOS CINCO Vs DO BIG DATA
OS CINCO Vs DO BIG DATALeonardo Dias
 
Cloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasCloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasRafael Bandeira
 
Vladimir infomobileonair
Vladimir infomobileonairVladimir infomobileonair
Vladimir infomobileonairInfomobile
 
NoSQL: Uma análise crítica
NoSQL: Uma análise críticaNoSQL: Uma análise crítica
NoSQL: Uma análise críticapichiliani
 
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...Eduardo Hahn
 
Sistemas de Informação (SAD / OLAP)
Sistemas de Informação (SAD / OLAP)Sistemas de Informação (SAD / OLAP)
Sistemas de Informação (SAD / OLAP)m4rkSpinelli
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud ComputingFrederico Madeira
 
First Big Data Week
First Big Data Week First Big Data Week
First Big Data Week Hélio Silva
 

Ähnlich wie Apache Mahout: Biblioteca Open-Source para Aprendizagem de Máquina com ALTA ESCALABILIDADE (20)

Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveis
 
Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre Cientista de Dados – Dominando o Big Data com Software Livre
Cientista de Dados – Dominando o Big Data com Software Livre
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_ics
 
Big data e ecossistema hadoop
Big data e ecossistema hadoopBig data e ecossistema hadoop
Big data e ecossistema hadoop
 
Big Data
Big DataBig Data
Big Data
 
DataTechDay4 - Carlos Oeiras
DataTechDay4 - Carlos OeirasDataTechDay4 - Carlos Oeiras
DataTechDay4 - Carlos Oeiras
 
Computação de alta performance
Computação de alta performanceComputação de alta performance
Computação de alta performance
 
Inteligência Artificial e Data Science
Inteligência Artificial e Data ScienceInteligência Artificial e Data Science
Inteligência Artificial e Data Science
 
OS CINCO Vs DO BIG DATA
OS CINCO Vs DO BIG DATAOS CINCO Vs DO BIG DATA
OS CINCO Vs DO BIG DATA
 
Cloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasCloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações Práticas
 
Vladimir infomobileonair
Vladimir infomobileonairVladimir infomobileonair
Vladimir infomobileonair
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
Big Data
Big DataBig Data
Big Data
 
NoSQL: Uma análise crítica
NoSQL: Uma análise críticaNoSQL: Uma análise crítica
NoSQL: Uma análise crítica
 
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
 
NoSQL
NoSQLNoSQL
NoSQL
 
Sistemas de Informação (SAD / OLAP)
Sistemas de Informação (SAD / OLAP)Sistemas de Informação (SAD / OLAP)
Sistemas de Informação (SAD / OLAP)
 
No sql o_que_e_isso.key
No sql o_que_e_isso.keyNo sql o_que_e_isso.key
No sql o_que_e_isso.key
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
First Big Data Week
First Big Data Week First Big Data Week
First Big Data Week
 

Mehr von João Gabriel Lima

Deep marketing - Indoor Customer Segmentation
Deep marketing - Indoor Customer SegmentationDeep marketing - Indoor Customer Segmentation
Deep marketing - Indoor Customer SegmentationJoão Gabriel Lima
 
Aplicações de Alto Desempenho com JHipster Full Stack
Aplicações de Alto Desempenho com JHipster Full StackAplicações de Alto Desempenho com JHipster Full Stack
Aplicações de Alto Desempenho com JHipster Full StackJoão Gabriel Lima
 
Realidade aumentada com react native e ARKit
Realidade aumentada com react native e ARKitRealidade aumentada com react native e ARKit
Realidade aumentada com react native e ARKitJoão Gabriel Lima
 
Big data e Inteligência Artificial
Big data e Inteligência ArtificialBig data e Inteligência Artificial
Big data e Inteligência ArtificialJoão Gabriel Lima
 
Mineração de Dados no Weka - Regressão Linear
Mineração de Dados no Weka -  Regressão LinearMineração de Dados no Weka -  Regressão Linear
Mineração de Dados no Weka - Regressão LinearJoão Gabriel Lima
 
Segurança na Internet - Estudos de caso
Segurança na Internet - Estudos de casoSegurança na Internet - Estudos de caso
Segurança na Internet - Estudos de casoJoão Gabriel Lima
 
Segurança na Internet - Google Hacking
Segurança na Internet - Google  HackingSegurança na Internet - Google  Hacking
Segurança na Internet - Google HackingJoão Gabriel Lima
 
Segurança na Internet - Conceitos fundamentais
Segurança na Internet - Conceitos fundamentaisSegurança na Internet - Conceitos fundamentais
Segurança na Internet - Conceitos fundamentaisJoão Gabriel Lima
 
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...João Gabriel Lima
 
Mineração de dados na prática com RapidMiner e Weka
Mineração de dados na prática com RapidMiner e WekaMineração de dados na prática com RapidMiner e Weka
Mineração de dados na prática com RapidMiner e WekaJoão Gabriel Lima
 
Visualizacao de dados - Come to the dark side
Visualizacao de dados - Come to the dark sideVisualizacao de dados - Come to the dark side
Visualizacao de dados - Come to the dark sideJoão Gabriel Lima
 
REST x SOAP : Qual abordagem escolher?
REST x SOAP : Qual abordagem escolher?REST x SOAP : Qual abordagem escolher?
REST x SOAP : Qual abordagem escolher?João Gabriel Lima
 
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...João Gabriel Lima
 
E-trânsito cidadão - IPVA em suas mãos
E-trânsito cidadão - IPVA em suas mãosE-trânsito cidadão - IPVA em suas mãos
E-trânsito cidadão - IPVA em suas mãosJoão Gabriel Lima
 
[Estácio - IESAM] Automatizando Tarefas com Gulp.js
[Estácio - IESAM] Automatizando Tarefas com Gulp.js[Estácio - IESAM] Automatizando Tarefas com Gulp.js
[Estácio - IESAM] Automatizando Tarefas com Gulp.jsJoão Gabriel Lima
 
Hackeando a Internet das Coisas com Javascript
Hackeando a Internet das Coisas com JavascriptHackeando a Internet das Coisas com Javascript
Hackeando a Internet das Coisas com JavascriptJoão Gabriel Lima
 
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e Programador
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e ProgramadorMercado de Trabalho em Computação - Perfil Analista de Sistemas e Programador
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e ProgramadorJoão Gabriel Lima
 

Mehr von João Gabriel Lima (20)

Cooking with data
Cooking with dataCooking with data
Cooking with data
 
Deep marketing - Indoor Customer Segmentation
Deep marketing - Indoor Customer SegmentationDeep marketing - Indoor Customer Segmentation
Deep marketing - Indoor Customer Segmentation
 
Aplicações de Alto Desempenho com JHipster Full Stack
Aplicações de Alto Desempenho com JHipster Full StackAplicações de Alto Desempenho com JHipster Full Stack
Aplicações de Alto Desempenho com JHipster Full Stack
 
Realidade aumentada com react native e ARKit
Realidade aumentada com react native e ARKitRealidade aumentada com react native e ARKit
Realidade aumentada com react native e ARKit
 
JS - IA
JS - IAJS - IA
JS - IA
 
Big data e Inteligência Artificial
Big data e Inteligência ArtificialBig data e Inteligência Artificial
Big data e Inteligência Artificial
 
Mineração de Dados no Weka - Regressão Linear
Mineração de Dados no Weka -  Regressão LinearMineração de Dados no Weka -  Regressão Linear
Mineração de Dados no Weka - Regressão Linear
 
Segurança na Internet - Estudos de caso
Segurança na Internet - Estudos de casoSegurança na Internet - Estudos de caso
Segurança na Internet - Estudos de caso
 
Segurança na Internet - Google Hacking
Segurança na Internet - Google  HackingSegurança na Internet - Google  Hacking
Segurança na Internet - Google Hacking
 
Segurança na Internet - Conceitos fundamentais
Segurança na Internet - Conceitos fundamentaisSegurança na Internet - Conceitos fundamentais
Segurança na Internet - Conceitos fundamentais
 
Web Machine Learning
Web Machine LearningWeb Machine Learning
Web Machine Learning
 
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...
Mineração de Dados com RapidMiner - Um Estudo de caso sobre o Churn Rate em...
 
Mineração de dados na prática com RapidMiner e Weka
Mineração de dados na prática com RapidMiner e WekaMineração de dados na prática com RapidMiner e Weka
Mineração de dados na prática com RapidMiner e Weka
 
Visualizacao de dados - Come to the dark side
Visualizacao de dados - Come to the dark sideVisualizacao de dados - Come to the dark side
Visualizacao de dados - Come to the dark side
 
REST x SOAP : Qual abordagem escolher?
REST x SOAP : Qual abordagem escolher?REST x SOAP : Qual abordagem escolher?
REST x SOAP : Qual abordagem escolher?
 
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...
Game of data - Predição e Análise da série Game Of Thrones a partir do uso de...
 
E-trânsito cidadão - IPVA em suas mãos
E-trânsito cidadão - IPVA em suas mãosE-trânsito cidadão - IPVA em suas mãos
E-trânsito cidadão - IPVA em suas mãos
 
[Estácio - IESAM] Automatizando Tarefas com Gulp.js
[Estácio - IESAM] Automatizando Tarefas com Gulp.js[Estácio - IESAM] Automatizando Tarefas com Gulp.js
[Estácio - IESAM] Automatizando Tarefas com Gulp.js
 
Hackeando a Internet das Coisas com Javascript
Hackeando a Internet das Coisas com JavascriptHackeando a Internet das Coisas com Javascript
Hackeando a Internet das Coisas com Javascript
 
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e Programador
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e ProgramadorMercado de Trabalho em Computação - Perfil Analista de Sistemas e Programador
Mercado de Trabalho em Computação - Perfil Analista de Sistemas e Programador
 

Apache Mahout: Biblioteca Open-Source para Aprendizagem de Máquina com ALTA ESCALABILIDADE

  • 1. Apache Mahout Biblioteca Open-Source para Aprendizagem de Máquina com ALTA ESCALABILIDADE J. Gabriel Lima jgabriel.ufpa@gmail.com LINC - Laboratório de Inteligência Artificial
  • 2. • Outrora domínio exclusivo de acadêmicos e corporações com grandes orçamentos de pesquisa, as aplicações inteligentes que aprendem a partir de dados e contribuição de usuário estão se tornando mais comuns.
  • 3. • A necessidade por técnicas de aprendizagem de máquina, como armazenamento em cluster, filtragem colaborativa, e categorização nunca foi maior, seja para localizar aspectos em comum entre grandes grupos de pessoas ou rotular automaticamente grandes volumes de conteúdo de Web.
  • 4. • A aprendizagem por máquina é um subcampo da inteligência artificial referente a técnicas que permitem os computadores melhorarem seus resultados com base em experiências anteriores. • O campo é estritamente relacionado à mineração de dados e geralmente utiliza técnicas de estatística, teoria da probabilidade, reconhecimento de padrões, e uma série de outras áreas.
  • 5. O projeto Apache Mahout visa facilitar e acelerar a construção de aplicações inteligentes.
  • 6. CENÁRIO: • Processar centenas ou milhares de mensagens de e-mail pessoais por dia ou vasculhar a intenção de usuários a partir de petabytes de weblogs...
  • 7. Embora a aprendizagem por máquina não seja um campo recente, encontra-se definitivamente em crescimento
  • 8.
  • 9. A cada dia muito mais empresas se beneficiam do aproveitamento da aprendizagem por máquina em suas aplicações para aprender com usuários e situações passadas.
  • 10. • Os usos da aprendizagem por máquina abrangem desde jogos passando pela detecção de fraudes até a análise da bolsa de valores • Exemplos: • Netflix • Amazon • Recomendam produtos aos usuários com base em compras passadas. • Sistemas que encontram todos os artigos de notícias similares em um determinado dia. • Categorizar páginas de Web automaticamente conforme o gênero (esportes, economia, guerra). • Marcar mensagens de e-mail como spam.
  • 11. • O projeto foi iniciado por várias pessoas envolvidas na comunidade Apache Lucene (busca de fonte aberta) com um interesse ativo em aprendizagem por máquina e um anseio por implementações robustas, bem-documentadas e escaláveis de algoritmos de aprendizagem por máquina para armazenamento em cluster e categorização.
  • 12. • O Mahout também visa: • Construir e suportar uma comunidade de usuários e contribuidores, de modo que o código dure mais do que qualquer envolvimento de contribuidor particular ou qualquer empresa privada ou fundo universitário. • Concentra-se em casos de uso prático do mundo real em oposição a pesquisas de vanguarda ou técnicas não comprovadas. • Fornece documentação de qualidade e exemplos.
  • 13. Algoritmo Breve descrição Caso de uso Regressão logística, solucionada pelo Classificador sequencial simples e Recomendação de anúncios a usuários, Stochastic Gradient Descent (SGD) extremamente rápido com capacidade de classificação de texto em categorias aprendizado on-line em ambientes exigentes Hidden Markov Models (HMM) Implementações sequenciais e paralelas do Identificação de texto de parte do discurso; clássico algoritmo de classificação para reconhecimento de discurso modelar processos do mundo real quando o processo de geração subjacente é desconhecido Singular Value Decomposition (SVD) Projetada para reduzir o ruído em grandes Como um precursor ao armazenamento em matrizes, tornando-as menores e mais cluster, recomendadores e classificação fáceis de trabalhar para realizar a seleção de recurso automaticamente Armazenamento em cluster Dirichlet Abordagem com base em modelo ao Útil quando os dados têm sobreposição ou armazenamento em cluster que determina a hierarquia associação de acordo com se os dados se ajustam ao modelo subjacente Armazenamento em cluster espectral Família de abordagens similares que usam Como todos os algoritmos de uma abordagem com base em gráfico para armazenamento em cluster, útil para determinar a associação do cluster explorar conjuntos de dados grandes e não vistos Armazenamento em cluster Minhash Usa uma estratégia de hashing para Igual a outras abordagens de agrupar itens similares, produzindo, assim, armazenamento em cluster os clusters Diversas melhorias de recomendador Coocorrências distribuídas, SVD, mínimos Sites de namoro, e-commerce, quadrados alternados recomendações de filmes ou livros Disposições Implementação de disposições ativadas Localização de frases estatisticamente para redução de mapa interessantes em texto
  • 14. • Para o Mahout, essa evolução levou a diversas melhorias. A mais importante é uma interface de linha de comando muito aprimorada e consistente, que torna mais fácil enviar e executar tarefas localmente e no Apache Hadoop.
  • 15. • Não apenas implementar algoritmos de aprendizagem de máquina... • ESCALABILIDADE!!!! Mahout?... PQ?!
  • 16. • Com a necessidade de aplicações mais escaláveis nos dias atuais, talvez você precise “desnormalisar” o seu banco de dados: • O que adiantaria uma foreign key se você tem tabelas espalhadas em diversos data centers? Por questões de performance, dados podem ser distribuídos em data centers distintos, então como buscar pelo id se você não sabe onde está esse dado? Por isso é importantíssimo que a aplicação controle essa integridade, para não depender de constraints e stored procedures do banco de dados. Apache Handoop • Implementações de MapReduce • Um modelo de programação, e framework introduzido pelo Google para suportar computações paralelas em grandes coleções de dados em clusters de computadores.
  • 17. • Aplicações que usam o Hadoop Com essa grande capacidade de processamento e armazenamento de dados o Hadoop tem uma ampla aplicação no ramo de tecnologia de informação, por exemplo, na busca (Google), processamento de log, Business Intelligence, Data Warehousing, análise de video e imagens e outros.
  • 18. • Conforme mais pessoas usam um projeto de software livre e trabalham para fazer o código do projeto funcionar com o seu código, mais a infraestrutura é preenchida. • Para o Mahout, essa evolução levou a diversas melhorias.
  • 19. Considerações Finais e Trabalhos futuros