ium_495719/.github/workflows/main.yml

85 lines
2.0 KiB
YAML

name: Housing Price Workflow
on:
workflow_dispatch:
inputs:
epochs:
description: 'Number of epochs'
required: true
default: 20
learning_rate:
description: 'Learning rate'
required: true
default: 0.001
batch_size:
description: 'Batch size'
required: true
default: 32
jobs:
train:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pandas scikit-learn tensorflow matplotlib mlflow
- name: Train Model
run: python ./github_project/create_model.py ${{ github.event.inputs.epochs }} ${{ github.event.inputs.learning_rate }} ${{ github.event.inputs.batch_size }}
- name: Upload Artefacts
uses: actions/upload-artifact@v2
with:
name: model
path: |
./github_project/hp_model.h5
evaluate:
needs: train
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pandas scikit-learn tensorflow matplotlib mlflow
- name: Download Artifact
uses: actions/download-artifact@v2
with:
name: model
path: ./github_project/hp_model.h5
- name: Evaluate Model
run: python ./github_project/evaluate.py ${{ github.run_number }}
- name: Upload Artefacts
uses: actions/upload-artifact@v2
with:
name: evaluation-results
path: |
./github_project/hp_test_predictions.csv
./github_project/hp_test_metrics.csv
plot_mae.png
plot_r2.png
plot_rmse.png