Questo post è stato scritto in collaborazione con Thatcher Thornberry di bpx energy.
La classificazione di facies è il processo di segmentazione delle formazioni litologiche dai dati geologici nella posizione del pozzo. Durante la perforazione, si ottengono registri wireline, che hanno informazioni geologiche dipendenti dalla profondità. I geologi vengono impiegati per analizzare questi dati di registro e determinare gli intervalli di profondità per potenziali facies di interesse dai diversi tipi di dati di registro. La classificazione accurata di queste regioni è fondamentale per i processi di perforazione che seguono.
La classificazione di facies che utilizza l'intelligenza artificiale e l'apprendimento automatico (ML) è diventata un'area di indagine sempre più popolare per molte major petrolifere. Molti data scientist e analisti aziendali presso grandi compagnie petrolifere non dispongono delle competenze necessarie per eseguire esperimenti ML avanzati su attività importanti come la classificazione facies. Per risolvere questo problema, ti mostriamo come preparare e addestrare facilmente un modello di classificazione ML best-in-class su questo problema.
In questo post, rivolto principalmente a coloro che stanno già utilizzando Snowflake, spieghiamo come importare sia i dati di addestramento che quelli di convalida per un'attività di classificazione facies da Fiocco di neve ai miglioramenti Tela di Amazon SageMaker e successivamente addestrare il modello utilizzando un modello di previsione di categoria 3+.
Panoramica della soluzione
La nostra soluzione consiste nei seguenti passaggi:
- Carica i dati facies CSV dal tuo computer locale su Snowflake. Per questo post, utilizziamo i dati di quanto segue repository GitHub open-source.
- Configurazione Gestione dell'identità e dell'accesso di AWS (IAM) per Snowflake e creare un'integrazione Snowflake.
- Crea un segreto per le credenziali di Snowflake (facoltativo, ma consigliato).
- Importa Snowflake direttamente in Canvas.
- Costruisci un modello di classificazione facies.
- Analizzare il modello.
- Esegui previsioni batch e singole utilizzando il modello multiclasse.
- Condividi il modello addestrato su Amazon Sage Maker Studio.
Prerequisiti
I prerequisiti per questo post includono quanto segue:
Carica i dati facies CSV su Snowflake
In questa sezione, prendiamo due set di dati open source e li carichiamo direttamente dal nostro computer locale in un database Snowflake. Da lì, abbiamo impostato un livello di integrazione tra Snowflake e Canvas.
- Scarica la training_data.csv ed validation_data_nofacies.csv file sul tuo computer locale. Prendi nota di dove li hai salvati.
- Assicurandoti di avere le credenziali Snowflake corrette e di aver installato l'app desktop Snowflake CLI, puoi eseguire la federazione. Per ulteriori informazioni, fai riferimento a Accedi a SnowSQL.
- Seleziona il magazzino Snowflake appropriato in cui lavorare, che nel nostro caso lo è
COMPUTE_WH
:
- Scegli un database da utilizzare per il resto della procedura dettagliata:
- Crea un formato di file con nome che descriva una serie di dati in sequenza a cui accedere o caricare nelle tabelle Snowflake.
Questo può essere eseguito nella CLI Snowflake o in un foglio di lavoro Snowflake sull'applicazione web. Per questo post, eseguiamo una query SnowSQL nell'applicazione web. Vedere Iniziare con i fogli di lavoro per istruzioni su come creare un foglio di lavoro nell'applicazione web Snowflake.
- Crea una tabella in Snowflake utilizzando l'istruzione CREATE.
L'istruzione seguente crea una nuova tabella nello schema corrente o specificato (o sostituisce una tabella esistente).
È importante che i tipi di dati e l'ordine in cui appaiono siano corretti e allineati con quanto trovato nei file CSV che abbiamo precedentemente scaricato. Se sono incoerenti, incontreremo problemi in seguito quando proveremo a copiare i dati.
- Fai lo stesso per il database di convalida.
Si noti che lo schema è leggermente diverso dai dati di addestramento. Ancora una volta, assicurati che i tipi di dati e gli ordini di colonne o funzioni siano corretti.
- Carica il file di dati CSV dal tuo sistema locale nell'ambiente di staging di Snowflake:
- Di seguito è riportata la sintassi dell'istruzione per il sistema operativo Windows:
- Di seguito è riportata la sintassi dell'istruzione per Mac OS:
Lo screenshot seguente mostra un comando e un output di esempio dall'interfaccia a riga di comando di SnowSQL.
- Copia i dati nella tabella Snowflake di destinazione.
Qui, carichiamo i dati CSV di addestramento nella tabella di destinazione, che abbiamo creato in precedenza. Tieni presente che devi eseguire questa operazione sia per i file CSV di addestramento che per quelli di convalida, copiandoli rispettivamente nelle tabelle di addestramento e convalida.
- Verifica che i dati siano stati caricati nella tabella di destinazione eseguendo una query SELECT (puoi farlo sia per i dati di addestramento che per quelli di convalida):
Configura i ruoli Snowflake IAM e crea l'integrazione Snowflake
Come prerequisito per questa sezione, segui la documentazione ufficiale di Snowflake su come configure un'integrazione dello storage Snowflake per accedere ad Amazon S3.
Recupera l'utente IAM per il tuo account Snowflake
Dopo aver configurato correttamente l'integrazione dello storage Snowflake, esegui quanto segue DESCRIBE INTEGRATION
comando per recuperare l'ARN per l'utente IAM che è stato creato automaticamente per il tuo account Snowflake:
Registrare i seguenti valori dall'output:
- STORAGE_AWS_IAM_USER_ARN – L'utente IAM creato per il tuo account Snowflake
- STORAGE_AWS_EXTERNAL_ID – L'ID esterno necessario per stabilire una relazione di fiducia
Aggiorna la policy di attendibilità del ruolo IAM
Ora aggiorniamo la policy di fiducia:
- Sulla console IAM, scegli Ruoli nel pannello di navigazione.
- Scegli il ruolo che hai creato.
- Sulla rapporto di fiducia scheda, scegliere Modifica relazione di fiducia.
- Modificare il documento di policy come mostrato nel codice seguente con i valori di output DESC STORAGE INTEGRATION registrati nel passaggio precedente.
- Scegli Aggiorna la politica di fiducia.
Crea uno stage esterno in Snowflake
Utilizziamo una fase esterna all'interno di Snowflake per caricare i dati da un bucket S3 nel tuo account in Snowflake. In questo passaggio creiamo una fase esterna (Amazon S3) che fa riferimento all'integrazione dello storage che hai creato. Per ulteriori informazioni, vedere Creazione di uno stage S3.
Ciò richiede un ruolo che abbia il CREATE_STAGE
privilegio per lo schema e il privilegio USAGE sull'integrazione dello storage. Puoi concedere questi privilegi al ruolo come mostrato nel codice nel passaggio successivo.
Crea il palco usando il CREATE_STAGE
comando con segnaposto per stage esterno e bucket S3 e prefisso. Lo stage fa riferimento anche a un oggetto formato file denominato chiamato my_csv_format
:
Crea un segreto per le credenziali di Snowflake
Canvas consente di utilizzare l'ARN di un AWS Secrets Manager secret o un nome account, nome utente e password Snowflake per accedere a Snowflake. Se intendi utilizzare l'opzione nome account, nome utente e password di Snowflake, passa alla sezione successiva, che riguarda l'aggiunta dell'origine dati.
Per creare manualmente un segreto di Secrets Manager, completa i seguenti passaggi:
- Nella console di Secrets Manager, selezionare Memorizza un nuovo segreto.
- Nel Seleziona il tipo segretoSelezionare Altri tipi di segreti.
- Specifica i dettagli del tuo segreto come coppie chiave-valore.
I nomi della chiave fanno distinzione tra maiuscole e minuscole e devono essere minuscoli.
Se preferisci, puoi utilizzare l'opzione testo in chiaro e inserire i valori segreti come JSON:
- Scegli Avanti.
- Nel Nome segreto, aggiungi il prefisso
AmazonSageMaker
(ad esempio, il nostro segreto èAmazonSageMaker-CanvasSnowflakeCreds
). - Nel tag sezione, aggiungi un tag con la chiave SageMaker e il valore true.
- Scegli Avanti.
- Il resto dei campi è facoltativo; scegliere Avanti finché non avrai la possibilità di scegliere Negozio per conservare il segreto.
- Dopo aver archiviato il segreto, si torna alla console Secrets Manager.
- Scegli il segreto appena creato, quindi recupera l'ARN del segreto.
- Memorizzalo nel tuo editor di testo preferito per utilizzarlo in seguito quando crei l'origine dati Canvas.
Importa Snowflake direttamente in Canvas
Per importare il tuo set di dati facies direttamente in Canvas, completa i seguenti passaggi:
- Sulla console di SageMaker, scegli Tela di Amazon SageMaker nel pannello di navigazione.
- Scegli il tuo profilo utente e scegli Apri tela.
- Nella pagina di destinazione di Canvas, scegli Dataset nel pannello di navigazione.
- Scegli Importare.
- Fare clic su Fiocco di neve nell'immagine sottostante e poi immediatamente "Aggiungi connessione".
- Immettere l'ARN del segreto Snowflake creato in precedenza, il nome dell'integrazione dello spazio di archiviazione (
SAGEMAKER_CANVAS_INTEGRATION
) e un nome di connessione univoco di tua scelta. - Scegli Aggiungi connessione.
Se tutte le voci sono valide, dovresti vedere tutti i database associati alla connessione nel riquadro di navigazione (vedi l'esempio seguente per NICK_FACIES
).
- Scegliere il
TRAINING_DATA
tabella, quindi scegli Anteprima del set di dati.
Se sei soddisfatto dei dati, puoi modificare l'SQL personalizzato nel visualizzatore di dati.
- Scegli Modifica in SQL.
- Eseguire il seguente comando SQL prima dell'importazione in Canvas. (Ciò presuppone che il database sia chiamato
NICK_FACIES
. Sostituisci questo valore con il nome del tuo database.)
Qualcosa di simile allo screenshot seguente dovrebbe apparire nel file Anteprima di importazione .
- Se sei soddisfatto dell'anteprima, scegli Importa le date.
- Scegli un nome di dati appropriato, assicurandoti che sia univoco e con meno di 32 caratteri.
- Utilizzare il seguente comando per importare il set di dati di convalida, utilizzando lo stesso metodo di prima:
Costruisci un modello di classificazione facies
Per creare il tuo modello di classificazione facies, completa i seguenti passaggi:
- Scegli Modelli nel riquadro di navigazione, quindi scegli Nuovo modello.
- Dai al tuo modello un nome adatto.
- Sulla Seleziona scheda, scegli il set di dati di addestramento importato di recente, quindi scegli Seleziona dataset.
- Sulla Costruire scheda, rilasciare il file
WELL_NAME
colonna.
Lo facciamo perché i nomi dei pozzi stessi non sono informazioni utili per il modello ML. Sono semplicemente nomi arbitrari che troviamo utili per distinguere tra i pozzi stessi. Il nome che diamo a un particolare pozzo è irrilevante per il modello ML.
- Scegli FACIES come colonna di destinazione.
- Lasciare Tipo di modello as Previsione di categoria 3+.
- Convalida i dati.
- Scegli Costruzione standard.
La tua pagina dovrebbe essere simile allo screenshot seguente poco prima di creare il tuo modello.
Dopo aver scelto Costruzione standard, il modello entra nella fase di analisi. Ti viene fornito un tempo di compilazione previsto. Ora puoi chiudere questa finestra, uscire da Canvas (per evitare addebiti) e tornare a Canvas in un secondo momento.
Analizzare il modello di classificazione facies
Per analizzare il modello, completare i seguenti passaggi:
- Federa di nuovo in Canvas.
- Individua il modello creato in precedenza, scegli Visualizza, Quindi scegliere Analizzi i dati.
- Sulla Panoramica scheda, puoi vedere l'impatto che le singole funzionalità stanno avendo sull'output del modello.
- Nel riquadro di destra è possibile visualizzare l'impatto che una determinata caratteristica (asse X) sta avendo sulla previsione di ciascuna classe di facies (asse Y).
Queste visualizzazioni cambieranno di conseguenza a seconda della funzione selezionata. Ti invitiamo a esplorare questa pagina passando in rassegna tutte le 9 classi e le 10 funzionalità.
- Sulla Punteggio scheda, possiamo vedere la classificazione facies prevista rispetto a quella effettiva.
- Scegli Metriche avanzate per visualizzare i punteggi F1, l'accuratezza media, la precisione, il richiamo e l'AUC.
- Ancora una volta, incoraggiamo la visualizzazione di tutte le diverse classi.
- Scegli Scaricare per scaricare un'immagine sul tuo computer locale.
Nell'immagine seguente, possiamo vedere una serie di diverse metriche avanzate, come il punteggio F1. Nell'analisi statistica, il punteggio F1 trasmette l'equilibrio tra la precisione e il richiamo di un modello di classificazione e viene calcolato utilizzando la seguente equazione: 2*((Precision * Recall)/ (Precision + Recall))
.
Esegui previsioni batch e singole utilizzando il modello di classificazione facies multiclasse
Per eseguire una previsione, completare i seguenti passaggi:
- Scegli Pronostico unico per modificare i valori delle caratteristiche in base alle esigenze e ottenere una classificazione facies restituita sulla destra della pagina.
È quindi possibile copiare l'immagine del grafico di previsione negli Appunti e anche scaricare le previsioni in un file CSV.
- Scegli Previsione in lotti e quindi scegliere Seleziona dataset per scegliere il set di dati di convalida importato in precedenza.
- Scegli Genera previsioni.
Sei reindirizzato al Prevedere pagina, dove il Stato dei servizi leggerà Generazione di previsioni per pochi secondi.
Dopo che le previsioni sono state restituite, puoi visualizzare in anteprima, scaricare o eliminare le previsioni scegliendo il menu delle opzioni (tre punti verticali) accanto alle previsioni.
Di seguito è riportato un esempio di anteprima delle previsioni.
Condividi un modello addestrato in Studio
Ora puoi condividere l'ultima versione del modello con un altro utente di Studio. Ciò consente ai data scientist di rivedere il modello in dettaglio, testarlo, apportare eventuali modifiche che potrebbero migliorare la precisione e condividere con te il modello aggiornato.
La possibilità di condividere il tuo lavoro con un utente più tecnico all'interno di Studio è una caratteristica chiave di Canvas, data la distinzione fondamentale tra i flussi di lavoro delle persone ML. Si noti qui la forte attenzione alla collaborazione tra team interfunzionali con diverse capacità tecniche.
- Scegli Condividi condividere il modello
- Scegli quale versione del modello condividere.
- Inserisci l'utente di Studio con cui condividere il modello.
- Aggiungi una nota facoltativa.
- Scegli Condividi.
Conclusione
In questo post, abbiamo mostrato come con pochi clic in Amazon SageMaker Canvas puoi preparare e importare i tuoi dati da Snowflake, unire i tuoi set di dati, analizzare l'accuratezza stimata, verificare quali colonne hanno un impatto, addestrare il modello con le migliori prestazioni e generare nuovi individui o previsioni batch. Siamo entusiasti di ricevere il tuo feedback e aiutarti a risolvere ancora più problemi aziendali con il machine learning. Per costruire i tuoi modelli, vedi Iniziare con l'utilizzo di Amazon SageMaker Canvas.
Informazioni sugli autori
Nick McCarthy è un Machine Learning Engineer nel team AWS Professional Services. Ha lavorato con clienti AWS in vari settori tra cui sanità, finanza, sport, telecomunicazioni ed energia per accelerare i loro risultati aziendali attraverso l'uso di AI/ML. Lavorando con il team di data science di bpx, Nick ha recentemente finito di creare la piattaforma di machine learning di bpx su Amazon SageMaker.
Thatcher Thornberry è un Machine Learning Engineer presso bpx Energy. Supporta i data scientist di bpx sviluppando e gestendo la piattaforma di data science principale dell'azienda in Amazon SageMaker. Nel tempo libero ama hackerare progetti personali di codifica e trascorrere del tempo all'aperto con sua moglie.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoAiStream. Intelligenza dei dati Web3. Conoscenza amplificata. Accedi qui.
- Coniare il futuro con Adryenn Ashley. Accedi qui.
- Acquista e vendi azioni in società PRE-IPO con PREIPO®. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/prepare-training-and-validation-dataset-for-facies-classification-using-snowflake-integration-and-train-using-amazon-sagemaker-canvas/
- :ha
- :È
- :Dove
- $ SU
- 10
- 100
- 11
- 12
- 14
- 17
- 50
- 7
- 8
- 9
- a
- abilità
- capacità
- accelerare
- accesso
- di conseguenza
- Il mio account
- precisione
- con precisione
- operanti in
- Action
- presenti
- aggiungere
- l'aggiunta di
- indirizzo
- Avanzate
- ancora
- AI
- AI / ML
- Mirato
- allineare
- Tutti
- consentire
- consente
- già
- anche
- Amazon
- Amazon Sage Maker
- Tela di Amazon SageMaker
- Amazon Web Services
- an
- .
- Gli analisti
- analizzare
- ed
- Un altro
- in qualsiasi
- App
- apparire
- Applicazioni
- opportuno
- SONO
- RISERVATA
- AS
- associato
- At
- automaticamente
- media
- evitare
- AWS
- Servizi professionali AWS
- Axis
- precedente
- Equilibrio
- BE
- perché
- diventare
- stato
- prima
- sotto
- MIGLIORE
- fra
- entrambi
- costruire
- Costruzione
- affari
- ma
- by
- detto
- Materiale
- tela
- Custodie
- Categoria
- il cambiamento
- Modifiche
- caratteri
- oneri
- Grafico
- Scegli
- la scelta
- classe
- classi
- classificazione
- clienti
- Chiudi
- codice
- codifica
- collaborazione
- Colonna
- colonne
- Aziende
- Società
- completamento di una
- condizione
- veloce
- consolle
- copiatura
- Nucleo
- correggere
- copre
- creare
- creato
- crea
- Credenziali
- critico
- team interfunzionali
- Corrente
- costume
- dati
- scienza dei dati
- Banca Dati
- banche dati
- dataset
- Dipendente
- schierato
- profondità
- descrivere
- tavolo
- dettaglio
- dettagli
- Determinare
- in via di sviluppo
- diverso
- A differenza
- direttamente
- distinguere
- do
- documento
- documentazione
- Dont
- scaricare
- Cadere
- durante
- ogni
- In precedenza
- facilmente
- editore
- effetto
- o
- incoraggiare
- energia
- ingegnere
- garantire
- assicurando
- entrare
- entra
- Ambiente
- stabilire
- stimato
- Etere (ETH)
- Anche
- esempio
- eccitato
- esistente
- previsto
- esperimenti
- Spiegare
- esplora
- esterno
- f1
- caratteristica
- Caratteristiche
- feedback
- pochi
- meno
- campi
- Compila il
- File
- finanziare
- Trovare
- Focus
- seguire
- i seguenti
- Nel
- formato
- formazione
- essere trovato
- Gratis
- da
- generare
- ottenere
- GitHub
- Dare
- dato
- concedere
- incidere
- contento
- Avere
- avendo
- he
- assistenza sanitaria
- sentire
- Aiuto
- qui
- il suo
- Come
- Tutorial
- HTML
- http
- HTTPS
- IAM
- ID
- Identità
- if
- Immagine
- subito
- Impact
- di forte impatto
- importare
- importante
- importazione
- competenze
- in
- includere
- Compreso
- sempre più
- individuale
- industrie
- informazioni
- installato
- istruzioni
- integrazione
- intendono
- interesse
- ai miglioramenti
- indagine
- sicurezza
- IT
- join
- jpg
- json
- ad appena
- Le
- atterraggio
- pagina di destinazione
- grandi
- dopo
- con i più recenti
- strato
- apprendimento
- piccolo
- caricare
- Caricamento in corso
- locale
- località
- ceppo
- Lunghi
- Guarda
- ama
- Mac
- macchina
- machine learning
- Majors
- make
- direttore
- manualmente
- molti
- Maggio..
- Menu
- semplicemente
- metodo
- Metrica
- ML
- modello
- modelli
- modificare
- Scopri di più
- devono obbligatoriamente:
- Nome
- Detto
- nomi
- Navigazione
- necessaria
- di applicazione
- New
- GENERAZIONE
- Nota
- adesso
- numero
- oggetto
- ottenuto
- of
- ufficiale
- Olio
- on
- open source
- Opzione
- Opzioni
- or
- minimo
- ordini
- OS
- nostro
- su
- risultati
- all'aperto
- produzione
- proprio
- P&E
- pagina
- coppie
- vetro
- particolare
- Password
- esecuzione
- cronologia
- plaintext
- piattaforma
- Platone
- Platone Data Intelligence
- PlatoneDati
- per favore
- politica
- Popolare
- Post
- potenziale
- Precisione
- previsto
- predizione
- Previsioni
- preferire
- preferito
- Preparare
- Anteprima
- precedente
- in precedenza
- principalmente
- Direttore
- privilegio
- privilegi
- Problema
- problemi
- processi
- i processi
- professionale
- Profilo
- progetti
- purché
- la percezione
- Leggi
- recentemente
- registrato
- Riferimenti
- regioni
- sostituire
- richiede
- REST
- ritorno
- recensioni
- destra
- Ruolo
- ruoli
- Correre
- running
- sagemaker
- stesso
- Scienze
- scienziati
- Punto
- secondo
- Segreto
- Sezione
- vedere
- Servizi
- set
- Condividi
- dovrebbero
- mostrare attraverso le sue creazioni
- ha mostrato
- mostrato
- Spettacoli
- simile
- singolo
- insieme di abilità
- banca dati dei fiocchi di neve
- soluzione
- RISOLVERE
- Fonte
- specificato
- spendere
- Sports
- SQL
- Stage
- messa in scena
- iniziato
- dichiarazione
- statistiche
- step
- Passi
- conservazione
- Tornare al suo account
- forte
- studio
- Successivamente
- Con successo
- tale
- adatto
- supporti
- sintassi
- sistema
- tavolo
- TAG
- Fai
- Target
- Task
- task
- team
- le squadre
- Consulenza
- telecomunicazioni
- test
- di
- che
- I
- loro
- Li
- si
- poi
- Là.
- Strumenti Bowman per analizzare le seguenti finiture:
- di
- questo
- quelli
- tre
- Attraverso
- tempo
- a
- Treni
- allenato
- Training
- vero
- Affidati ad
- prova
- seconda
- Digitare
- Tipi di
- unico
- Aggiornanento
- aggiornato
- URL
- Impiego
- uso
- Utente
- nome utente
- utilizzando
- convalida
- APPREZZIAMO
- Valori
- vario
- verificare
- versione
- verticale
- Visualizza
- visualizzazione
- visualizzare
- vs
- walkthrough
- Magazzino
- Prima
- we
- sito web
- applicazione web
- servizi web
- WELL
- Wells
- Che
- Che cosa è l'
- quando
- quale
- OMS
- moglie
- volere
- finestre
- con
- entro
- Lavora
- lavorato
- flussi di lavoro
- lavoro
- X
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro