|
@@ -9,6 +9,7 @@ today="$(date +%Y%m%d)"
|
|
|
today_early_1="$(date -d '1 days ago' +%Y%m%d)"
|
|
|
|
|
|
MODEL_PATH=/root/zhaohp/recommend-emr-dataprocess/model
|
|
|
+PREDICT_PATH=/root/zhaohp/recommend-emr-dataprocess/predict
|
|
|
HADOOP=/opt/apps/HADOOP-COMMON/hadoop-common-current/bin/hadoop
|
|
|
FM_HOME=/root/sunmingze/alphaFM
|
|
|
OSS_PATH=oss://art-recommend.oss-cn-hangzhou.aliyuncs.com/ad_model/
|
|
@@ -77,7 +78,7 @@ fi
|
|
|
|
|
|
|
|
|
# 4 模型训练
|
|
|
-$HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/fm_train -m model/${model_name}_${today_early_1}.txt -dim 1,1,0 -core 8
|
|
|
+$HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/fm_train -m ${MODEL_PATH}/${model_name}_${today_early_1}.txt -dim 1,1,0 -core 8
|
|
|
if [ $? -ne 0 ]; then
|
|
|
echo "模型训练失败"
|
|
|
/root/anaconda3/bin/python ad/ad_monitor_util.py "广告模型训练失败"
|
|
@@ -87,15 +88,21 @@ fi
|
|
|
|
|
|
# 5 对比AUC
|
|
|
# 5.1 校验今天10分区的数据是否生产完成
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+online_model=${MODEL_PATH}/model_online.txt
|
|
|
+$HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | /root/sunmingze/alphaFM/bin/fm_predict -m ${MODEL_PATH}/${online_model} -dim 0 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_online.txt
|
|
|
+$HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | /root/sunmingze/alphaFM/bin/fm_predict -m ${MODEL_PATH}/${model_name}_${today_early_1}.txt -dim 0 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_new.txt
|
|
|
+
|
|
|
+# shellcheck disable=SC2006
|
|
|
+online_auc=`cat ${PREDICT_PATH}/${model_name}_${today}_online.txt | /root/sunmingze/AUC/AUC`
|
|
|
+new_auc=`cat ${PREDICT_PATH}/${model_name}_${today}_new.txt | /root/sunmingze/AUC/AUC`
|
|
|
+if [ "$online_auc" \< "$new_auc" ]; then
|
|
|
+ echo "新模型优于线上模型: 线上模型AUC: ${online_auc}, 新模型AUC: ${new_auc}"
|
|
|
+ /root/anaconda3/bin/python ad/ad_monitor_util.py "新模型优于线上模型: 线上模型AUC: ${online_auc}, 新模型AUC: ${new_auc}"
|
|
|
+else
|
|
|
+ echo "新模型不如线上模型: 线上模型AUC: ${online_auc}, 新模型AUC: ${new_auc}"
|
|
|
+ /root/anaconda3/bin/python ad/ad_monitor_util.py "新模型不如线上模型: 线上模型AUC: ${online_auc}, 新模型AUC: ${new_auc}"
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
|
|
|
|
|
|
# 6 模型格式转换
|