MCPcopy
hub / github.com/shenweichen/DeepCTR-Torch / get_xy_fd

Function get_xy_fd

examples/run_dien.py:9–52  ·  view source on GitHub ↗
(use_neg=False, hash_flag=False)

Source from the content-addressed store, hash-verified

7
8
9def get_xy_fd(use_neg=False, hash_flag=False):
10 feature_columns = [SparseFeat('user', 4, embedding_dim=4, use_hash=hash_flag),
11 SparseFeat('gender', 2, embedding_dim=4, use_hash=hash_flag),
12 SparseFeat('item_id', 3 + 1, embedding_dim=8, use_hash=hash_flag),
13 SparseFeat('cate_id', 2 + 1, embedding_dim=4, use_hash=hash_flag),
14 DenseFeat('pay_score', 1)]
15
16 feature_columns += [
17 VarLenSparseFeat(SparseFeat('hist_item_id', vocabulary_size=3 + 1, embedding_dim=8, embedding_name='item_id'),
18 maxlen=4, length_name="seq_length"),
19 VarLenSparseFeat(SparseFeat('hist_cate_id', vocabulary_size=2 + 1, embedding_dim=4, embedding_name='cate_id'),
20 maxlen=4,
21 length_name="seq_length")]
22
23 behavior_feature_list = ["item_id", "cate_id"]
24 uid = np.array([0, 1, 2, 3])
25 gender = np.array([0, 1, 0, 1])
26 item_id = np.array([1, 2, 3, 2]) # 0 is mask value
27 cate_id = np.array([1, 2, 1, 2]) # 0 is mask value
28 score = np.array([0.1, 0.2, 0.3, 0.2])
29
30 hist_item_id = np.array([[1, 2, 3, 0], [1, 2, 3, 0], [1, 2, 0, 0], [1, 2, 0, 0]])
31 hist_cate_id = np.array([[1, 1, 2, 0], [2, 1, 1, 0], [2, 1, 0, 0], [1, 2, 0, 0]])
32
33 behavior_length = np.array([3, 3, 2, 2])
34
35 feature_dict = {'user': uid, 'gender': gender, 'item_id': item_id, 'cate_id': cate_id,
36 'hist_item_id': hist_item_id, 'hist_cate_id': hist_cate_id,
37 'pay_score': score, "seq_length": behavior_length}
38
39 if use_neg:
40 feature_dict['neg_hist_item_id'] = np.array([[1, 2, 3, 0], [1, 2, 3, 0], [1, 2, 0, 0], [1, 2, 0, 0]])
41 feature_dict['neg_hist_cate_id'] = np.array([[1, 1, 2, 0], [2, 1, 1, 0], [2, 1, 0, 0], [1, 2, 0, 0]])
42 feature_columns += [
43 VarLenSparseFeat(
44 SparseFeat('neg_hist_item_id', vocabulary_size=3 + 1, embedding_dim=8, embedding_name='item_id'),
45 maxlen=4, length_name="seq_length"),
46 VarLenSparseFeat(
47 SparseFeat('neg_hist_cate_id', vocabulary_size=2 + 1, embedding_dim=4, embedding_name='cate_id'),
48 maxlen=4, length_name="seq_length")]
49
50 x = {name: feature_dict[name] for name in get_feature_names(feature_columns)}
51 y = np.array([1, 0, 1, 0])
52 return x, y, feature_columns, behavior_feature_list
53
54
55if __name__ == "__main__":

Callers 1

run_dien.pyFile · 0.70

Calls 4

SparseFeatClass · 0.90
DenseFeatClass · 0.90
VarLenSparseFeatClass · 0.90
get_feature_namesFunction · 0.90

Tested by

no test coverage detected