La propriété de vos deux ensembles de données est celle de la séparabilité linéaire , simplement, qu'il y a une ligne qui les sépare. Beaucoup d'apprentissage automatique est consacré à la recherche de classificateurs linéaires , qui sont des lignes qui effectuent la séparation qui vous intéresse.
Comme vous parlez de lignes, je suppose que vos points se trouvent dans l'avion. Ce que vous voulez faire, c'est trouver les valeurs , w 2 et w 3 , de sorte que pour tous les points ( a 1 , a 2 ) de l'ensemble A , w 1 a 1 + w 2 a 2 ≥ w 3 et pour tous les points ( b 1 , b 2 ) en B , w 1 b 1 +w1w2w3( un1, un2)UNEw1une1+ w2une2≥ w3( b1, b2)B . Ainsi, l'inégalité w 1 x + w 2 y ≥ w 3 peut être considéré comme un classificateur pour ensemble A .w1b1+w2b2< w3w1x + w2y≥ w3UNE
Il existe de nombreux algorithmes d'apprentissage automatique pour déterminer une ligne optimale (régression linéaire, régression logistique, etc.). Ceux-ci trouveront des valeurs pour fonction d'une mesure d'erreur. Ensuite, vous pouvez tester si tous les points sont correctement classés. Autrement dit, si toutes les valeurs A satisfont l'équation ci - dessus et de même pour B .w1, w2, w3UNEB
Comme vous ne souhaitez savoir si une telle ligne existe, vous devez utiliser les techniques existantes (bien que ce soit probablement plus simple). Configurez simplement la collection suivante d'égalités en termes de variables libres .w1, w2, w3
pour chaque i = 1 , . . , | A | , où A = { ( a 1 1 ,w1uneje1+ w2uneje2≥ w3i = 1 , . . , | A | .A = { ( a11, un12) , ... , ( a| A |1, un| A |2) }
pour chaque j = 1 , . . , | B | , où B = { ( b 1 1 ,w1bj1+ w2bj2< w3j = 1 , . . , | B | .B = { ( b11, b12) , … , ( B| B |1, b| B |2) }
Si ces contraintes sont cohérentes, alors une ligne existe.