O projeto final da disciplina Inteligência Artificial é a implementação de um classificador de aprendizagem de máquina supervisionada para resolver o problema de uma competição do Kaggle.
A URL da competição é: https://www.kaggle.com/c/titanic-gettingStarted
Um classificador deve ser treinado usando o arquivo de treinamento disponível no Kaggle. Este arquivo possui dados sobre diversos passageiros do Titanic: nome, idade, sexo, etc., e se o passageiro sobreviveu ou não ao desastre.
O classificador receberá um arquivo de testes com dados sobre outros passageiros e deverá classificá-los como sobreviventes ou não.
A competição fornece vários arquivos, entre eles o train.csv e o test.csv, o primeiro é o arquivo de treinamento e o segundo o arquivo de testes.
Ambos estão no formato .csv e seguem o padrão:
PassengerId,Survived,Pclass,Name,Sex,Age,SibSp,Parch,Ticket,Fare,Cabin,Embarked
1,0,3,"Braund, Mr. Owen Harris",male,22,1,0,A/5 21171,7.25,,S
2,1,1,"Cumings, Mrs. John Bradley (Florence Briggs Thayer)",female,38,1,0,PC 17599,71.2833,C85,C
...
A primeira linha do arquivo especifica o nome das colunas e as linhas seguintes os dados dos passageiros. Cada coluna é separada por virgula.
O que significa cada coluna?
- PassengerId: o ID do passageiro
- Survived: se o passageiro sobreviveu (0 = não, 1 = sim)
- Pclass: classe do passageiro (quanto menor mais rico)
- Name: nome
- Sex: sexo
- Age: idade
- SibSp: número de irmãos/esposo(a)
- Parch: número de pais/filhos
- Ticket: número do ticket
- Fare: tarifa
- Cabin: identificação da cabine
- Embarked: Porto de embarque (C = Cherbourg; Q = Queenstown; S = Southampton)
Notem que o arquivo de teste não possui a coluna "Survived", pois ela deve ser descoberta pelo classificador.
A resposta deve ser escrita num arquivo .csv.
A primeira linha deve ter o nome das colunas: PassengerId,Survived. As linhas seguintes devem conter o id do passageiro e sua classificação. Esses dados também devem ser separados por virgula.
Os arquivos gendermodel.csv e genderclassmodel.csv são exemplos de respostas válidas.
Para enviar a resposta para o Kaggle, basta clicar na opção "Submission" e fazer o upload do arquivo.
Os grupos têm a liberdade para escolher que algoritmos usarão para resolver o problema, incluindo o uso de bibliotecas e linguagens de programação. Fica apenas proíbido usar o KNN que já foi implementado em outra atividade e qualquer solução disponível no site do Kaggle.
Todos os grupos deverão submeter ao Kaggle suas soluções.
Além disso, cada grupo deverá apresentar uma explicação da sua solução em sala de aula, assim como executar classificador e gerar os resultados para que todos possam ver.
Cada equipe poderá ter no máximo três integrantes.
Todos devem participar da apresentação da solução e podem ser questionados sobre qualquer etapa do trabalho desenvolvido.