Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Προετοιμάστε τα δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler

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

Για προσαρμοσμένες απεικονίσεις και μετασχηματισμούς, το Data Wrangler παρέχει τώρα παραδείγματα αποσπασμάτων κώδικα για κοινούς τύπους απεικονίσεων και μετασχηματισμών. Σε αυτήν την ανάρτηση, δείχνουμε πώς να χρησιμοποιείτε αυτά τα αποσπάσματα κώδικα για γρήγορη εκκίνηση του EDA στο Data Wrangler.

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

Τη στιγμή της σύνταξης αυτού του άρθρου, μπορείτε να εισαγάγετε σύνολα δεδομένων στο Data Wrangler από Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3), Αμαζόν Αθηνά, Amazon RedShift, Databricks και Snowflake. Για αυτήν την ανάρτηση, χρησιμοποιούμε το Amazon S3 για την αποθήκευση του Amazon 2014 σύνολο δεδομένων αξιολογήσεων. Το παρακάτω είναι ένα δείγμα του συνόλου δεδομένων:

{ "reviewerID": "A2SUAM1J3GNN3B", "asin": "0000013714", "reviewerName": "J. McDonald", "helpful": [2, 3], "reviewText": "I bought this for my husband who plays the piano. He is having a wonderful time playing these old hymns. The music is sometimes hard to read because we think the book was published for singing from more than playing from. Great purchase though!", "overall": 5.0, "summary": "Heavenly Highway Hymns", "unixReviewTime": 1252800000, "reviewTime": "09 13, 2009" } 

Σε αυτήν την ανάρτηση, εκτελούμε EDA χρησιμοποιώντας τρεις στήλες—asin, reviewTime, να overall—η οποία αντιστοιχίζεται στο αναγνωριστικό προϊόντος, την ημερομηνία ώρας ελέγχου και τη συνολική βαθμολογία αξιολόγησης, αντίστοιχα. Χρησιμοποιούμε αυτά τα δεδομένα για να απεικονίσουμε τη δυναμική για τον αριθμό των κριτικών ανά μήνες και χρόνια.

Χρήση παραδείγματος Code Snippet για EDA στο Data Wrangler

Για να ξεκινήσετε την εκτέλεση EDA στο Data Wrangler, ολοκληρώστε τα παρακάτω βήματα:

  1. Κατεβάστε το Σύνολο κριτικών ψηφιακής μουσικής JSON και ανεβάστε το στο Amazon S3.
    Το χρησιμοποιούμε ως ακατέργαστο σύνολο δεδομένων για το EDA.
  2. Ανοικτό Στούντιο Amazon SageMaker και δημιουργήστε μια νέα ροή δεδομένων Wrangler και εισαγάγετε το σύνολο δεδομένων από το Amazon S3.

    Αυτό το σύνολο δεδομένων έχει εννέα στήλες, αλλά χρησιμοποιούμε μόνο τρεις: asin, reviewTime, να overall. Πρέπει να ρίξουμε τις άλλες έξι στήλες.

  3. Δημιουργήστε έναν προσαρμοσμένο μετασχηματισμό και επιλέξτε Python (Pyspark).
  4. Ανάπτυξη Αναζήτηση αποσπασμάτων παραδειγμάτων Και επιλέξτε Απόθεση όλων των στηλών εκτός από αρκετές.
  5. Εισαγάγετε το παρεχόμενο απόσπασμα στον προσαρμοσμένο μετασχηματισμό σας και ακολουθήστε τις οδηγίες για να τροποποιήσετε τον κώδικα.
    # Specify the subset of columns to keep
    cols = ["asin", "reviewTime", "overall"] cols_to_drop = set(df.columns).difference(cols) df = df.drop(*cols_to_drop)

    Τώρα που έχουμε όλες τις στήλες που χρειαζόμαστε, ας φιλτράρουμε τα δεδομένα για να κρατάμε κριτικές μόνο μεταξύ 2000–2020.

  6. Χρησιμοποιήστε το Φιλτράρετε τη χρονική σήμανση εκτός εύρους απόσπασμα για την απόρριψη των δεδομένων πριν από το έτος 2000 και μετά το 2020:
    from pyspark.sql.functions import col
    from datetime import datetime # specify the start and the stop timestamp
    timestamp_start = datetime.strptime("2000-01-01 12:00:00", "%Y-%m-%d %H:%M:%S")
    timestamp_stop = datetime.strptime("2020-01-01 12:00:00", "%Y-%m-%d %H:%M:%S") df = df.filter(col("reviewTime").between(timestamp_start, timestamp_stop))

    Στη συνέχεια, εξάγουμε το έτος και τον μήνα από τη στήλη ReviewTime.

  7. Χρησιμοποιήστε το Προβολή ημερομηνίας/ώρας μεταμορφώνω.
  8. Για Εξαγωγή στηλών, επιλέξτε έτος και μήνας.

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

  9. Χρησιμοποιήστε το Υπολογίστε στατιστικά σε ομάδες απόσπασμα:
    # Table is available as variable `df`
    from pyspark.sql.functions import sum, avg, max, min, mean, count # Provide the list of columns defining groups
    groupby_cols = ["reviewTime_year", "reviewTime_month"] # Specify the map of aggregate function to the list of colums
    # aggregates to use: sum, avg, max, min, mean, count
    aggregate_map = {count: ["overall"]} all_aggregates = []
    for a, cols in aggregate_map.items(): all_aggregates += [a(col) for col in cols] df = df.groupBy(groupby_cols).agg(*all_aggregates)

  10. Μετονομάστε τη συνάθροιση του προηγούμενου βήματος από count(overall) προς την reviews_num Επιλέγοντας Διαχείριση στηλών και την Μετονομασία στήλης μεταμορφώνω.
    Τέλος, θέλουμε να δημιουργήσουμε έναν χάρτη θερμότητας για να οπτικοποιήσουμε τη διανομή των κριτικών ανά έτος και ανά μήνα.
  11. Στην καρτέλα ανάλυση, επιλέξτε Προσαρμοσμένη οπτικοποίηση.
  12. Ανάπτυξη Αναζήτηση για απόσπασμα Και επιλέξτε Heatmap στο αναπτυσσόμενο μενού.
  13. Εισαγάγετε το παρεχόμενο απόσπασμα στην προσαρμοσμένη οπτικοποίηση:
    # Table is available as variable `df`
    # Table is available as variable `df`
    import altair as alt # Takes first 1000 records of the Dataframe
    df = df.head(1000) chart = ( alt.Chart(df) .mark_rect() .encode( # Specify the column names for X and Y axis, # Both should have discrete values: ordinal (:O) or nominal (:N) x= "reviewTime_year:O", y="reviewTime_month:O", # Color can be both discrete (:O, :N) and quantitative (:Q) color="reviews_num:Q", ) .interactive()
    )

    Λαμβάνουμε την ακόλουθη οπτικοποίηση.

    Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
    Εάν θέλετε να βελτιώσετε περαιτέρω τον χάρτη θερμότητας, μπορείτε να κόψετε τα δεδομένα για να εμφανίζονται μόνο κριτικές πριν από το 2011. Είναι δύσκολο να εντοπιστούν στον χάρτη θερμότητας που μόλις δημιουργήσαμε λόγω του μεγάλου όγκου κριτικών από το 2012.

  14. Προσθέστε μία γραμμή κώδικα στην προσαρμοσμένη οπτικοποίηση:
    # Table is available as variable `df`
    import altair as alt df = df[df.reviewTime_year < 2011]
    # Takes first 1000 records of the Dataframe
    df = df.head(1000) chart = ( alt.Chart(df) .mark_rect() .encode( # Specify the column names for X and Y axis, # Both should have discrete values: ordinal (:O) or nominal (:N) x= "reviewTime_year:O", y="reviewTime_month:O", # Color can be both discrete (:O, :N) and quantitative (:Q) color="reviews_num:Q", ) .interactive()
    )

Παίρνουμε τον παρακάτω θερμικό χάρτη.

Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Τώρα ο χάρτης θερμότητας αντικατοπτρίζει πιο ορατά τις ανασκοπήσεις πριν από το 2011: μπορούμε να παρατηρήσουμε τις εποχιακές επιπτώσεις (το τέλος του έτους φέρνει περισσότερες αγορές και επομένως περισσότερες κριτικές) και μπορούμε να εντοπίσουμε ανώμαλους μήνες, όπως τον Οκτώβριο του 2003 και τον Μάρτιο του 2005. Αξίζει να το διερευνήσουμε περαιτέρω για τον προσδιορισμό της αιτίας αυτών των ανωμαλιών.

Συμπέρασμα

Το Data Wrangler είναι ένα ειδικά σχεδιασμένο εργαλείο συγκέντρωσης και προετοιμασίας δεδομένων για ML. Σε αυτήν την ανάρτηση, δείξαμε πώς να εκτελείτε EDA και να μεταμορφώνετε γρήγορα τα δεδομένα σας χρησιμοποιώντας αποσπάσματα κώδικα που παρέχονται από το Data Wrangler. Απλώς πρέπει να βρείτε ένα απόσπασμα, να εισαγάγετε τον κώδικα και να προσαρμόσετε τις παραμέτρους ώστε να ταιριάζουν με το σύνολο δεδομένων σας. Μπορείτε να συνεχίσετε να επαναλαμβάνετε το σενάριό σας για να δημιουργήσετε πιο σύνθετες απεικονίσεις και μετασχηματισμούς.
Για να μάθετε περισσότερα σχετικά με το Data Wrangler, ανατρέξτε στο Δημιουργήστε και χρησιμοποιήστε μια ροή δεδομένων Wrangler.


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

Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Νικήτα Ίβκιν είναι Εφαρμοσμένος Επιστήμονας, Amazon SageMaker Data Wrangler.

Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Haider Naqvi είναι αρχιτέκτονας λύσεων στην AWS. Διαθέτει εκτενή εμπειρία ανάπτυξης λογισμικού και αρχιτεκτονικής επιχειρήσεων. Επικεντρώνεται στο να δίνει τη δυνατότητα στους πελάτες να επιτύχουν επιχειρηματικά αποτελέσματα με το AWS. Έχει έδρα εκτός Νέας Υόρκης.

Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Harish Rajagopalan είναι Senior Solutions Architect στο Amazon Web Services. Ο Harish συνεργάζεται με εταιρικούς πελάτες και τους βοηθά στο ταξίδι τους στο cloud.

Προετοιμάστε δεδομένα πιο γρήγορα με αποσπάσματα κώδικα PySpark και Altair στο Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Τζέιμς Γου είναι Senior AI/ML Specialist SA στην AWS. Συνεργάζεται με πελάτες για να επιταχύνει το ταξίδι τους στο cloud και να παρακολουθήσει γρήγορα την πραγματοποίηση της επιχειρηματικής τους αξίας. Επιπλέον, ο James είναι επίσης παθιασμένος με την ανάπτυξη και την κλιμάκωση μεγάλων λύσεων AI/ML σε διάφορους τομείς. Πριν ενταχθεί στην AWS, ηγήθηκε μιας πολυεπιστημονικής ομάδας τεχνολογίας καινοτομίας με μηχανικούς ML και προγραμματιστές λογισμικού για μια κορυφαία παγκόσμια εταιρεία στον κλάδο της αγοράς και της διαφήμισης.

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

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