Introdução a Machine Learning

Post on 12-Apr-2017

68 views 1 download

Transcript of Introdução a Machine Learning

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Moacyr Mello

Aprendizagem de MáquinaPossibilidades e Aplicações

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Exemplo de código fonte

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Programação explícitaImperativo e procedural, declarativo, funcional ou orientado a objetos,etc, etc ...

● Seja qual for o modelo, todos direcionam a máquina para tomar decisões, por assim dizer, “fixas”.

● Especialistas de domínio podem criar sistemas com memória, mas se não ultrapassarem o conhecimento armazenado, tbém são “fixos”.

● Um sistema especialista pode depender de uma base de conhecimento, mas o conhecimento já está presente quando de sua construção.

● Quando a programação permite à máquina adquirir mais conhecimento do que o originalmente incluído, temos o “aprendizado”.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Aprendizagem de máquina

“Campo de estudo que dá aos computadores a habilidade de aprender sem ser explicitamente programado.”

1959, Arthur Samuel

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Aprendizado

● Aqui aprendizado é uma inferência indutiva:● A máquina observa exemplos,

– (que representam uma informação incompleta sobre determinado assunto)

● Prediz a resposta para exemplares que não foram observados.

● O aprendizado não é apenas memorização, mas também generalização.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Tipicamente

● Conjunto de treinamento com os exemplos (training set)● Algum algoritmo adequado (learning algo.)● Hipótese (modelo de aprendizado, p.exp.: Linear)● Exemplar de entrada (x)● Predição de saída (y)

Recomendação + conceitual e teórica: Caltech's Machine Learning Course - CS 156 by Prof. Yaser Abu-Mostafa

https://www.youtube.com/watch?v=mbyG85GZ0PI

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Exemplo

m2 R$ x 1000

200 800

150 200

400 700

300 500

100 300

300 650

Como um corretor de imóveis poderia estimar o preço de um imóvel novo?

Recomendação + prática: Stanford Machine Learning Course - CS 156 by Prof. Andrew Ng

https://www.youtube.com/watch?v=UzxYlbK2c7E

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Hipótese

● A função hipótese é o modelo que aproxima a função alvo desconhecida.

● Os exemplos são usados para obter os coeficientes da hipótese.

● O objetivo é minimizar uma determinada função de custo (ou erro), função J, que permite obter os coeficientes da hipótese.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Exemplo de função de custo quadrática: J = f (h(x) - y)2

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Aspecto de uma função de custo de com 2 coeficientes (ou parâmetros)

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Tipicamente aplicamos machine learning quando...

● Há um padrão a ser aprendido– Supomos um padrão ou sabemos existente

● Não podemos descrevê-lo matematicamente– Não há solução analítica ou é muito difícil

● Temos dados disponíveis– Há exemplos suficientes

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Tipicamente nos defrontamos...

● Problema do aprendizado● Representação do Conhecimento● Erro e ruído● Treinamento versus teste● Problema da generalização● Bias-Variance tradeoff● Overfitting● Regularization● Validation● Normalization● Scaling● Decision boundary

● Features/attributes● Classification● Regression● Training set/examples● Target variable● Feature mapping● Feature no● Aprendizado supervisionado/não-

supervisionado● Clustering● Recomendation

Minimizar a função de erro (ou função de custo).

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Classificação

● eMail: spam/não-spam, 0/1● Transações financeiras: fraude/não-fraude,

0/1● Tumor: benigno/maligno, No/Yes, 0/1

Andrew Ng

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Classificação versus clusterização

Andrew Ng

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Singularity Hub, Newsletter.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Redes neurais e deep learning

Andrew Nghttp://deeplearning.net/https://datasciencebr.com

Andrew Ng, Google em 2012, imagens gatos de 10 milhões de vídeos do YouTube!

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

“Todas as coisas são números.”

Pitágoras..

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Tribos em ML...● Simbolistas

– Sistemas baseados em regras, “zero learning”.– Lisp, Prolog, SemanticWeb, RDF e OWL

● Evolucionistas– processos biológicos evolucionistas, crossover e mutação, geram inteligência emergente.– Algoritmos genéticos, CAS – Complex Adaptative Systems

● Bayesianos– Regras probabilísticas, próximo dos simbolistas mas com incerteza.– PGM – Prob. Graph Models, Edward que combina com Deep Learning

● Os conservadores do Kernel– SVM e soluções matemáticas para separação não-linear

● Os que abraçam as Árvores– Modelos baseados em árvores de decisão lógicas.– Randon Forrest, Boosted Decision Trees

● Coneccionistas– O comportamento inteligente surge de mecanismos simples, altamente conectados.– Perceptrons (1959), Deep Learning https://www.linkedin.com/pulse/many-tribes-artificial-intelligence

-ai-carlos-e-perez?trk=hp-feed-article-title-like

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Machine learning & Software projs.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Deslocamento da Eng. Softw.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Há 3 core skills (Gartner):

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Frankdiana.net

Machine learning temo maior número de ligaçõese implicações. Será a base damaioria das iniciativas !

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Comunidade de Analytics, big Data e Machine Learning.

Advanced Analytics - Gartner:

Análise de todos os tipos de dados usando métodos quantitativos sofisticados para produzir insights:

Estatísticas Data mining preditiva ou descritiva Aprendizagem de máquina Simulação e otimização

Está além das abordagens tradicionais de BI, tais como query e reporting

Mudanças na comunidade (1)

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Mudanças na comunidade (2)Comunidade de Analytics, big Data e Machine Learning.

Cognitive Computing/Services – IBM / Microsoft:

Customize the language model of the speech recognizer by tailoring it to the vocabulary of the application and the speaking style of your users

Customize the acoustic model of the speech recognizer to better match the expected environment and user population of your application.

Ultrapassa a simples speech recognition:speaking style, vocabulário e background noise

Posicionam-se como estando além das abordagens tradicionais de Machine Learning, tais como interpolação, extrapolação e classificação

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Exemplo de API utilizando Watson

APIAPI

O modelo de implicação é um modelodesenvolvido pelo usuário da API, podeser mais ou menos elaborado, massempre existe.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Watson serviço tom emocional

Tipo social: retorna aberto, extrovertido, etc.Tipo de escrita/linguagem: retorna analítico, confiante, etc.Tom emocional: retorna joy, sadness, etc. BigFive, modelo dos fatores psicológicos.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Watson serviço de imagens

"age": {    "max": 24,    "min": 18,    "score": 0.502411    },"gender": {    "gender": "MALE",    "score": 0.989013    }

Classificar uma imagem: retorna classes de coisas possíveis.Detectar faces na imagem: retorna age, gender, etcDetectar texto (beta): retorna o texto classificado.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Combinação de diferentes campos

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Olhar nas ferramentas ...

● Scikit Learn– Ferramentas simples e eficientes para data mining e data analysis.– Acessível a todos e reusavel em muitos contextos.– Construído com Python, NumPy, SciPy e Matplotlib.

● Spark– Desenvolve aplicações em Java, Scala, Python, R. Mais rápido que o Hadoop.

● MXNet– MXNet é um framework open-source de deep learning framework que permite

definir, treinar e implantar deep neural networks numa variedade de máquinas, de cloud à mobile.

● Keras– É uma biblioteca de alto nível para redes neurais e Deep Learning. Escrita em

Python e capaz de rodar seja em TensorFlow ou Theano. Foi desenvolvida com o foco da rápida experimentação, sendo capaz de ir da ideia ao resultado com o menor tempo.

● SAS High Performance Analytics (HPA) é uma solução proprietária baseada na interface MPI, muito bem posicionada segundo o Gartner.

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

Curadoria Tecnológica● Uso tradicional

– É um especialista no conteúdo do acervo de uma instituição e tem a função de escolher o que mostrar e orientar sobre tendências.

● Curadoria Tecnológica na we.CoLab– Curadores de conteúdo que garimpam, selecionam e organizam

métodos e tecnologias para oferecê-las às startups que desenvolvem projetos na we.CoLab.

– Ajuda nas escolhas que as startups fazem e, desse modo, acrescentam valor ao ambiente de colaboração do co-working.

● Integrar os interesses com visão especializada.

“Ajuda a levantar a carga, mas não a carregues.”

Pitágoras..

Curadoria Moacyr Mello moacyr.mello@wecolab.com.br

InfraestruturaPossuímos espaços designados

para coworking, salas de reunião, internet, impressora, cozinha e

café.

StartupsAceleramos as startups através de treinamentos e mentorização, no

amadurecimento de seu modelo de negócio, e na busca por investimento externo.

Células de InovaçãoMontamos células de inovação para transformação digital, que

desenvolvem protótipos e testam novos modelos de negócio.

Utilizamos o conceito se startup satélites.

CoachingPossuímos consultores de negócios para auxiliar no desenvolvimento de business plans, go-to-Market,

modelos de negócio, estratégias e orientar startups.

Problem SolvingMontamos células de trabalho, com recursos da we.CoLab e do cliente para solucionar problemas de Data

Science.

Curadoria TecnológicaPossuímos curadores tecnológicos

que selecionam, analisam e organizam o conhecimento sobre

tecnologias de mercado, para oferece-las às startups e empresas

de nossa comunidade.