evaluation (first attempt)
This commit is contained in:
parent
522f357fd4
commit
4713bdefea
3
.gitignore
vendored
3
.gitignore
vendored
@ -63,4 +63,5 @@ train.csv
|
||||
dev.csv
|
||||
*.txt
|
||||
.venv/
|
||||
model.h5
|
||||
model.h5
|
||||
evaluation.png
|
@ -8,4 +8,5 @@ RUN pip3 install -r requirements.txt
|
||||
|
||||
COPY ["Zadanie 1.py", "."]
|
||||
COPY ["stats.py", "."]
|
||||
COPY ["train.py", "."]
|
||||
COPY ["train.py", "."]
|
||||
COPY ["evaluate.py", "."]
|
54
Jenkinsfile-evaluation
Normal file
54
Jenkinsfile-evaluation
Normal file
@ -0,0 +1,54 @@
|
||||
pipeline {
|
||||
agent {
|
||||
docker { image 'adnovac/ium_s434760:1.1' }
|
||||
}
|
||||
parameters{
|
||||
buildSelector(
|
||||
defaultSelector: lastSuccessful(),
|
||||
description: 'Which build to use for copying data artifacts',
|
||||
name: 'WHICH_BUILD_DATA'
|
||||
)
|
||||
buildSelector(
|
||||
defaultSelector: lastSuccessful(),
|
||||
description: 'Which build to use for copying train artifacts',
|
||||
name: 'WHICH_BUILD_TRAIN'
|
||||
)
|
||||
buildSelector(
|
||||
defaultSelector: lastSuccessful(),
|
||||
description: 'Which build to use for copying current project artifacts',
|
||||
name: 'WHICH_BUILD_THIS'
|
||||
)
|
||||
}
|
||||
stages {
|
||||
stage('copy artifacts')
|
||||
{
|
||||
steps
|
||||
{
|
||||
copyArtifacts(fingerprintArtifacts: true, projectName: 's434760-create-dataset', selector: buildParameter('WHICH_BUILD_DATA'))
|
||||
copyArtifacts(fingerprintArtifacts: true, projectName: 's434760-training', selector: buildParameter('WHICH_BUILD_TRAIN'))
|
||||
copyArtifacts(fingerprintArtifacts: true, projectName: 's434760-evaluation', selector: buildParameter('WHICH_BUILD_THIS'))
|
||||
}
|
||||
}
|
||||
stage('train')
|
||||
{
|
||||
steps
|
||||
{
|
||||
catchError {
|
||||
sh 'python3.8 evaluate.py ${BATCH_SIZE} ${EPOCHS}'
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('archive artifacts') {
|
||||
steps {
|
||||
archiveArtifacts 'results.txt,evaluation.png'
|
||||
}
|
||||
}
|
||||
stage('send email') {
|
||||
steps {
|
||||
emailext body: currentBuild.result ?: 'SUCCESS',
|
||||
subject: 's434760 - validation',
|
||||
to: 'annnow19@st.amu.edu.pl'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -45,7 +45,7 @@ pipeline {
|
||||
steps {
|
||||
emailext body: currentBuild.result ?: 'SUCCESS',
|
||||
subject: 's434760 - train',
|
||||
to: '26ab8f35.uam.onmicrosoft.com@emea.teams.ms'
|
||||
to: 'annnow19@st.amu.edu.pl'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
35
evaluate.py
Normal file
35
evaluate.py
Normal file
@ -0,0 +1,35 @@
|
||||
import pandas as pd
|
||||
import numpy as np
|
||||
from os import path
|
||||
from tensorflow import keras
|
||||
import sys
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
model_name = "model.h5"
|
||||
|
||||
input_columns=["Age","Nationality","Position","Club"]
|
||||
model = keras.models.load_model(model_name)
|
||||
|
||||
test_data=pd.read_csv('test.csv')
|
||||
X_test=test_data[input_columns].to_numpy()
|
||||
Y_test=test_data[["Overall"]].to_numpy()
|
||||
|
||||
#MeanSquaredError
|
||||
results_test = model.evaluate(X_test, Y_test, batch_size=128)
|
||||
with open('results.txt', 'a+', encoding="UTF-8") as f:
|
||||
f.write(str(results_test) +"\n")
|
||||
|
||||
with open('results.txt', 'r', encoding="UTF-8") as f:
|
||||
lines = f.readlines()
|
||||
|
||||
|
||||
fig = plt.figure(figsize=(5,5))
|
||||
|
||||
chart = fig.add_subplot()
|
||||
chart.set_ylabel("Mean squared error")
|
||||
chart.set_xlabel("Number of build")
|
||||
x = np.arange(0, len(lines), 1)
|
||||
y = [float(x) for x in lines]
|
||||
print(y)
|
||||
plt.plot(x,y,"ro")
|
||||
plt.savefig("evaluation.png")
|
@ -3,4 +3,5 @@ pandas==1.2.4
|
||||
numpy==1.19.2
|
||||
sklearn
|
||||
tensorflow==2.4.1
|
||||
jinja2==2.11.3
|
||||
jinja2==2.11.3
|
||||
matplotlib
|
3592
results.csv
3592
results.csv
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user