Sejam vocês a mais um curso de machine learning na Alura. Neste curso, vamos trabalhar com classificação multilabel. Para entender bem o conceito, vamos precisar relembrar outros tipos de classificação. Por exemplo, onde tenho dois títulos e preciso classificar como novela ou não novela. São duas possibilidades, então é uma classificação binária.
Mas não ficaremos relembrando apenas a classificação binária. Iremos trabalhar também com outros problemas, em que tenho mais de duas classes. Por exemplo, filmes, novela e série. Classifico cada um deles, tendo uma situação de classificação multiclasses, em que tenho mais de duas classes possíveis.
Vou querer analisar outra situação. No caso, será a classificação dos gêneros de filmes. Iremos usar o Star Wars. Ele pode ser fantasia, ação. Mas não é comédia. Ele tem duas labels. É uma classificação multilabel.
Vai ser importante deixar clara a diferença entre a classificação multilabel e a de múltiplas classes. Vamos fazer isso aqui neste curso. Mas não vamos ficar apenas na teoria. Para colocar em prática, vamos desenvolver um projeto que vai realizar a classificação automática de questões do stack over flow. Iremos reparar em como elas são tagueadas. Essas labels representam as características da pergunta e são mais do que duas, como o gênero do filme. Iremos criar um modelo de machine learning capaz de realizar a classificação automática das tags do stack over flow.
Iremos passar por todo o pip line de classificação multilabel, desde a captura da base de dados até como manipular os dados para que possam ser interpretados da melhor maneira possível para um modelo de machine learning, com a divisão entre os dados de treino e teste.
Depois de realizar a divisão dos dados, iremos criar o primeiro modelo, conhecido como relevância binária. Nele, vamos obter um resultado, que é a acurácia. Ela precisa ser interpretada de uma maneira bem específica na classificação multilabel. Iremos entender isso em detalhes. Depois, iremos conhecer outra métrica muito útil para classificação conhecida como hamming loss. Então, vamos perceber que as tags têm algum tipo de relação, iremos conhecer modelos de machine learning capazes de capturar essa correlação. No caso, uma classificação em cadeia. Esse modelo está implementado em uma biblioteca chamada scikit multilearn. É específica para classificação de dados multilabel.
Após conhecer a classificação em cadeia, vamos conhecer o MLKNN. Ele é um KNN para classificação multilabel. Ele faz a adaptação do algoritmo KNN para realizar a classificação multilabel. Vamos entender o passo a passo dele. Depois, como o MLKNN introduz esse conceito para o algoritmo KNN de maneira bem intuitiva.
Vamos entender tudo que está relacionado com a classificação multilabel, como trabalhar com o preparo dos dados, realizar a classificação quando tenho situações de classificação multilabel.
Bem-vindos a mais um curso de machine learning na Alura. Como vimos na introdução vamos criar um modelo de machine learning capaz de classificar as perguntas do stack over flow de acordo com seu conteúdo. Antes de colocarmos a mão na massa, vamos conhecer melhor o que é o stack over flow e o que são as labels. Podemos procurar no Google. Clique na primeira opção. Embaixo das principais perguntas, temos as questões, com dados números, quantidade de votos, respostas, visitas, e logo em seguida o título da questão e as tags.
Com as tags, sem precisar entrar na questão já sei qual o assunto, facilitando no momento da busca. Para colocar essas tags, coloco fazendo uma pergunta no campo escrito tags os temas da minha pergunta. O site poderia ter um algoritmo que sugerisse as tags para nós. Se eu concordar, eu aceito. Se não, tiro a tag. Facilitaria a vida. E ele ainda pode sugerir coisas que não escrevemos, fazendo recomendações.
Agora que entendemos melhor como nosso algoritmo pode ser útil no dia a dia, vamos iniciar o setup do que precisamos para iniciar o curso. A primeira coisa é que você acesse um link para ver as informações do curso. Iremos fazer o download dessa pasta, descompactar, extrair e abrir os dados. Dentro da pasta estão os dados que vamos utilizar para treinar nosso modelo.
Vamos criar um colab do Google no drive. Ele serve para usarmos as máquinas do Google sem precisar fazer um setup muito grande. É muito bom. Estamos trabalhando com a máquina do Google. Baixamos os dados no computador, então precisamos enviar os dados para a máquina, fazendo o upload e selecionando o arquivo.
Agora, preciso importar o meu dado para trabalhar. Iremos fazer isso através do Pandas. Minha variável vai ter o nome perguntas. Passo o nome do arquivo que quero ler. Temos nossa base de dados para trabalhar, com o id, as perguntas e as tags. Tenho as tags angular, JQuery, node, html. Repare que posso ter duas tags na mesma coluna. Na maioria das bases de dados até agora cada coluna só tinha uma informação. Isso me parece algo novo. Vamos entender nosso problema neste curso.
Agora, precisamos conhecer o tipo de problema com o qual estamos lidando. Antes, vamos relembrar alguns conceitos, outros classificadores que vão ajudar a construir nosso modelo. Tenho dois títulos, no caso Star Wars e Avenida Brasil. Tenho que informar se aquele título é novelo ou não. Quando tenho essa situação, posso usar a classificação binária, porque tenho só duas possibilidades. No caso, Star Wars não é, coloco 0, Avenida Brasil é, coloco 1.
E se eu tiver mais de duas classes? Vamos adicionar a categoria série, com Star Wars, Friends e Avenida Brasil. Nosso objetivo é classificar esses títulos. Star Wars é filme. Avenida Brasil novela e Friends série. Cada instância está presente em uma bolinha.
Com esse tipo de problema, temos uma classificação de múltiplas classes. Na nossa situação, tínhamos duas características diferentes. Vamos exemplificar com filme, com o gênero. Star Wars encaixa em ação e fantasia. Mas não é comédia. O IMDB classifica como ação, aventura e fantasia. Esse tipo de classificação é conhecida como multilabel. Isso é mais similar com o problema com o qual vamos lidar nas questões do stack over flow, em que uma instância tem mais de um tipo de classificação.
Na classificação multiclasses, cada ícone só vai estar presente em uma bolinha. Na multilabel, a instância pode estar presente em mais de uma label. Agora vamos precisar trabalhar com nossa base de dados para realizar esse tipo de classificação.
O curso Classificação multilabel de textos: múltiplos contextos em NLP possui 190 minutos de vídeos, em um total de 55 atividades. Gostou? Conheça nossos outros cursos de Machine Learning 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:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.