From 8cca2125c9198f76f619eb97721c52790b464f38 Mon Sep 17 00:00:00 2001 From: s444417 Date: Tue, 3 May 2022 21:45:42 +0200 Subject: [PATCH] eval script --- Jenkinsfile.eval | 8 ++++++++ Jenkinsfile3 | 4 ++++ README.md | 10 ++++++---- result.txt | 4 ++-- saved_model/MyModel_tf/keras_metadata.pb | 5 ----- saved_model/MyModel_tf/saved_model.pb | Bin 60265 -> 0 bytes .../variables/variables.data-00000-of-00001 | Bin 3590 -> 0 bytes .../MyModel_tf/variables/variables.index | Bin 1073 -> 0 bytes src/trainScript.py | 14 ++++++++++++-- startscript1.sh | 2 +- trainResults.csv | 5 ----- 11 files changed, 33 insertions(+), 19 deletions(-) delete mode 100644 saved_model/MyModel_tf/keras_metadata.pb delete mode 100644 saved_model/MyModel_tf/saved_model.pb delete mode 100644 saved_model/MyModel_tf/variables/variables.data-00000-of-00001 delete mode 100644 saved_model/MyModel_tf/variables/variables.index delete mode 100644 trainResults.csv diff --git a/Jenkinsfile.eval b/Jenkinsfile.eval index 58c7b41..bc14732 100644 --- a/Jenkinsfile.eval +++ b/Jenkinsfile.eval @@ -1,8 +1,16 @@ pipeline { + agent none stages { stage('Copy') { steps { + copyArtifacts projectName: 's444417-training' sh 'python3 evalScript.py' + archiveArtifacts 'trainResults.csv' + } + } + stage ('Starting eval job') { + steps { + build job: 's444417-evaluation/master', wait: true } } } diff --git a/Jenkinsfile3 b/Jenkinsfile3 index 61dc5c9..13e7fc2 100644 --- a/Jenkinsfile3 +++ b/Jenkinsfile3 @@ -7,10 +7,14 @@ pipeline { steps { copyArtifacts projectName: 's444417-create-dataset' sh 'ls -la' + sg 'python3 ./src/trainScript.py 6' archiveArtifacts 'saved_model/MyModel_tf/*' } } } + options { + copyArtifactPermission('s444417-evaluation'); + } post { always { emailext body: "${currentBuild.currentResult}", subject: 's444417-testing build status', to: 'e19191c5.uam.onmicrosoft.com@emea.teams.ms' diff --git a/README.md b/README.md index f5ef56b..7fd4eb9 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,11 @@ IUM_6 --- Zadanie 1 1. stworzono job [s444417-training](https://tzietkiewicz.vm.wmi.amu.edu.pl:8080/job/s444417-training/) -2. s444417-training uruchamia się automatycznie po zakończeniu joba s444417-create-dataset, plik "Jenkinsfile", przy pomocy build job. Kopiuje zbiór danych przy pomocy copyArtifact w pliku "Jenkinsfile3" -3. "Jenkinsfile3" przy pomocy archiveArtifacts -4. Powiadomienia, "Jenkinsfile3" przy pomocy emailext -5. Parametr podany jest w pliku "startscript1.sh" w linii 11, przy wołaniu skryptu uruchamiającego uczenie "startscript2.sh", parametr oznacza ilość epok +2. s444417-training uruchamia się automatycznie po zakończeniu joba s444417-create-dataset, plik Jenkinsfile, przy pomocy build job. Kopiuje zbiór danych przy pomocy copyArtifact w pliku Jenkinsfile3 +3. Jenkinsfile3 przy pomocy archiveArtifacts +4. powiadomienia, Jenkinsfile3 przy pomocy emailext +5. parametr podany jest w pliku startscript1.sh w linii 11, przy wołaniu skryptu uruchamiającego uczenie startscript2.sh, parametr oznacza ilość epok Zadanie 2 +1. stworzono job [s444417-evaluation](https://tzietkiewicz.vm.wmi.amu.edu.pl:8080/job/s444417-evaluation/) +2. evaluacja modelu i zapisanie wyniku do pliku trainResults.tsv, w Jenkinsfile.eval archiveArtifact \ No newline at end of file diff --git a/result.txt b/result.txt index 7766e64..e9cee2c 100644 --- a/result.txt +++ b/result.txt @@ -1,2 +1,2 @@ -predictions: [166.16302, 211.04045, 123.3409, 42.00785, 87.86473, 109.27005, 169.75987, 173.21875, 232.33553, 142.31973] -expected: [ 80. 42. 64. 72. 14. 97.4 75. 200. 140. 61. ] \ No newline at end of file +predictions: [476.51816, 140.02351, -0.7704315, 151.024, 134.35803, 128.7151, 193.7164, -74.09639, 79.28711, 223.44864] +expected: [930. 160. 16.5 34. 80.9 49. 100. 65. 28.5 120. ] \ No newline at end of file diff --git a/saved_model/MyModel_tf/keras_metadata.pb b/saved_model/MyModel_tf/keras_metadata.pb deleted file mode 100644 index 576ad48..0000000 --- a/saved_model/MyModel_tf/keras_metadata.pb +++ /dev/null @@ -1,5 +0,0 @@ - -root"_tf_keras_sequential*{"name": "sequential", "trainable": true, "expects_training_arg": true, "dtype": "float32", "batch_input_shape": null, "must_restore_from_config": false, "class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "normalization_input"}}, {"class_name": "Normalization", "config": {"name": "normalization", "trainable": true, "batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "dtype": "float32", "axis": {"class_name": "__tuple__", "items": [-1]}, "mean": null, "variance": null}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "shared_object_id": 5, "input_spec": [{"class_name": "InputSpec", "config": {"dtype": null, "shape": {"class_name": "__tuple__", "items": [null, null]}, "ndim": 2, "max_ndim": null, "min_ndim": null, "axes": {}}}], "build_input_shape": {"class_name": "TensorShape", "items": [null, null]}, "is_graph_network": true, "full_save_spec": {"class_name": "__tuple__", "items": [[{"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, null]}, "float32", "normalization_input"]}], {}]}, "save_spec": {"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, null]}, "float32", "normalization_input"]}, "keras_version": "2.8.0", "backend": "tensorflow", "model_config": {"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "normalization_input"}, "shared_object_id": 0}, {"class_name": "Normalization", "config": {"name": "normalization", "trainable": true, "batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "dtype": "float32", "axis": {"class_name": "__tuple__", "items": [-1]}, "mean": null, "variance": null}, "shared_object_id": 1}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4}]}}, "training_config": {"loss": {"class_name": "MeanSquaredError", "config": {"reduction": "auto", "name": "mean_squared_error"}, "shared_object_id": 7}, "metrics": null, "weighted_metrics": null, "loss_weights": null, "optimizer_config": {"class_name": "Adam", "config": {"name": "Adam", "learning_rate": 1, "decay": 0.0, "beta_1": 0.8999999761581421, "beta_2": 0.9990000128746033, "epsilon": 1e-07, "amsgrad": false}}}}2 -root.layer_with_weights-0"_tf_keras_layer*{"name": "normalization", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "stateful": false, "must_restore_from_config": true, "class_name": "Normalization", "config": {"name": "normalization", "trainable": true, "batch_input_shape": {"class_name": "__tuple__", "items": [null, null]}, "dtype": "float32", "axis": {"class_name": "__tuple__", "items": [-1]}, "mean": null, "variance": null}, "shared_object_id": 1, "build_input_shape": {"class_name": "TensorShape", "items": [null, 8]}}2 -root.layer_with_weights-1"_tf_keras_layer*{"name": "dense", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 8}}, "shared_object_id": 8}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 8]}}2 -0root.keras_api.metrics.0"_tf_keras_metric*{"class_name": "Mean", "name": "loss", "dtype": "float32", "config": {"name": "loss", "dtype": "float32"}, "shared_object_id": 9}2 \ No newline at end of file diff --git a/saved_model/MyModel_tf/saved_model.pb b/saved_model/MyModel_tf/saved_model.pb deleted file mode 100644 index 32d8270a3853551899a29384f667ec5da6d2e296..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60265 zcmeHw3v3)ob{Knx!oI9UuYhTs{VpAWmQ)abTQn z1P%_!guZZ>b-jP>eYL%WQqLFx0CRHM#-;_!hIOO(ri{9 z)ZWw@6>YPs-`*j^AUE`8eYa84GgD*~2KKb-uAUtzx1R3k*%2@vNI(BcVH96i%34cT zn-8@eo%Cs6XK*Y~561U~?&^@`TKQZ5s)8j|jjH1uy`aaOuVhhVV2+uGS};g9SI zz?Zz?;xtSu6H+4CKQJh#hlWQ+C&=WHnd}7^!oD5e!vKmrI*G%QmI=HFshir9%J%Ly>+6Zx=Tp`v{(cAlW@l{xi{mh=46|S0C!7M?3XOt<@wmFj=yHsyhvRtMWu|W>Vw`kh0!vRcczRQm>hB zGAZn1tgKgcWPp0Ltd=W{rVYHrcwi9vZ`E(_z)k4Cqm>>ZM-6h0V&ukT9Xvf7|A z?LzdGYtk0fv?53j=5-G^GE zte0P@RCP8KOhj#JP5zAIl;)&ulru@>EvW5oGfC7aH#13`d-9g~Q6>c!p#Sa{8z?o5 z*}`TCn=RRChd=B~|WHcD~A)mwGX zyIB~~pXjAsa-{nt2qPB9cJr49Xo{^XV2Y89na=^-04F4B;FkmU>soPjJ7 zcSmcr^hV8U3vL12drvAsqbhF4S}=TqKFWD3X*qs zH!T{lzaEJdI$3b49GQW?B*75Q)>m-?u*HfI*jcPlhB6LoX_cDp=`?#3h8R!iWj>YM z@c86@7H2%x#IZE~WKY5v(!2f`KP~HfY{rpcKBbJ6=R8dSTj{a`O}(+F=LVFEs}~m) zy2t-sXq567mXr$*mbO+et(La7mN!>cCGzzjPr{#q{%u{W5jQruBQUBOv@jM^l%$X- z_T`4GMK`f1<#6RPARH|AlY}hirhUi}-ZFd+GOULMCgAvgTvE;_^(g-$hl{zddl{@w z+#tY1koTCvP%G)ZK)^>GAa?7Z!JO4oEJW-t<0Eq)21@naTB~DB(u^(!DHxHCc*&3= zMzio4ILh0P1;6o497ae(3x-icY3d7)aK7p&lUx%cP76|Q(t;m~GGitDSIW(M@fanZ zUSJzexOhN)UgHA5!)jFkqdTTBc7dXAwn({IFM7ko)jq03$DH0`q2~HJ zg5@O76oxHGUny(b3l)^K9pmIvR=}j9u%M8 z+;Q4QQGLw$6$={|Wbu%B0)%%_)wME*g9BIpCRcV~h<$3jxj zS{!7PxHlhY)mvIOa=p#E#G7U75`Tz=g#k(&z$Ms(6kqTTE)X(a(xi#iFnj@K%|2p* zZ+#aJfiFuiX|l4jye@2aF?)my>?to+(?rx6d0zGI;sY%BhXEGGHhhe`51G0FF0;VvNg-hoNp4fd{0F3cxVSm zz89b5d!}uW7$(Aq(USN!%dM8?)-3bk;`&8dB3yH3wX!D$$?A*rU+lj)IeYZ--GA`@ zD_{EV_rLU;f4u$D?{9tM%J2WpudTxqNL^(%NfeL0?RoRNM_&Am;rlQC$ZuVH={s+4 z++)9Ap7?X$_ijI3|LX7kr*#-MEOBTXW%jrqo3#K@OhB?D3&tL|c=gU3#l<+nGL`!l zwT9xC==v{GIYs)`|2BnhCLn_YGgZ}|>J9aArS(vKtXCd9Y&9<|!Vtbm@i+J*BPWE_ z@>nflRm;POoFwV`POGwAc}H)+sN7G0S+2F#E?NNKq&z^5t4+PSr8d#H#cbJXee-R! zJE>b*35^gHtTZAIk~H5>;_D{NAh45YjYX3ttM0rwid&)ShW=o;io4u*40~s_-fZ$F z(j<)=F0H9*I~5p~akr|fCA1N!D&*uLa)v)M16@N$&}u4sg;oi}?xj^#v!Pjen9QI} zVN2Vswm8hHjZO~tVemT=A~`}peWdF
km)AAUZaF?jtTJsT1 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 diff --git a/src/trainScript.py b/src/trainScript.py index 7aab29e..335290e 100644 --- a/src/trainScript.py +++ b/src/trainScript.py @@ -5,6 +5,16 @@ import numpy as np import tensorflow as tf from tensorflow.keras import layers +import matplotlib.pyplot as plt + +def plot_loss(history): + plt.plot(history.history['loss'], label='loss') + plt.plot(history.history['val_loss'], label='val_loss') + plt.xlabel('Epoch') + plt.ylabel('Error [MPG]') + plt.legend() + plt.grid(True) + plt.show() #train params numberOfEpoch = sys.argv[1] @@ -71,11 +81,11 @@ history = linear_model.fit( house_price_features, house_price_labels, epochs=int(numberOfEpoch), - validation_data = (house_price_test_features,house_price_test_expected), + validation_split=0.33, verbose=1) #callbacks=[cp_callback]) -# print(history) +plot_loss(history) # save model linear_model.save(modelPath, save_format='tf') diff --git a/startscript1.sh b/startscript1.sh index aa73b12..dd96d67 100644 --- a/startscript1.sh +++ b/startscript1.sh @@ -8,4 +8,4 @@ unzip house-price-dataset.zip # head -n $CUTOFF ./Participants_Data_HPP/Train.csv > data.txt # head -n $CUTOFF ./Participants_Data_HPP/Test.csv > dataTest.txt python3 ./src/task1python.py -python3 ./src/trainScript.py 6 \ No newline at end of file +# python3 ./src/trainScript.py 6 \ No newline at end of file diff --git a/trainResults.csv b/trainResults.csv deleted file mode 100644 index 8a49dbb..0000000 --- a/trainResults.csv +++ /dev/null @@ -1,5 +0,0 @@ -0,306900.46875 -1,304823.75 -2,298283.34375 -3,303093.53125 -4,304189.1875