web-dev-qa-db-fra.com

Algorithme d'élimination des candidats

Tenez compte des ensembles de données de formation suivants.

+-------+-------+----------+-------------+
| Size  | Color | Shape    | Class/Label |
+=======+=======+==========+=============+
| big   | red   | circle   | No          |
| small | red   | triangle | No          |
| small | red   | circle   | Yes         |
| big   | blue  | circle   | No          |
| small | blue  | circle   | Yes         |
+-------+-------+----------+-------------+

Je voudrais comprendre comment l'algorithme procède quand il commence avec un exemple négatif et quand deux exemples négatifs se rejoignent.

Ce n'est pas une question d'affectation d'ailleurs.

Les exemples avec d'autres ensembles de données sont également les bienvenus! Ceci pour comprendre la partie négative de l'algorithme.

35
Ravi

Pour votre espace d'hypothèses (H), vous commencez avec vos ensembles d'hypothèses maximales générales (G) et maximales spécifiques (S):

G0 = {<?, ?, ?>}
S0 = {<0, 0, 0>}

Lorsque vous êtes présenté avec un exemple négatif, vous devez supprimer de S toute hypothèse incompatible avec l'observation actuelle et remplacer toute hypothèse incohérente dans G avec ses spécialisations minimales qui sont cohérentes avec l'observation mais toujours plus générales que certains membres de S.

Donc, pour votre premier exemple (négatif), (big, red, circle), les spécialisations minimales rendraient le nouvel espace d'hypothèses

G1 = {<small, ? , ?>, <?, blue, ?>, <?, ?, triangle>}
S1 = S0 = {<0, 0, 0>}

Notez que S n'a pas changé. Pour votre prochain exemple, (small, red, triangle), ce qui est également négatif, vous devrez spécialiser davantage G. Notez que la deuxième hypothèse de G1 ne correspond pas à la nouvelle observation, seules les première et troisième hypothèses de G1 doivent donc être spécialisées. Cela donnerait

G2 = {<small, blue, ?>, <small, ?, circle>, <?, blue, ?>, <big, ?, triangle>, <?, blue, triangle>}

Cependant, étant donné que les première et dernière hypothèses de G2 ci-dessus sont des spécialisations de l'hypothèse du milieu (<?, blue, ?>), on laisse tomber ces deux-là, donnant

G2 = {<small, ?, circle>, <?, blue, ?>, <big, ?, triangle>}
S2 = S1 = S0 = {<0, 0, 0>}

Pour le positif (small, red, circle) observation, vous devez généraliser S et supprimer tout ce qui n'est pas cohérent dans G, ce qui donne

G3 = {<small, ?, circle>}
S3 = {<small, red, circle>}

(big, blue, circle) est le prochain exemple négatif. Mais comme ce n'est pas cohérent avec G, il n'y a rien à faire

G4 = G3 = {<small, ?, circle>}
S4 = S3 = {<small, red, circle>}

Enfin, vous avez l'exemple positif de (small, blue, circle), ce qui vous oblige à généraliser S pour le rendre cohérent avec l'exemple, en donnant

G5 = {<small, ?, circle>}
S5 = {<small, ?, circle>}

Puisque G et S sont égaux, vous avez appris le concept de "petits cercles".

59
bogatron