Αναπτύξτε και συγκρίνετε αλγόριθμους ενίσχυσης μάθησης χρησιμοποιώντας αυτήν την εργαλειοθήκη.
Εάν δεν μπορείτε να δημιουργήσετε ένα μοντέλο μηχανικής εκμάθησης από την αρχή ή δεν έχετε υποδομή, απλώς συνδέοντας την εφαρμογή σας σε ένα λειτουργικό μοντέλο διορθώνεται το κενό.
Η τεχνητή νοημοσύνη είναι εδώ για να τη χρησιμοποιούν όλοι με τον ένα ή τον άλλο τρόπο. Όσο για το OpenAI Gym, υπάρχουν πολλά εξερευνήσιμα πεδία εκπαίδευσης για να τροφοδοτήσετε τους εκπαιδευτικούς σας πράκτορες ενίσχυσης.
Τι είναι το OpenAI Gym, πώς λειτουργεί και τι μπορείτε να φτιάξετε χρησιμοποιώντας το;
Τι είναι το OpenAI Gym;
Το OpenAI Gym είναι ένα Pythonic API που παρέχει προσομοιωμένα περιβάλλοντα εκπαίδευσης για παράγοντες ενίσχυσης μάθησης ώστε να ενεργούν με βάση περιβαλλοντικές παρατηρήσεις. κάθε ενέργεια συνοδεύεται από μια θετική ή αρνητική ανταμοιβή, η οποία συγκεντρώνεται σε κάθε χρονικό βήμα. Ενώ ο πράκτορας στοχεύει να μεγιστοποιήσει τις ανταμοιβές, τιμωρείται για κάθε απροσδόκητη απόφαση.
Το χρονικό βήμα είναι ένα τικ διακριτικού χρόνου για τη μετάβαση του περιβάλλοντος σε άλλη κατάσταση. Προστίθεται καθώς οι ενέργειες του πράκτορα αλλάζουν την κατάσταση του περιβάλλοντος.
Πώς λειτουργεί το OpenAI Gym;
Τα περιβάλλοντα OpenAI Gym βασίζονται στη Markov Decision Process (MDP), ένα δυναμικό μοντέλο λήψης αποφάσεων που χρησιμοποιείται στην ενισχυτική μάθηση. Επομένως, προκύπτει ότι οι ανταμοιβές έρχονται μόνο όταν το περιβάλλον αλλάξει κατάσταση. Και τα γεγονότα στην επόμενη κατάσταση εξαρτώνται μόνο από την παρούσα κατάσταση, καθώς το MDP δεν λαμβάνει υπόψη τα προηγούμενα γεγονότα.
Πριν προχωρήσουμε, ας βουτήξουμε σε ένα παράδειγμα για μια γρήγορη κατανόηση της εφαρμογής του OpenAI Gym στην ενισχυτική μάθηση.
Αν υποθέσουμε ότι σκοπεύετε να εκπαιδεύσετε ένα αυτοκίνητο σε ένα παιχνίδι αγώνων, μπορείτε να γυρίσετε μια πίστα στο OpenAI Gym. Στην ενισχυτική μάθηση, εάν το όχημα στρίψει δεξιά αντί για αριστερά, μπορεί να λάβει αρνητική ανταμοιβή -1. Η πίστα αλλάζει σε κάθε χρονικό βήμα και μπορεί να γίνει πιο περίπλοκη σε επόμενες καταστάσεις.
Οι αρνητικές ανταμοιβές ή ποινές δεν είναι κακές για έναν πράκτορα στην ενισχυτική μάθηση. Σε ορισμένες περιπτώσεις, το ενθαρρύνει να πετύχει τον στόχο του πιο γρήγορα. Έτσι, το αυτοκίνητο μαθαίνει για την πίστα με την πάροδο του χρόνου και κατακτά την πλοήγησή του χρησιμοποιώντας ραβδώσεις ανταμοιβής.
Για παράδειγμα, ξεκινήσαμε το FrozenLake-v1 περιβάλλον, όπου ένας πράκτορας τιμωρείται επειδή πέφτει σε τρύπες πάγου, αλλά ανταμείβεται για την ανάκτηση ενός κουτιού δώρου.
Η πρώτη μας διαδρομή δημιούργησε λιγότερες ποινές χωρίς ανταμοιβές:
Ωστόσο, μια τρίτη επανάληψη παρήγαγε ένα πιο περίπλοκο περιβάλλον. Αλλά ο πράκτορας πήρε μερικές ανταμοιβές:
Το παραπάνω αποτέλεσμα δεν σημαίνει ότι ο παράγοντας θα βελτιωθεί στην επόμενη επανάληψη. Αν και μπορεί να αποφύγει με επιτυχία περισσότερες τρύπες την επόμενη φορά, μπορεί να μην λάβει καμία ανταμοιβή. Αλλά η τροποποίηση μερικών παραμέτρων μπορεί να βελτιώσει την ταχύτητα εκμάθησής του.
Τα εξαρτήματα γυμναστικής OpenAI
Το OpenAI Gym API περιστρέφεται γύρω από τα ακόλουθα στοιχεία:
- ο περιβάλλοντα όπου εκπαιδεύετε έναν πράκτορα. Μπορείτε να ξεκινήσετε ένα χρησιμοποιώντας το γυμναστήριο.κάνω μέθοδος. Το OpenAI Gym υποστηρίζει επίσης περιβάλλοντα πολλαπλών πρακτόρων.
- ο περιτυλίγματα για την τροποποίηση ενός υπάρχοντος περιβάλλοντος. Αν και κάθε βασικό περιβάλλον είναι προεπιλεγμένο από προεπιλογή, μπορείτε να το επαναπροσδιορίσετε με παραμέτρους όπως max_actions, min_actions και max rewards.
- Ενα δράση; ορίζει τι κάνει ο πράκτορας καθώς παρατηρεί αλλαγές στο περιβάλλον του. Κάθε ενέργεια σε ένα περιβάλλον είναι ένα βήμα που καθορίζει την απόκριση ενός πράκτορα στις παρατηρήσεις. Μια ολοκλήρωση βήματος επιστρέφει μια παρατήρηση, μια ανταμοιβή, πληροφορίες και μια τιμή περικοπής ή τερματισμού.
- ο παρατήρηση; ορίζει την εμπειρία ενός πράκτορα σε ένα περιβάλλον. Μόλις υπάρξει μια παρατήρηση, ακολουθεί μια ενέργεια με τις πληροφορίες της. Η παράμετρος πληροφοριών είναι ένα αρχείο καταγραφής εκτέλεσης που είναι βολικό για τον εντοπισμό σφαλμάτων. Μόλις τελειώσει ένα βήμα, το περιβάλλον επαναφέρει n φορές, ανάλογα με τον αριθμό των καθορισμένων επαναλήψεων.
Τι μπορείτε να φτιάξετε με το OpenAI Gym;
Εφόσον το OpenAI Gym σάς επιτρέπει να δημιουργήσετε προσαρμοσμένα περιβάλλοντα μάθησης, ακολουθούν μερικοί τρόποι για να το χρησιμοποιήσετε σε ένα πραγματικό σενάριο.
1. Προσομοίωση παιχνιδιού
Μπορείτε να αξιοποιήσετε τα περιβάλλοντα παιχνιδιών του OpenAI Gym για να επιβραβεύσετε τις επιθυμητές συμπεριφορές, να δημιουργήσετε ανταμοιβές παιχνιδιού και να αυξήσετε την πολυπλοκότητα ανά επίπεδο παιχνιδιού.
2. Αναγνώριση εικόνας
Όπου υπάρχει περιορισμένος όγκος δεδομένων, πόρων και χρόνου, το OpenAI Gym μπορεί να είναι χρήσιμο για την ανάπτυξη ενός συστήματος αναγνώρισης εικόνας. Σε ένα βαθύτερο επίπεδο, μπορείτε να το κλιμακώσετε για να δημιουργήσετε ένα σύστημα αναγνώρισης προσώπου, το οποίο ανταμείβει έναν πράκτορα για τη σωστή αναγνώριση των προσώπων.
3. Εκπαίδευση ρομπότ
Το OpenAI Gym προσφέρει επίσης διαισθητικά μοντέλα περιβάλλοντος για προσομοιώσεις 3D και 2D, όπου μπορείτε να εφαρμόσετε επιθυμητές συμπεριφορές σε ρομπότ. Roboschool είναι ένα παράδειγμα κλιμακούμενου λογισμικού προσομοίωσης ρομπότ που έχει κατασκευαστεί με χρήση OpenAI Gym.
4. Εμπορία
Μπορείτε επίσης να δημιουργήσετε λύσεις μάρκετινγκ όπως διακομιστές διαφημίσεων, ρομπότ συναλλαγών μετοχών, ρομπότ πρόβλεψης πωλήσεων, συστήματα συστάσεων προϊόντων και πολλά άλλα χρησιμοποιώντας το OpenAI Gym. Για παράδειγμα, μπορείτε να δημιουργήσετε ένα προσαρμοσμένο μοντέλο OpenAI Gym που τιμωρεί τις διαφημίσεις με βάση την εμφάνιση και το ποσοστό κλικ.
5. Επεξεργασία Φυσικής Γλώσσας
Μερικοί τρόποι εφαρμογής του OpenAI Gym στο επεξεργασία φυσικής γλώσσας είναι ερωτήσεις πολλαπλής επιλογής που περιλαμβάνουν συμπλήρωση πρότασης ή δημιουργία ενός ταξινομητή ανεπιθύμητης αλληλογραφίας. Για παράδειγμα, μπορείτε να εκπαιδεύσετε έναν πράκτορα να μαθαίνει παραλλαγές προτάσεων για να αποφύγετε την προκατάληψη κατά τη σήμανση των συμμετεχόντων.
Πώς να ξεκινήσετε με το OpenAI Gym
Το OpenAI Gym υποστηρίζει Python 3.7 και νεότερες εκδόσεις. Για να ρυθμίσετε ένα περιβάλλον OpenAI Gym, θα εγκαταστήσετε γυμναστήριο, η έκδοση γυμναστηρίου που υποστηρίζεται συνεχώς με διχάλα:
pip install gymnasium
Στη συνέχεια, περιστρέψτε ένα περιβάλλον. Ωστόσο, μπορείτε να δημιουργήσετε ένα προσαρμοσμένο περιβάλλον. Αλλά ξεκινήστε παίζοντας με ένα υπάρχον για να κατακτήσετε την ιδέα του OpenAI Gym.
Ο παρακάτω κώδικας περιστρέφει το FrozenLake-v1. ο env.reset Η μέθοδος καταγράφει την αρχική παρατήρηση:
εισαγωγή γυμναστήριο όπως και γυμναστήριο
env = gym.make("FrozenLake-v1", render_mode="ο άνθρωπος")
παρατήρηση, πληροφορίες = env.reset()
Ορισμένα περιβάλλοντα απαιτούν επιπλέον βιβλιοθήκες για να λειτουργήσουν. Εάν χρειάζεται να εγκαταστήσετε μια άλλη βιβλιοθήκη, η Python τη συνιστά μέσω του μηνύματος εξαίρεσης.
Για παράδειγμα, θα εγκαταστήσετε μια πρόσθετη βιβλιοθήκη (γυμναστήριο[παιχνίδι-κείμενο]) για να εκτελέσετε το FrozenLake-v1 περιβάλλον.
Βασιστείτε στη δύναμη του OpenAI Gym
Ένα από τα εμπόδια στην ανάπτυξη της τεχνητής νοημοσύνης και της μηχανικής μάθησης είναι η έλλειψη υποδομών και συνόλων δεδομένων κατάρτισης. Αλλά καθώς προσπαθείτε να ενσωματώσετε μοντέλα μηχανικής εκμάθησης στις εφαρμογές ή τις συσκευές σας, όλα είναι πιο εύκολα τώρα με έτοιμα μοντέλα τεχνητής νοημοσύνης που πετούν στο διαδίκτυο. Ενώ ορισμένα από αυτά τα εργαλεία είναι χαμηλού κόστους, άλλα, συμπεριλαμβανομένου του OpenAI Gym, είναι δωρεάν και ανοιχτού κώδικα.