Je ne sais pas si vous considérerez ce qui suit comme une limite non triviale, mais c'est parti.
Tout d'abord, pour être clair afin de ne pas confondre -DNF avec -term DNF (ce que je fais souvent), une formule -DNF sur les variables est de la forme où et , .k c x 1 , ... , x n ∨ k i = 1 ( ℓ i , 1 ∧ ℓ i , 2 . . . ℓ i , c ) ∀ 1 ≤ i ≤ k 1 ≤ j ≤ c ℓ i , j ∈ { x 1 , … , x n , ˉ x 1ckcX1, … , Xn∨ki=1(ℓi,1∧ℓi,2...ℓi,c)∀1≤i≤k1≤j≤cℓi,j∈{x1,…,xn,x¯1,…,x¯n}
On peut d'abord se demander combien de termes distincts peuvent exister dans un -DNF. Chaque terme aura des variables, chacune étant niée ou non - ce qui donne différents termes possibles. Dans une instance 2-DNF, chaque terme apparaît ou non, ce qui donne "cibles" possibles, où est l'espace d'hypothèse.c n 2 c ( nccn | H| =22c ( n2c(nc) H|H|=22c(nc)H
Imaginez un algorithme qui prend échantillons et essaie ensuite tous leshypothèses jusqu'à ce qu'il en trouve une qui prédit parfaitement sur les échantillons. Le théorème de Razor d'Occam dit qu'il suffit de prendre environ échantillons pour que cet algorithme trouve un cible avec erreur avec probabilité .| H | m = O ( 1m|H|≤ϵ≥1-δm=O(1ϵ|(H|+1δ)≤ϵ≥1−δ
Dans notre cas, pour , , ce qui signifie que vous aurez besoin d'environ échantillons pour effectuer (correctement) l'apprentissage.lg | H | = O ( n 2 ) n 2c=2lg|H|=O(n2)n2
Mais tout le jeu de l'apprentissage n'est pas vraiment une complexité d'échantillon (bien que cela fasse partie du jeu, en particulier dans l'apprentissage efficace des attributs), mais plutôt d'essayer de concevoir des algorithmes à temps polynomial. Si vous ne vous souciez pas de l'efficacité, alors est la réponse la plus simple pour la complexité des échantillons PAC.n2
MISE À JOUR (compte tenu de la question modifiée) :
Parce que vous avez explicitement déclaré que vous ne vous souciez que de la complexité des échantillons, j'ai présenté l'algorithme Occam à force brute, qui est probablement l'argument le plus simple. Cependant, ma réponse était un peu timide. -DNF sont réellement apprenants en temps polynomial! Ceci est le résultat de l'article original de Valiant, " A Theory of the Learnable ". En fait, -DNF peut être appris pour tout .c c = O ( 1 )2cc=O(1)
L'argument est le suivant. Vous pouvez visualiser un -DNF comme une disjonction de
"méta-variables" et essayer d'apprendre la disjonction en éliminant les méta-variables incompatibles avec les exemples. Une telle solution peut être facilement traduite en une solution "correcte" et prend du temps . En remarque, il est toujours possible de savoir s'il existe un algorithme polynomial pour .≈ n c O ( n c ) c = ω ( 1 )c≈ncO(nc)c=ω(1)
Quant à savoir si la complexité de l'échantillon est également une borne inférieure, la réponse est à peu près oui. Cet article d'Ehrenfeucht et al. montre que la borne Occam est presque serrée.n2