Skip to content
Discussion options

You must be logged in to vote

In my mind, the normalized version just spreads the media variable through time. This is because the weight array will sum up to 1 when using normalized = True. How much of today's spend is actually used today's? 64% Tomorrow? 27%

If the x vector is extended a bit, you can see that the sum of the normalized one is exactly the sum of the input x . i.e.

x = np.array([10, 10, 10, 0, 10])
x = np.concatenate([x, np.zeros(10)])

alpha = 0.4
l_max = 3
y_norm = geometric_adstock(x, alpha=alpha, l_max=l_max, normalize=True)
y_unnorm = geometric_adstock(x, alpha=alpha, l_max=l_max, normalize=False)

print(y_norm.sum().eval()) # 40.0
print(y_unnorm.sum().eval()) # 62.4

The shapes of the two are similar

Replies: 1 comment 2 replies

Comment options

You must be logged in to vote
2 replies
@PK1706
Comment options

@williambdean
Comment options

Answer selected by PK1706
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants