Aplicação prática de Redes Convolucionais
Atividade com prazo de entrega até 18/06
1. Objetivo
Utilizar redes neurais convolucionais para tarefas de visão computacional.
2. Enunciado
A atividade ponderada desta sprint consiste em duas partes:
- Modelo convolucional treinado para detectar algarismos numéricos escritos manualmente;
- Backend que apresente duas rotas:
- Uma rota que receba uma imagem de um algarismo e retorne o valor do algarismo. Não é necessário tratar os casos que nenhum foi encontrado, utilizar como referencia o modelo de aula;
- Uma rota que exiba uma página HTML com um formulário para envio de uma imagem e exiba o valor do algarismo encontrado.
O processo de treinamento do modelo convolucional deve estar no repositório, pode ser por arquivo Python ou notebook. Este modelo deve ser salvo em um arquivo chamado pesos.h5. O backend deve ser feito em Flask.
3. Padrão de entrega
Esses são os critérios mínimos para que eu considere a atividade como entregue. Fique atento, pois o não cumprimento de qualquer um desses critérios pode, no melhor dos casos, gerar um desconto de nota e, no pior deles, invalidar a atividade.
- A atividade deve ser feita em um repositório aberto no Github. Seu link deve ser fornecido no card da adalove;
- No README do repositório deve ter instruções claras de como instalar e rodar o sistema criado, comandos em blocos de código e uma expliação sucinta do que fazem;
- Ainda no README, deve haver um vídeo gravado demonstrando plenamente o funcionamento do sistema criado;
4. Padrão de qualidade
4.1. Modelo (até 5,0 pontos)
Supera (4,0 - 5,0) | Atende (3,0 - 4,0) | Quase lá (1,5 - 3,0) | Insuficiente (0,5 - 1,5) | Desalinhado (0,0 - 0,5) |
---|---|---|---|---|
Além de fazer um bom modelo e exportá-lo, fez uma versão de modelo linear para resolver o mesmo problema e comparou as duas em termos de tempo de treinamento, desempenho e tempo de inferência. | Treinou um bom modelo e exportou ele em um arquivo compatível com a implementação do backend | Treinou um modelo capaz de reconhecer dígitos com acurácia de pelo menos 95% | Fez o treinamento da CNN mas ainda não está com bons resultados | Entrega fora de contexto. |
4.2. Backend (at́é 4,0 pontos)
Supera (3,0 - 4,0) | Atende (2,0 - 3,0) | Quase lá (1,0 - 2,0) | Insuficiente (0,5 - 1,0) | Desalinhado (0,0 - 0,5) |
---|---|---|---|---|
Existe uma API com as rotas especificadas e uma implementação distinta para o modelo linear e o modelo convolucional. | Além de implementar uma API com as rotas especificadas para o modelo convolucional, há uma documentação explicando o que cada rota faz. | Implementou uma API com as rotas especificadas, mas não há documentação | Não implementou corretamente ou de forma completa as rotas especificadas no enunciado da atividade. | Entrega fora de contexto. |
4.3. Interface (até 1,0 ponto)
Fez uma interface de usuário em que é possível enviar uma imagem de algarismo e receber o resultado da predição? 1,0 ponto =D