Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy

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

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

Amazon SageMaker Data Wrangler είναι μια υπηρεσία σε Στούντιο Amazon SageMaker που παρέχει μια λύση από άκρο σε άκρο για εισαγωγή, προετοιμασία, μετατροπή, χαρακτηρισμό και ανάλυση δεδομένων χρησιμοποιώντας ελάχιστη έως καθόλου κωδικοποίηση. Μπορείτε να ενσωματώσετε μια ροή προετοιμασίας δεδομένων Data Wrangler στις ροές εργασιών μηχανικής εκμάθησης (ML) για να απλοποιήσετε την προεπεξεργασία δεδομένων και τη μηχανική χαρακτηριστικών, μεταφέροντας την προετοιμασία δεδομένων στην παραγωγή γρηγορότερα χωρίς την ανάγκη δημιουργίας κώδικα PySpark, εγκατάστασης Apache Spark ή περιστροφής συμπλεγμάτων.

Για σενάρια όπου χρειάζεται να προσθέσετε τα δικά σας προσαρμοσμένα σενάρια για μετασχηματισμούς δεδομένων, μπορείτε να γράψετε τη λογική μετασχηματισμού σας στα Pandas, PySpark, PySpark SQL. Το Data Wrangler υποστηρίζει τώρα βιβλιοθήκες NLTK και SciPy για τη σύνταξη προσαρμοσμένων μετασχηματισμών για την προετοιμασία δεδομένων κειμένου για ML και την εκτέλεση βελτιστοποίησης περιορισμών.

Μπορεί να αντιμετωπίσετε σενάρια όπου πρέπει να προσθέσετε τα δικά σας προσαρμοσμένα σενάρια για μετασχηματισμό δεδομένων. Με την ικανότητα προσαρμοσμένου μετασχηματισμού Data Wrangler, μπορείτε να γράψετε τη λογική μετασχηματισμού σας στα Pandas, PySpark, PySpark SQL.

Σε αυτήν την ανάρτηση, συζητάμε πώς μπορείτε να γράψετε τον προσαρμοσμένο μετασχηματισμό σας στο NLTK για να προετοιμάσετε δεδομένα κειμένου για ML. Θα μοιραστούμε επίσης ένα παράδειγμα προσαρμοσμένου κώδικα μετασχηματισμού χρησιμοποιώντας άλλα κοινά πλαίσια όπως NLTK, NumPy, SciPy και scikit-learn καθώς και υπηρεσίες AWS AI. Για τους σκοπούς αυτής της άσκησης, χρησιμοποιούμε το Τιτανικό σύνολο δεδομένων, ένα δημοφιλές σύνολο δεδομένων στην κοινότητα ML, το οποίο έχει πλέον προστεθεί ως α δείγμα συνόλου δεδομένων μέσα στο Data Wrangler.

Επισκόπηση λύσεων

Το Data Wrangler παρέχει πάνω από 40 ενσωματωμένες υποδοχές για εισαγωγή δεδομένων. Μετά την εισαγωγή των δεδομένων, μπορείτε να δημιουργήσετε την ανάλυση δεδομένων και τους μετασχηματισμούς σας χρησιμοποιώντας πάνω από 300 ενσωματωμένους μετασχηματισμούς. Στη συνέχεια, μπορείτε να δημιουργήσετε βιομηχανοποιημένες σωληνώσεις για να προωθήσετε τα χαρακτηριστικά Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) ή Κατάστημα χαρακτηριστικών Amazon SageMaker. Το παρακάτω διάγραμμα δείχνει την αρχιτεκτονική υψηλού επιπέδου από άκρο σε άκρο.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προϋποθέσεις

Το Data Wrangler είναι μια δυνατότητα του SageMaker που διατίθεται εντός Στούντιο Amazon SageMaker. Μπορείτε να ακολουθήσετε τη διαδικασία ενσωμάτωσης στο Studio για να αναβαθμίσετε το περιβάλλον Studio και τα σημειωματάρια. Αν και μπορείτε να επιλέξετε από μερικές μεθόδους ελέγχου ταυτότητας, ο απλούστερος τρόπος για να δημιουργήσετε έναν τομέα Studio είναι να ακολουθήσετε το Οδηγίες γρήγορης εκκίνησης. Η Γρήγορη εκκίνηση χρησιμοποιεί τις ίδιες προεπιλεγμένες ρυθμίσεις με την τυπική εγκατάσταση του Studio. Μπορείτε επίσης να επιλέξετε να επιβιβαστείτε χρησιμοποιώντας Κέντρο Ταυτότητας AWS IAM (διάδοχος του AWS Single Sign-On) για έλεγχο ταυτότητας (βλ Ενσωματωθείτε στον τομέα Amazon SageMaker με χρήση του Κέντρου Ταυτότητας IAM).

Εισαγάγετε το σύνολο δεδομένων Titanic

Ξεκινήστε το περιβάλλον του Studio σας και δημιουργήστε ένα νέο Ροή δεδομένων Wrangler. Μπορείτε είτε να εισαγάγετε το δικό σας σύνολο δεδομένων είτε να χρησιμοποιήσετε ένα δείγμα δεδομένων (Titanic) όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης. Το Data Wrangler σάς επιτρέπει να εισάγετε σύνολα δεδομένων από διαφορετικές πηγές δεδομένων. Για την περίπτωση χρήσης μας, εισάγουμε το δείγμα δεδομένων από έναν κάδο S3.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Μετά την εισαγωγή, θα δείτε δύο κόμβους (τον κόμβο προέλευσης και τον κόμβο τύπου δεδομένων) στη ροή δεδομένων. Το Data Wrangler προσδιορίζει αυτόματα τον τύπο δεδομένων για όλες τις στήλες του συνόλου δεδομένων.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προσαρμοσμένοι μετασχηματισμοί με NLTK

Για την προετοιμασία δεδομένων και τη μηχανική λειτουργιών με το Data Wrangler, μπορείτε να χρησιμοποιήσετε πάνω από 300 ενσωματωμένους μετασχηματισμούς ή να δημιουργήσετε τους δικούς σας προσαρμοσμένους μετασχηματισμούς. Προσαρμοσμένοι μετασχηματισμοί μπορεί να γραφτεί ως ξεχωριστά βήματα στο Data Wrangler. Γίνονται μέρος του αρχείου .flow μέσα στο Data Wrangler. Η δυνατότητα προσαρμοσμένου μετασχηματισμού υποστηρίζει Python, PySpark και SQL ως διαφορετικά βήματα σε αποσπάσματα κώδικα. Αφού δημιουργηθούν αρχεία σημειωματάριου (.ipynb) από το αρχείο .flow ή το αρχείο .flow χρησιμοποιηθεί ως συνταγές, τα αποσπάσματα κώδικα προσαρμοσμένου μετασχηματισμού παραμένουν χωρίς να απαιτούνται αλλαγές. Αυτός ο σχεδιασμός του Data Wrangler επιτρέπει στους προσαρμοσμένους μετασχηματισμούς να γίνουν μέρος μιας εργασίας Επεξεργασίας SageMaker για την επεξεργασία ογκωδών συνόλων δεδομένων με προσαρμοσμένους μετασχηματισμούς.

Το σύνολο δεδομένων Titanic έχει δύο λειτουργίες (όνομα και home.dest) που περιέχουν πληροφορίες κειμένου. Χρησιμοποιούμε NLTK για να χωρίσετε τη στήλη ονόματος και να εξαγάγετε το επώνυμο και να εκτυπώσετε τη συχνότητα των επωνύμων. Το NLTK είναι μια κορυφαία πλατφόρμα για τη δημιουργία προγραμμάτων Python για εργασία με δεδομένα ανθρώπινης γλώσσας. Παρέχει εύχρηστες διεπαφές σε πάνω από 50 σώματα και λεξιλογικούς πόρους όπως το WordNet, μαζί με μια σουίτα βιβλιοθηκών επεξεργασίας κειμένου για ταξινόμηση, δημιουργία διακριτικών, απορρέουσα βάση, επισήμανση, ανάλυση και σημασιολογική συλλογιστική και περιτυλίγματα για βιβλιοθήκες επεξεργασίας φυσικής γλώσσας βιομηχανικής ισχύος (NLP).

Για να προσθέσετε έναν νέο μετασχηματισμό, ολοκληρώστε τα παρακάτω βήματα:

  1. Επιλέξτε το σύμβολο συν και επιλέξτε Προσθήκη μετασχηματισμού.
  2. Επιλέξτε Προσθέστε το βήμα Και επιλέξτε Προσαρμοσμένος μετασχηματισμός.

Μπορείτε να δημιουργήσετε έναν προσαρμοσμένο μετασχηματισμό χρησιμοποιώντας Pandas, PySpark, συναρτήσεις που ορίζονται από τον χρήστη Python και SQL PySpark.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

  1. Επιλέξτε Python (Πάντα) και προσθέστε τον ακόλουθο κώδικα για να εξαγάγετε το επώνυμο από τη στήλη ονόματος:
    import nltk
    nltk.download('punkt')
    tokens = [nltk.word_tokenize(name) for name in df['Name']] # Extract the last names of the passengers
    df['last_name'] = [token[0] for token in tokens]

  2. Επιλέξτε Προβολή να αναθεωρήσουμε τα αποτελέσματα.

Το παρακάτω στιγμιότυπο οθόνης δείχνει το last_name στήλη εξάγεται.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

  1. Προσθέστε ένα άλλο βήμα προσαρμοσμένου μετασχηματισμού για να προσδιορίσετε την κατανομή συχνότητας των επωνύμων, χρησιμοποιώντας τον ακόλουθο κώδικα:
    import nltk
    fd = nltk.FreqDist(df["last_name"])
    print(fd.most_common(10))

  2. Επιλέξτε Προβολή για να αναθεωρήσετε τα αποτελέσματα της συχνότητας.Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προσαρμοσμένοι μετασχηματισμοί με υπηρεσίες AWS AI

Οι προεκπαιδευμένες υπηρεσίες AI της AWS παρέχουν έτοιμες πληροφορίες για τις εφαρμογές και τις ροές εργασίας σας. Οι υπηρεσίες AWS AI ενσωματώνονται εύκολα με τις εφαρμογές σας για να αντιμετωπίσουν πολλές περιπτώσεις κοινής χρήσης. Τώρα μπορείτε να χρησιμοποιήσετε τις δυνατότητες για υπηρεσίες AWS AI ως προσαρμοσμένο βήμα μετασχηματισμού στο Data Wrangler.

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

Χρησιμοποιούμε το Amazon Comprehend για να εξαγάγουμε τις οντότητες από τη στήλη ονόματος. Ολοκληρώστε τα παρακάτω βήματα:

  1. Προσθέστε ένα προσαρμοσμένο βήμα μετασχηματισμού.
  2. Επιλέξτε Python (Πάντα).
  3. Εισαγάγετε τον ακόλουθο κωδικό για να εξαγάγετε τις οντότητες:
    import boto3
    comprehend = boto3.client("comprehend") response = comprehend.detect_entities(LanguageCode = 'en', Text = df['name'].iloc[0]) for entity in response['Entities']:
    print(entity['Type'] + ":" + entity["Text"])

  4. Επιλέξτε Προβολή και οραματιστείτε τα αποτελέσματα.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Τώρα έχουμε προσθέσει τρεις προσαρμοσμένους μετασχηματισμούς στο Data Wrangler.

  1. Επιλέξτε Ροή δεδομένων για να οπτικοποιήσετε τη ροή δεδομένων από άκρο σε άκρο.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προσαρμοσμένοι μετασχηματισμοί με NumPy και SciPy

μουδιασμένος είναι μια βιβλιοθήκη ανοιχτού κώδικα για την Python που προσφέρει ολοκληρωμένες μαθηματικές συναρτήσεις, γεννήτριες τυχαίων αριθμών, ρουτίνες γραμμικής άλγεβρας, μετασχηματισμούς Fourier και πολλά άλλα. SciPy είναι μια βιβλιοθήκη Python ανοιχτού κώδικα που χρησιμοποιείται για επιστημονικούς υπολογισμούς και τεχνικούς υπολογισμούς, που περιέχει ενότητες για βελτιστοποίηση, γραμμική άλγεβρα, ολοκλήρωση, παρεμβολή, ειδικές συναρτήσεις, γρήγορο μετασχηματισμό Fourier (FFT), επεξεργασία σήματος και εικόνας, λύτες και άλλα.

Οι προσαρμοσμένοι μετασχηματισμοί Data Wrangler σάς επιτρέπουν να συνδυάσετε Python, PySpark και SQL ως διαφορετικά βήματα. Στην ακόλουθη ροή δεδομένων Wrangler, διαφορετικές συναρτήσεις από πακέτα Python, NumPy και SciPy εφαρμόζονται στο σύνολο δεδομένων Titanic ως πολλαπλά βήματα.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Μετασχηματισμοί NumPy

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

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται. Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Δείτε τον ακόλουθο κώδικα:

import pandas as pd
import numpy as np
df["fare_log"] = np.log(df["fare_interpolate"])
df["fare_sqrt"] = np.sqrt(df["fare_interpolate"])
df["fare_cbrt"] = np.cbrt(df["fare_interpolate"])

Μετασχηματισμοί SciPy

Οι συναρτήσεις SciPy, όπως το z-score, εφαρμόζονται ως μέρος του προσαρμοσμένου μετασχηματισμού για την τυποποίηση της διανομής ναύλου με μέση και τυπική απόκλιση.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Δείτε τον ακόλουθο κώδικα:

df["fare_zscore"] = zscore(df["fare_interpolate"])
from scipy.stats import zscore

Βελτιστοποίηση περιορισμών με NumPy και SciPy

Οι προσαρμοσμένοι μετασχηματισμοί του Data Wrangler μπορούν να χειριστούν προηγμένους μετασχηματισμούς όπως η βελτιστοποίηση περιορισμών, εφαρμόζοντας λειτουργίες βελτιστοποίησης SciPy και συνδυάζοντας το SciPy με το NumPy. Στο παρακάτω παράδειγμα, ο ναύλος σε συνάρτηση με την ηλικία δεν εμφανίζει κάποια παρατηρήσιμη τάση. Ωστόσο, η βελτιστοποίηση περιορισμών μπορεί να μετατρέψει τον ναύλο σε συνάρτηση με την ηλικία. Η προϋπόθεση περιορισμού σε αυτήν την περίπτωση είναι ότι ο νέος συνολικός ναύλος παραμένει ο ίδιος με τον παλιό συνολικό ναύλο. Οι προσαρμοσμένοι μετασχηματισμοί Data Wrangler σάς επιτρέπουν να εκτελέσετε τη συνάρτηση βελτιστοποίησης SciPy για να προσδιορίσετε τον βέλτιστο συντελεστή που μπορεί να μετατρέψει τον ναύλο ως συνάρτηση της ηλικίας υπό συνθήκες περιορισμού.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται. Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Ο ορισμός της βελτιστοποίησης, ο ορισμός του αντικειμένου και οι πολλαπλοί περιορισμοί μπορούν να αναφερθούν ως διαφορετικές συναρτήσεις κατά τη διαμόρφωση της βελτιστοποίησης περιορισμών σε έναν προσαρμοσμένο μετασχηματισμό Data Wrangler χρησιμοποιώντας SciPy και NumPy. Οι προσαρμοσμένοι μετασχηματισμοί μπορούν επίσης να φέρουν διαφορετικές μεθόδους επίλυσης που είναι διαθέσιμες ως μέρος του πακέτου βελτιστοποίησης SciPy. Μια νέα μετασχηματισμένη μεταβλητή μπορεί να δημιουργηθεί πολλαπλασιάζοντας τον βέλτιστο συντελεστή με την αρχική στήλη και να προστεθεί στις υπάρχουσες στήλες του Data Wrangler. Δείτε τον παρακάτω κώδικα:

import numpy as np
import scipy.optimize as opt
import pandas as pd df2 = pd.DataFrame({"Y":df["fare_interpolate"], "X1":df["age_interpolate"]}) # optimization defination
def main(df2):
x0 = [0.1]
res = opt.minimize(fun=obj, x0=x0, args=(df2), method="SLSQP", bounds=[(0,50)], constraints=cons)
return res # objective function
def obj(x0, df2):
sumSquares = np.sum(df2["Y"] - x0*df2["X1"])
return sumSquares # constraints
def constraint1(x0):
sum_cons1 = np.sum(df2["Y"] - x0*df2["X1"]) - 0
return sum_cons1
con1 = {'type': 'eq', 'fun': constraint1}
cons = ([con1]) print(main(df2)) df["new_fare_age_optimized"]=main(df2).x*df2["X1"]

Η δυνατότητα προσαρμοσμένου μετασχηματισμού Data Wrangler έχει τη δυνατότητα διεπαφής χρήστη να εμφανίζει τα αποτελέσματα των συναρτήσεων βελτιστοποίησης του SciPy όπως η τιμή του βέλτιστου συντελεστή (ή πολλαπλών συντελεστών).

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προσαρμοσμένοι μετασχηματισμοί με scikit-learn

scikit-μάθετε είναι μια λειτουργική μονάδα Python για μηχανική μάθηση, χτισμένη πάνω από το SciPy. Είναι μια βιβλιοθήκη ML ανοιχτού κώδικα που υποστηρίζει εποπτευόμενη και μη εποπτευόμενη μάθηση. Παρέχει επίσης διάφορα εργαλεία για προσαρμογή μοντέλου, προεπεξεργασία δεδομένων, επιλογή μοντέλου, αξιολόγηση μοντέλου και πολλά άλλα βοηθητικά προγράμματα.

Διακριτικοποίηση

Διακριτικοποίηση (αλλιώς γνωστό ως κβαντισμός or binning) παρέχει έναν τρόπο διαχωρισμού συνεχών χαρακτηριστικών σε διακριτές τιμές. Ορισμένα σύνολα δεδομένων με συνεχή χαρακτηριστικά μπορεί να ωφεληθούν από τη διακριτοποίηση, επειδή η διακριτοποίηση μπορεί να μετατρέψει το σύνολο δεδομένων συνεχών χαρακτηριστικών σε ένα με μόνο ονομαστικά χαρακτηριστικά. Τα μοναδικά κωδικοποιημένα διακριτικά χαρακτηριστικά μπορούν να κάνουν ένα μοντέλο πιο εκφραστικό, διατηρώντας παράλληλα την ερμηνευτικότητα. Για παράδειγμα, η προεπεξεργασία με ένα διακριτικό μπορεί να εισάγει μη γραμμικότητα σε γραμμικά μοντέλα.

Στον παρακάτω κώδικα, χρησιμοποιούμε KBinsDiscretizer για να διακριτοποιήσετε τη στήλη ηλικίας σε 10 κάδους:

# Table is available as variable `df`
from sklearn.preprocessing import KBinsDiscretizer
import numpy as np
# discretization transform the raw data
df = df.dropna()
kbins = KBinsDiscretizer(n_bins=10, encode='ordinal', strategy='uniform')
ages = np.array(df["age"]).reshape(-1, 1)
df["age"] = kbins.fit_transform(ages)
print(kbins.bin_edges_)

Μπορείτε να δείτε τις άκρες του κάδου τυπωμένες στο παρακάτω στιγμιότυπο οθόνης.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

One-hot κωδικοποίηση

Οι τιμές στις στήλες Embarked είναι τιμές κατηγοριών. Επομένως, πρέπει να αναπαραστήσουμε αυτές τις συμβολοσειρές ως αριθμητικές τιμές για να εκτελέσουμε την ταξινόμησή μας με το μοντέλο μας. Θα μπορούσαμε επίσης να το κάνουμε αυτό χρησιμοποιώντας έναν μετασχηματισμό κωδικοποίησης one-hot.

Υπάρχουν τρεις τιμές για το Embarked: S, C και Q. Αυτές τις αντιπροσωπεύουμε με αριθμούς. Δείτε τον παρακάτω κώδικα:

# Table is available as variable `df`
from sklearn.preprocessing import LabelEncoder le_embarked = LabelEncoder()
le_embarked.fit(df["embarked"]) encoded_embarked_training = le_embarked.transform(df["embarked"])
df["embarked"] = encoded_embarked_training

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

εκκαθάριση

Όταν δεν χρησιμοποιείτε το Data Wrangler, είναι σημαντικό να απενεργοποιείτε την παρουσία στην οποία εκτελείται για να αποφύγετε την επιβολή πρόσθετων χρεώσεων.

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

  1. Για να αποθηκεύσετε τη ροή δεδομένων σας στο Studio, επιλέξτε Αρχεία, κατόπιν επιλέξτε Αποθήκευση ροής Wrangler δεδομένων.
  2. Για να τερματίσετε την παρουσία του Data Wrangler, στο Studio, επιλέξτε Τρέχουσες παρουσίες και πυρήνες.
  3. Κάτω από ΕΦΑΡΜΟΓΕΣ ΕΚΤΕΛΕΣΗΣ, επιλέξτε το εικονίδιο τερματισμού λειτουργίας δίπλα στην εφαρμογή Sagemaker-data-wrangler-1.0.
  4. Επιλέξτε Κλείσε όλα για να επιβεβαιώσετε.

Το Data Wrangler εκτελείται σε ένα στιγμιότυπο ml.m5.4x. Αυτή η περίπτωση εξαφανίζεται από ΕΚΔΗΛΩΣΕΙΣ ΠΕΡΙΠΤΩΣΕΩΝ όταν τερματίζετε την εφαρμογή Data Wrangler.

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

Συμπέρασμα

Σε αυτήν την ανάρτηση, δείξαμε πώς μπορείτε να χρησιμοποιήσετε προσαρμοσμένους μετασχηματισμούς στο Data Wrangler. Χρησιμοποιήσαμε τις βιβλιοθήκες και το πλαίσιο μέσα στο κοντέινερ Data Wrangler για να επεκτείνουμε τις ενσωματωμένες δυνατότητες μετασχηματισμού δεδομένων. Τα παραδείγματα σε αυτήν την ανάρτηση αντιπροσωπεύουν ένα υποσύνολο των πλαισίων που χρησιμοποιούνται. Οι μετασχηματισμοί στη ροή δεδομένων Wrangler μπορούν τώρα να κλιμακωθούν σε μια διοχέτευση για DataOps.

Για να μάθετε περισσότερα σχετικά με τη χρήση ροών δεδομένων με το Data Wrangler, ανατρέξτε στο Δημιουργήστε και χρησιμοποιήστε μια ροή δεδομένων Wrangler και Τιμολόγηση του Amazon SageMaker. Για να ξεκινήσετε με το Data Wrangler, βλ Προετοιμάστε τα δεδομένα ML με το Amazon SageMaker Data Wrangler. Για να μάθετε περισσότερα σχετικά με το Autopilot και το AutoML στο SageMaker, επισκεφθείτε Αυτοματοποιήστε την ανάπτυξη μοντέλων με το Amazon SageMaker Autopilot.


Σχετικά με τους συγγραφείς

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Meenakshisundaram Thandavarayan είναι Ανώτερος ειδικός AI/ML με AWS. Βοηθά στρατηγικούς λογαριασμούς υψηλής τεχνολογίας στο ταξίδι τους σε AI και ML. Είναι πολύ παθιασμένος με την τεχνητή νοημοσύνη που βασίζεται σε δεδομένα.

 Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Sovik Kumar Nath είναι ένας αρχιτέκτονας λύσεων AI/ML με AWS. Έχει μεγάλη εμπειρία σε ολοκληρωμένα σχέδια και λύσεις μηχανικής μάθησης. επιχειρηματικές αναλύσεις σε οικονομικά, επιχειρησιακά και μάρκετινγκ. φροντίδα υγείας; εφοδιαστική αλυσίδα; και IoT. Εκτός δουλειάς, ο Sovik του αρέσει να ταξιδεύει και να βλέπει ταινίες.

Συγγραφή προσαρμοσμένων μετασχηματισμών στο Amazon SageMaker Data Wrangler χρησιμοποιώντας NLTK και SciPy PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Υπηρέτρια είναι Μηχανικός Ανάπτυξης Λογισμικού στο Amazon SageMaker. Είναι παθιασμένη με το να βοηθά τους πελάτες να προετοιμάσουν τα δεδομένα τους στο DataWrangler και να κατασκευάζει κατανεμημένα συστήματα μηχανικής εκμάθησης. Στον ελεύθερο χρόνο της, η Abigail απολαμβάνει τα ταξίδια, την πεζοπορία, το σκι και το ψήσιμο.

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

Περισσότερα από Μηχανική εκμάθηση AWS