Angkoot est une application qui a le but de numériser le transport d'Angkot à Surabaya, en Indonésie. Les services fournis par Angkoot sont maintenant une prédiction des tarifs pour la commande, l'estimation de la distance de voyage et l'enregistrement des utilisateurs.

Pour la prédiction des tarifs, nous sommes inspirés de Dimitre Oliveira: https://github.com/dimitreoliveira/newyorkcitytaxifare
Et l'ensemble de données de prédiction tarifaire que nous avons utilisé est de Kaggle. [ensemble de données]
Le processus de déploiement avec Flask to Google Compute Engine a été effectué en utilisant les aides du tutoriel d'Aara Dirik: https://github.com/alaradirik/google-cloud-flask-tutorial [déploiement]
Pour la prédiction des tarifs, nous n'utilisons que environ 500 000 données de l'ensemble de données. Et puis nous avons prétraité l'ensemble de données en fonction de la préparation des données de Dimitre Oliveira avec certains ajustements. Et puis nous construisons le modèle à l'aide du modèle Keras. Au début, nous essayons d'utiliser l'estimateur TensorFlow, même avec celui de Dimitre. Mais ensuite, nous faisons un ajustement afin que nous n'utilisions que des keras dans notre projet. Après cela, nous faisons la formation et exportons le modèle enregistré. Ensuite, le modèle enregistré est déployé à l'aide de Flask, avec l'ajout de Nginx et Unicorn, dans Google Compute Engine. À partir de cela, nous obtenons l'API qui sera déclenchée plus tard à partir de l'application Android afin de faire des prédictions.
Ce sont des étapes que vous pourriez faire:
git clone https://github.com/anriza-fanani-bangkit/CAP0104-Capstone-Project/pip install -r requirements.txtNous faisons essentiellement ces choses du tutoriel d'Aara Dirik ci-dessus avec un certain ajustement. Les détails pourraient être lus [ici]
# update system packages, install the required packages, and miniconda
sudo apt-get update
sudo apt-get install bzip2 libxml2-dev libsm6 libxrender1 libfontconfig1
wget https://repo.anaconda.com/miniconda/Miniconda3-4.7.10-Linux-x86_64.sh
bash Miniconda3-4.7.10-Linux-x86_64.sh
# make conda executable
export PATH=/home/ < based on your Google Cloud ' s name>/miniconda3/bin:$PATH
rm Miniconda3-4.7.10-Linux-x86_64.sh
# create and activate a new virtual environment
conda create -n angkoot python=3.7
conda activate angkoot CAP0104-Capstone-Project
│ README.md
│ flask_model.py # Functions to preprocess the input data
│ keras_model.h5 # Keras saved model to be loaded in Flask
│ main.py # Flask model app to predict continuosly
│ main_dataform.py # Flask model app to predict with data form
│ requirements.txt # To install the dependencies
cd CAP0104-Capstone-Project
pip install -r requirements.txt
python main.py # you need to go out from repo folder
cd
sudo apt-get install nginx-full
sudo /etc/init.d/nginx start # remove default configuration file
sudo rm /etc/nginx/sites-enabled/default
# create a new site configuration file
sudo touch /etc/nginx/sites-available/angkoot_project
sudo ln -s /etc/nginx/sites-available/angkoot_project /etc/nginx/sites-enabled/angkoot_projectsudo nano /etc/nginx/sites-enabled/angkoot_projectEnsuite, ajoutez ce code ci-dessous:
server {
client_max_body_size 100M ;
location / {
proxy_pass http://0.0.0.0:5000 ;
}
}sudo /etc/init.d/nginx restart cd CAP0104-Capstone-Project
gunicorn --bind 0.0.0.0:5000 main:app En raison de l'application Android est toujours en cours de développement, vous pouvez vérifier le résultat par des demandes de GET et des demandes de publication avec test_processed.csv avec des fichiers clés de valeurs "à http://34.101.176.23/ pour les demandes de GET (il devrait afficher" Kirimas était ici ") et http://34.101.176.23/ prédictions) comme indiqué ci-dessous: