Nosso trabalho final da disciplina de Machine Learning Aplicada teve como foco a classificação de imagens utilizando dois modelos exclusivos de deep learning. O objetivo foi aplicar conceitos discutidos em sala de aula, como redução de dimensionalidade com PCA, avaliação de modelos e análise de diferentes configurações de treinamento.
Modelos Escolhidos
Para este projeto, escolhemos os modelos Xception e MobileNetV2, ambos pertencentes ao pacote Keras Applications. Esses modelos foram escolhidos com base em sua arquitetura e performance em benchmarks de classificação de imagens.
Artigos de Referência
Como parte do estudo, analisamos dois artigos que aplicam esses modelos em diferentes contextos. Um dos artigos utilizados foi o original indicado na página do Keras, enquanto o segundo foi um estudo recente sobre a aplicação dos modelos em classificação de imagens médicas.
Implementação
1º Dataset Utilizado
Iniciamos com o dataset dogs and cats (dc_small), um conjunto de imagens de cães e gatos amplamente utilizado para treinamento de modelos de classificação. Em seguida, utilizamos um dataset criado pela nossa equipe para testar a generalização dos modelos.
Etapas de Treinamento
- Pré-processamento das imagens: Ajustamos o tamanho, normalizamos os valores de pixel e realizamos a divisão em treino, validação e teste.
- Extração de features com PCA: Reduzimos a dimensionalidade das imagens para otimizar a performance dos modelos.
- Treinamento dos modelos: Utilizamos transfer learning para ajustar os pesos dos modelos aos nossos dados.
- Geração de métricas: Construímos matrizes de confusão e relatórios de classificação para avaliar a performance.
Variação de Otimizadores e Configurações
Para avaliar o impacto das configurações nos resultados, testamos diferentes:
- Otimizadores: SGD, Adam e RMSprop
- Proporções de treino/validação/teste: 70/20/10 e 80/10/10
- Taxas de aprendizado: 0.001, 0.0005 e 0.0001
Resultados e Análise
Os resultados mostraram que Xception teve um melhor desempenho na classificação de imagens do dataset original, enquanto MobileNetV2 apresentou melhores resultados com nosso dataset customizado. A seguir, apresentamos as métricas principais:
Matriz de Confusão e Relatório de Classificação
Conclusão
O experimento demonstrou que diferentes modelos podem apresentar desempenhos distintos dependendo do contexto e dos ajustes aplicados. O uso de PCA foi eficaz para redução do tempo de treinamento sem degradação significativa da performance. Além disso, variáveis como otimizadores e divisão de treino/validação/teste influenciaram diretamente os resultados.
2º Dataset Utilizado
Iniciamos com o dataset cds e dvds (cds_dvds), um conjunto de imagens de cds e dvds normais e cds e dvds quebrados, este foi utilizado para treinamento de modelos de classificação.
Etapas de Treinamento
- Pré-processamento das imagens: Ajustamos o tamanho, normalizamos os valores de pixel e realizamos a divisão em treino, validação e teste.
- Extração de features com PCA: Reduzimos a dimensionalidade das imagens para otimizar a performance dos modelos.
- Treinamento dos modelos: Utilizamos transfer learning para ajustar os pesos dos modelos aos nossos dados.
- Geração de métricas: Construímos matrizes de confusão e relatórios de classificação para avaliar a performance.
Resultados e Análise
Os resultados mostraram que Xception teve um melhor desempenho melhor de imagens do dataset original, enquanto MobileNetV2 apresentou resultados levemente menores com nosso dataset customizado.
Final de Disciplina:
E com uma enorme satisfação e agradecimentos ao nosso Professor: Marcelo Chammy, que em torno de dois meses nos repassou todos os conhecimentos tanto na disciplina de DataScience quanto em Machine Learning.

.jpeg)
Comentários
Postar um comentário