123456789101112131415161718192021222324 |
- #coding utf-8
- import json
- import math
- def load_json(filename):
- with open(filename, 'r') as fin:
- json_data = json.load(fin)
- return json_data
- def sigmoid(x):
- return 1.0 / (1.0 + math.exp(-x))
- online_w = load_json('./ad_out_v1_online_w.json')
- def get_online_score(online_features):
- score = online_w.get('bias', 0.0)
- score += sum([online_w.get('#'.join([k, v]), 0.0) for k, v in online_features.items()])
- return score
- def get_final_score(online_features, offline_score):
- online_score = get_online_score(online_features)
- final_score = online_score + offline_score
- final_score = sigmoid(final_score)
- return final_score, online_score
|