From 535d55f6d785a11ff67f00ba9c0beb1e753733f3 Mon Sep 17 00:00:00 2001 From: futurebigman <89tomoyatomoya@gmail.com> Date: Mon, 19 May 2025 13:12:11 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=E3=83=A1=E3=83=A2=E3=83=AA=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E9=87=8F=E6=A4=9C=E8=A8=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- day5/requirements.txt | 3 ++- .../tests/test_model.py" | 19 ++++++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/day5/requirements.txt b/day5/requirements.txt index d37edb49b..b3c12277c 100644 --- a/day5/requirements.txt +++ b/day5/requirements.txt @@ -4,4 +4,5 @@ mlflow pandas pytest great_expectations -black \ No newline at end of file +black +psutil \ No newline at end of file diff --git "a/day5/\346\274\224\347\277\2223/tests/test_model.py" "b/day5/\346\274\224\347\277\2223/tests/test_model.py" index e11a19a5c..48f4ea819 100644 --- "a/day5/\346\274\224\347\277\2223/tests/test_model.py" +++ "b/day5/\346\274\224\347\277\2223/tests/test_model.py" @@ -11,6 +11,7 @@ from sklearn.preprocessing import OneHotEncoder, StandardScaler from sklearn.compose import ColumnTransformer from sklearn.pipeline import Pipeline +import psutil # テスト用データとモデルパスを定義 DATA_PATH = os.path.join(os.path.dirname(__file__), "../data/Titanic.csv") @@ -157,7 +158,7 @@ def test_model_reproducibility(sample_data, preprocessor): steps=[ ("preprocessor", preprocessor), ("classifier", RandomForestClassifier(n_estimators=100, random_state=42)), - ] + ] ) # 学習 @@ -171,3 +172,19 @@ def test_model_reproducibility(sample_data, preprocessor): assert np.array_equal( predictions1, predictions2 ), "モデルの予測結果に再現性がありません" + +def memory_usage_amount(train_model): + model, X_test, y_test = train_model + # プロセス取得 + process = psutil.Process(os.getpid()) + + # predict前のメモリ + mem_before = process.memory_info().rss / 1024 ** 2 # MB単位 + + # 実行 + model.predict(X_test) + + # predict後のメモリ + mem_after = process.memory_info().rss / 1024 ** 2 + + assert mem_after - mem_before < 10, "推論にメモリを使いすぎです" From 0e746861c18ead5005d6a1da3d5caf2fd7d3beb3 Mon Sep 17 00:00:00 2001 From: futurebigman <89tomoyatomoya@gmail.com> Date: Mon, 19 May 2025 13:33:24 +0900 Subject: [PATCH 2/3] black modified --- .../tests/test_model.py" | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git "a/day5/\346\274\224\347\277\2223/tests/test_model.py" "b/day5/\346\274\224\347\277\2223/tests/test_model.py" index 48f4ea819..1676f29b7 100644 --- "a/day5/\346\274\224\347\277\2223/tests/test_model.py" +++ "b/day5/\346\274\224\347\277\2223/tests/test_model.py" @@ -158,7 +158,7 @@ def test_model_reproducibility(sample_data, preprocessor): steps=[ ("preprocessor", preprocessor), ("classifier", RandomForestClassifier(n_estimators=100, random_state=42)), - ] + ] ) # 学習 @@ -172,19 +172,23 @@ def test_model_reproducibility(sample_data, preprocessor): assert np.array_equal( predictions1, predictions2 ), "モデルの予測結果に再現性がありません" - + + def memory_usage_amount(train_model): + """メモリ使用量を検証""" model, X_test, y_test = train_model # プロセス取得 process = psutil.Process(os.getpid()) # predict前のメモリ - mem_before = process.memory_info().rss / 1024 ** 2 # MB単位 + mem_before = process.memory_info().rss / 1024**2 # MB単位 # 実行 model.predict(X_test) # predict後のメモリ - mem_after = process.memory_info().rss / 1024 ** 2 - - assert mem_after - mem_before < 10, "推論にメモリを使いすぎです" + mem_after = process.memory_info().rss / 1024**2 + + assert ( + mem_after - mem_before < 10 + ), f"推論にメモリを使いすぎです. {mem_after - mem_before}MB" From 514b2be5fe8a95b53b0c557756ef7b7db48ad512 Mon Sep 17 00:00:00 2001 From: futurebigman <89tomoyatomoya@gmail.com> Date: Mon, 19 May 2025 13:45:02 +0900 Subject: [PATCH 3/3] pytest modified --- .../models/titanic_model.pkl" | Bin 2379709 -> 2374409 bytes .../tests/test_model.py" | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git "a/day5/\346\274\224\347\277\2223/models/titanic_model.pkl" "b/day5/\346\274\224\347\277\2223/models/titanic_model.pkl" index fd05752abdcc0fc8ac9e7e512680ae0d9388a607..5a1488b8453ff521141550fc47d4bee4beeaa552 100644 GIT binary patch delta 43051 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 BS=j&p delta 43529 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 XJG4%NLQvs+V|RskyVI(o=e+iRbp{tT diff --git "a/day5/\346\274\224\347\277\2223/tests/test_model.py" "b/day5/\346\274\224\347\277\2223/tests/test_model.py" index 1676f29b7..69818cec7 100644 --- "a/day5/\346\274\224\347\277\2223/tests/test_model.py" +++ "b/day5/\346\274\224\347\277\2223/tests/test_model.py" @@ -174,7 +174,7 @@ def test_model_reproducibility(sample_data, preprocessor): ), "モデルの予測結果に再現性がありません" -def memory_usage_amount(train_model): +def test_model_memory_usage(train_model): """メモリ使用量を検証""" model, X_test, y_test = train_model # プロセス取得