aboutsummaryrefslogtreecommitdiff
path: root/backend/microservice
diff options
context:
space:
mode:
Diffstat (limited to 'backend/microservice')
-rw-r--r--backend/microservice/api/controller.py15
-rw-r--r--backend/microservice/api/newmlservice.py24
2 files changed, 21 insertions, 18 deletions
diff --git a/backend/microservice/api/controller.py b/backend/microservice/api/controller.py
index 9b83b8e7..f870b2b1 100644
--- a/backend/microservice/api/controller.py
+++ b/backend/microservice/api/controller.py
@@ -53,7 +53,7 @@ class train_callback(tf.keras.callbacks.Callback):
@app.route('/train', methods = ['POST'])
def train():
- print("******************************TRAIN*************************************************")
+ #print("******************************TRAIN*************************************************")
f = request.files.get("file")
data = pd.read_csv(f)
@@ -88,10 +88,11 @@ def train():
"h5FileId" : fileId,
"metrics" : m
}
- print(predictor)
+ #print(predictor)
+ #print('\n')
url = config.api_url + "/Predictor/add"
r = requests.post(url, json=predictor).text
- print(r)
+ #print(r)
return r
@app.route('/predict', methods = ['POST'])
@@ -100,13 +101,13 @@ def predict():
model = tf.keras.models.load_model(h5)
paramsExperiment = json.loads(request.form["experiment"])
paramsPredictor = json.loads(request.form["predictor"])
- print("********************************model loaded*******************************")
+ #print("********************************model loaded*******************************")
result = newmlservice.predict(paramsExperiment, paramsPredictor, model)
return result
@app.route('/preprocess',methods=['POST'])
def returnColumnsInfo():
- print("********************************PREPROCESS*******************************")
+ #print("********************************PREPROCESS*******************************")
dataset = json.loads(request.form["dataset"])
file = request.files.get("file")
data=pd.read_csv(file)
@@ -126,8 +127,8 @@ def returnColumnsInfo():
dataset["colCount"] = preprocess["colCount"]
dataset["rowCount"] = preprocess["rowCount"]
dataset["isPreProcess"] = True
- print(dataset)
+ #print(dataset)
return jsonify(dataset)
-print("App loaded.")
+#print("App loaded.")
app.run() \ No newline at end of file
diff --git a/backend/microservice/api/newmlservice.py b/backend/microservice/api/newmlservice.py
index 6cbda69c..6e65c876 100644
--- a/backend/microservice/api/newmlservice.py
+++ b/backend/microservice/api/newmlservice.py
@@ -129,7 +129,8 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
###NULL
null_value_options = paramsExperiment["nullValues"]
null_values_replacers = paramsExperiment["nullValuesReplacers"]
-
+ kategorijskekolone=data.select_dtypes(include=['object']).columns.copy()
+ #print(kategorijskekolone)
if(null_value_options=='replace'):
#print("replace null") #
dict=null_values_replacers
@@ -143,11 +144,18 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
val = np.int64(val)
elif(data[col].dtype == 'float64'):
val = np.float64(val)
- #elif(data[col].dtype == 'object'):
data[col]=data[col].fillna(val)
elif(null_value_options=='delete_rows'):
data=data.dropna()
elif(null_value_options=='delete_columns'):
+ if(data[output_column].isnull().sum()>0):
+ if(output_column in kategorijskekolone):
+ replace=data[output_column].value_counts().index[0]
+ #print(replace)
+ else:
+ replace=data[output_column].mean()
+ data[output_column]=data[output_column].fillna(replace)
+ #print(data[output_column].isnull().sum())
data=data.dropna(axis=1)
#print(data.shape)
@@ -175,7 +183,8 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
encodings=paramsExperiment["encodings"]
datafront=dataset.copy()
svekolone=datafront.columns
- kategorijskekolone=datafront.select_dtypes(include=['object']).columns
+
+
for kolonaEncoding in encodings:
kolona = kolonaEncoding["columnName"]
@@ -237,13 +246,6 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
#print(x_columns)
x = data[x_columns].values
y = data[output_column].values
- print('-----------------dfghfhgfhfg-------------------------------')
- print(x)
- print('-----------------dfghfhgfhfg-------------------------------')
- print(y)
- print('-----------------dfghfhgfhfg-------------------------------')
- print(output_column)
- print('-----------------dfghfhgfhfg-------------------------------')
#
# Podela na test i trening skupove
@@ -360,7 +362,7 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
classifier.add(tf.keras.layers.Dense(units=paramsModel['hiddenLayerNeurons'], activation=paramsModel['hiddenLayerActivationFunctions'][i+1]))#i-ti skriveni sloj
classifier.add(tf.keras.layers.Dense(units=1, activation=paramsModel['outputLayerActivationFunction']))#izlazni sloj
- classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =['accuracy','mae','mse'])
+ classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =['accuracy'])
history=classifier.fit(x_train, y_train, epochs = paramsModel['epochs'],batch_size=paramsModel['batchSize'],callbacks=callback(x_test, y_test,paramsModel['_id']))
hist=history.history