求人原稿に関するデータからその応募数を予測する機械学習モデルの予測結果を出力するWebアプリをFlaskで構築し、Herokuに公開する。
- Webページにアクセスする。
- 「ファイルを選択」をクリックして、テストデータを選択する。
- 「アップロード」ボタンをクリックして、ファイルをアップロードする。
- 推論が終わるまでしばらく待つ。
- 推論が終わると、「ダウンロード」ボタンが表示されるので、ボタンをクリックしcsv形式の出力結果をダウンロードする。
- Flask 1.1.2
- lightgbm 3.1.1
- numpy 1.21.2
- pandas 1.3.5
- scikit-learn 1.0.2
- xgboost 1.5.0
- catboost 0.26.1
git clone https://github.com/Fumiya-Matsumoto/datascience_exam.git
cd datascience_exam
docker-compose up --build
※ Githubには学習データを上げてないので、このリポジトリをクローンして実行しても、アプリは動きません。datascience_exam/app/input
の中に学習データをtrain_x.csv
という名前で保存する必要があります。
まずは、Herokuへログインする。
heroku login
上記コマンドを実行すると、Herokuのログイン画面がブラウザ上に開かれるため、ログインする。
続いて、Heroku上にアプリケーションを作成する
heroku create APP_NAME
Heroku上のGitにpushすることがデプロイのトリガーとなるため、リモートリポジトリに追加する。
heroku git:remote -a APP_NAME
コンテナを用いることをスタックに指定しておく。
heroku stack:set container
Heroku上にPushする。
git push heroku master
これでデプロイが完了する。