Merge branch 'tmp'
Some checks failed
s470618-evaluation/pipeline/head There was a failure building this commit
Some checks failed
s470618-evaluation/pipeline/head There was a failure building this commit
This commit is contained in:
commit
cea42abe41
20
JenkinsfileEval
Normal file
20
JenkinsfileEval
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
node {
|
||||||
|
stage('Preparation') {
|
||||||
|
checkout scm
|
||||||
|
copyArtifacts projectName: 's470618-metrics', filter: 'metrics.txt', fingerprintArtifacts: true, selector: lastSuccessful(), optional: true, target: './train-eval'
|
||||||
|
copyArtifacts projectName: 's470618-training', filter: '*.pt', fingerprintArtifacts: true, selector: lastSuccessful(), target: '.'
|
||||||
|
|
||||||
|
stage('Evaluate metrics') {
|
||||||
|
sh "pip install matplotlib"
|
||||||
|
sh "cd train-eval && ./eval.py"
|
||||||
|
sh "./plot_metrics.py"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('artifacts') {
|
||||||
|
echo 'saving artifacts'
|
||||||
|
archiveArtifacts 'metrics.txt', 'prediction.tsv', 'metrics.png'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
node {
|
node {
|
||||||
checkout scm
|
checkout scm
|
||||||
def dockerimage = docker.build("train-image", "./train-eval")
|
def dockerimage = docker.build("train-image", "dockerfile_train")
|
||||||
dockerimage.inside {
|
dockerimage.inside {
|
||||||
stage('Preparation') {
|
stage('Preparation') {
|
||||||
properties([
|
properties([
|
||||||
|
@ -45,7 +45,7 @@ print ("The accuracy is", acc)
|
|||||||
print ("The precission score is ", prec)
|
print ("The precission score is ", prec)
|
||||||
print ("The recall score is ", recall)
|
print ("The recall score is ", recall)
|
||||||
|
|
||||||
file = open('metrics.txt', 'w')
|
file = open('metrics.txt', 'a')
|
||||||
file.write(str(acc) + '\t' + str(prec) + '\t' + str(recall))
|
file.write(str(acc) + '\t' + str(prec) + '\t' + str(recall))
|
||||||
file.close()
|
file.close()
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ import numpy as np
|
|||||||
import torch
|
import torch
|
||||||
from torch import nn
|
from torch import nn
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
import subprocess
|
# import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
from sklearn.model_selection import train_test_split
|
from sklearn.model_selection import train_test_split
|
||||||
@ -47,7 +47,7 @@ if __name__ == "__main__":
|
|||||||
Y = df[['Survived']]
|
Y = df[['Survived']]
|
||||||
X.loc[:,('Sex')].replace(['female', 'male'], [0,1], inplace=True) #categorical data transformed to
|
X.loc[:,('Sex')].replace(['female', 'male'], [0,1], inplace=True) #categorical data transformed to
|
||||||
|
|
||||||
X_train, X_test, Y_train, Y_test = train_test_split(X,Y, random_state=45, test_size=0.2, shuffle=True) #split the date into train and test sets
|
X_train, X_test, Y_train, Y_test = train_test_split(X,Y, test_size=0.2, shuffle=True) #split the date into train and test sets
|
||||||
|
|
||||||
testing_data = pd.concat([X_test, Y_test], axis=1)
|
testing_data = pd.concat([X_test, Y_test], axis=1)
|
||||||
testing_data.to_csv('testing_data.csv', sep=',')
|
testing_data.to_csv('testing_data.csv', sep=',')
|
||||||
|
19
train-eval/plot_metrics.py
Executable file
19
train-eval/plot_metrics.py
Executable file
@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/python3
|
||||||
|
import matplotlib
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
data = []
|
||||||
|
with open('metrics.txt', 'r') as metrics:
|
||||||
|
for line in metrics:
|
||||||
|
data.append(line.strip().split('\t'))
|
||||||
|
|
||||||
|
|
||||||
|
# print(acc)
|
||||||
|
labels = ['accuracy','precision','recall']
|
||||||
|
builds = [x for x in range(len(data))]
|
||||||
|
fig = plt.figure()
|
||||||
|
ax = fig.add_subplot(1,1,1)
|
||||||
|
for i in range(3):
|
||||||
|
ax.plot(builds, [data[x][i] for x in range(len(data))], label=labels[i])
|
||||||
|
plt.legend()
|
||||||
|
plt.savefig('metrics.png')
|
Loading…
Reference in New Issue
Block a user