Πίνακας περιεχομένων[Κρύβω][Προβολή]
Ένα πλαίσιο για βαθιά μάθηση αποτελείται από έναν συνδυασμό διεπαφών, βιβλιοθηκών και εργαλείων για τον καθορισμό και την εκπαίδευση μοντέλων Μηχανικής Μάθησης γρήγορα και με ακρίβεια.
Επειδή η βαθιά εκμάθηση χρησιμοποιεί μεγάλη ποσότητα αδόμητων, μη κειμενικών δεδομένων, χρειάζεστε ένα πλαίσιο που ελέγχει την αλληλεπίδραση μεταξύ των «στρωμάτων» και καθιστά γρήγορη την ανάπτυξη του μοντέλου μαθαίνοντας από τα δεδομένα εισόδου και λαμβάνοντας αυτόνομες αποφάσεις.
Εάν ενδιαφέρεστε να μάθετε για τη βαθιά μάθηση το 2021, σκεφτείτε να χρησιμοποιήσετε ένα από τα πλαίσια που αναφέρονται παρακάτω. Θυμηθείτε να επιλέξετε ένα που θα σας βοηθήσει να πετύχετε τους στόχους και το όραμά σας.
1. TensorFlow
Όταν μιλάμε για βαθιά μάθηση, TensorFlow είναι συχνά το πρώτο πλαίσιο που αναφέρεται. Εξαιρετικά δημοφιλές, αυτό το πλαίσιο δεν χρησιμοποιείται μόνο από την Google – την εταιρεία που είναι υπεύθυνη για τη δημιουργία του – αλλά και από άλλες εταιρείες όπως η Dropbox, το eBay, η Airbnb, η Nvidia και τόσες άλλες.
Το TensorFlow μπορεί να χρησιμοποιηθεί για την ανάπτυξη API υψηλού και χαμηλού επιπέδου, επιτρέποντάς σας να εκτελείτε εφαρμογές σε σχεδόν κάθε είδους συσκευή. Αν και η Python είναι η κύρια γλώσσα της, η διεπαφή του Tensoflow μπορεί να προσπελαστεί και να ελέγχεται χρησιμοποιώντας άλλες γλώσσες προγραμματισμού όπως η C++, η Java, η Julia και η JavaScript.
Όντας ανοιχτού κώδικα, το TensorFlow σάς επιτρέπει να κάνετε πολλές ενσωματώσεις με άλλα API και να λαμβάνετε γρήγορη υποστήριξη και ενημερώσεις από την κοινότητα. Η εξάρτησή του από «στατικά γραφήματα» για υπολογισμούς σάς επιτρέπει να κάνετε άμεσους υπολογισμούς ή να αποθηκεύετε λειτουργίες για πρόσβαση σε άλλη στιγμή. Αυτοί οι λόγοι, που προστίθενται στη δυνατότητα να «παρακολουθήσετε» την ανάπτυξη του νευρωνικού σας δικτύου μέσω του TensorBoard, καθιστούν το TensorFlow το πιο δημοφιλές πλαίσιο για βαθιά μάθηση.
Βασικά χαρακτηριστικά
- Ανοιχτή πηγή
- Ευελιξία
- Γρήγορη αποσφαλμάτωση
2. PyTorch
Το PyTorch είναι ένα πλαίσιο που αναπτύχθηκε από το Facebook για την υποστήριξη της λειτουργίας των υπηρεσιών του. Από τότε που έγινε ανοιχτού κώδικα, αυτό το πλαίσιο έχει χρησιμοποιηθεί από εταιρείες εκτός του Facebook, όπως η Salesforce και η Udacity.
Αυτό το πλαίσιο λειτουργεί δυναμικά ενημερωμένα γραφήματα, επιτρέποντάς σας να κάνετε αλλαγές στην αρχιτεκτονική του συνόλου δεδομένων σας καθώς το επεξεργάζεστε. Με το PyTorch είναι πιο απλό να αναπτύξετε και να εκπαιδεύσετε ένα νευρωνικό δίκτυο, ακόμη και χωρίς καμία εμπειρία στη βαθιά μάθηση.
Όντας ανοιχτού κώδικα και βασισμένος στην Python, μπορείτε να κάνετε απλές και γρήγορες ενσωματώσεις στο PyTorch. Είναι επίσης ένα απλό πλαίσιο για εκμάθηση, χρήση και εντοπισμό σφαλμάτων. Εάν έχετε ερωτήσεις, μπορείτε να βασιστείτε στην εξαιρετική υποστήριξη και ενημερώσεις και από τις δύο κοινότητες – την κοινότητα Python και την κοινότητα PyTorch.
Βασικά χαρακτηριστικά
- Εύκολο να το μάθεις
- Υποστηρίζει GPU και CPU
- Πλούσιο σύνολο API για επέκταση βιβλιοθηκών
3. Apache MX Net
Λόγω της υψηλής επεκτασιμότητας, της υψηλής απόδοσης, της γρήγορης αντιμετώπισης προβλημάτων και της προηγμένης υποστήριξης GPU, αυτό το πλαίσιο δημιουργήθηκε από την Apache για χρήση σε μεγάλα βιομηχανικά έργα.
Το MXNet περιλαμβάνει τη διεπαφή Gluon που επιτρέπει σε προγραμματιστές όλων των επιπέδων δεξιοτήτων ξεκινήστε με τη βαθιά μάθηση στο cloud, σε συσκευές edge και σε εφαρμογές για κινητά. Σε λίγες μόνο γραμμές κώδικα Gluon, μπορείτε να δημιουργήσετε γραμμική παλινδρόμηση, συνελικτικά δίκτυα και επαναλαμβανόμενα LSTM για ανίχνευση αντικειμένων, αναγνώριση ομιλίας, σύσταση και εξατομίκευση.
Το MXNet μπορεί να χρησιμοποιηθεί σε διάφορες συσκευές και υποστηρίζεται από πολλές γλώσσες προγραμματισμού όπως Java, R, JavaScript, Scala και Go. Αν και ο αριθμός των χρηστών και των μελών στην κοινότητά του είναι χαμηλός, το MXNet έχει καλογραμμένη τεκμηρίωση και μεγάλες δυνατότητες ανάπτυξης, ιδιαίτερα τώρα που η Amazon επέλεξε αυτό το πλαίσιο ως το κύριο εργαλείο για τη Μηχανική Μάθηση στο AWS.
Βασικά χαρακτηριστικά
- 8 γλωσσικά δεσίματα
- Κατανεμημένη εκπαίδευση, υποστήριξη συστημάτων πολλαπλών CPU και πολλαπλών GPU
- Υβριδική πρόσοψη, που επιτρέπει την εναλλαγή μεταξύ επιτακτικού και συμβολικού τρόπου λειτουργίας
4. Γνωστική Εργαλειοθήκη της Microsoft
Εάν σκέφτεστε να αναπτύξετε εφαρμογές ή υπηρεσίες που εκτελούνται σε Azure (υπηρεσίες cloud της Microsoft), το Γνωστικό Εργαλειοθήκη της Microsoft είναι το πλαίσιο που πρέπει να επιλέξετε για τα έργα σας σε βάθος εκμάθησης. Αυτό είναι ανοιχτού κώδικα και υποστηρίζεται από γλώσσες προγραμματισμού όπως Python, C++, C#, Java, μεταξύ άλλων. Αυτό το πλαίσιο έχει σχεδιαστεί για να «σκέφτεται σαν τον ανθρώπινο εγκέφαλο», ώστε να μπορεί να επεξεργάζεται μεγάλες ποσότητες αδόμητων δεδομένων, ενώ προσφέρει γρήγορη εκπαίδευση και διαισθητική αρχιτεκτονική.
Επιλέγοντας αυτό το πλαίσιο – το ίδιο πίσω από το Skype, το Xbox και την Cortana – θα έχετε καλή απόδοση από τις εφαρμογές σας, επεκτασιμότητα και απλή ενσωμάτωση με το Azure. Ωστόσο, σε σύγκριση με το TensorFlow ή το PyTorch, ο αριθμός των μελών στην κοινότητα και η υποστήριξή του μειώνεται.
Το παρακάτω βίντεο προσφέρει μια πλήρη εισαγωγή και παραδείγματα εφαρμογών:
Βασικά χαρακτηριστικά
- Εκκαθάριση τεκμηρίωσης
- Υποστήριξη από την ομάδα της Microsoft
- Απευθείας απεικόνιση γραφήματος
5. Keras
Όπως το PyTorch, το Keras είναι μια βιβλιοθήκη βασισμένη σε Python για έργα έντασης δεδομένων. Το keras API λειτουργεί σε υψηλό επίπεδο και επιτρέπει ενσωματώσεις με API χαμηλού επιπέδου όπως το TensorFlow, το Theano και το Microsoft Cognitive Toolkit.
Μερικά πλεονεκτήματα της χρήσης του keras είναι η απλότητά του στην εκμάθηση – είναι το προτεινόμενο πλαίσιο για αρχάριους στη βαθιά μάθηση. την ταχύτητα ανάπτυξής του· έχοντας μεγάλη υποστήριξη από την κοινότητα των python και από κοινότητες των άλλων πλαισίων με τα οποία είναι ενσωματωμένο.
Το Keras περιέχει διάφορες υλοποιήσεις του δομικά στοιχεία των νευρωνικών δικτύων όπως επίπεδα, αντικειμενικές συναρτήσεις, συναρτήσεις ενεργοποίησης και μαθηματικοί βελτιστοποιητές. Ο κώδικάς του φιλοξενείται στο GitHub και υπάρχουν φόρουμ και ένα κανάλι υποστήριξης Slack. Εκτός από την υποστήριξη για στάνταρ νευρωνικά δίκτυα, η Keras προσφέρει υποστήριξη για συνελικτικά νευρωνικά δίκτυα και επαναλαμβανόμενα νευρωνικά δίκτυα.
Ο Κέρας επιτρέπει μοντέλα βαθιάς μάθησης να δημιουργηθεί σε smartphone τόσο σε iOS όσο και σε Android, σε εικονική μηχανή Java ή στον Ιστό. Επιτρέπει επίσης τη χρήση κατανεμημένης εκπαίδευσης μοντέλων βαθιάς μάθησης σε συστάδες Μονάδων Επεξεργασίας Γραφικών (GPU) και Μονάδων Επεξεργασίας Τενσογράφου (TPU).
Βασικά χαρακτηριστικά
- Προεκπαιδευμένα μοντέλα
- Πολλαπλή υποστήριξη υποστήριξης
- Φιλική προς τον χρήστη και υποστήριξη μεγάλης κοινότητας
6. Apple Core ML
Το Core ML αναπτύχθηκε από την Apple για να υποστηρίξει το οικοσύστημά της – IOS, Mac OS και iPad OS. Το API του λειτουργεί σε χαμηλό επίπεδο, κάνοντας καλή χρήση των πόρων της CPU και της GPU, γεγονός που επιτρέπει στα μοντέλα και τις εφαρμογές που δημιουργούνται να συνεχίσουν να λειτουργούν ακόμη και χωρίς σύνδεση στο διαδίκτυο, γεγονός που μειώνει το «αποτύπωμα μνήμης» και την κατανάλωση ενέργειας της συσκευής.
Ο τρόπος με τον οποίο το Core ML το πετυχαίνει αυτό δεν είναι ακριβώς φτιάχνοντας μια ακόμη βιβλιοθήκη μηχανικής εκμάθησης που είναι βελτιστοποιημένη για λειτουργία σε iphone/ipad. Αντίθετα, το Core ML μοιάζει περισσότερο με έναν μεταγλωττιστή που λαμβάνει προδιαγραφές μοντέλου και εκπαιδευμένες παραμέτρους που εκφράζονται με άλλο λογισμικό μηχανικής εκμάθησης και το μετατρέπει σε αρχείο που γίνεται πόρος για μια εφαρμογή iOS. Αυτή η μετατροπή σε μοντέλο Core ML πραγματοποιείται κατά την ανάπτυξη της εφαρμογής, όχι σε πραγματικό χρόνο καθώς χρησιμοποιείται η εφαρμογή και διευκολύνεται από τη βιβλιοθήκη python του coremltools.
Το Core ML προσφέρει γρήγορη απόδοση με εύκολη ενσωμάτωση μάθηση μηχανής μοντέλα σε εφαρμογές. Υποστηρίζει τη βαθιά εκμάθηση με πάνω από 30 τύπους επιπέδων, καθώς και δέντρα αποφάσεων, μηχανές υποστήριξης διανυσμάτων και μεθόδους γραμμικής παλινδρόμησης, όλα βασισμένα σε τεχνολογίες χαμηλού επιπέδου όπως το Metal και το Accelerate.
Βασικά χαρακτηριστικά
- Εύκολη ενσωμάτωση σε εφαρμογές
- Βέλτιστη χρήση των τοπικών πόρων, που δεν απαιτεί πρόσβαση στο διαδίκτυο
- Απόρρητο: τα δεδομένα δεν χρειάζεται να φύγουν από τη συσκευή
7. ONNX
Το τελευταίο πλαίσιο στη λίστα μας είναι το ONNX. Αυτό το πλαίσιο προέκυψε από μια συνεργασία μεταξύ της Microsoft και του Facebook, με στόχο την απλούστευση της διαδικασίας μεταφοράς και δημιουργίας μοντέλων μεταξύ διαφορετικών πλαισίων, εργαλείων, χρόνου εκτέλεσης και μεταγλωττιστών.
Το ONNX ορίζει έναν κοινό τύπο αρχείου που μπορεί να εκτελεστεί σε πολλές πλατφόρμες, ενώ χρησιμοποιεί τα πλεονεκτήματα των API χαμηλού επιπέδου, όπως αυτά από το Microsoft Cognitive Toolkit, MXNet, Caffe και (με χρήση μετατροπέων) Tensorflow και Core ML. Η αρχή πίσω από το ONNX είναι η εκπαίδευση ενός μοντέλου σε μια στοίβα και η εφαρμογή του χρησιμοποιώντας άλλα συμπεράσματα και προβλέψεις.
Το LF AI Foundation, ένας υποοργανισμός του Linux Foundation, είναι ένας οργανισμός αφιερωμένος στη δημιουργία ενός οικοσυστήματος για την υποστήριξη ανοικτού κώδικα καινοτομία στην τεχνητή νοημοσύνη (AI), τη μηχανική μάθηση (ML) και τη βαθιά μάθηση (DL). Πρόσθεσε το ONNX ως έργο μεταπτυχιακού επιπέδου στις 14 Νοεμβρίου 2019. Αυτή η κίνηση του ONNX υπό την ομπρέλα του Ιδρύματος LF AI θεωρήθηκε σημαντικό ορόσημο για την καθιέρωση του ONNX ως προτύπου ανοιχτού σχήματος ουδέτερου από τον προμηθευτή.
Το ONNX Model Zoo είναι μια συλλογή προεκπαιδευμένων μοντέλων στο Deep Learning που διατίθενται σε μορφή ONNX. Για κάθε μοντέλο υπάρχουν Σημειωματάρια Jupyter για εκπαίδευση μοντέλων και εκτέλεση συμπερασμάτων με το εκπαιδευμένο μοντέλο. Τα σημειωματάρια είναι γραμμένα σε Python και περιέχουν συνδέσμους προς το σύνολο δεδομένων εκπαίδευσης και αναφορές στο πρωτότυπο επιστημονικό έγγραφο που περιγράφει την αρχιτεκτονική του μοντέλου.
Βασικά χαρακτηριστικά
- Διαλειτουργικότητα πλαισίου
- Βελτιστοποίηση υλικού
Συμπέρασμα
Αυτή είναι μια σύνοψη των καλύτερων πλαισίων για βαθιά μάθηση. Υπάρχουν πολλά πλαίσια για το σκοπό αυτό, δωρεάν ή επί πληρωμή. Για να επιλέξετε το καλύτερο για το έργο σας, πρώτα μάθετε για ποια πλατφόρμα θα αναπτύξετε την αίτησή σας.
Γενικά πλαίσια όπως το TensorFlow και το Keras είναι οι καλύτερες επιλογές για να ξεκινήσετε. Αλλά εάν πρέπει να χρησιμοποιήσετε πλεονεκτήματα λειτουργικού συστήματος ή συγκεκριμένης συσκευής, τότε το Core ML και το Microsoft Cognitive Toolkit μπορεί να είναι οι καλύτερες επιλογές.
Υπάρχουν άλλα πλαίσια που στοχεύουν σε συσκευές Android, άλλα μηχανήματα και συγκεκριμένους σκοπούς που δεν έχουν αναφερθεί σε αυτήν τη λίστα. Εάν η τελευταία ομάδα σας ενδιαφέρει, προτείνουμε να κάνετε μια αναζήτηση για τις πληροφορίες της στο Google ή σε άλλους ιστότοπους μηχανικής εκμάθησης.
Αφήστε μια απάντηση