Tensor Flow
Εμφάνιση
Τι είναι το TensorFlow
- Το TensorFlow πρόκειται για μια μαθηματική βιβλιοθήκη (πλησιάζει περισσότερο τον ορισμό του Framework) την οποία ανέπτυξε η ομάδα τεχνητής νοημοσύνης της Google ονόματι Google Brain, αρχικά για εσωτερική χρήση του κολοσσού. Σκοπός της δημιουργίας της ήταν η διευκόλυνση διαδικασιών όπως ο προγραμματισμός ροής δεδομένων και μεγάλο εύρος διεργασιών καθώς βρήκε χρήση και στην Μηχανική Μάθηση έχοντας ως παράδειγμα τα Νευρωνικά Δίκτυα. Δεν άργησε όμως και η δημόσια διανομή του, με αποτέλεσμα η αρχική του έκδοση να γίνει διαθέσιμη το Νοέμβριο του 2015 κάτω από την άδεια ανοιχτού λογισμικού της Apache (Apache 2.0 Open Source License).
Ιστορία
Πώς προέκυψε
- Αρχικά, η ομάδα της Google δημιούργησε το λογισμικό DistBelief ως ιδιόκτητο σύστημα Μηχανικής Μάθησης όπου βρήκε απήχηση σε διάφορες εταιρίες τόσο για έρευνα όσο και για εμπορική χρήση. Στην πορεία ανέθεσε την απλοποίηση και την αναδιάταξη του κώδικα του DistBelief σε διάφορους αναγνωρισμένους επιστήμονες της Πληροφορικής, συμπεριλαμβανόμενου του Jeff Dean(lead of Google.ai), στοχεύοντας σε μια γρηγορότερη και ισχυρότερη βιβλιοθήκη, με αποτέλεσμα τη γέννηση του TensorFlow.
TensorFlow
- Πρόκειται για ένα σύστημα δεύτερης γενιάς όπου η πρώτη επίσημη έκδοση με αριθμό 1.0.0 δημοσιεύθηκε το Φεβρουάριο του 2017. Η ευέλικτη αρχιτεκτονική του TensorFlow καθιστά δυνατή την εύκολη ανάπτυξη υπολογισμών σε μια τεράστια ποικιλία πλατφορμών, από υπολογιστές έως και κινητά. Μπορεί να εκμεταλλευτεί την υπολογιστική ισχύ πολλαπλών επεξεργαστών και καρτών γραφικών (αξιοποιώντας και διάφορες τεχνολογίες όπως CUDA). Είναι διαθέσιμο σε λογισμικά 64-bit όπως τα Linux, Windows, macOS και ακόμα και σε λογισμικά κινητών όπως Android(Google) και iOS(Apple).
- Οι υπολογισμοί του TensorFlow εκφράζονται ως στατικά διαγράμματα ροής δεδομένων και το όνομα του προκύπτει από τις διαδικασίες που εκτελούν τα νευρωνικά δίκτυα στους πολυδιάστατους πίνακες δεδομένων. Αυτοί οι πίνακες αναφέρονται ως “tensors”.
Επεξεργαστική Μονάδα Tensor
- Αφού το Νοέμβριο του 2015 έγινε η πρώτη open source release version του TensorFlow η Google στη συνέχεια ανέπτυξε μια ειδικά σχεδιασμένη μονάδα επεξεργασίας στα πρότυπα της βιβλιοθήκης, την οποία και χρησιμοποιούσε στα κέντρα δεδομένων της πάνω από ένα χρόνο πριν την ανακοίνωση της πρώτης έκδοσης το 2016. Η Google διαπίστωσε πως με τη χρήση του TPU (Tensor Processing Unit) είχε μεγαλύτερη απόδοση για κάθε watt ενέργειας κατά τη διάρκεια της αξιοποίησης του στη Μηχανική Μάθηση. Αυτό οφείλεται στο γεγονός πως πρόκειται για μια προγραμματιζόμενη μονάδα επεξεργασίας με σκοπό την επιτάχυνση της Τεχνητής Νοημοσύνης, καθώς προσφέρει υψηλή απόδοση επεξεργασίας σε συνδυασμό με αποτελεσματικότητα με όσον δυνατόν χαμηλότερη μαθηματική ακρίβεια (για παράδειγμα η χρήση 8-bit) και στρέφεται προς την εκτέλεση και τη χρήση των Μοντέλων από το να τα εκπαιδεύει.
- Το Μάιο του 2017, ανακοινώθηκε η 2η γενιά επεξεργαστών με υπολογιστική ισχύ του καθενός μέχρι και 180 teraflops(10^12) απόδοσης. Με τη 2η γενιά η Google έκανε διαθέσιμη την χρήση των TPU μέσω της υπηρεσίας εικονικών μηχανημάτων, Google Compute Engine και τον Φεβρουάριο του 2018 ανακοίνωσε την beta έκδοση τους στην υπηρεσία Google Cloud Platform.
Εφαρμογές που αξιοποιούν το TensorFlow
- Το TensorFlow έχει μεγάλο εύρος εφαρμογής σε applications μεγάλης κλίμακας και φυσικά δεν περιορίζεται μέχρι εκεί.
- Η Google χρησιμοποιεί τη βιβλιοθήκη της σε αρκετά από τα εργαλεία της με αναφορά στα Google Photos και στην αναγνώριση φωνής στα Google App της σε γενικό βαθμό.
Μερικές όμως από τις καλύτερες αξιοποιήσεις της βρίσκονται σε συστήματα όπως :
- Ένα σύστημα φωνητικής αναγνώρισης που αναπτύχθηκε από τον οργανισμό της Mozilla και πρόκειται για ένα σύστημα εμπνευσμένο από την αρχιτεκτονική του Baidu’s Deep Speech.
- Πρόκειται για έναν αλγόριθμο τεχνητής νοημοσύνης που αποτελεί σημαντικό κομμάτι της μηχανής αναζήτησης της Google (www.google.com) και είναι υπεύθυνο για την κατάταξη των ιστοσελίδων.
- Μια εφαρμογή της Google που αυτόματα δημιουργεί και στέλνει απαντήσεις σε Email πλατφόρμες.
- Αξίζει ιδιαίτερη μνεία στο συγκεκριμένο σύστημα καθώς πρόκειται για μια από τις καλύτερες υλοποιήσεις με δημιουργούς την Google σε συνεργασία με το Πανεπιστήμιο του Stanford. Το μοντέλο αυτό έχει τη δυνατότητα να επιταχύνει την ανακάλυψη και δημιουργία νέων φαρμάκων, αυτό το καθιστά αυτόματα ένα από τα πιο αξιοθαύμαστα παραδείγματα της τεχνητής νοημοσύνης.
- Μερικές από τις εταιρίες που υιοθέτησαν τη βιβλιοθήκη TensorFlow στα project τους :
- Βέβαια η χρήση του δεν περιορίζεται στις εταιρίες κολοσσούς καθώς ο Jeff Dean δήλωσε πως στο github (TensorFlow Repo) υπάρχουν πάνω από 1.500 αναφορές στο TensorFlow. Αυτό υποδεικνύει πως η Open Source κοινότητα το αγκαλιάζει και το εξελίσσει καθημερινά δίχως περιορισμούς στην αξιοποίηση του.
Πηγές
https://en.wikipedia.org/wiki/TensorFlow
https://www.linuxfoundation.org/blog/2018/05/open-source-ai-for-everyone-three-projects-to-know/
https://opensource.com/article/18/5/top-8-open-source-ai-technologies-machine-learning