|
@@ -8,7 +8,7 @@ model_name=model_bkb8_v3
|
|
today="$(date +%Y%m%d)"
|
|
today="$(date +%Y%m%d)"
|
|
today_early_1="$(date -d '1 days ago' +%Y%m%d)"
|
|
today_early_1="$(date -d '1 days ago' +%Y%m%d)"
|
|
|
|
|
|
-ONLINE_MODEL_HOME=/root/zhaohp/model_online
|
|
|
|
|
|
+LAST_MODEL_HOME=/root/zhaohp/model_online
|
|
MODEL_PATH=/root/zhaohp/recommend-emr-dataprocess/model
|
|
MODEL_PATH=/root/zhaohp/recommend-emr-dataprocess/model
|
|
PREDICT_PATH=/root/zhaohp/recommend-emr-dataprocess/predict
|
|
PREDICT_PATH=/root/zhaohp/recommend-emr-dataprocess/predict
|
|
HADOOP=/opt/apps/HADOOP-COMMON/hadoop-common-current/bin/hadoop
|
|
HADOOP=/opt/apps/HADOOP-COMMON/hadoop-common-current/bin/hadoop
|
|
@@ -16,6 +16,7 @@ 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_hour=17
|
|
max_minute=00
|
|
max_minute=00
|
|
|
|
+OSS_ONLINE_MODEL_PATH=${OSS_PATH}/${model_name}.txt
|
|
|
|
|
|
export SPARK_HOME=/opt/apps/SPARK2/spark-2.4.8-hadoop3.2-1.0.8
|
|
export SPARK_HOME=/opt/apps/SPARK2/spark-2.4.8-hadoop3.2-1.0.8
|
|
export PATH=$SPARK_HOME/bin:$PATH
|
|
export PATH=$SPARK_HOME/bin:$PATH
|
|
@@ -83,7 +84,7 @@ fi
|
|
|
|
|
|
|
|
|
|
# 4 模型训练
|
|
# 4 模型训练
|
|
-$HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/bin/fm_train -m ${MODEL_PATH}/${model_name}_${today_early_1}.txt -dim 1,1,8 -im ${ONLINE_MODEL_HOME}/model_online.txt -core 8
|
|
|
|
|
|
+$HADOOP fs -text ${bucketFeatureSavePath}/${today_early_1}/* | ${FM_HOME}/bin/fm_train -m ${MODEL_PATH}/${model_name}_${today_early_1}.txt -dim 1,1,8 -im ${LAST_MODEL_HOME}/model_online.txt -core 8
|
|
if [ $? -ne 0 ]; then
|
|
if [ $? -ne 0 ]; then
|
|
echo "模型训练失败"
|
|
echo "模型训练失败"
|
|
/root/anaconda3/bin/python ad/ad_monitor_util.py "广告模型训练失败"
|
|
/root/anaconda3/bin/python ad/ad_monitor_util.py "广告模型训练失败"
|
|
@@ -93,7 +94,7 @@ fi
|
|
|
|
|
|
# 5 对比AUC
|
|
# 5 对比AUC
|
|
# 5.1 校验今天10分区的数据是否生产完成
|
|
# 5.1 校验今天10分区的数据是否生产完成
|
|
-online_model=${ONLINE_MODEL_HOME}/model_online.txt
|
|
|
|
|
|
+online_model=${LAST_MODEL_HOME}/model_online.txt
|
|
$HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | ${FM_HOME}/bin/fm_predict -m ${MODEL_PATH}/${online_model} -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_online.txt
|
|
$HADOOP fs -text ${bucketFeatureSavePath}/${today}/* | ${FM_HOME}/bin/fm_predict -m ${MODEL_PATH}/${online_model} -dim 8 -core 8 -out ${PREDICT_PATH}/${model_name}_${today}_online.txt
|
|
$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
|
|
$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
|
|
|
|
|
|
@@ -151,8 +152,8 @@ awk -F " " '{
|
|
#fi
|
|
#fi
|
|
|
|
|
|
# 7.3 本地保存最新的线上使用的模型,用于下一次的AUC验证
|
|
# 7.3 本地保存最新的线上使用的模型,用于下一次的AUC验证
|
|
-cp ${ONLINE_MODEL_HOME}/model_online.txt ${ONLINE_MODEL_HOME}/model_online_$(date +\%Y\%m\%d).txt
|
|
|
|
-cp ${MODEL_PATH}/${model_name}_${today_early_1}.txt ${ONLINE_MODEL_HOME}/model_online.txt
|
|
|
|
|
|
+cp -f ${LAST_MODEL_HOME}/model_online.txt ${LAST_MODEL_HOME}/model_online_$(date +\%Y\%m\%d).txt
|
|
|
|
+cp -f ${MODEL_PATH}/${model_name}_${today_early_1}.txt ${LAST_MODEL_HOME}/model_online.txt
|
|
if [ $? -ne 0 ]; then
|
|
if [ $? -ne 0 ]; then
|
|
echo "模型备份失败"
|
|
echo "模型备份失败"
|
|
/root/anaconda3/bin/python ad/ad_monitor_util.py "模型备份失败 - 最新模型地址: ${MODEL_PATH}/${model_name}_${today_early_1}.txt"
|
|
/root/anaconda3/bin/python ad/ad_monitor_util.py "模型备份失败 - 最新模型地址: ${MODEL_PATH}/${model_name}_${today_early_1}.txt"
|