Firing Bandits: Optimizing Crowdfunding
Authors: Lalit Jain, Kevin Jamieson
ICML 2018 | Conference PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | Finally, we present both synthetic experiments and real-world scenarios derived from data on the Kiva platform. |
| Researcher Affiliation | Academia | Lalit Jain 1 Kevin Jamieson 1 1Computer Science and Engineering, University of Washington, Seattle, USA. Correspondence to: Lalit Jain <lalitj@cs.washington.edu>, Kevin Jamieson <jamieson@cs.washington.edu>. |
| Pseudocode | Yes | Our algorithm FIRINGUCB is presented below. Note that we assume FIRINGUCB and PULL both have access to a global history over all flips. We now describe it at a high level. FIRINGUCB Input: τ, α, K Create brackets {(bk 1, bk]}K k=1 Global Variables: mk : number of coins allocated to bracket k Ak: the set of active policies in (bk 1, bk] Subroutine INITIALIZE(k): Run PULL (k), U 1(α/4, δ) times (see 1 for definition of U). Remove any B with b C(B, U 1(α/4, δ)) > 1 3α/4. UCB Algorithm: for k K: INITIALIZE(k) while True bk argmaxk S max B Ak UCB(B, Tk) Call PULL(k) if max B b K UCB(B, mk) < 2 αb K K K + 1 allocate new bracket (b K 1, b K] Call INITIALIZE(k) PULL Input: bracket k Draw a new coin with mean µ F. B := max{Ak} Execute πB: Let {Xi}m i=1 be a sequence of m B flips, where the flipping is stopped early if there are τ success and the coin fires. mk mk + 1 Update: for each active policy B in Ak Evaluate policy B using {Xi}B i=1. Update b C(B , mk), b N(B , mk), bρ(B , mk) Eliminate: Let LCB = max B Ak LCB(B, mk, δ) for B Ak if UCB(B, mk, δ) < LCB Ak Ak {B} |
| Open Source Code | No | The paper does not include any explicit statement about releasing source code or a link to a code repository. |
| Open Datasets | No | The paper mentions using a 'synthetic example using F1 = Beta(1/20, 1) as the reservoir distribution' and a distribution 'derived from actual page click data arising from the search page of the microloan crowdfunding site Kiva (www.kiva.org)'. However, it does not provide concrete access information (link, DOI, formal citation with authors/year) for the specific derived Kiva dataset used in the experiments, only the source website. |
| Dataset Splits | No | The paper describes running experiments with a budget and repetitions, but it does not specify explicit training, validation, or test dataset splits. |
| Hardware Specification | No | The paper does not provide any specific details about the hardware (e.g., CPU, GPU models, memory) used for running the experiments. |
| Software Dependencies | No | The paper mentions 'UCB (we used the anytime formulation given in (Abbasi-Yadkori et al., 2011))' which is a reference to an algorithm, not a specific software library or dependency with a version number. No other software versions are mentioned. |
| Experiment Setup | Yes | In both cases, we supplied each algorithm with a budget of 5 × 10^6 total flips over all coins considered, and we considered 50 repetitions of each algorithm with 95% confidence intervals plotted using a normal approximation. ... For a fixed value of k, NAIVEUCB-k maintains a pool of k coins. ... For F1 = Beta(1/20, 1) as the reservoir distribution, and τ1 = 10. ... We used this empirical distribution as our reservoir distribution and took τ = 25. ... The first is a natural modification of FIRINGUCB we call FIRINGBANDITSTHRESHOLD: instead of waiting for a budget B before rejecting a coin that does not convert, we monitor the empirical mean bµk after k flips and stop sampling at flip min{k ≤ B : k d(bµk, τ/B) log(1/δ)} (marking it as not converting in B flips) where d( , ) is the KL divergence of two Bernoullis and δ = .05. |