IUM_08
This commit is contained in:
parent
a6be9a7295
commit
f7b13459a3
10
mlflow/MLproject
Normal file
10
mlflow/MLproject
Normal file
@ -0,0 +1,10 @@
|
||||
name: Credit card fraud MLFlow - s464913
|
||||
|
||||
conda_env: conda.yaml
|
||||
|
||||
entry_points:
|
||||
main:
|
||||
parameters:
|
||||
learning_rate: { type: float, default: 0.001 }
|
||||
epochs: { type: int, default: 5 }
|
||||
command: 'python mlflow_train_evaluation.py {learning_rate} {epochs}'
|
11
mlflow/conda.yaml
Normal file
11
mlflow/conda.yaml
Normal file
@ -0,0 +1,11 @@
|
||||
name: Credit card fraud MLFlow - s464913
|
||||
channels:
|
||||
- defaults
|
||||
dependencies:
|
||||
- python=3.12
|
||||
- pip
|
||||
- pip:
|
||||
- mlflow
|
||||
- tensorflow
|
||||
- pandas
|
||||
- scikit-learn
|
82
mlflow/mlflow_train_evaluation.py
Normal file
82
mlflow/mlflow_train_evaluation.py
Normal file
@ -0,0 +1,82 @@
|
||||
import os
|
||||
|
||||
os.environ["TF_ENABLE_ONEDNN_OPTS"] = "0"
|
||||
|
||||
from keras.models import Sequential
|
||||
from keras.layers import BatchNormalization, Dropout, Dense, Flatten, Conv1D
|
||||
from keras.optimizers import Adam
|
||||
import pandas as pd
|
||||
import sys
|
||||
import mlflow
|
||||
from sklearn.metrics import confusion_matrix
|
||||
|
||||
mlflow.set_tracking_uri("http://localhost:5000")
|
||||
|
||||
|
||||
def main():
|
||||
X_train = pd.read_csv("../data/X_train.csv")
|
||||
X_val = pd.read_csv("../data/X_val.csv")
|
||||
y_train = pd.read_csv("../data/y_train.csv")
|
||||
y_val = pd.read_csv("../data/y_val.csv")
|
||||
|
||||
X_train = X_train.to_numpy()
|
||||
X_val = X_val.to_numpy()
|
||||
y_train = y_train.to_numpy()
|
||||
y_val = y_val.to_numpy()
|
||||
|
||||
X_train = X_train.reshape(X_train.shape[0], X_train.shape[1], 1)
|
||||
X_val = X_val.reshape(X_val.shape[0], X_val.shape[1], 1)
|
||||
|
||||
learning_rate = float(sys.argv[1])
|
||||
epochs = int(sys.argv[2])
|
||||
|
||||
with mlflow.start_run() as run:
|
||||
print("MLflow run experiment_id: {0}".format(run.info.experiment_id))
|
||||
print("MLflow run artifact_uri: {0}".format(run.info.artifact_uri))
|
||||
|
||||
model = Sequential(
|
||||
[
|
||||
Conv1D(32, 2, activation="relu", input_shape=X_train[0].shape),
|
||||
BatchNormalization(),
|
||||
Dropout(0.2),
|
||||
Conv1D(64, 2, activation="relu"),
|
||||
BatchNormalization(),
|
||||
Dropout(0.5),
|
||||
Flatten(),
|
||||
Dense(64, activation="relu"),
|
||||
Dropout(0.5),
|
||||
Dense(1, activation="sigmoid"),
|
||||
]
|
||||
)
|
||||
|
||||
model.compile(
|
||||
optimizer=Adam(learning_rate=learning_rate),
|
||||
loss="binary_crossentropy",
|
||||
metrics=["accuracy"],
|
||||
)
|
||||
|
||||
model.fit(
|
||||
X_train,
|
||||
y_train,
|
||||
validation_data=(X_val, y_val),
|
||||
epochs=epochs,
|
||||
verbose=1,
|
||||
)
|
||||
|
||||
mlflow.log_param("learning_rate", learning_rate)
|
||||
mlflow.log_param("epochs", epochs)
|
||||
|
||||
X_test = pd.read_csv("../data/X_test.csv")
|
||||
y_test = pd.read_csv("../data/y_test.csv")
|
||||
|
||||
y_pred = model.predict(X_test)
|
||||
y_pred = y_pred >= 0.5
|
||||
|
||||
cm = confusion_matrix(y_test, y_pred)
|
||||
accuracy = cm[1, 1] / (cm[1, 0] + cm[1, 1])
|
||||
|
||||
mlflow.log_metric("accuracy", accuracy)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
15
mlflow/mlruns/0/3c46f6c4b15743faa0119c4b9b804825/meta.yaml
Normal file
15
mlflow/mlruns/0/3c46f6c4b15743faa0119c4b9b804825/meta.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
artifact_uri: mlflow-artifacts:/0/3c46f6c4b15743faa0119c4b9b804825/artifacts
|
||||
end_time: 1715508788768
|
||||
entry_point_name: ''
|
||||
experiment_id: '0'
|
||||
lifecycle_stage: active
|
||||
run_id: 3c46f6c4b15743faa0119c4b9b804825
|
||||
run_name: dapper-hog-137
|
||||
run_uuid: 3c46f6c4b15743faa0119c4b9b804825
|
||||
source_name: ''
|
||||
source_type: 4
|
||||
source_version: ''
|
||||
start_time: 1715508594003
|
||||
status: 3
|
||||
tags: []
|
||||
user_id: skype
|
@ -0,0 +1 @@
|
||||
1715508787882 0.8217821782178217 0
|
@ -0,0 +1 @@
|
||||
5
|
@ -0,0 +1 @@
|
||||
0.001
|
@ -0,0 +1 @@
|
||||
https://git.wmi.amu.edu.pl/s464913/ium_464913.git
|
@ -0,0 +1 @@
|
||||
local
|
@ -0,0 +1 @@
|
||||
main
|
@ -0,0 +1 @@
|
||||
conda
|
@ -0,0 +1 @@
|
||||
dapper-hog-137
|
@ -0,0 +1 @@
|
||||
a6be9a729562db8c47bc5fec88ad8f5216af0cf3
|
@ -0,0 +1 @@
|
||||
https://git.wmi.amu.edu.pl/s464913/ium_464913.git
|
@ -0,0 +1 @@
|
||||
file://C:\Users\skype\source\repos\Inżynieria Uczenia Maszynowego#\mlflow
|
@ -0,0 +1 @@
|
||||
PROJECT
|
@ -0,0 +1 @@
|
||||
skype
|
15
mlflow/mlruns/0/706dcf453a0842aaa48647e15521bb7b/meta.yaml
Normal file
15
mlflow/mlruns/0/706dcf453a0842aaa48647e15521bb7b/meta.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
artifact_uri: mlflow-artifacts:/0/706dcf453a0842aaa48647e15521bb7b/artifacts
|
||||
end_time: 1715508573447
|
||||
entry_point_name: ''
|
||||
experiment_id: '0'
|
||||
lifecycle_stage: active
|
||||
run_id: 706dcf453a0842aaa48647e15521bb7b
|
||||
run_name: loud-whale-40
|
||||
run_uuid: 706dcf453a0842aaa48647e15521bb7b
|
||||
source_name: ''
|
||||
source_type: 4
|
||||
source_version: ''
|
||||
start_time: 1715508159092
|
||||
status: 3
|
||||
tags: []
|
||||
user_id: skype
|
@ -0,0 +1 @@
|
||||
1715508572612 0.7524752475247525 0
|
@ -0,0 +1 @@
|
||||
7
|
@ -0,0 +1 @@
|
||||
0.001
|
@ -0,0 +1 @@
|
||||
https://git.wmi.amu.edu.pl/s464913/ium_464913.git
|
@ -0,0 +1 @@
|
||||
local
|
@ -0,0 +1 @@
|
||||
main
|
@ -0,0 +1 @@
|
||||
conda
|
@ -0,0 +1 @@
|
||||
loud-whale-40
|
@ -0,0 +1 @@
|
||||
a6be9a729562db8c47bc5fec88ad8f5216af0cf3
|
@ -0,0 +1 @@
|
||||
https://git.wmi.amu.edu.pl/s464913/ium_464913.git
|
@ -0,0 +1 @@
|
||||
file://C:\Users\skype\source\repos\Inżynieria Uczenia Maszynowego#\mlflow
|
@ -0,0 +1 @@
|
||||
PROJECT
|
@ -0,0 +1 @@
|
||||
skype
|
6
mlflow/mlruns/0/meta.yaml
Normal file
6
mlflow/mlruns/0/meta.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
artifact_location: mlflow-artifacts:/0
|
||||
creation_time: 1715508147231
|
||||
experiment_id: '0'
|
||||
last_update_time: 1715508147231
|
||||
lifecycle_stage: active
|
||||
name: Default
|
Loading…
Reference in New Issue
Block a user