Πρόγραμμα Yandex Resident ή πώς ένας έμπειρος Backender μπορεί να γίνει μηχανικός ML

Πρόγραμμα Yandex Resident ή πώς ένας έμπειρος Backender μπορεί να γίνει μηχανικός ML

Η Yandex ανοίγει ένα πρόγραμμα παραμονής στη μηχανική εκμάθηση για έμπειρους προγραμματιστές υποστήριξης. Εάν έχετε γράψει πολλά σε C++/Python και θέλετε να εφαρμόσετε αυτή τη γνώση στην ML, τότε θα σας μάθουμε πώς να κάνετε πρακτική έρευνα και να παρέχουμε έμπειρους μέντορες. Θα εργαστείτε σε βασικές υπηρεσίες Yandex και θα αποκτήσετε δεξιότητες σε τομείς όπως γραμμικά μοντέλα και ενίσχυση κλίσης, συστήματα συστάσεων, νευρωνικά δίκτυα για την ανάλυση εικόνων, κειμένου και ήχου. Θα μάθετε επίσης πώς να αξιολογείτε σωστά τα μοντέλα σας χρησιμοποιώντας μετρήσεις εκτός σύνδεσης και στο διαδίκτυο.

Η διάρκεια του προγράμματος είναι ένα έτος, κατά τη διάρκεια του οποίου οι συμμετέχοντες θα εργαστούν στο τμήμα μηχανικής ευφυΐας και έρευνας της Yandex, καθώς και θα παρακολουθήσουν διαλέξεις και σεμινάρια. Η συμμετοχή είναι επί πληρωμή και περιλαμβάνει εργασία πλήρους απασχόλησης: 40 ώρες την εβδομάδα, από την 1η Ιουλίου του τρέχοντος έτους. Οι αιτήσεις είναι πλέον ανοιχτές και θα διαρκέσει έως την 1η Μαΐου. 

Και τώρα με περισσότερες λεπτομέρειες - για το τι είδους κοινό περιμένουμε, ποια θα είναι η διαδικασία εργασίας και, γενικά, πώς ένας ειδικός στο back-end μπορεί να στραφεί σε μια καριέρα στο ML.

Συγκεντρώνω

Πολλές εταιρείες έχουν Προγράμματα Residency, συμπεριλαμβανομένων, για παράδειγμα, της Google και του Facebook. Απευθύνονται κυρίως σε κατώτερους και μεσαίου επιπέδου ειδικούς που προσπαθούν να κάνουν ένα βήμα προς την έρευνα ML. Το πρόγραμμά μας είναι για διαφορετικό κοινό. Προσκαλούμε προγραμματιστές backend που έχουν ήδη αποκτήσει αρκετή εμπειρία και γνωρίζουν με βεβαιότητα ότι στις ικανότητές τους πρέπει να στραφούν προς την ML, να αποκτήσουν πρακτικές δεξιότητες - και όχι δεξιότητες επιστήμονα - στην επίλυση προβλημάτων βιομηχανικής μηχανικής μάθησης. Αυτό δεν σημαίνει ότι δεν υποστηρίζουμε τους νέους ερευνητές. Έχουμε οργανώσει ένα ξεχωριστό πρόγραμμα για αυτούς - ασφάλιστρο πήρε το όνομά του από τον Ilya Segalovich, το οποίο σας επιτρέπει επίσης να εργάζεστε στο Yandex.

Πού θα εργαστεί ο κάτοικος;

Στο Τμήμα Μηχανικής Ευφυΐας και Έρευνας, εμείς οι ίδιοι αναπτύσσουμε ιδέες για έργα. Η κύρια πηγή έμπνευσης είναι η επιστημονική βιβλιογραφία, τα άρθρα και οι τάσεις στην ερευνητική κοινότητα. Οι συνάδελφοί μου και εγώ αναλύουμε αυτά που διαβάζουμε, εξετάζοντας πώς μπορούμε να βελτιώσουμε ή να επεκτείνουμε τις μεθόδους που προτείνουν οι επιστήμονες. Ταυτόχρονα, ο καθένας από εμάς λαμβάνει υπόψη τον τομέα των γνώσεων και των ενδιαφερόντων του, διατυπώνει την εργασία με βάση τους τομείς που θεωρεί σημαντικούς. Η ιδέα για ένα έργο γεννιέται συνήθως στη διασταύρωση των αποτελεσμάτων της εξωτερικής έρευνας και των δικών του ικανοτήτων.

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

Τι να κάνω

Στη Yandex - και ακόμη και συγκεκριμένα στη διαχείρισή μας - αναπτύσσονται όλοι οι σχετικοί τομείς της ML. Στόχος μας είναι να βελτιώσουμε την ποιότητα μιας μεγάλης ποικιλίας προϊόντων και αυτό χρησιμεύει ως κίνητρο για να δοκιμάσουμε οτιδήποτε νέο. Επιπλέον, νέες υπηρεσίες εμφανίζονται τακτικά. Έτσι, το πρόγραμμα διαλέξεων περιέχει όλους τους βασικούς (καλά αποδεδειγμένους) τομείς της μηχανικής μάθησης στη βιομηχανική ανάπτυξη. Κατά τη σύνταξη του μέρους του μαθήματος, χρησιμοποίησα τη διδακτική μου εμπειρία στη Σχολή Ανάλυσης Δεδομένων, καθώς και το υλικό και το έργο άλλων καθηγητών SHAD. Ξέρω ότι το ίδιο έκαναν και οι συνάδελφοί μου.

Τους πρώτους μήνες, η εκπαίδευση σύμφωνα με το πρόγραμμα μαθημάτων θα αντιπροσωπεύει περίπου το 30% του χρόνου εργασίας σας και μετά περίπου το 10%. Ωστόσο, είναι σημαντικό να κατανοήσουμε ότι η εργασία με τα ίδια τα μοντέλα ML θα συνεχίσει να διαρκεί περίπου τέσσερις φορές λιγότερο από όλες τις σχετικές διαδικασίες. Αυτά περιλαμβάνουν την προετοιμασία του backend, τη λήψη δεδομένων, τη σύνταξη μιας διοχέτευσης για την προεπεξεργασία του, τη βελτιστοποίηση κώδικα, την προσαρμογή σε συγκεκριμένο υλικό κ.λπ. Ένας μηχανικός ML είναι, αν θέλετε, προγραμματιστής full-stack (μόνο με μεγαλύτερη έμφαση στη μηχανική εκμάθηση) , ικανό να λύσει ένα πρόβλημα από την αρχή μέχρι το τέλος. Ακόμη και με ένα έτοιμο μοντέλο, πιθανότατα θα χρειαστεί να κάνετε πολλές περισσότερες ενέργειες: να παραλληλίσετε την εκτέλεσή του σε πολλά μηχανήματα, να προετοιμάσετε μια υλοποίηση με τη μορφή χειρολαβής, βιβλιοθήκης ή εξαρτημάτων της ίδιας της υπηρεσίας.

Επιλογή μαθητή
Αν είχατε την εντύπωση ότι είναι καλύτερο να γίνετε μηχανικός ML δουλεύοντας πρώτα ως προγραμματιστής backend, αυτό δεν είναι αλήθεια. Η εγγραφή στο ίδιο ShAD χωρίς πραγματική εμπειρία στην ανάπτυξη υπηρεσιών, τη μάθηση και το να γίνεις εξαιρετικά περιζήτητος στην αγορά είναι μια εξαιρετική επιλογή. Πολλοί ειδικοί της Yandex κατέληξαν στις τρέχουσες θέσεις τους με αυτόν τον τρόπο. Εάν κάποια εταιρεία είναι έτοιμη να σας προσφέρει μια θέση εργασίας στον τομέα της ML αμέσως μετά την αποφοίτησή σας, πιθανότατα θα πρέπει να αποδεχτείτε και εσείς την προσφορά. Προσπαθήστε να μπείτε σε μια καλή ομάδα με έναν έμπειρο μέντορα και ετοιμαστείτε να μάθετε πολλά.

Τι σας εμποδίζει συνήθως να κάνετε ML;

Εάν ένας backender φιλοδοξεί να γίνει μηχανικός ML, μπορεί να επιλέξει από δύο τομείς ανάπτυξης - χωρίς να λαμβάνει υπόψη το πρόγραμμα διαμονής.

Πρώτον, μελετήστε ως μέρος κάποιου εκπαιδευτικού μαθήματος. Τα μαθήματα Το Coursera θα σας φέρει πιο κοντά στην κατανόηση των βασικών τεχνικών, αλλά για να βυθιστείτε στο επάγγελμα σε επαρκή βαθμό, πρέπει να αφιερώσετε πολύ περισσότερο χρόνο σε αυτό. Για παράδειγμα, αποφοιτήστε από το ShAD. Με τα χρόνια, το ShAD είχε διαφορετικό αριθμό μαθημάτων απευθείας για τη μηχανική μάθηση - κατά μέσο όρο, περίπου οκτώ. Κάθε ένα από αυτά είναι πραγματικά σημαντικό και χρήσιμο, μεταξύ άλλων κατά τη γνώμη των αποφοίτων. 

Δεύτερον, μπορείτε να λάβετε μέρος σε έργα μάχης όπου πρέπει να εφαρμόσετε έναν ή άλλο αλγόριθμο ML. Ωστόσο, υπάρχουν πολύ λίγα τέτοια έργα στην αγορά ανάπτυξης πληροφορικής: η μηχανική εκμάθηση δεν χρησιμοποιείται στις περισσότερες εργασίες. Ακόμη και σε τράπεζες που διερευνούν ενεργά ευκαιρίες που σχετίζονται με το ML, μόνο λίγες ασχολούνται με την ανάλυση δεδομένων. Εάν δεν μπορέσατε να συμμετάσχετε σε μία από αυτές τις ομάδες, η μόνη σας επιλογή είναι είτε να ξεκινήσετε το δικό σας έργο (όπου, πιθανότατα, θα ορίσετε τις δικές σας προθεσμίες, και αυτό δεν έχει να κάνει με τα καθήκοντα παραγωγής μάχης), είτε να αρχίσετε να ανταγωνίζεστε Kaggle.

Πράγματι, συνεργαστείτε με άλλα μέλη της κοινότητας και δοκιμάστε τον εαυτό σας σε διαγωνισμούς σχετικά εύκολο - ειδικά εάν υποστηρίζετε τις δεξιότητές σας με την εκπαίδευση και τα αναφερόμενα μαθήματα στο Coursera. Κάθε διαγωνισμός έχει μια προθεσμία - θα χρησιμεύσει ως κίνητρο για εσάς και θα σας προετοιμάσει για ένα παρόμοιο σύστημα σε εταιρείες πληροφορικής. Αυτός είναι ένας καλός τρόπος - ο οποίος όμως είναι και λίγο διαζευγμένος από πραγματικές διαδικασίες. Στο Kaggle σας δίνονται προεπεξεργασμένα, αν και όχι πάντα τέλεια, δεδομένα. μην προσφέρετε να σκεφτείτε τη συνεισφορά στο προϊόν. και το πιο σημαντικό, δεν απαιτούν λύσεις κατάλληλες για παραγωγή. Οι αλγόριθμοί σας πιθανότατα θα λειτουργούν και θα είναι εξαιρετικά ακριβείς, αλλά τα μοντέλα και ο κώδικάς σας θα είναι σαν τον Φρανκενστάιν ραμμένα από διαφορετικά μέρη - σε ένα έργο παραγωγής, ολόκληρη η δομή θα λειτουργεί πολύ αργά, θα είναι δύσκολο να ενημερωθεί και να επεκταθεί (για παράδειγμα, οι αλγόριθμοι γλώσσας και φωνής θα ξαναγράφονται πάντα εν μέρει καθώς αναπτύσσεται η γλώσσα). Οι εταιρείες ενδιαφέρονται για το γεγονός ότι η εργασία που παρατίθεται μπορεί να γίνει όχι μόνο από εσάς οι ίδιοι (είναι σαφές ότι εσείς, ως συγγραφέας της λύσης, μπορείτε να το κάνετε αυτό), αλλά και από οποιονδήποτε από τους συναδέλφους σας. Η διαφορά μεταξύ αθλητικού και βιομηχανικού προγραμματισμού συζητείται много, και ο Kaggle εκπαιδεύει ακριβώς «αθλητές» - ακόμα κι αν το κάνει πολύ καλά, επιτρέποντάς τους να αποκτήσουν κάποια εμπειρία.

Περιέγραψα δύο πιθανές γραμμές ανάπτυξης - εκπαίδευση μέσω εκπαιδευτικών προγραμμάτων και εκπαίδευση «σε μάχη», για παράδειγμα στο Kaggle. Το πρόγραμμα διαμονής είναι ένας συνδυασμός αυτών των δύο μεθόδων. Διαλέξεις και σεμινάρια σε επίπεδο ShAD, καθώς και πραγματικά μαχητικά έργα, σας περιμένουν.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο