computational complexity

, Volume 6, Issue 2, pp 174–194

Simple learning algorithms using divide and conquer

  • Nader H. Bshouty
Article

DOI: 10.1007/BF01262930

Cite this article as:
Bshouty, N.H. Comput Complexity (1996) 6: 174. doi:10.1007/BF01262930

Abstract

This paper investigates what happens when a learning algorithm for a classC attempts to learn target formulas from a different class. In many cases, the learning algorithm will find a “bad attribute” or a property of the target formula which precludes its membership in the classC. To continue the learning process, we proceed by building a decision tree according to the possible values of this attribute (divide) and recursively run the learning algorithm for each value (conquer). This paper shows how to recursively run the learning algorithm for each value using the oracles of the target.

We demonstrate that the application of this idea on some known learning algorithms can both simplify the algorithm and provide additional power to learn more classes. In particular, we give a simple exact learning algorithm, using membership and equivalence queries, for the class of DNF that is “almost” unate, that is, unate with the addition ofO (logn) nonunate variables and a constant number of terms. We also find algorithms in different models for boolean functions that depend onk terms.

Key words

PAC-learningexact learningdivide and conquerqueries

Subject classifications

06E3041A0568T05

Copyright information

© Birkhäuser Verlag 1997

Authors and Affiliations

  • Nader H. Bshouty
    • 1
  1. 1.Department of Computer ScienceUniversity of CalgaryCalgaryCanada