浏览代码

feat:修改定时任务通知,添加对全天数据的计算

zhaohaipeng 9 月之前
父节点
当前提交
ff5f04a431
共有 1 个文件被更改,包括 12 次插入16 次删除
  1. 12 16
      ad/01_ad_model_update_everyday.sh

+ 12 - 16
ad/01_ad_model_update_everyday.sh

@@ -2,8 +2,8 @@
 set -x
 
 # 0 全局变量/参数
-originDataSavePath=/dw/recommend/model/31_ad_sample_data_v3_auto/
-bucketFeatureSavePath=/dw/recommend/model/33_ad_train_data_v3_auto/
+originDataSavePath=/dw/recommend/model/31_ad_sample_data_v3_auto
+bucketFeatureSavePath=/dw/recommend/model/33_ad_train_data_v3_auto
 model_name=model_bkb8_v3
 today="$(date +%Y%m%d)"
 today_early_1="$(date -d '1 days ago' +%Y%m%d)"
@@ -14,7 +14,7 @@ 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/zhangbo/
+OSS_PATH=oss://art-recommend.oss-cn-hangzhou.aliyuncs.com/zhangbo
 max_hour=17
 max_minute=00
 
@@ -125,12 +125,7 @@ echo "$LOG_PREFIX -- 原始样本生产 -- 模型训练完成: 耗时 $step_elap
 # 5 对比AUC
 step5_start_time=$(date "+%Y-%m-%d %H:%M:%S")
 
-# 5.1 用昨天生成的模型,计算昨天一天的AUC
-# $HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/bin/fm_predict -m ${MODEL_PATH}/${model_name}_${}.txt -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_online.txt
-
-
-
-# 5.2 计算线上模型的AUC
+# 5.1 计算线上模型的AUC
 step_start_time=$(date "+%Y-%m-%d %H:%M:%S")
 $HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | ${FM_HOME}/bin/fm_predict -m ${LAST_MODEL_HOME}/model_online.txt -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_online.txt
 online_auc=`cat ${PREDICT_PATH}/${model_name}_${today}_online.txt | /root/sunmingze/AUC/AUC`
@@ -146,7 +141,7 @@ if [ $? -ne 0 ]; then
 fi
 echo "$LOG_PREFIX -- 线上模型AUC计算 -- 线上模型AUC计算完成: 耗时 $step_elapsed"
 
-# 5.3 计算新模型的AUC
+# 5.2 计算新模型的AUC
 step_start_time=$(date "+%Y-%m-%d %H:%M:%S")
 $HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | ${FM_HOME}/bin/fm_predict -m ${MODEL_PATH}/${model_name}_${today_early_1}.txt -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_new.txt
 new_auc=`cat ${PREDICT_PATH}/${model_name}_${today}_new.txt | /root/sunmingze/AUC/AUC`
@@ -164,13 +159,13 @@ echo "$LOG_PREFIX -- 新模型AUC计算 -- 新模型AUC计算完成: 耗时 $ste
 
 echo "AUC比对: 线上模型的AUC: ${online_auc}, 新模型的AUC: ${new_auc}"
 
-# 5.4 计算新模型与线上模型的AUC差值的绝对值
+# 5.3 计算新模型与线上模型的AUC差值的绝对值
 auc_diff=$(echo "$online_auc - $new_auc" | bc -l)
 auc_diff_abs=$(echo "sqrt(($auc_diff)^2)" | bc -l)
 
 step_end_time=$(date "+%Y-%m-%d %H:%M:%S")
 step5_elapsed=$(($(date +%s -d "$step_end_time") - $(date +%s -d "$step5_start_time")))
-# 5.5 如果差值的绝对值小于0.005且新模型的AUC大于0.73, 则更新模型
+# 5.4 如果差值的绝对值小于0.005且新模型的AUC大于0.73, 则更新模型
 if (( $(echo "${online_auc} <= ${new_auc}" | bc -l) )); then
     msg="新模型优于线上模型 \n\t线上模型AUC: ${online_auc} \n\t新模型AUC: ${new_auc}"
     echo -e "$LOG_PREFIX -- AUC对比 -- $msg: 耗时 $step5_elapsed"
@@ -187,10 +182,10 @@ else
     exit 1
 fi
 
-# 5.6 使用前一天线上模型和前一天的新模型对前一天的数据进行预测并计算AUC
+# 5.5 使用前一天线上模型和前一天的新模型对前一天的数据进行预测并计算AUC
 yesterday_online_model=${LAST_MODEL_HOME}/model_online.txt
 
-# 5.6.1 判断model_online文件的生成时间,如果是昨天生成的则表示模型有更新
+# 5.5.1 判断model_online文件的生成时间,如果是昨天生成的则表示模型有更新
 # ${MODEL_PATH}/${model_name}_${today_early_1}.txt 和 ${LAST_MODEL_HOME}/model_online_$(date +\%Y\%m\%d).txt
 file_creation_date=$(stat -c %W "$yesterday_online_model")
 file_creation_date_format=$(date -d "@$file_creation_date" +%Y%m%d)
@@ -198,11 +193,12 @@ if [ "$file_creation_date_format" == "$today_early_1" ]; then
   yesterday_online_model=${LAST_MODEL_HOME}/model_online_${today_early_1}.txt
 fi
 
-# 5.6.2 使用昨天的线上模型,进行预测
+# 5.5.2 使用昨天的线上模型,进行预测
+echo "前一天的线上模型路径: $yesterday_online_model"
 $HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/bin/fm_predict -m "$yesterday_online_model" -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today_early_1}_online_all.txt
 yesterday_online_auc=`cat ${PREDICT_PATH}/${model_name}_${today_early_1}_online_all.txt | /root/sunmingze/AUC/AUC`
 
-# 5.6.3 使用昨天的新模型,进行预测
+# 5.5.3 使用昨天的新模型,进行预测
 $HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/bin/fm_predict -m ${MODEL_PATH}/${model_name}_${today_early_2}.txt -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today_early_1}_new_all.txt
 yesterday_new_auc=`cat ${PREDICT_PATH}/${model_name}_${today_early_1}_new_all.txt | /root/sunmingze/AUC/AUC`