Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker

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

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

Τα Synthetic Data χρησιμοποιούνται σε εργαστηριακά περιβάλλοντα για πάνω από δύο δεκαετίες; η αγορά έχει στοιχεία χρησιμότητας που επιταχύνουν την υιοθέτησή τους στον εμπορικό και δημόσιο τομέα. Gartner προβλέπει ότι έως το 2024, το 60 τοις εκατό των δεδομένων που χρησιμοποιούνται για την ανάπτυξη λύσεων ML και αναλυτικών στοιχείων θα δημιουργούνται συνθετικά και ότι η χρήση συνθετικών δεδομένων θα συνεχίσει να αυξάνεται σημαντικά.

The Financial Conduct Authority, μια ρυθμιστική αρχή του Ηνωμένου Βασιλείου, αναγνωρίζει ότι «Η πρόσβαση στα δεδομένα είναι ο καταλύτης για την καινοτομία και τα συνθετικά οικονομικά δεδομένα θα μπορούσαν να διαδραματίσουν ρόλο στην υποστήριξη της καινοτομίας και να δώσουν τη δυνατότητα στους νεοεισερχόμενους να αναπτύξουν, να δοκιμάσουν και να αποδείξουν την αξία των νέων λύσεων».

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

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

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

Επισκόπηση της λύσης

Ο στόχος αυτού του σεμιναρίου είναι να συνθέσει την κατηγορία μειοψηφίας ενός εξαιρετικά μη ισορροπημένου συνόλου δεδομένων απάτης πιστωτικών καρτών χρησιμοποιώντας ένα βελτιστοποιημένο Generative Adversarial Network (GAN) που ονομάζεται WGAN-GP να μάθει μοτίβα και στατιστικές ιδιότητες των αρχικών δεδομένων και στη συνέχεια να δημιουργήσει ατελείωτα δείγματα συνθετικών δεδομένων που μοιάζουν με τα αρχικά δεδομένα. Αυτή η διαδικασία μπορεί επίσης να χρησιμοποιηθεί για τη βελτίωση των αρχικών δεδομένων με τη δειγματοληψία σπάνιων γεγονότων όπως η απάτη ή για τη δημιουργία περιπτώσεων αιχμής που δεν υπάρχουν στο πρωτότυπο.

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

Χρησιμοποιούμε υπηρεσίες AWS, συμπεριλαμβανομένων των Amazon SageMaker και Amazon S3, οι οποίες επιβαρύνουν το κόστος χρήσης πόρων cloud.

Ρυθμίστε το περιβάλλον ανάπτυξης

Το SageMaker παρέχει μια διαχειριζόμενη παρουσία φορητού υπολογιστή Jupyter για κατασκευή, εκπαίδευση και ανάπτυξη μοντέλων.

Προαπαιτούμενα:

Πρέπει να έχετε λογαριασμό AWS για να εκτελέσετε το SageMaker. Μπορείς να πάρεις ξεκίνησε με το SageMaker και δοκιμάστε πρακτικά σεμινάρια.

Για οδηγίες σχετικά με τη ρύθμιση του περιβάλλοντος εργασίας του Jupyter Notebook, βλ Ξεκινήστε με τις περιπτώσεις φορητών υπολογιστών Amazon SageMaker.

Βήμα 1: Ρυθμίστε την παρουσία του Amazon SageMaker

  1. Συνδεθείτε στην κονσόλα AWS και αναζητήστε "SageMaker".
  2. Αγορά στούντιο.
  3. Αγορά Υποδείγματα σημειωματάριου στην αριστερή γραμμή και επιλέξτε Δημιουργία παρουσίας σημειωματάριου.
  4. Από την επόμενη σελίδα (όπως φαίνεται στην παρακάτω εικόνα), επιλέξτε τις διαμορφώσεις της εικονικής μηχανής (VM) σύμφωνα με τις ανάγκες σας και επιλέξτε Δημιουργία παρουσίας σημειωματάριου. Λάβετε υπόψη ότι χρησιμοποιήσαμε ένα VM βελτιστοποιημένο για ML χωρίς GPU και 5 GB δεδομένων, ml.t3.medium που εκτελούσε έναν πυρήνα Amazon Linux 2 και Jupyter Lab 3.
    Δημιουργία παρουσίας σημειωματάριου
  5. Ένα παράδειγμα σημειωματάριου θα είναι έτοιμο για χρήση μέσα σε λίγα λεπτά.
  6. Αγορά Ανοίξτε το JupyterLab για την έναρξη.
    Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
  7. Τώρα που έχουμε ένα JupyterLab με τις απαιτούμενες προδιαγραφές μας, θα εγκαταστήσουμε τη συνθετική βιβλιοθήκη.
pip install ydata-synthetic

Βήμα 2: Κατεβάστε ή εξαγάγετε το πραγματικό σύνολο δεδομένων για να δημιουργήσετε συνθετικά δεδομένα

Κατεβάστε τα δεδομένα αναφοράς από το Kaggle είτε χειροκίνητα, όπως κάνουμε εδώ, είτε μέσω προγραμματισμού μέσω του Kaggle API εάν έχετε λογαριασμό Kaggle. Εάν εξερευνήσετε αυτό το σύνολο δεδομένων, θα παρατηρήσετε ότι η κλάση "απάτη" περιέχει πολύ λιγότερα δεδομένα από την κατηγορία "μη απάτη".

Εάν χρησιμοποιείτε αυτά τα δεδομένα απευθείας για προβλέψεις μηχανικής εκμάθησης, τα μοντέλα μπορεί πάντα να μαθαίνουν να προβλέπουν "όχι απάτη". Ένα μοντέλο θα έχει εύκολα μεγαλύτερη ακρίβεια σε περιπτώσεις μη απάτης, καθώς οι περιπτώσεις απάτης είναι σπάνιες. Ωστόσο, δεδομένου ότι ο εντοπισμός των περιπτώσεων απάτης είναι ο στόχος μας σε αυτήν την άσκηση, θα ενισχύσουμε τους αριθμούς κατηγορίας απάτης με συνθετικά δεδομένα που βασίζονται στα πραγματικά δεδομένα.

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

Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Αυτό το σύνολο δεδομένων είναι 144 MB

Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

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

import pandas as pd
data = pd.read_csv('./data/creditcard.csv')

Τα δεδομένα ανίχνευσης απάτης έχουν ορισμένα χαρακτηριστικά, και συγκεκριμένα:

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

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

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

Ας συνθέσουμε το νέο σύνολο δεδομένων απάτης.

Βήμα 3: Εκπαιδεύστε τα συνθεσάιζερ και δημιουργήστε το μοντέλο

Εφόσον έχετε τα δεδομένα άμεσα διαθέσιμα στο SageMaker, ήρθε η ώρα να θέσετε σε λειτουργία τα συνθετικά μας μοντέλα GAN.

Ένα παραγωγικό ανταγωνιστικό δίκτυο (GAN) έχει δύο μέρη:

Η γεννήτρια μαθαίνει να δημιουργεί εύλογα δεδομένα. Τα παραγόμενα στιγμιότυπα γίνονται αρνητικά παραδείγματα εκπαίδευσης για το άτομο που κάνει διάκριση.

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

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

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

Βήμα 4: Δείγμα συνθετικών δεδομένων από το συνθεσάιζερ

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

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

Έχουμε την επιλογή να κάνουμε δειγματοληψία σειρών που περιέχουν δόλιες συναλλαγές—οι οποίες, όταν συνδυαστούν με τα μη συνθετικά δεδομένα απάτης, θα οδηγήσουν σε ίση κατανομή των κατηγοριών "απάτη" και "μη απάτη". Το πρωτότυπο Δεδομένα Kaggle περιείχε 492 απάτες από 284,807 συναλλαγές, επομένως δημιουργούμε το ίδιο δείγμα από το synthesizer.

# use the same shape as the real data
synthetic_fraud = synthesizer.sample(492)

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

Βήμα 5: Συγκρίνετε και αξιολογήστε τα συνθετικά δεδομένα έναντι των πραγματικών δεδομένων

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

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

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

Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Βήμα 6: Καθαρίστε

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

Συμπέρασμα

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

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

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

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


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

Αυξήστε τις συναλλαγές απάτης χρησιμοποιώντας συνθετικά δεδομένα στο Amazon SageMaker PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Φάρις Χαντάντ είναι ο επικεφαλής Data & Insights στην ομάδα Strategic Pursuits της AABG. Βοηθά τις επιχειρήσεις να κατευθύνονται με επιτυχία στα δεδομένα.

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

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