CAP0104 Capstone Project
1.0.0
Angkoot是一個應用程序,其目的是將印度尼西亞薩拉巴亞的Angkot運輸數字化。 Angkoot現在提供的服務是訂單,旅行距離估計和用戶註冊的票價預測。

對於票價預測,我們的靈感來自Dimitre Oliveira:https://github.com/dimitreoliveira/newyorkcitytaxifare
我們使用的票價預測數據集來自Kaggle。 [數據集]
使用Alara Dirik的教程的幫助:https://github.com/alaradirik/google-cloud-flask-tutorial [exployment]使用Alara Dirik的教程的幫助[部署]
對於票價預測,我們僅使用了整個數據集中的500.000個數據。然後,我們基於Dimitre Oliveira數據製備預處理數據集進行了一些調整。然後我們使用KERAS模型構建模型。首先,我們嘗試使用Dimitre的TensorFlow估計器。但是隨後我們進行了一些調整,以便我們僅在項目中使用Keras。之後,我們進行培訓並導出保存的模型。接下來,使用燒瓶,加上Nginx和Unicorn將保存的模型部署到Google Compute引擎中。由此,我們獲得了後來將從Android應用觸發的API,以做出一些預測。
這些是您可以做的步驟:
git clone https://github.com/anriza-fanani-bangkit/CAP0104-Capstone-Project/pip install -r requirements.txt我們基本上是在上面的Alara Dirik的教程中做這些事情,並進行了一些調整。詳細信息可以閱讀[此處]
# 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_project然後,在下面添加此代碼:
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由於Android App仍在開發中,您可以通過獲取請求和發布test_processed.csv的請求來檢查結果預測)如下所示: