Primeiras aulas do curso Python Scikit-Learn: Regressão, classificação e clustering

Python Scikit-Learn: Regressão, classificação e clustering

Machine Learning - Apresentação

Daniel: Boas-vindas para você que está chegando no nosso curso de scikit learning. Neste curso, você foi convidado para ingressar conosco dentro da nossa squad e vamos receber alguns projetos para trabalharmos com machine learning, vamos estruturar nosso conhecimento para conseguirmos obter o máximo deles.

Daniel: Vamos começar entendendo qual a diferença de inteligência artificial para machine learning e os tipos de aprendizados diferentes que temos de machine learning, o aprendizado supervisionado e o aprendizado não supervisionado.

David: Perfeito, Daniel, e inclusive nós vamos conhecer a base de dados que vamos trabalhar, conhecer um pouco da documentação, da biblioteca que vamos utilizar de scikit learning, e também separar esses dados para teste, treino e aplicar os modelos necessários.

Daniel: Depois vamos colocar a mão na massa mesmo, vamos aprender como funciona o algoritmo de classificação, como ele rotula, como ele coloca as labels, e vamos fazer uma previsão baseada na classificação.

David: Isso, exatamente, e não só classificação, aprenderemos também como trabalhar com regressão e conhecer um pouco sobre o algoritmo de regressão linear.

Daniel: E depois para o fim vamos ter um novo dataset e vamos trabalhar com clustering, vamos entender como funciona o algoritmo, aliás, vamos escolher um algoritmo específico e ele vai fazer o agrupamento com os dados com as semelhanças que ele encontrar entre eles.

David: Perfeito, então temos todo esse conteúdo para aprender durante o curso, e aguardamos você ansiosamente para entrar no nosso squad, vamos lá?

Machine Learning - Entendendo o Machine Learning

Daniel: Estamos aqui para te dar as boas-vindas já que você vai começar a trabalhar conosco dentro do nosso squad de dados. Estou eu aqui e o David e nós sempre recebemos projetos de machine learning que vão precisar trabalhar com algoritmos que vão fazer previsões.

David: Já que você está iniciando na squad tendo esse primeiro contato conosco, o importante é você conhecer e entender o que é o machine learning, então vamos dar uma breve introdução a você para que você entenda como funciona, se familiarizar um pouco em relação a esse algoritmo que ajuda bastante no dia a dia.

Daniel: Acho que a primeira pergunta que podemos colocar é se existe alguma diferença de inteligência artificial para machine learning. Já que ouvimos falar de inteligência artificial, acredito que seja até por conta dos filmes de ficção científica, os robôs tentando matar a humanidade e coisas do tipo, mas acho que as pessoas confundem um pouco esses dois conceitos. Será que eles são a mesma coisa?

David: Para entendermos um pouco essa ligação que existe entre inteligência artificial e o machine learning, para vermos se são coisas distintas ou não, temos que entender que a inteligência artificial é na verdade um ensinamento para a máquina para ela pensar e tomar suas próprias decisões, então ela aprende e raciocina. E o machine learning vai ter essa participação especial na parte de aprendizagem, que é exatamente o que vamos ver agora.

Daniel: Um bom exemplo de inteligência artificial seria, por exemplo, um carro que dirige sozinho, que antigamente, um tempo atrás, era um sonho, mas hoje em dia já é realidade em muitos lugares, fora do país é comum você encontrar um carro sendo dirigido pelo Google, de repente.

Daniel: Nessa inteligência artificial do carro ele é capaz de reconhecer muitas coisas. Se está passando uma pessoa, se ele tem que mudar de faixa, se está vindo um carro ou não. É muito parecido com o trabalho de raciocínio humano como o David falou, ele consegue tomar algumas decisões baseadas numa espécie de raciocínio da máquina.

Daniel: Já o machine learning está muito relacionado ao aprendizado, a própria palavra já diz, e nós traduzimos o machine learning como aprendizagem de máquina. Imagine você aí, quanto mais você repete uma ação, você não aprende mais sobre ela? Normal, tem a ver com nossa experiência. Vamos repetindo aquilo e vamos aprendendo. Isso desde sempre. Desde quando éramos pequenos.

Daniel: Imagina que seu pai foi te ensinar a diferença de um cachorro para um gato. Toda vez que você via um cachorro ele apontava que é um cachorro, ou falava “auau”, é um” auau”, e ia apontando várias vezes. E você foi aprendendo o que é um cachorro.

Daniel: Você pode ter errado, pode ter visto um gato e falado que era um auau. Seu pai fala que aquilo não é um “auau”, “auau” é aquilo outro. Baseado nos seus acertos e nos seus erros você vai aprendendo e hoje em dia, fala, David, você provavelmente é capaz de saber a diferença de um cachorro para um gato, não sabe?

David: É, acredito que sim.

Daniel: Provavelmente. Então é assim que funciona também com a máquina, tem um raciocínio análogo, porque vamos oferecer dados para o nosso algoritmo, ele vai treinando, ele pode até errar, mas ele vai aprender com os erros também a um ponto que ele fica tão treinado que ele é capaz de sozinho ter autonomia para tomar decisões baseado nos dados que oferecemos para ele.

David: Então agora já conseguimos entender o que é o machine learning e a principal diferença entre a inteligência artificial e o machine learning. Sabemos que a inteligência artificial é algo muito maior do que o próprio machine learning e inclusive o machine learning é um dos algoritmos que compõem a inteligência artificial.

David: Com isso nós temos vários exemplos no dia a dia que facilitam bastante e às vezes nem sabemos que são, que o machine learning está sendo implementado.

Daniel: Por exemplo, imagine um sistema antifraude, você acha que ali no banco ou na empresa tem uma pessoa preparada para verificar se cada tentativa de ataque é uma fraude ou não? Não, seria até inviável. Então treinamos o algoritmo, ele aprende a identificar e já dá o alerta. O seu antivírus, por exemplo, pode fazer isso. Não tem uma pessoa trabalhando por trás do antivírus vendo se é uma ameaça ou não. É o algoritmo que faz aquilo.

Daniel: Ou por exemplo também uma conta digital, ou de liberação de crédito, mas hoje é muito comum abrirmos uma conta pelo celular, por aplicativo, tiramos uma foto do nosso documento, depois tiramos uma selfie, e o próprio algoritmo sabe identificar se você na sua foto é a mesma do documento.

Daniel: Também tem o sistema de streaming. Hoje em dia assistimos muito filme ou música por streaming. O serviço de streaming não precisa ter só um catálogo para todo mundo, ele pode aprender o que você mais gosta de assistir e oferecer coisas que você provavelmente vai ter mais probabilidade de gostar também.

Daniel: Temos propagandas em tempo real, é muito comum pegar o celular, está falando de alguma coisa e aquela propaganda aparecer para nós, é o machine learning. Reconhecimento, análise de sentimento baseado em texto, isso é muito legal, detector de spams, redes sociais, enfim. Temos muitas coisas no nosso dia a dia envolvendo machine learning.

David: Isso realmente é muito interessante, porque tem tantos exemplos que vemos no dia a dia sendo aplicados utilizando o machine learning e faz pensar no quão relevante é isso para nosso dia a dia, para os nossos estudos. Então, vamos agora a partir dos próximos vídeos entender um pouco mais sobre isso e nos aprofundar mais no conteúdo, vejo você no próximo vídeo.

Machine Learning - Tipos de aprendizagem

David: Nós já entendemos o que é o machine learning, entendemos a diferença entre machine learning e a inteligência artificial, até mesmo a ligação entre os dois, agora vamos dar um passo mais à frente e vamos entender o que é o tipo de aprendizado, porque aprendemos que o machine learning é o aprendizado de máquina, mas existem os tipos de aprendizado que podem ser implementados, os algoritmos, e vamos conhecer dois aqui, que são o supervisionado e o não supervisionado.

David: Como vai ser isso?

Daniel: Será que é tão importante assim aprendermos antes de colocar a mão na massa logo? Aprender qual o tipo de aprendizado, se é o tal do supervisionado ou não supervisionado?

David: Sim, é muito importante que aprendamos esse conteúdo antes, então já dou esse spoiler para você, que é fundamental para que consigamos não só implementar os modelos dentro do nosso projeto, mas também já entender para qual caminho vamos, porque entender esses tipos de aprendizado antes facilita nosso trabalho na hora de lidar com a base de dados.

Daniel: Tem razão. Como você disse, nós temos um aprendizado supervisionado, que consiste em eu já obter os resultados, porque tecnicamente dentro do machine learning vamos chamar esses resultados que já temos de target, ou alvo em português.

Daniel: Já tenho os dados do resultado que quero e vou supervisionar, vou ver se meu modelo realmente está conseguindo resultado próximo do resultado que já tenho aqui. E o não supervisionado não tenho esse resultado na mão, ele sozinho, com autonomia vai decidir como vai de repente, por exemplo, fazer agrupamentos dos dados de forma autônoma e depois vou verificar se aquele agrupamento fez sentido para mim ou não.

David: Isso, perfeito, o Daniel conseguiu definir muito bem para nós o que é o aprendizado supervisionado, não supervisionado, de uma forma bastante breve, mas só para acrescentarmos, para acrescentar um pouco mais sobre aprendizado supervisionado, vale a pena dizer que vamos utilizar as variáveis do target para servir como supervisão das previsões.

David: Ou seja, então vamos conseguir ajustar as previsões baseado nos erros.

Daniel: Sim, é verdade, inclusive, David, esse tipo de aprendizagem é muito usado para classificar e separar os dados. Então vamos pegar um exemplo. Vamos supor que tenho um conjunto de dados de e-mails, eu quero que o algoritmo classifique se é spam ou não, só que eu já sei qual e-mail é spam ou não.

Daniel: Ele vai criar um modelo e vou conseguir comparado ao que já tenho aqui se ele acertou ou se ele errou.

David: Isso aí, perfeitamente. E fica sob responsabilidade do algoritmo apenas ajustar seus parâmetros para estabelecer uma divisão dos dados mais eficiente, mais assertiva.

Daniel: Pois é. E também temos o aprendizado não supervisionado, que já é diferente, porque não tenho o meu target, então não tenho o resultado. O próprio algoritmo, por exemplo, é muito utilizado para agrupamento, então vai decidir de forma autônoma da melhor forma como ele vai fazer os agrupamentos dos dados.

Daniel: Vamos falar um exemplo. Vamos pensar em um conjunto de dados de cachorros. Tenho vários tipos de cachorros e quero que ele crie categorias para mim, cinco categorias, por exemplo. Ele vai decidir se ele vai separar por tamanho do cachorro, cor do cachorro, tamanho do pelo, tamanho do focinho, ele vai decidir e vai criar da melhor forma possível cinco categorias para mim dentro dos dados que ofereço para ele.

Daniel: E também podíamos pensar em um e-commerce, por exemplo, ele poderia agrupar clientes que têm um perfil parecido e mandar propagandas personalizadas para esses grupos de clientes. Inclusive tem muitas histórias famosas aí de situações inusitadas que acontecem quando dispara esses e-mails para grupos de clientes com perfis parecidos.

David: Perfeito, Daniel. E agora que já temos isso bem estabelecido, o que é o aprendizado supervisionado e não supervisionado, vale a pena também darmos uma olhada nesse desempenho desses dois modelos, porque não adianta nada termos um modelo complexo, bem estruturado, mas ele não traz uma resposta para nós satisfatória, uma previsão que seja assertiva.

Daniel: Tem razão. E agora, no aprendizado supervisionado é um pouco mais fácil medir desempenho, porque como eu te disse, já tenho os targets, já tenho os resultados que quero, vou lá e comparo o resultado do meu modelo com o que já tenho aqui, fica mais assertivo.

David: Já no aprendizado não supervisionado vamos ter que ter uma atenção um pouco maior do que o supervisionado, porque não conhecemos, o modelo não conhece a estrutura de dados, a estrutura de dados não está bem estruturada, então vamos ter que analisar caso a caso e para todos os tipos de previsões que vamos aplicar.

Daniel: Isso aí, já sabemos qual o tipo de aprendizado que vamos utilizar para cada base de dados. Na próxima aula vamos aprender como utilizar a melhor biblioteca para o machine learning e como importar essa base de dados, e dar uma olhada também nas bases que vamos trabalhar aqui no curso, nos vemos lá.

Sobre o curso Python Scikit-Learn: Regressão, classificação e clustering

O curso Python Scikit-Learn: Regressão, classificação e clustering possui 77 minutos de vídeos, em um total de 43 atividades. Gostou? Conheça nossos outros cursos de Data Science em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Data Science acessando integralmente esse e outros cursos, comece hoje!

Plus

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$85
à vista R$1.020
Matricule-se

Pro

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$120
à vista R$1.440
Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas