Weekly Report [5]
Weekly Report [5]
Jinning, 08/07/2018
[Project Github]
Try validation on training set
The result:
ips: 110.97455105041419511
ips_std: 5.6860887585293482787
I wonder why it gets so large IPS?
Because repetition of training data?
I count the impressions having the same features, such as:
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 230, 234, 272, 273, 958, 959, 960]', 'id': 50543898}
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 230, 234, 272, 273, 958, 959, 960]', 'id': 6042332}
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 230, 234, 272, 273, 958, 959, 960]', 'id': 5226873}
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 230, 234, 272, 273, 958, 959, 960]', 'id': 10376281}
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 234, 272, 273, 958, 959, 960, 7705]', 'id': 2646568}
{'f': '[0, 9, 10, 11, 12, 19, 112, 226, 227, 234, 272, 273, 958, 959, 960, 7705]', 'id': 4875183}
{'f': '[0, 9, 10, 11, 12, 19, 226, 227, 230, 231, 234, 272, 273, 958, 959, 960]', 'id': 7945582}
{'f': '[0, 9, 10, 11, 12, 19, 226, 227, 230, 231, 234, 272, 273, 958, 959, 960]', 'id': 12753081}
{'f': '[0, 9, 10, 11, 12, 19, 190, 723, 730, 904, 958, 959, 1673, 1674, 1675, 1676]', 'id': 30292516}
{'f': '[0, 9, 10, 11, 12, 19, 190, 723, 730, 904, 958, 959, 1673, 1674, 1675, 1676]', 'id': 28541751}
...
There are 5399483
impressions are repeated.
There are about 14100000
impressions in total.
So the repetition is about 38.3
% impressions being repeated.
The largest repetition for a same feature is 35228
.
Maybe we should clean the training set.
Adding current policy into the weighting of loss
1. Not building computational graph of πw
Loss: ~ππ0[y⋅logσ(x)+(1−y)⋅log(1−σ(x))]
Get a result of IPS=52
, IPS_std=5
on CrowdAI test.
2. Building calculation of πw
Loss: ~π(w)π0[y⋅logσ(x)+(1−y)⋅log(1−σ(x))]
The program is running:
The loss decreases. However, the loss can vary distinctly.
- batchSize too small
- model unstable
2. Building calculation of πw. Adding propensity loss
Loss: ~π(w)π0[y⋅logσ(x)+(1−y)⋅log(1−σ(x))]+(tanh2(1~π(w))−tanh2(1π0))12
The program is running: