Learning Disjunctions: Near-Optimal Trade-off between Mistakes and “I Don't Knows”
We develop polynomial-time online algorithms for learning disjunctions while trading off between the number of mistakes and the number of “I don't know” answers. In this model, we are given an online adversarial sequence of inputs for an unknown function of the form f(x1, x2,..., xn) = Viεs[sup...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Article |
Language: | en_US |
Published: |
Society for Industrial and Applied Mathematics
2014
|
Online Access: | http://hdl.handle.net/1721.1/86204 https://orcid.org/0000-0003-3803-5703 |
Summary: | We develop polynomial-time online algorithms for learning disjunctions while trading off between the number of mistakes and the number of “I don't know” answers. In this model, we are given an online adversarial sequence of inputs for an unknown function of the form f(x1, x2,..., xn) = Viεs[superscript xi], and for each such input, we must guess “true”, “false”, or “I don't know”, after which we find out the correct output for that input. On the algorithm side, we show how to make at most εn mistakes while answering “I don't know” at most (1/ε)[superscript 2O(1/ε)] times, which is linear for any constant ε > 0 and polynomial for some ε = c/lg lg n. Furthermore, we show how to make 0 (n [log log n over log n]) mistakes while answering “I don't know” O(n[superscript 2] log log n) times. On the lower bound side, we show that any algorithm making o(n/ log n) mistakes must answer “I don't know” a superpolynomial number of times. By contrast, no previous lower bounds were known, and the best previous algorithms (by Sayedi et al. who introduced the model) either make at most 1/3n mistakes while answering “I don't know” O(n) times with linear running time per answer, or make O(n/log n) mistakes while answering “I don't know” O(n[superscript 2]) times with exponential running time per answer. Our lower bound establishes optimality of the latter mistake bound, assuming a polynomial number of “I don't know”. The running time of our algorithms (per answer) are (1/ε)[superscript 2O(1/ε)] n and Õ(n[superscript 3]), respectively, whereas the first previous algorithm mentioned above makes many mistakes, and the second one requires Θ(2[superscript n]) time per answer. The only previous polynomial-time algorithm with reasonable number of mistakes achieves a mistake bound of εn and an “I don't know” bound of O(n[superscript 1/ε]) which is super polynomial for any non-constant ε. |
---|