Hoje eu quero te mostrar como criar um algoritmo de classificação no Python para você iniciar em ciência de dados!
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:
Hoje nós vamos continuar com o assunto de Ciência de Dados no Python, ainda vamos abordar a parte teórica para que você consiga entender tudo o que precisa sobre ciência de dados.
Não queremos mais uma pessoa que apenas cria códigos e não entende de fato o que está fazendo ou criando. Por isso é muito importante essa parte teórica.
Você deve lembrar que na aula anterior nós colocamos alguns passos para a construção do nosso projeto não é mesmo?
Esses são os passos e os 2 primeiros são muito importantes, que é a Definição do Problema e o Alinhamento de Expectativas.
São 2 pontos cruciais para que o projeto funcione, então é importante esse alinhamento para que tanto quem solicitou como quem está fazendo o projeto saibam onde vão chegar.
Nessa aula nós vamos abordar os 3 primeiros tópicos para iniciar o nosso projeto de ciência de dados utilizando o Dataset Íris. Esse é um dataset do Sklearn que é gratuito!
Vamos então a definição do problema e a expectativa para a resolução desse problema.
A ideia é classificar a planta íris entre os 3 tipos mostrados, você vai notar que pode ser algo que você não faz ideia do que é ou como classificar isso.
Esse é um ponto chave do projeto de ciência de dados, pois você tem que entender o seu problema para poder criar a solução e chegar no que está sendo esperado.
Então se não sabe como é essa classificação, ou a diferença de pétala e sépala é importante que busque para construir um projeto correto do início ao fim.
Você não vai querer chegar no final do seu projeto com resultados errados só porque não conhecia o que estava trabalhando não é mesmo?
Essas informações são gratuitas fornecidas pelo sklearn, então podemos importar essas informações para visualizar tudo o que temos nela.
OBS: Não se esqueça de baixar o arquivo disponível para que você possa acompanhar, pois nessa aula nós não vamos programar, nós vamos apenas fazer algumas análises para que você entenda esse processo da criação do projeto de ciência de dados.
Aqui vamos ter as informações da classificação, os nomes de classificação e as informações das colunas, onde vamos ter os tamanhos das pétalas e sépalas.
Depois nós vamos para a preparação dos dados.
Lembrando que a parte de mostrar em uma tabela é muito interessante para facilitar na visualização dos dados, e claro, mais fácil de visualizar a classificação.
Na análise exploratória nós podemos visualizar se temos algum dado que está fora do padrão. Nesse caso estamos trabalhando com comprimento de uma íris, então se você visualizar algum valor muito maior já sabe que tem algo errado.
Dentro do seaborn nós temos o boxplot que te permite ter uma visualização gráfica dessas informações, então vamos verificar o comportamento desses dados e até mesmo de outliers, que é algo que está fora do padrão.
Que são essas marcações no gráfico da largura da sépala, então em alguns casos vamos precisar analisar, excluir ou até mesmo tratar essas informações.
Aqui nós temos uma análise desses outliers para verificar o que pode ter acontecido.
Esse .info é importante para que possamos visualizar valores nulos dentro da nossa base de dados, pois eles podem precisar de um tratamento especial, isso porque nem sempre o nosso programa vai saber tratar valores nulos, então é importante fazer essa verificação.
Outra parte importante é verificar os tipos dos dados, para não termos nada fora do padrão para evitar erros dentro do código.
Aqui nós temos a correlação entre as informações para verificar se algumas delas possui uma correlação forte com outra para podermos tirar alguma informação ou até mesmo excluir uma das colunas na nossa análise.
Podemos utilizar o pairplot para visualizar de forma gráfica essa correlação entre as nossas informações.
Podemos ainda separar essa correlação em cores para facilitar a visualização e ver ainda mais fácil a correlação das nossas plantas.
Você pode notar que a setosa nós temos uma facilidade maior de fazer a separação em relação as outras duas.
Agora que você entende os dados, entende o que precisa ser feito nós vamos partir para o tratamento de dados.
Agora nós vamos plotar o gráfico de largura da pétala por comprimento, assim vamos poder fazer uma separação de forma mais fácil das 3 classes de plantas que temos.
Aqui vamos separar em treino e teste para que possamos fazer o mesmo procedimento que fizemos, mas para verificar como está a nossa classificação.
Vamos fazer uma segunda plotagem com os dados de teste, só que dessa vez vamos utilizar o target como número ao invés do nome para facilitar.
Aqui nós conseguimos separar bem facilmente o nosso target 0, então tudo abaixo dessa linha já será o nosso 0. Só que tudo acima será o target 1 ou 2.
Aqui nós vamos entrar em uma parte importante, que é o Underfitting e Overfitting, ou seja, quando simplificamos demais a reta para essa separação ou quando complicamos demais e acaba que esse modelo só funciona para os dados de teste.
A ideia seria no meio termo, que seria o balanceado, então não podemos simplificar demais nem complicar demais.
Essa é a linha que podemos utilizar para esse caso, até porque a nossa classificação terá que ser com acerto de 90%.
Agora vamos de fato traçar essas duas retas no gráfico, o que fizemos anteriormente foi apenas algo “desenhado”, agora estamos de fato criando essas duas linhas para criar nossa classificação.
Com isso nós agora vamos utilizar os nossos dados de teste para verificar se essas duas retas estão de fato classificando corretamente os nossos dados.
Aqui você vai notar que apenas um dos pontos pode não ser classificado corretamente, mas o demais estão todos corretos.
Aqui foram os passos que nós fizemos, você pode notar que não precisamos passar por todas as etapas.
O que fizemos foi suficiente para poder resolver esse problema, então é muito importante que você não saiba apenas programar, o principal é entender toda a lógica por trás da resolução desse problema!
Hoje tivemos uma aula um pouco mais longa, mas foi para te ensinar a criar um algoritmo de classificação no Python.
Então a ideia inicial não é te ensinar a simplesmente criar um monte de código. O mais importante é que você entenda toda a lógica por trás da resolução de um problema!
Essa parte é que vai garantir que você seja um bom cientista de dados e não simplesmente alguém que só escreve os códigos e pronto.
Para acessar outras publicações de Ciência de Dados, clique aqui!
Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.