chore: Update MLXFilter model deployment and logging with new training results and ONNX file management

- Added new training log entries for lgbm backend with AUC, precision, and recall metrics.
- Enhanced deploy_model.sh to manage ONNX and lgbm model files based on the selected backend.
- Adjusted output shape in mlx_filter.py for ONNX export to support dynamic batch sizes.
This commit is contained in:
21in7
2026-03-02 01:08:12 +09:00
parent 5e6cdcc358
commit 725a4349ee
4 changed files with 42 additions and 5 deletions

Binary file not shown.

View File

@@ -240,5 +240,29 @@
"train_sec": 0.2, "train_sec": 0.2,
"time_weight_decay": 2.0, "time_weight_decay": 2.0,
"model_path": "models/mlx_filter.weights" "model_path": "models/mlx_filter.weights"
},
{
"date": "2026-03-02T00:54:32.264425",
"backend": "lgbm",
"auc": 0.5607,
"best_threshold": 0.6532,
"best_precision": 0.467,
"best_recall": 0.2,
"samples": 533,
"features": 23,
"time_weight_decay": 2.0,
"model_path": "models/lgbm_filter.pkl"
},
{
"date": "2026-03-02T01:07:30.690959",
"backend": "lgbm",
"auc": 0.5579,
"best_threshold": 0.6511,
"best_precision": 0.4,
"best_recall": 0.171,
"samples": 533,
"features": 23,
"time_weight_decay": 2.0,
"model_path": "models/lgbm_filter.pkl"
} }
] ]

View File

@@ -33,13 +33,26 @@ done
echo "=== 모델 전송 시작 (백엔드: ${BACKEND}) ===" echo "=== 모델 전송 시작 (백엔드: ${BACKEND}) ==="
echo " 대상: ${LXC_HOST}:${LXC_MODELS_PATH}" echo " 대상: ${LXC_HOST}:${LXC_MODELS_PATH}"
# ── 원격 디렉터리 생성 + lgbm 기존 모델 백업 ───────────────────────────────── # ── 원격 디렉터리 생성 + 백업 + 상대 백엔드 파일 제거 ───────────────────────
# lgbm 배포 시: 기존 lgbm 백업 후 ONNX 파일 삭제 (ONNX 우선순위 때문에 lgbm이 무시되는 것 방지)
# mlx 배포 시: lgbm 파일 삭제 (명시적으로 mlx만 사용)
ssh "${LXC_HOST}" " ssh "${LXC_HOST}" "
mkdir -p '${LXC_MODELS_PATH}' mkdir -p '${LXC_MODELS_PATH}'
if [ '$BACKEND' = 'lgbm' ] && [ -f '${LXC_MODELS_PATH}/lgbm_filter.pkl' ]; then if [ '$BACKEND' = 'lgbm' ]; then
if [ -f '${LXC_MODELS_PATH}/lgbm_filter.pkl' ]; then
cp '${LXC_MODELS_PATH}/lgbm_filter.pkl' '${LXC_MODELS_PATH}/lgbm_filter_prev.pkl' cp '${LXC_MODELS_PATH}/lgbm_filter.pkl' '${LXC_MODELS_PATH}/lgbm_filter_prev.pkl'
echo ' 기존 lgbm 모델 백업 완료' echo ' 기존 lgbm 모델 백업 완료'
fi fi
if [ -f '${LXC_MODELS_PATH}/mlx_filter.weights.onnx' ]; then
rm '${LXC_MODELS_PATH}/mlx_filter.weights.onnx'
echo ' ONNX 파일 제거 완료 (lgbm 우선 적용)'
fi
else
if [ -f '${LXC_MODELS_PATH}/lgbm_filter.pkl' ]; then
rm '${LXC_MODELS_PATH}/lgbm_filter.pkl'
echo ' lgbm 파일 제거 완료 (mlx 우선 적용)'
fi
fi
" "
# ── 파일 전송 헬퍼 (rsync 우선, scp 폴백) ──────────────────────────────────── # ── 파일 전송 헬퍼 (rsync 우선, scp 폴백) ────────────────────────────────────

View File

@@ -84,7 +84,7 @@ def _export_onnx(
nodes, nodes,
"mlx_filter", "mlx_filter",
inputs=[helper.make_tensor_value_info("X", TensorProto.FLOAT, [None, input_dim])], inputs=[helper.make_tensor_value_info("X", TensorProto.FLOAT, [None, input_dim])],
outputs=[helper.make_tensor_value_info("proba", TensorProto.FLOAT, [None])], outputs=[helper.make_tensor_value_info("proba", TensorProto.FLOAT, [-1])],
initializer=initializers, initializer=initializers,
) )
model_proto = helper.make_model(graph, opset_imports=[helper.make_opsetid("", 17)]) model_proto = helper.make_model(graph, opset_imports=[helper.make_opsetid("", 17)])