O modelo definido nesse repositório se refere ao mapeamento de alimentos que possam ser substituidos na composição de refeições de um cardápio escolar.
- Docker (Como instalar?)
Execute o seguinte comando na pasta raiz desse projeto:
docker compose up -d
O sistema de recodemanção indica candidatos a ingredientes substitutos os itens que apresentem menor distância vetorial entre os pares. Entende-se que o vetor é composto por 4 campos representados pela calorias, proteínas, lipídios e carboidratos.
Atualmente o modelo possui como métricas de distância linear, quadrática e cosseno, sendo a linear o modelo padrão adotado. A métrica linear considera a como distância o somatório das diferenças normalizadas entre os macronutrientes. Adicionalmente existe um sistema de pesos que poderam cada macronutriente na hora de calcular as distâncias vetoriais. Atualmente o pesos são [3, 2, 1, 1], sendo 3 o peso para calorias, 2 para proteínas e 1 para os demais. Tais valores forçam a métrica de distância em priorizar por itens que possuam a relação distância*peso menor.
Essa aplicação ainda não está pronta para produção as seguintes atividades ainda precisam ser realizadas:
- Conexão com base de dados do TAG (MySql) no lugar dos arquivos JSON;
- Criação de endpoints para consultar modelo
- Atualização automática do modelo de agrupamento