瀏覽代碼

feat:计算VID平均分的脚本

zhaohaipeng 8 月之前
父節點
當前提交
153af79f8c
共有 1 個文件被更改,包括 46 次插入0 次删除
  1. 46 0
      recommend/20_vid_avg_score.sh

+ 46 - 0
recommend/20_vid_avg_score.sh

@@ -0,0 +1,46 @@
+#!/bin/sh
+
+# 计算不同VID的平均分
+
+set -x
+
+predict_date=$1
+model_name=$2
+predict_dim=$4
+hdfs_path=$5
+
+PROJECT_HOME=/root/zhaohp/recommend-emr-dataprocess/
+MODEL_PATH=${PROJECT_HOME}/model/recommend/
+PREDICT_PATH=${PROJECT_HOME}/predict/recommend/
+
+HADOOP=/opt/apps/HADOOP-COMMON/hadoop-common-current/bin/hadoop
+FM_PREDICT=/root/sunmingze/alphaFM/bin/fm_predict
+
+
+
+vids=(22895200 22751457 14146727 22847440 22927926 22858609 22974689 22563167 22959023 22970515 22946931 22994781 20720060 22979110)
+
+main() {
+    for(( i = 0; i < ${#vids[@]}; i++)) do
+        vid=${vids[i]}
+        $HADOOP fs -text ${hdfs_path}/${predict_date}/* | \
+        awk -F'\t' '{
+            if ($2 == 22895200) {
+                split($0, fields, "\t");
+                OFS="\t";
+                line="";
+                for (i=1; i<= length(fields); i++){ 
+                    if (i != 2) {
+                        line = (line ? line "\t" : "") fields[i];
+                    }
+                }
+                print line
+            }
+        }' | \
+        ${FM_PREDICT} -m ${MODEL_PATH}/${model_name}.txt -dim ${predict_dim} -core 8 -out ${PREDICT_PATH}/${model_name}_${predict_date}_${vid}.txt
+        score_avg=`awk '{ sum += $2; count++ } END { if (count > 0) print sum / count }' ${PREDICT_PATH}/${model_name}_${predict_date}_${vid}.txt`
+        echo -e "VID: ${vid} 平均分计算结果: ${score_avg} \n\t模型路径: ${MODEL_PATH}/${model_name}.txt \n\tHDFS数据路径: ${hdfs_path}/${predict_date}/*"
+    done
+}
+
+main