Je ne suis pas un spécialiste du sujet, et ma question est probablement très naïve. Il découle d'un essai pour comprendre les pouvoirs et les limites de l'apprentissage par renforcement tel qu'il est utilisé dans le programme AlphaGo.
Le programme AlphaGo a été construit en utilisant, entre autres (exploration Monte-Carlo des arbres, etc.), des réseaux de neurones qui sont formés à partir d'une énorme base de données de jeux de go joués par l'homme, et qui sont ensuite renforcés en laissant jouer des versions du programme contre lui-même plusieurs fois.
Maintenant, je me demande ce qui se passerait si nous essayions de construire un tel programme sans base de données humaine, c'est-à-dire en commençant par un programme de base de Go en connaissant simplement les règles et une méthode pour explorer les arbres, et en laissant jouer contre lui-même pour améliorer son réseau neuronal. Arriverons-nous, après de nombreux matchs contre lui-même, à un programme capable de rivaliser avec ou battre les meilleurs joueurs humains? Et si oui, combien de jeux (par ordre de grandeur) seraient nécessaires pour cela? Ou au contraire, un tel programme convergera-t-il vers un acteur beaucoup plus faible?
Je suppose que l'expérience n'a pas été faite, puisque AlphaGo est si récent. Mais la réponse peut néanmoins être évidente pour un spécialiste. Sinon, toute supposition éclairée m'intéressera.
On peut aussi se poser la même question pour les jeux "plus simples". Si nous utilisons à peu près les mêmes techniques d'apprentissage par renforcement utilisées pour AlphaGo, mais sans utilisation de base de données humaine, pour un programme d'échecs, aurions-nous finalement un programme capable de battre le meilleur humain? Et si oui, à quelle vitesse? Cela a-t-il été essayé? Ou si ce n'est pas pour les échecs, qu'en est-il des dames ou des jeux encore plus simples?
Merci beaucoup.
La même question a été posée à l'auteur du document AlphaGo et sa réponse était que nous ne savons pas ce qui se passerait si AlphaGo apprenait à partir de zéro (ils ne l'ont pas testé).
Cependant, étant donné la complexité du jeu, il serait difficile de former un algorithme à partir de zéro sans connaissance préalable. Ainsi, il est raisonnable au début de commencer à construire un tel système en le mettant à niveau au niveau Master en utilisant les connaissances acquises par les humains.
Il convient de noter que, bien que les mouvements humains biaisent la sélection d'action aux nœuds (états) de l'arbre, cet a priori a un facteur de décroissance. Cela signifie que l'augmentation des visites à un état spécifique, réduit la force de l'avant pour encourager l'algorithme à explorer.
Le niveau actuel de maîtrise d'AlphaGo est inconnu à quel point il est proche ou éloigné de la façon de jouer d'un humain (dans le tournoi, il a fait un mouvement qu'un humain avait une probabilité presque nulle de réaliser! - mais a également fait de très mauvais mouvements) . Il est possible qu'il reste à répondre à toutes ces questions en mettant effectivement en œuvre les algorithmes de test correspondants.
Je dois modifier ma réponse car le récent article de DeepMind répond à votre question. Il y a eu beaucoup d'avancées qui sont sorties de toute l'expérience précédente avec la première version d'AlphaGo et cela vaut vraiment la peine de le lire.
la source
Pour autant que j'ai compris l'algorithme d'AlphaGo, il est basé sur un cadre d'apprentissage par renforcement (RL) simple, utilisant la recherche d'arbre Monte-Carlo pour sélectionner les meilleures actions. En plus de cela, les états et actions couverts par l'algorithme RL ne sont pas simplement l'ensemble de la configuration possible du jeu (Go a une énorme complexité) mais sont basés sur un réseau politique et un réseau de valeur, appris à partir de jeux réels, puis amélioré en jouant aux jeux AlphaGo vs AlphaGo.
Ensuite, nous pourrions nous demander si la formation à partir de vrais jeux n'est qu'un raccourci pour gagner du temps ou une option nécessaire pour obtenir une telle efficacité. Je suppose que personne ne connaît vraiment la réponse, mais nous pourrions formuler certaines hypothèses. Premièrement, la capacité humaine à promouvoir de bons mouvements est due à une intelligence beaucoup plus complexe qu'un simple réseau neuronal. Pour les jeux de société, c'est un mélange entre mémoire, expérience, logique et sentiments. Dans ce sens, je ne suis pas sûr que l'algorithme AlphaGo puisse construire un tel modèle sans explorer explicitement un énorme pourcentage de la configuration entière du jeu Go (ce qui est pratiquement impossible). Les recherches actuelles se concentrent sur la construction d'une représentation plus complexe d'un tel jeu, comme le RL relationnel ou l'apprentissage de la logique inductive. Ensuite, pour les jeux plus simples (ce pourrait être le cas des échecs mais rien de sûr),
Ce n'est encore qu'une opinion. Mais je suis sûr que la clé pour répondre à votre question réside dans l'approche RL qui est aujourd'hui encore assez simple en terme de connaissances. Nous ne sommes pas vraiment en mesure d'identifier ce qui nous rend capables de gérer ces jeux, et la meilleure façon que nous avons trouvée jusqu'à présent pour vaincre l'homme est d'apprendre grossièrement de lui et d'améliorer (un peu) le modèle appris avec des calculs massifs.
la source
Un jeu personnel compétitif sans base de données humaine est même possible dans des environnements compliqués et partiellement observés. OpenAI se concentre sur cette direction. Selon cet article :
C'est une raison importante pour le succès de l'auto-jeu.
OpenAI a obtenu des résultats surhumains pour Dota 2 1v1, le 11 août 2017, a battu Dendi 2-0 selon les règles du tournoi standard.
Non seulement les jeux, cette direction est également prometteuse pour les tâches de robotique.
À l'étape suivante, ils étendent la méthode pour apprendre à coopérer, à rivaliser et à communiquer , pas seulement à se jouer soi-même.
la source