Este projeto foi construído para o desafio para a vaga de AI Engineer na Bemol.
Mais informações sobre o projeto podem ser encontradas nos notebooks preprocessamento.ipynb
e segmentacao.ipynb
.
preprocessamento.ipynb
- notebook usado para preprocessamento da base de dados Online Retailsegmentacao.ipynp
- notebook usado para aplicação de abordagens de segmentação: 1) A segmentação conhecida como RFM (Recency, Frequency, and Monetary agrupadas), famosa no meio do Marketing e 2) A segmentação feita pelo método não supervisionado de aprendizado de maquina K-Means, com base nas métricas geradas para a classificação do RFM.
customer_segment.csv
- arquivo gerado com segmentos para cada cliente gerado a partir do notebook `segmentacao.ipynp.uk_preprocessed_data.csv
- base de dados preprocessada relativa ao país Reino Unido (utilizado na análise). Gerado a partir do notebook `preprocessamento.ipynp
-
Este programa executa em python 3.7.4 e necessita das seguintes bibliotecas:
Para executar localmente- Flask -
pip install flask
- Pandas -
pip install pandas
- Executar API -
python api_bemol.py
- Flask -
-
Instruções para execução do Docker
Para executar em um container Docker- Criar a imagem do container -
docker build --tag bemol_api .
- Executar o container com a API -
docker run -p 8081:8081 bemol_api
- Criar a imagem do container -
- Para executar testes no browser, substituir o valor de ids por um ou mais ids separados por vírgula -
http://localhost:8081/fetch?ids=14467,112
- Para executar testes no terminal -
curl http://localhost:8081/fetch?ids=14467,112
- Saída para o exemplo citado:
[{"Customer": 14467, "Segment": 123}, {"Customer": 112, "Segment": -1}]
- Saída para o exemplo citado: