ControlNet και StarCoder: Έρευνες Roblox για Generative AI - Roblox Blog

ControlNet και StarCoder: Έρευνες Roblox για Generative AI – Roblox Blog

Κόμβος πηγής: 2864546

Είμαστε βαθιά αφοσιωμένοι στην επιδίωξη έρευνας που είναι υπεύθυνη και δεσμεύεται από την κοινότητα σε όλους τους τομείς, συμπεριλαμβανομένης της τεχνητής νοημοσύνης (AI). Αυτό το επιτυγχάνουμε μέσω της διαφάνειας, της εξωτερικής επικύρωσης και της υποστήριξης ακαδημαϊκών ιδρυμάτων μέσω συνεργασίας και χορηγίας. Αυτή η προσέγγιση μάς επιτρέπει να επιταχύνουμε την επίτευξη των μεγαλύτερων προόδων στους τρεις τομείς εστίασής μας: τη γενετική τεχνητή νοημοσύνη, την κλιμάκωση του κέντρου δεδομένων και την ασφάλεια στο διαδίκτυο. Σήμερα, μοιραζόμαστε πληροφορίες και αποτελέσματα από δύο από τα παραγωγικά ερευνητικά μας έργα τεχνητής νοημοσύνης. ControlNet είναι ένα νευρωνικό δίκτυο ανοιχτού κώδικα που προσθέτει έλεγχο υπό όρους σε μοντέλα παραγωγής εικόνας για ακριβέστερες εξόδους εικόνας. StarCoder είναι ένα υπερσύγχρονο μοντέλο ανοιχτού κώδικα μεγάλης γλώσσας (LLM) για δημιουργία κώδικα. 

Και τα δύο έργα είναι ακαδημαϊκές και βιομηχανικές συνεργασίες. Και οι δύο επικεντρώνονται επίσης σε ριζικά πιο ισχυρά εργαλεία για τους δημιουργούς μας: τρισδιάστατους καλλιτέχνες και προγραμματιστές. Το πιο σημαντικό και ευθυγραμμισμένα με την αποστολή μας να επενδύουμε στη μακροχρόνια προβολή μέσω μετασχηματιστικής έρευνας, αυτά τα έργα παρουσιάζουν ενδείξεις προόδου στη θεμελιώδη επιστημονική κατανόηση και έλεγχο της τεχνητής νοημοσύνης για πολλές εφαρμογές. Πιστεύουμε ότι αυτή η δουλειά μπορεί να έχει σημαντικό αντίκτυπο στο μέλλον της Roblox και του χώρου συνολικά και είμαστε περήφανοι που το μοιραζόμαστε ανοιχτά.

ControlNet

Οι πρόσφατες ανακαλύψεις της τεχνητής νοημοσύνης — ειδικά οι μέθοδοι μηχανικής μάθησης που βασίζονται σε δεδομένα (ML) που χρησιμοποιούν βαθιά νευρωνικά δίκτυα — έχουν οδηγήσει σε νέες προόδους στα εργαλεία δημιουργίας. Αυτές οι προόδους περιλαμβάνουν τη δική μας Code Assist και Γεννήτρια Υλικού λειτουργίες που είναι δημόσια διαθέσιμες στο δωρεάν εργαλείο μας, το Roblox Studio. Τα σύγχρονα γενετικά συστήματα τεχνητής νοημοσύνης περιέχουν δομές δεδομένων που ονομάζονται μοντέλα και βελτιώνονται μέσω δισεκατομμυρίων λειτουργιών εκπαίδευσης. Τα πιο ισχυρά μοντέλα σήμερα είναι πολυτροπικά, που σημαίνει ότι εκπαιδεύονται σε ένα μείγμα μέσων όπως κείμενο, εικόνες και ήχος. Αυτό τους επιτρέπει να βρίσκουν τις κοινές υποκείμενες έννοιες σε όλα τα μέσα αντί να προσαρμόζονται υπερβολικά σε συγκεκριμένα στοιχεία ενός συνόλου δεδομένων, όπως οι χρωματικές παλέτες ή η ορθογραφία. 

Αυτά τα νέα συστήματα τεχνητής νοημοσύνης έχουν σημαντική εκφραστική ισχύ, αλλά αυτή η ισχύς κατευθύνεται σε μεγάλο βαθμό μέσω της «ταχείας μηχανικής». Κάνοντας αυτό σημαίνει απλώς αλλαγή του κειμένου εισαγωγής, παρόμοια με τη βελτίωση ενός ερωτήματος μηχανής αναζήτησης, εάν δεν επέστρεφε αυτό που περιμένατε. Αν και αυτός μπορεί να είναι ένας συναρπαστικός τρόπος για να παίξετε με μια νέα τεχνολογία, όπως ένα μη κατευθυνόμενο chatbot, δεν είναι ένας αποτελεσματικός ή αποτελεσματικός τρόπος δημιουργίας περιεχομένου. Αντίθετα, οι δημιουργοί χρειάζονται ηλεκτρικά εργαλεία που μπορούν να αξιοποιήσουν αποτελεσματικά μέσω ενεργού ελέγχου και όχι με εικασίες.

Το έργο ControlNet είναι ένα βήμα προς την επίλυση ορισμένων από αυτές τις προκλήσεις. Προσφέρει έναν αποτελεσματικό τρόπο αξιοποίησης της δύναμης μεγάλων προεκπαιδευμένων μοντέλων AI, όπως π.χ Σταθερή Διάχυση, χωρίς να βασίζεστε σε άμεση μηχανική. Το ControlNet αυξάνει τον έλεγχο επιτρέποντας στον καλλιτέχνη να παρέχει πρόσθετες συνθήκες εισαγωγής πέρα ​​από τις προτροπές κειμένου. Ο ερευνητής του Roblox και καθηγητής του Πανεπιστημίου Stanford Maneesh Agrawala και ο ερευνητής του Stanford Lvmin Zhang πλαισιώνουν τους στόχους για το κοινό μας έργο ControlNet ως εξής:

  1. Αναπτύξτε μια καλύτερη διεπαφή χρήστη για εργαλεία δημιουργίας τεχνητής νοημοσύνης. Προχωρήστε πέρα ​​από τη σκοτεινή άμεση χειραγώγηση και βασιστείτε σε πιο φυσικούς τρόπους επικοινωνίας μιας ιδέας ή μιας δημιουργικής ιδέας.
  2. Παρέχετε πιο ακριβή χωρικό έλεγχο, για να προχωρήσετε πέρα ​​από τη δημιουργία «μιας εικόνας σαν» ή «μιας εικόνας στο στυλ…» για να μπορέσετε να συνειδητοποιήσετε ακριβώς την εικόνα που έχει ο δημιουργός στο μυαλό του.
  3. Μετατρέψτε τη γενετική εκπαίδευση τεχνητής νοημοσύνης σε μια πιο αποδοτική υπολογιστική διαδικασία που εκτελείται πιο γρήγορα, απαιτεί λιγότερη μνήμη και καταναλώνει λιγότερη ηλεκτρική ενέργεια.
  4. Επεκτείνετε την τεχνητή νοημοσύνη που δημιουργεί εικόνα σε ένα επαναχρησιμοποιήσιμο δομικό στοιχείο. Στη συνέχεια, μπορεί να ενσωματωθεί με τυποποιημένη επεξεργασία εικόνας και αγωγούς απόδοσης 3D. 

Επιτρέποντας στους δημιουργούς να παρέχουν μια πρόσθετη εικόνα για χωρικό έλεγχο, το ControlNet παρέχει μεγαλύτερο έλεγχο στην τελική παραγόμενη εικόνα. Για παράδειγμα, μια προτροπή για "αρσενικό ελάφι με κέρατα" σε μια υπάρχουσα γεννήτρια κειμένου σε εικόνα παρήγαγε μια μεγάλη ποικιλία εικόνων, όπως φαίνεται παρακάτω:

Αυτές οι εικόνες που δημιουργούνται με προηγούμενες λύσεις τεχνητής νοημοσύνης είναι ελκυστικές, αλλά δυστυχώς ουσιαστικά αυθαίρετα αποτελέσματα - δεν υπάρχει έλεγχος. Δεν υπάρχει τρόπος σε αυτά τα προηγούμενα συστήματα δημιουργίας εικόνας να κατευθύνουν την έξοδο, εκτός από την αναθεώρηση της προτροπής κειμένου.

Με το ControlNet, ο δημιουργός έχει πλέον πολύ περισσότερη δύναμη. Ένας τρόπος χρήσης του ControlNet είναι η παροχή τόσο μιας προτροπής όσο και μιας εικόνας πηγής για τον προσδιορισμό του γενικού σχήματος που θα ακολουθήσει. Σε αυτήν την περίπτωση, οι εικόνες που προκύπτουν θα εξακολουθούν να προσφέρουν ποικιλία, αλλά, κυρίως, διατηρούν το καθορισμένο σχήμα:

Ο δημιουργός θα μπορούσε επίσης να έχει καθορίσει ένα σύνολο άκρων, μια εικόνα χωρίς καθόλου προτροπή ή πολλούς άλλους τρόπους παροχής εκφραστικών δεδομένων στο σύστημα.

Για να δημιουργήσουμε ένα ControlNet, κλωνοποιούμε τα βάρη μέσα στο δίκτυο ενός μεγάλου μοντέλου διάχυσης σε δύο εκδόσεις. Το ένα είναι το εκπαιδευτικό δίκτυο (αυτό παρέχει το στοιχείο ελέγχου· είναι "το Δίκτυο Ελέγχου") και το άλλο είναι το κλειδωμένο δίκτυο. Το κλειδωμένο δίκτυο διατηρεί την ικανότητα που αποκτήθηκε από δισεκατομμύρια εικόνες και θα μπορούσε να είναι οποιαδήποτε προηγούμενη δημιουργία εικόνων. Στη συνέχεια εκπαιδεύουμε το εκπαιδεύσιμο δίκτυο σε σύνολα δεδομένων ειδικά για εργασία για να μάθουμε τον έλεγχο υπό όρους από την πρόσθετη εικόνα. Τα εκπαιδεύσιμα και κλειδωμένα αντίγραφα συνδέονται με έναν μοναδικό τύπο στρώσης συνέλιξης που ονομάζουμε μηδενική συνέλιξη, όπου τα βάρη συνέλιξης αυξάνονται προοδευτικά από μηδενικά σε βελτιστοποιημένες παραμέτρους με μαθησιακό τρόπο, πράγμα που σημαίνει ότι αρχικά δεν έχουν καμία επιρροή και το σύστημα αντλεί το βέλτιστο επίπεδο ελέγχου για να ασκήσει στο κλειδωμένο δίκτυο.

Δεδομένου ότι τα αρχικά βάρη διατηρούνται μέσω του κλειδωμένου δικτύου, το μοντέλο λειτουργεί καλά με σύνολα δεδομένων εκπαίδευσης διαφόρων μεγεθών. Και το στρώμα μηδενικής συνέλιξης κάνει τη διαδικασία πολύ πιο γρήγορη — πιο κοντά στη λεπτομέρεια ενός μοντέλου διάχυσης παρά στην εκπαίδευση νέων στρωμάτων από την αρχή. 

Πραγματοποιήσαμε εκτεταμένη επικύρωση αυτής της τεχνικής για τη δημιουργία εικόνων. Το ControlNet δεν βελτιώνει απλώς την ποιότητα της εικόνας εξόδου. Επίσης, καθιστά την εκπαίδευση ένα δίκτυο για μια συγκεκριμένη εργασία πιο αποτελεσματικό και, επομένως, πιο πρακτικό για την ανάπτυξη σε κλίμακα για τα εκατομμύρια των δημιουργών μας. Σε πειράματα, το ControlNet παρέχει έως και 10x κέρδος απόδοσης σε σύγκριση με εναλλακτικά σενάρια που απαιτούν την πλήρη επανεκπαίδευση ενός μοντέλου. Αυτή η αποτελεσματικότητα είναι κρίσιμη, καθώς η διαδικασία δημιουργίας νέων μοντέλων είναι χρονοβόρα και εντατική σε πόρους σε σχέση με την παραδοσιακή ανάπτυξη λογισμικού. Η αποτελεσματικότερη προπόνηση εξοικονομεί ηλεκτρική ενέργεια, μειώνει το κόστος και αυξάνει τον ρυθμό με τον οποίο μπορούν να προστεθούν νέες λειτουργίες.

Η μοναδική δομή του ControlNet σημαίνει ότι λειτουργεί καλά με σύνολα δεδομένων εκπαίδευσης διαφόρων μεγεθών και σε πολλούς διαφορετικούς τύπους μέσων. Το ControlNet έχει αποδειχθεί ότι λειτουργεί με πολλούς διαφορετικούς τύπους τρόπων ελέγχου, συμπεριλαμβανομένων φωτογραφιών, χειροποίητων σκαριφημάτων και ανοιχτός ανίχνευση πόζας. Πιστεύουμε ότι το ControlNet μπορεί να εφαρμοστεί σε πολλούς διαφορετικούς τύπους μέσων για παραγωγικό περιεχόμενο AI. Αυτό η έρευνα είναι ανοιχτή και διαθέσιμη στο κοινό ώστε η κοινότητα να πειραματιστεί και να αξιοποιήσει, και θα συνεχίσουμε να παρουσιάζουμε περισσότερες πληροφορίες καθώς θα κάνουμε περισσότερες ανακαλύψεις με αυτές.

StarCoder

Το Generative AI μπορεί να εφαρμοστεί για την παραγωγή εικόνων, ήχου, κειμένου, πηγαίου κώδικα προγράμματος ή οποιασδήποτε άλλης μορφής εμπλουτισμένων μέσων. Σε διάφορα μέσα, ωστόσο, οι εφαρμογές με τις μεγαλύτερες επιτυχίες τείνουν να είναι εκείνες για τις οποίες η έξοδος κρίνεται υποκειμενικά. Για παράδειγμα, μια εικόνα πετυχαίνει όταν προσελκύει έναν άνθρωπο θεατή. Ορισμένα σφάλματα στην εικόνα, όπως περίεργα χαρακτηριστικά στις άκρες ή ακόμη και ένα επιπλέον δάχτυλο σε ένα χέρι, ενδέχεται να μην παρατηρηθούν εάν η συνολική εικόνα είναι συναρπαστική. Ομοίως, ένα ποίημα ή ένα διήγημα μπορεί να έχει γραμματικά λάθη ή κάποια λογικά άλματα, αλλά αν η ουσία είναι πειστική, τείνουμε να τα συγχωρούμε. 

Ένας άλλος τρόπος εξέτασης των υποκειμενικών κριτηρίων είναι ότι ο χώρος των αποτελεσμάτων είναι συνεχής. Ένα αποτέλεσμα μπορεί να είναι καλύτερο από ένα άλλο, αλλά δεν υπάρχει συγκεκριμένο όριο στο οποίο το αποτέλεσμα είναι απολύτως αποδεκτό ή μη αποδεκτό. Για άλλους τομείς και μορφές μέσων η έξοδος κρίνεται αντικειμενικά. Για παράδειγμα, ο πηγαίος κώδικας που παράγεται από έναν βοηθό προγραμματισμού τεχνητής νοημοσύνης είναι σωστός ή όχι. Εάν ο κωδικός δεν μπορεί να περάσει μια δοκιμή, αποτυγχάνει, ακόμα κι αν είναι παρόμοιος με τον κωδικό μιας έγκυρης λύσης. Αυτός είναι ένας διακριτός χώρος αποτελεσμάτων. Είναι πιο δύσκολο να πετύχεις σε έναν διακριτό χώρο τόσο επειδή τα κριτήρια είναι πιο αυστηρά όσο και επειδή δεν μπορεί κανείς να προσεγγίσει σταδιακά μια καλή λύση—ο κώδικας σπάει αμέσως μέχρι να λειτουργήσει ξαφνικά.

Τα LLM που χρησιμοποιούνται για την έξοδο κειμένου λειτουργούν καλά για υποκειμενικές, συνεχείς εφαρμογές όπως τα chatbots. Φαίνεται επίσης να λειτουργούν καλά για τη δημιουργία πεζογραφίας σε πολλές ανθρώπινες γλώσσες, όπως τα αγγλικά και τα γαλλικά. Ωστόσο, τα υπάρχοντα LLMs δεν φαίνεται να λειτουργούν τόσο καλά προγραμματισμού γλώσσες όπως κάνουν για εκείνες τις ανθρώπινες γλώσσες. Ο κώδικας είναι μια μορφή μαθηματικών που είναι ένας πολύ διαφορετικός, αντικειμενικός τρόπος έκφρασης του νοήματος από τη φυσική γλώσσα. Είναι ένας διακριτός χώρος αποτελεσμάτων αντί για έναν συνεχή χώρο αποτελεσμάτων. Για να επιτύχουμε την υψηλότερη ποιότητα παραγωγής κώδικα γλώσσας προγραμματισμού για τους δημιουργούς Roblox, χρειαζόμαστε μεθόδους εφαρμογής LLM που μπορούν να λειτουργήσουν καλά σε αυτόν τον διακριτό, αντικειμενικό χώρο. Χρειαζόμαστε επίσης ισχυρές μεθόδους για την έκφραση της λειτουργικότητας του κώδικα ανεξάρτητα από μια συγκεκριμένη σύνταξη γλώσσας, όπως Lua, JavaScript ή Python. 

Το StarCoder, ένα νέο υπερσύγχρονο LLM ανοιχτού κώδικα για τη δημιουργία κώδικα, αποτελεί σημαντική πρόοδο σε αυτήν την τεχνική πρόκληση και ένα πραγματικά ανοιχτό LLM για όλους. Το StarCoder είναι ένα αποτέλεσμα του μεγάλος κώδικας ερευνητική κοινοπραξία, η οποία περιλαμβάνει περισσότερα από 600 μέλη σε ακαδημαϊκά και βιομηχανικά ερευνητικά εργαστήρια. Ο ερευνητής της Roblox και καθηγητής του Northeastern University Arjun Guha βοήθησε να οδηγήσει αυτή την ομάδα στην ανάπτυξη του StarCoder. Αυτά τα πρώτα δημοσιευμένα αποτελέσματα επικεντρώνονται αποκλειστικά στην πτυχή του κώδικα, η οποία είναι η περιοχή στην οποία το πεδίο χρειάζεται περισσότερο νέα ανάπτυξη δεδομένης της σχετικής επιτυχίας των υποκειμενικών μεθόδων. 

Για να παραδώσουμε παραγωγική τεχνητή νοημοσύνη μέσω LLM που υποστηρίζουν το μεγαλύτερο οικοσύστημα AI και την κοινότητα Roblox, χρειαζόμαστε μοντέλα που έχουν εκπαιδευτεί αποκλειστικά σε κατάλληλα αδειοδοτημένα και υπεύθυνα σύνολα δεδομένων. Αυτά θα πρέπει επίσης να φέρουν απεριόριστες άδειες ώστε ο καθένας να μπορεί να τις χρησιμοποιήσει, να τις αναπτύξει και να συνεισφέρει πίσω στο οικοσύστημα. Σήμερα, τα πιο ισχυρά LLM είναι ιδιόκτητα ή αδειοδοτημένα για περιορισμένες μορφές εμπορικής χρήσης, γεγονός που απαγορεύει ή περιορίζει την ικανότητα των ερευνητών να πειραματιστούν με το ίδιο το μοντέλο. Αντίθετα, το StarCoder είναι ένα πραγματικά ανοιχτό μοντέλο, που δημιουργήθηκε μέσω ενός συνασπισμού βιομηχανικών και ακαδημαϊκών ερευνητών και έχει άδεια χωρίς περιορισμούς για εμπορική εφαρμογή σε οποιαδήποτε κλίμακα. Το StarCoder εκπαιδεύεται αποκλειστικά σε υπεύθυνα συγκεντρωμένο, κατάλληλα αδειοδοτημένο περιεχόμενο. Το μοντέλο εκπαιδεύτηκε αρχικά σε δημόσιο κώδικα και είναι διαθέσιμη μια διαδικασία εξαίρεσης για όσους προτιμούν να μην χρησιμοποιείται ο κωδικός τους για εκπαίδευση.

Σήμερα, το StarCoder λειτουργεί σε 86 διαφορετικές γλώσσες προγραμματισμού, συμπεριλαμβανομένων των Python, C++ και Java. Από τη δημοσίευση της εφημερίδας, ξεπερνούσε κάθε LLM ανοιχτού κώδικα που υποστηρίζει πολλές γλώσσες και ήταν ακόμη ανταγωνιστική με πολλά από τα κλειστά, ιδιόκτητα μοντέλα. 

Το StarCoder LLM είναι μια συνεισφορά στο οικοσύστημα, αλλά ο ερευνητικός μας στόχος είναι πολύ βαθύτερος. Ο μεγαλύτερος αντίκτυπος αυτής της έρευνας είναι η προώθηση της σημασιολογικής μοντελοποίησης τόσο των αντικειμενικών όσο και των υποκειμενικών πολυτροπικών μοντέλων, συμπεριλαμβανομένων κώδικα, κειμένου, εικόνων, ομιλίας, βίντεο και η αύξηση της αποτελεσματικότητας της εκπαίδευσης μέσω τεχνικών μεταφοράς τομέα. Αναμένουμε επίσης να αποκτήσουμε βαθιές γνώσεις σχετικά με τη δυνατότητα συντήρησης και ελέγχου της παραγωγικής τεχνητής νοημοσύνης για αντικειμενικές εργασίες, όπως η δημιουργία πηγαίου κώδικα. Υπάρχει μεγάλη διαφορά μεταξύ μιας ενδιαφέρουσας επίδειξης αναδυόμενης τεχνολογίας και ενός ασφαλούς, αξιόπιστου και αποτελεσματικού προϊόντος που φέρνει αξία στην κοινότητα των χρηστών του. Για τα μοντέλα μας ML, βελτιστοποιούμε την απόδοση για αποτύπωμα μνήμης, εξοικονόμηση ενέργειας και χρόνο εκτέλεσης. Αναπτύξαμε επίσης μια ισχυρή υποδομή, περιβάλαμε τον πυρήνα AI με λογισμικό για τη σύνδεση του με το υπόλοιπο σύστημα και αναπτύξαμε ένα απρόσκοπτο σύστημα για συχνές ενημερώσεις καθώς προστίθενται νέες δυνατότητες. 

Το να φέρουμε τους επιστήμονες και τους μηχανικούς της Roblox με μερικά από τα πιο έξυπνα μυαλά της επιστημονικής κοινότητας είναι ένα βασικό συστατικό στην επιδίωξή μας για πρωτοποριακή τεχνολογία. Είμαστε περήφανοι που μοιραζόμαστε αυτά τα πρώτα αποτελέσματα και προσκαλούμε την ερευνητική κοινότητα να συνεργαστεί μαζί μας και να αξιοποιήσει αυτές τις προόδους.

Σφραγίδα ώρας:

Περισσότερα από Roblox