Machine Learning:
O que é isso?
Por: Vinicius Mesel
Machine Learning:
Mas que po**a é essa??
Por meu pai
Sobre mim
Vinicius Mesel
17 anos
Pseudo-Pesquisador(IC) no Instituto Butantan
Python lover, gamer e Nerd nas horas vagas
vinicius@bigsp.com.br
Primeiramente: o que um bioinformata faz?
- Utiliza dados de genes e genomas para extrair informações
biológicamente relevantes
- Realiza processamentos de dados em pequena e larga escala
- Detecta padrões relevantes em dados como sequências de
DNA/RNA ou nos níveis das proteínas
- Realiza experimentos in silico**
O Genoma Humano tem 9gb
O que eu faço?
- Estudo alguns dos mecanismos envolvidos com a formação e progressão
do câncer de próstata
- Utilizo o RNA de células do cancer para identificar padrões por meio de
Machine Learning
Piadinha:
- Fazer Estátistica de Faculdade
- Gostar de teorias matemáticas "malucas"
- Gostar de quebrar a cabeça e melhorar algoritmos
- Saber pesquisar no Google/YouTube/Coursera
- Ter uma base de linguagens de programação
O que você precisa saber antes de mexer com
Machine Learning?
O que é machine learning?
- Um método estatístico para predição, classificação, regressão e etc.
- Uma parte da ciência da computação
- Ramo de estudos da Inteligência Artificial
- É basicamente a construção de um modelo estatístico algébrico para
predição de algo
Qual categoria pertence o ponto preto?
Qual categoria pertence o ponto preto?
Agora chegou a parte interessante!!!!
Um problema em machine learning pode pertencer a uma das duas categorias:
- Regressivo (quando você tem uma variável contínua. Ex: Estimar cotação
do Dólar)
- Classificatório (quando você tem diferentes classes envolvidas em um
problema. Ex: Utilizar imagens de um ultrassom para definir o sexo do bebe
(0=F , 1=M))
Sabendo o tipo de problema, você deve saber
o algoritmo…
Já que agora você sabe os tipos de problema, você tem que conhecer também
as possibilidades de resolução deles a partir de algoritmos.
Existem 2 tipos de algoritmos que podem ser usados para resolver um dado
problema:
- Aprendizado Supervisionado (O treinamento é feito com dados que
possuem as classes já conhecidas)
- Não-supervisionados (O modelo deve estimar as categorias sem
conhece-las previamente)
Não-supervisionado - (Separe os
dados em K grupos e utilize esses
grupos para classificar novos
dados)
Supervisionado - (Aprenda a
classificar novos dados utilizando
o que já se sabe sobre as classes)
Seria possivel inferir o salário de um funcionário de uma empresa através da
composição de sua marmita?
- Neste caso eu tenho as features (dimensões da marmita, informações dos
alimentos [Preço, quantidade e etc], acompanhamentos da marmita)
- Temos um valor de salário associado a cada marmita.
- Portanto, seria utilizado um algoritmo supervisionado (os salários são
conhecidos) de regressão (salário é uma variavel contínua).
- Ex: random forest regressor, SVM regressor, Regressão linear
1o Exemplo de problema:
2o exemplo de problema
Eu tenho o IRIS dataset(um dos datasets mais básicos) e gostaria de predizer a
classificação de cada planta baseada no tamanho das pétalas que ela tem e se
é possível inferir a qual grupo ela pertence!
- Neste caso eu também tenho as features
- A cada grupo já montado, temos um valor médio da petala, caule e etc…
associado
- Por não ser uma variável continua, mas as médias e outras métricas podem
levar a uma classificação de um tipo de planta, o algoritmo é classificatório
e supervisionado por já sabemos as classes envolvidas.
3o exemplo de problema
Um pesquisador mediu a quantidade de açucar, gordura e alcool no sangue de
centenas de pessoas. Seria possivel dividir as pessoas estudadas em dois
grupos?
- Problema não-supervisionado (As pessoas não pertencem a nenhuma
categoria)
- Algoritmos utilizados: k-means (K=2)
(Utiliza as distancias das 3 features para agrupar as pessoas, colocando
no mesmo grupo pessoas com valores aproximados nessas features)
Tipos de problema que estão sendo
resolvidos com ML
- Vendas de produtos e predições de vendas (Quantos funcionarios devo
escalar para trabalhar em um feriado?)
- Genética e estudos no genoma humano e animal
- Desenvolvimento de vacinas mais rápidamente
- Linguística Moderna/Computacional
- Desenvolvimento de Inteligência Artificial
- E MUITO MAIS...
Como posso aprender Machine Learning?
- Procure vídeos no YouTube:
- Sobre a PyCon deste ano
- Sobre a PyData destes anos(recheado de conteúdo)
- Sobre os meetups de SciPy
- Cursos no Coursera:
- Curso de Introdução a Machine Learning
- Curso de Estatística
- Buscando no Google
Materiais que eu recomendo
- Udacity
- Coursera
- Guia Mangá de Estatística (livro)
- Python para Desenvolvedores (livro)
- Teses de Iniciação Científica/Mestrado/Doutorado/Pós Grad (USP e ITA
são muito boas, além das em inglês)
Ferramentas que eu recomendo
- Scikit-Learn (Biblioteca em Python)
- Kaggle (site de competições de Machine Learning)
- PyCharm (IDE que proporciona boa integração para rodar códigos)
- Pandas (Extremamente essencial para processamentos de tabelas)
- Seaborn (API Gráfica fantástica para Python)
Conhecimentos que serão explicados no
SciPy de Machine Learning
- Uma base sólida de Python
- Pandas e suas formas de armazenamento e tratamento de dados
- Scikit-learn e seus métodos de machine learning
- Como escolher features relevantes para não causar overfitting
- Estatística básica para cálculo de média, mediana, variância e etc...
Agora façam seus computadores aprender!
Caso vocês não consigam domar seus computadores, seus computadores
tenham déficit de atenção ou coisas do gênero: Não me chamem!
Se tiver alguma dúvida, pergunta, sugestão:
vinicius@bigsp.com.br

Machine learning - O que é isso?

  • 1.
    Machine Learning: O queé isso? Por: Vinicius Mesel
  • 2.
    Machine Learning: Mas quepo**a é essa?? Por meu pai
  • 3.
    Sobre mim Vinicius Mesel 17anos Pseudo-Pesquisador(IC) no Instituto Butantan Python lover, gamer e Nerd nas horas vagas vinicius@bigsp.com.br
  • 4.
    Primeiramente: o queum bioinformata faz? - Utiliza dados de genes e genomas para extrair informações biológicamente relevantes - Realiza processamentos de dados em pequena e larga escala - Detecta padrões relevantes em dados como sequências de DNA/RNA ou nos níveis das proteínas - Realiza experimentos in silico** O Genoma Humano tem 9gb
  • 5.
    O que eufaço? - Estudo alguns dos mecanismos envolvidos com a formação e progressão do câncer de próstata - Utilizo o RNA de células do cancer para identificar padrões por meio de Machine Learning
  • 7.
  • 8.
    - Fazer Estátisticade Faculdade - Gostar de teorias matemáticas "malucas" - Gostar de quebrar a cabeça e melhorar algoritmos - Saber pesquisar no Google/YouTube/Coursera - Ter uma base de linguagens de programação O que você precisa saber antes de mexer com Machine Learning?
  • 9.
    O que émachine learning? - Um método estatístico para predição, classificação, regressão e etc. - Uma parte da ciência da computação - Ramo de estudos da Inteligência Artificial - É basicamente a construção de um modelo estatístico algébrico para predição de algo
  • 10.
  • 11.
  • 12.
    Agora chegou aparte interessante!!!! Um problema em machine learning pode pertencer a uma das duas categorias: - Regressivo (quando você tem uma variável contínua. Ex: Estimar cotação do Dólar) - Classificatório (quando você tem diferentes classes envolvidas em um problema. Ex: Utilizar imagens de um ultrassom para definir o sexo do bebe (0=F , 1=M))
  • 13.
    Sabendo o tipode problema, você deve saber o algoritmo… Já que agora você sabe os tipos de problema, você tem que conhecer também as possibilidades de resolução deles a partir de algoritmos. Existem 2 tipos de algoritmos que podem ser usados para resolver um dado problema: - Aprendizado Supervisionado (O treinamento é feito com dados que possuem as classes já conhecidas) - Não-supervisionados (O modelo deve estimar as categorias sem conhece-las previamente)
  • 14.
    Não-supervisionado - (Separeos dados em K grupos e utilize esses grupos para classificar novos dados) Supervisionado - (Aprenda a classificar novos dados utilizando o que já se sabe sobre as classes)
  • 15.
    Seria possivel inferiro salário de um funcionário de uma empresa através da composição de sua marmita? - Neste caso eu tenho as features (dimensões da marmita, informações dos alimentos [Preço, quantidade e etc], acompanhamentos da marmita) - Temos um valor de salário associado a cada marmita. - Portanto, seria utilizado um algoritmo supervisionado (os salários são conhecidos) de regressão (salário é uma variavel contínua). - Ex: random forest regressor, SVM regressor, Regressão linear 1o Exemplo de problema:
  • 16.
    2o exemplo deproblema Eu tenho o IRIS dataset(um dos datasets mais básicos) e gostaria de predizer a classificação de cada planta baseada no tamanho das pétalas que ela tem e se é possível inferir a qual grupo ela pertence! - Neste caso eu também tenho as features - A cada grupo já montado, temos um valor médio da petala, caule e etc… associado - Por não ser uma variável continua, mas as médias e outras métricas podem levar a uma classificação de um tipo de planta, o algoritmo é classificatório e supervisionado por já sabemos as classes envolvidas.
  • 17.
    3o exemplo deproblema Um pesquisador mediu a quantidade de açucar, gordura e alcool no sangue de centenas de pessoas. Seria possivel dividir as pessoas estudadas em dois grupos? - Problema não-supervisionado (As pessoas não pertencem a nenhuma categoria) - Algoritmos utilizados: k-means (K=2) (Utiliza as distancias das 3 features para agrupar as pessoas, colocando no mesmo grupo pessoas com valores aproximados nessas features)
  • 18.
    Tipos de problemaque estão sendo resolvidos com ML - Vendas de produtos e predições de vendas (Quantos funcionarios devo escalar para trabalhar em um feriado?) - Genética e estudos no genoma humano e animal - Desenvolvimento de vacinas mais rápidamente - Linguística Moderna/Computacional - Desenvolvimento de Inteligência Artificial - E MUITO MAIS...
  • 19.
    Como posso aprenderMachine Learning? - Procure vídeos no YouTube: - Sobre a PyCon deste ano - Sobre a PyData destes anos(recheado de conteúdo) - Sobre os meetups de SciPy - Cursos no Coursera: - Curso de Introdução a Machine Learning - Curso de Estatística - Buscando no Google
  • 20.
    Materiais que eurecomendo - Udacity - Coursera - Guia Mangá de Estatística (livro) - Python para Desenvolvedores (livro) - Teses de Iniciação Científica/Mestrado/Doutorado/Pós Grad (USP e ITA são muito boas, além das em inglês)
  • 21.
    Ferramentas que eurecomendo - Scikit-Learn (Biblioteca em Python) - Kaggle (site de competições de Machine Learning) - PyCharm (IDE que proporciona boa integração para rodar códigos) - Pandas (Extremamente essencial para processamentos de tabelas) - Seaborn (API Gráfica fantástica para Python)
  • 22.
    Conhecimentos que serãoexplicados no SciPy de Machine Learning - Uma base sólida de Python - Pandas e suas formas de armazenamento e tratamento de dados - Scikit-learn e seus métodos de machine learning - Como escolher features relevantes para não causar overfitting - Estatística básica para cálculo de média, mediana, variância e etc...
  • 23.
    Agora façam seuscomputadores aprender! Caso vocês não consigam domar seus computadores, seus computadores tenham déficit de atenção ou coisas do gênero: Não me chamem! Se tiver alguma dúvida, pergunta, sugestão: vinicius@bigsp.com.br