I am exploring Shapley for channel attribution based on [here][1]

Consider C1, C2, C3, C4 as 4 channels in question.

Some of the coalition does not have value, such as

(C1, C2) -> 20
(C1, C3, C4) -> 10
(C1, C2, C3, C4) -> 0

The reason being there is no conversion that went through all 4 channels.

How does Shapley works in this case ? According to https://en.wikipedia.org/wiki/Shapley_value

At some point, there will be a marginal contribution of for C2 as

v(C1, C2, C3, C4) - v(C1, C3, C4) < 0
  1. Is this still valid ? To interpret this, can we say C2 has a negative contribution to this coalition. But with the similar logic, since v(all Ci) = 0 , contribution of all C1, C3, C4 will also be negative in this case.

  2. One axiom of the definition is marginal

    sum(marginal v(Ci)) = v(C1, C2, C3, C4) = 0

However, when I tried Shapley, v(Ci) > 0 . How can they sum up to be = 0

  1. Continuing Q2, I notice I don't have

    sum(marginal v(Ci)) = v(C1, C2, C3, C4) = 0

. [1]: https://medium.com/analytics-vidhya/the-shapley-value-approach-to-multi-touch-attribution-marketing-model-e345b35f3359


In the blog post, the author defines the characteristic function $v$ to be the sum of conversion across all subsets of the coalition. (If I'm understanding the raw data correctly, this is the number of conversions that would've occurred if you limited the channels to that coalition, which seems a sensible measure.) You can check that in the code definition for v_function. So in your example, while no customers converted after hitting all four channels, still $v(C_1, C_2, C_3, C_4)\geq 30$, since it includes the sum of the two other channel combinations you've listed.

  • $\begingroup$ Thanks Ben. 1. Is it a valid definition, by saying v(C1, C2) = sum of conversion for C1 and C2 ? Any better definition ? 2. When seeing Shapley on Classification model (such as Random forest), I see negative contribution, while the outcome is either 0 or 1. How is the characteristic v defined in this case ? $\endgroup$
    – Kenny
    Nov 20 '20 at 4:54
  • $\begingroup$ I'm not too familiar with shapley-for-attribution, but this seems a natural definition for v. For SHAP values, naturally each feature can decrease the probability, hence negative values; the function v is some conditional expectation of the model outputs. (And in the shap package, these are usually given in the log-odds space.) $\endgroup$ Nov 21 '20 at 19:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.