Dansleparadigmestandardd'identi ationàlalimitedeGold,unapprenantreçoit
uneséquen einnied'informations.Cetteséquen edoitl'aideràtrouver exa tement la
2.2.1 Notations préliminaires
Pour l'apprenant, tout se passe omme si une quantité innie de données arrivent
sansdis ontinuer. Cettesuite d'information s'appelle uneprésentation :
Dénition 12 (Présentation) Soit
L
une lasse de langages, une présentation deL ∈ L
est une fon tionN→ X
oùX
est un ensemble. Étant donnée une présentation f, nous noterons fm
l'ensemble{
f(j) : j < m}
desm + 1
premiers éléments def, et f(n)
sonn
-ème élément.Nous notons Pres
(L)
un ensemble de présentations. Une présentation dénote un langage deL
. En d'autres termes, il existe une fon tionyield :
Pres(L) → L
. SiL = yield(
f)
alors nous dirons que f est une présentation deL
, ou f∈
Pres(L)
.Ave ette dénition, les présentations sont à prendre au sens large : e sont des
séquen es de n'importe quel type d'informations pouvant aider à l'apprentissage du
langage.
Typiquement,lesdonnéesquiarriventsontdesmotsétiquetésdulangage ible,mais
e n'est pastoujoursle as.
Exemple 14 Considérons lelangage
L = a+b+
.Si les mots de la présentation sont uniquement des mots appartenant au langage
ible,
X
vautΣ∗
. Si en outre,yield(
f) =
f(N)
, alors la présentation est appelée untexte. Dans e as, nousnoteronsalors Pres=
Texte .Parexemple, f
= {aab, abbbb, ab, aab, . . .}
n'est omposée que demotsappartenant àL
. Si tousles mots deL
sont présentés alors f est aussi untexte.Lorsque la présentation est omposée de paires étiquetées
(w, l)
où(w ∈ L ⇒
l = +)
et(w 6∈ L ⇒ l = −)
, 'est-à-dire à lafoisd'exemples positifsetd'exemples négatifs, nousparleronsd'un informateur.NousavonsalorsX = Σ∗ × {+, −}
et sif(N) = L(G) × {+} ∪ L(G) × {−}
, nous noterons Pres=
Informateur. Soit f′ = {(aab, +), (bab, −), (aa, −), (abb, +), (aaba, −), . . .}
. f′
est une
présen-tation de
L
qui est onsidérée omme un informateur si tous les mots deΣ∗
apparaissent.
TexteetInformateur sonthabituellementles deuxtypesdeprésentations
uti-lisées. Toutefois,
X
peut aussi être plus restreint : ela peut être une suite de préxes des mots du langages, des indi ations sur la pla e des lettres dans lesmots,leur nombre et .
NousnoteronsPres
=
Presentation lorsquenousvoudronsparlerindiéremmentd'un Texteou d'un Informateur.
Ensuite,pourapprendre,nousauronsbesoind'unalgorithme d'apprentissage,
'est-à-dire d'un programme qui utilisera une présentation an de retournerdes hypothèses
représenta-Dénition 13 (Algorithme d'apprentissage) Un algorithme d'apprentissage Alg
estunprogramme prenant les
n
premiersélémentsd'uneprésentation etretournantune représentation :Alg
: [
f
∈
Pres(L),i∈N
{
fi} → R(L)
Notez qu'étant données deux présentations
f
etg
, sif (N) = g(N)
alorsyield(f ) =
yield(g)
. En eet, si tel n'était pas le as,L
ne serait pas apprenable à partir de Pres(L)
: deux langages partageant à l'inni une même présentation ne peuvent pas êtredistinguésl'undel'autre. Ilendé oule quesif ∈
Pres(L)
etg : N → X
telles queg(N) = f (N)
alorsg ∈
Pres(L)
.2.2.2 Identi ation à la limite sans ontraintes de polynomialité
L'identi ationàlalimiteréussitsiàun ertainrangdelaprésentation,l'algorithme
arriveàretournertoujourslamême hypothèse, elle orrespondantaulangage ible.La
dénitionsuivante estune modi ationde ellede [Gol78℄:
Dénition 14 On ditque
G
est identiable à la limite à partir de Pres s'il existe un algorithme Alg tel que pour toutG ∈ G
et pour toute présentation f deL(G)
, il existe un rangn
tel que pourtoutm ≥ n
, Alg(
fm) =
Alg(
fn)
etL(
Alg(
fm)) = L(G)
.L'identi ation à lalimite onduit parfoisàdesrésultats négatifs.En parti ulier:
Théorème 1 ([Gol67℄) Soit
L
une lasse de langages,siL
ontient tousles langages nis et au moins un langage inni (on dit alors que la lasse est super nie), alorsL
n'est pas apprenable.
Toutefois, l'absen e de ontraintes onduit souvent à des résultats d'apprentissage
positifs,mais à des algorithmes inutilisables en pratique. C'est pourquoi plusieurs
au-teurs ont essayé de dénir une identi ation à la limite polynomiale, en introduisant
diérents ritères d'e a itéet en les ombinant.
2.2.3 Contrainte de temps de mise à jour
An de pouvoir utiliser on rètement les algorithmes d'apprentissage, il est
né es-saireque eux- i n'utilisent qu'une petite quantité de temps à haque nouvelle donnée
reçue, sous peine de ne pas pouvoir onnaître le résultat de l'apprentissage avant un
long moment. Il estdon raisonnable de penser quela polynomialité doit on erner la
quantité de temps dont l'algorithme disposepour apprendre :
Dénition 15 (Temps de mise à jour polynomial) On dit qu'un algorithme Alg
a un temps de mise àjour polynomial s'il existe un polynme
p()
tel que, pour haque présentation fet haque entiern
, onstruire Alg(
fn)
né essiteuntempsenO(p(k
fCette ontrainte de temps de mise à jour polynomial n'est pas ependant pas
sa-tisfaisante. Dans [Pit89 ℄, Pitt montre en eet que même ave ette ontrainte, un
ap-prenant pourraitrésoudre un problème
N P
-di ile : il lui surait en eet d'attendre patiemment tout en re evant desexemples. Lorsqu'il a a umulé un nombreexponen-tield'exemples,ildisposeraitalorsd'unequantité detemps susantepourrésoudreun
problème
N P
-di ile...Plusieurs autres ritères sont alors envisageables en plus de la ontrainte de temps
demiseà jour : laquantité d'exemples reçus,lenombre de foisoùl'apprenant faitune
faussehypothèse ouen ore lenombre defois oùil hange d'avis.
2.2.4 Contrainte de hangement d'avis
Le se ond ritèredepolynomialitéquenousprésentons on erne don lenombre de
foisoù l'apprenant hange d'avis(Mind Changes, notéM ) [AS83 ℄:
Dénition 16 (Changement d'avis (M )) Étant donnésunalgorithmeAlg etune
présentation f, on dit que Alg hange d'avis au temps
n
si Alg(
fn) 6=
Alg(
fn−1)
. On ditque Alg est onservatif s'ilne hange jamaisd'avis lorsque son hypothèse ouranteest onsistante ave lenouvel élément présenté.
Dans e as,l'apprentissageseraalorsbonsilenombrede hangementd'hypothèses
n'est pastropgrand :
Dénition 17 (Identi ation M polynomiale) Un algorithme Alg identie une
lasse
G
à la limite entemps M polynomialsi 1. Alg identieG
à la limite,2. Alg a untemps de mise à jour polynomialet
3. Alg fait un nombre polynomial de hangement d'avis : il existe un polynme
p()
tel que, pour haque grammaire
G
et haque présentation f deL(G)
,#
M(
f) ≤
p(kGk)
où#
M(
f)
est le nombre de M :#
M(
f) = |{k ∈ N :
Alg(
fk) 6=
Alg
(
fk+1)}|
.Notons queladernière onditionn'implique pasles deuxautres.
Exemple 15 Soient le langage
Sn = {ai : n ≤ i ≤ n + 9}
et la lasse de langagesS
omprenant tous les langages
Sn, ∀n ∈ N+
. Chaque langage omprend don10
motset∀i, j ∈ N, 0 < i < j, Si 6⊆ Sj
,puisqueai
n'estpasdans
Sj
etaj+10
n'appartientpas à
Si
. Soit l'algorithmesuivant :1. Lire la donnée f
(n)
, soitu
la plus petite des données def etv
la plusgrande. 2. Si|v| = |u| + 9
retournerS|u|
sinon, retournerS1
.3. Aller en1.
Cet algorithme identie à la limite
S
en faisant un seul hangement d'hypothèse. En eet, l'algorithme n'a pas besoin d'être onsistant. Il peut don attendre d'avoir les11
motsdu langages(tout dumoinsles deuxbornes)pourformulerson hypothèse. Deplus,
Bienévidemment,iln'estpastoujourspossibledefaireununique hangement
d'hy-pothèse,parexemplepour ertainslangagesinnis.Cetexemplemontre ependantqu'il
peutêtrepossible denefairequepeude hangementsd'hypothèsesmême silataillede
lagrammaire ible estgrande:siles nouveauxexemplesde laprésentation nesont pas
onsistants ave l'hypothèse ourante, l'algorithme peut attendre jusqu'à e qu'il juge
d'avoirassez dedonnéespour formulerune autrehypothèse.Siunalgorithmepasse
jusqu'à voir tous les mots de
Σ∗
, il pourrait don n'ee tuer qu'un seul hangement
d'hypothèse tout en vériant les deux autres points de la Dénition 17. En revan he,
si le fait de hanger d'hypothèse est oûteux, il sera pertinent d'utiliser e ritère de
polynomialitépour apprendre.
Enn, unenotionquenousretrouverons souventave les hangementsd'hypothèses
est elle dutémoinde minimalité :
Dénition 18 (Témoin de minimalité) Soit
G ∈ G
une grammaire telle queL =
L(G)
. Soit f∈
Pres(L)
. Un témoin de minimalité pourG ∈ G
est un ensembleX ⊆
f(N)
onsistant aveG
tel que∀G′ ∈ G
, siX
est aussi onsistant aveG′
, alorskG′k>kGk
ou bienG′ = G
. Il peut exister zéro, un ou plusieurs témoins pourG
; nous dirons alors queG
admet un témoins'il enexiste aumoins un.End'autrestermes, sinouspouvonsexhiberuntémoindeminimalité,nouspouvons
garantir une borne inférieure quant à la taille de la représentation. De e fait, nous
verronsques'ilexisteuntémoindeminimalitépourtouteslesgrammairesd'une lasse,
es dernières seront identiables en temps M polynomial. Les témoins de minimalité
sont diérentsdestell tales d'Angluin [Ang80℄danslesensoù esderniersgarantissent
laminimalitéausensde l'in lusionet nondelataille delareprésentation.Deplus, Les
tell tales sont in lus dans les langages alors que les témoins de minimalité sont in lus
dansles présentations et don peuvent ontenir desexemplesnégatifs.
Exemple 16 Soient le langage
Sn = {ai : n ≤ i ≤ n + 9}
et la lasse de langagesS
omprenant tous les langages
Sn, ∀n ∈ N+
.Soit f
∈
Pres(S)
une présentation de type Informateur. Supposons qu'il existeu, v ∈
f telsquev
soit lepluspetit exemplepositifdefetu
leplusgrandexemple négatif de f tel que|v − 10| < |u| < |v|
. L'ensemble{u, v}
est alors un témoin de minimalité pour le langageS|u|+1
. En eet,v
garantit que la taille est omprise entre|v| − 10
et|v| + 10
et le ontre-exempleu
rend impossible toute grammaire de taille inférieure à|u| + 1
.2.2.5 Contrainte de nombres d'erreurs impli ites
Troisièmement, nous pouvons borner le nombre de fois où l'apprenant se trompe
pluttquelenombre deM .Plusformellement,ils'agitdunombred'erreurs impli ites
[Pit89 ℄ que ommetl'algorithme durant sonapprentissage :
Dénition 19 (Erreur impli ite de prédi tion (Ipe )) Étantdonnésunalgorithme
d'apprentissage Alg et une présentation f, on dit que Alg fait une erreur impli ite de
prédi tion (Impli it Predi tionError, noté Ipe ) au temps
n
siAlg(
fAlgfaitdon uneIpesilenouvel exemplepositifn'appartientpasà l'hypothèse
ou-rante, ou si, dans le as d'un Informateur par exemple, l'exemple négatif appartient
à ette hypothèse.
Nous dirons que Alg est onsistant s'il hange d'avis haque fois qu'une erreur de
prédi tion est déte tée ave lenouvel élément.
L'apprentissage sera alors bon si le nombre d'erreurs n'est pas trop grand par
rapportà lataillede lagrammaire:
Dénition 20 (Identi ation Ipepolynomiale) Un algorithme Alg identie une
lasse
G
à la limite entemps Ipe polynomialsi 1. Alg identieG
à la limite,2. Alg a untemps de mise à jour polynomialet
3. Alg faitunnombre polynomiald'erreurs impli itesdeprédi tion :il existeun
po-lynme
p()
tel que, pour haque grammaireG
et haque présentation f deL(G)
,#
Ipe(
f) ≤ p(kGk)
où#
Ipe(
f)
est le nombre d'Ipe :#
Ipe(
f) = |{k ∈ N :
Alg
(
fk) 6⊢
f(k + 1)}|
.Exemple 17 Reprenons le langage
Sn= {ai : n ≤ i ≤ n + 9}
et la lasse delangagesS
omprenant tous les langagesSn, ∀n ∈ N+
. Soit l'algorithmesuivant :1. Lire la donnée f
(n)
, soitu
la plus petite des données def. 2. RetournerS|u|
.3. Aller en1.
Cet algorithme identie à la limite
S
en faisant au plus10
Ipe . Voi i un exemple de l'exé ution de l'algorithmesur une présentation dulangage ibleS2
:i : 0 1 2 3 4 5 6 7 8 9 10
...f (i) : a10 a9 a8 a5 a4 a3 a8 a2 a7 a11 a4
...Ipe: oui oui oui oui oui non oui non non non ...
Retour:
S10 S9 S8 S5 S4 S3 S3 S2 S2 S2 S2
...L'algorithme fera alors aumaximum
9
Ipe siles données apparaissent dans l'ordre inverse(dean+9
àan
).Enrevan he,ilestpossibledefairemoinsd'Ipeen hangeant d'hypothèse même siles nouvelles données sont onsistantes ave l'hypothèse ourante.Soitl'algorithme suivant:
1. Lire la donnée
u
.2. Retourner
S|u|−5
(ouS1
si|u| − 5 ≤ 0
).3. Lire la donnée, soient
u
la plus petite des données de f etv
la plus grande. 4. RetournerS
Cet algorithme fera un nombre plus petit d'Ipe ar il essaie de regrouper le plus
possiblededonnées au entredusegmenthypothèse. Voi iunexemple del'exé ution
de et algorithme sur la même présentation que pré édemment :
i : 0 1 2 3 4 5 6 7 8 9 10
...f (i) : a10 a9 a8 a5 a4 a3 a8 a2 a7 a11 a4
...
Ipe : non non non non non non non non oui non ...
Retour :
S5 S5 S4 S3 S2 S2 S2 S1 S1 S2 S2
...Changer d'hypothèse pour essayer de oller au mieux aux données permet don i i
à l'algorithme de ne faire qu'une erreur. Évidemment, e n'est pas toujours le as. I i,
l'algorithmefera un maximum de
3
Ipe :i : 0 1 2 3 4
...f (i) : a10 a15 a7 a16 a6
...Ipe: oui oui oui non ...
Retour :
S5 S8 S6 S7
...Nousavonsditquelorsqu'unalgorithmeAlgest onsistant,il hanged'avis haque
fois qu'une erreur de prédi tion est déte tée. Il fera alors au moins autant de
hange-mentsd'hypothèsesqued'erreursdeprédi tion:
#
Ipe(
f) ≤ #
M(
f)
.Delamêmefaçon, si Alg est onservatif alors il ne hange jamais d'avis lorsque son hypothèse ouranteest onsistante. Nous avonsdon
#
M(
f) ≤ #
Ipe(
f)
. Aussi, nous pouvons en déduire lelemme suivant :Lemme 1 Si Alg identie la lasse
G
à la limite en temps M polynomialet s'il est onsistant, alors Alg identieG
en temps Ipe polynomial. De même, si Alg identieG
en temps Ipe polynomial et s'il est onservatif, alors Alg identieG
en temps M polynomial.2.2.6 Contrainte d'ensemble ara téristique
Lequatrième ritère on ernelaquantitéminimumdedonnéesqu'unalgorithmedoit
re evoirpour apprendre.Ilesten eet raisonnablede penser quel'apprenant aledroit
d'apprendreplus lentement desgrammaires quiont destaillesplusimportantes :
Dénition 21 (Ensemble ara téristique polynomial) Une lassedegrammaires
G
admet un ensemble ara téristique polynomial s'il existe un algorithme Alg et un polynmep()
tels que pour toute grammaireG ∈ G
, il existe Cs⊆ X
ave1.
k
Csk ≤ p(kGk)
, 2.L(
Alg(
Cs)) = L(G)
et3. pour tout f
∈
Pres(L)
, pour toutn ≥ 0
, si Cs⊆
fn
alors Alg(
fn) =
Alg(
Cs)
. UntelensembleCs estappelé ensemble ara téristique deG
pourAlg,etsiAlg existe, nous dirons queG
estidentiable àla limite entemps Cs polynomial.Exemple 18 Soient le langage
Sn = {ai : n ≤ i ≤ n + 9}
et la lasse de langagesS
omprenant tousles langages
Sn, ∀n ∈ N+
.S
estalorsidentiableàlalimiteentempsCspolynomial.Eneet,dénissons l'en-semble ara téristiquesuivantpour haque langageSn
: Cs= {an, an+9}
.Nouspouvons alorsfa ilement onstruireunalgorithme quivérie l'existen e d'untel ensembleara -téristiquedanslaprésentationetretournelelangage orrespondant.Commelatailledes
ensembles ara téristiques vaut
k
Csk = n + n + 9 = 2n + 9
, quekSnk = 10n + 45
,nous avonsbienk
Csk ≤ p(kSnk)
. Deplus, l'algorithmeretourne bien lebon langage àpartir de l'ensemble ara téristique. Enn,si l'ensemble ara téristique apparaît dans lapré-sentationl'algorithmeretournera toujourslemêmelangage,alors
S
estalorsidentiable à la limite en tempsCs polynomial.Notons quesi une lasse de grammaires admetseulement desensembles
ara téris-tiquesdont latailleest exponentielle,alors au un algorithmene pourra onverger sans
re evoir une quantité déraisonnable de données! L'existen e d'un ensemble
ara téris-tiquepolynomial estné essaire maispassusante.Des dénitions plus ontraignantes
d'ensembles ara téristiquespolynomiaux existent [dlH97 ℄.