Panoramica del machine learning - Amazon Redshift

Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dal 1º novembre 2025. Se desideri utilizzare le UDF Python, creale prima di tale data. Le UDF Python esistenti continueranno a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog.

Panoramica del machine learning

Con Amazon Redshift puoi sfruttare le funzionalità di machine learning per ottenere informazioni preziose dai dati. Questa panoramica sul machine learning (ML) mostra come esplorare, visualizzare e preparare i dati per l’addestramento e l’implementazione dei modelli ML. Nelle sezioni seguenti viene illustrato il processo di utilizzo di Amazon Redshift ML per realizzare il potenziale dei dati attraverso il machine learning.

Grazie ad Amazon Redshift ML, è possibile addestrare modelli di machine learning utilizzando istruzioni SQL e richiamarli nelle query SQL per la previsione.

Per scoprire come utilizzare Amazon Redshift ML, è possibile guardare il seguente video.

Per informazioni sui prerequisiti per configurare il cluster o il gruppo di lavoro serverless Redshift, le autorizzazioni e la proprietà per l’utilizzo di Amazon Redshift ML, consulta le sezioni seguenti. Queste sezioni descrivono anche il funzionamento semplice dell'addestramento e delle previsioni in Amazon Redshift ML.

Come il machine learning può risolvere i problemi

Un modello di machine learning genera previsioni trovando modelli nei dati di addestramento e applicando questi modelli ai nuovi dati. Nel machine learning, è possibile addestrare questi modelli apprendendo i modelli che meglio spiegano i dati. Quindi i modelli vengono utilizzati per effettuare previsioni (dette anche inferenze) su nuovi dati. Il machine learning di solito è un processo iterativo in cui è possibile continuare a migliorare l'accuratezza delle previsioni modificando iterativamente i parametri e migliorando i dati di addestramento. Se i dati cambiano, si verifica un altro addestramento dei nuovi modelli con il nuovo set di dati.

Per raggiungere i vari obiettivi aziendali, esistono diversi approcci fondamentali di machine learning.

Apprendimento supervisionato in Amazon Redshift ML

Amazon Redshift supporta l'apprendimento supervisionato, che è l'approccio più comune all'analisi aziendale avanzata. L'apprendimento supervisionato è l'approccio di machine learning preferito quando si dispone di un insieme consolidato di dati e di una comprensione di come i dati di input specifici prevedono vari risultati aziendali. Questi risultati sono talvolta chiamati etichette. In particolare, il set di dati è una tabella con attributi che comprendono funzioni (input) e destinazioni (output). Ad esempio, si supponga di disporre di una tabella che fornisce l'età e il codice postale per i clienti passati e attuali. Si supponga di avere anche un campo "attivo" che è true per i clienti attuali e false per i clienti che hanno sospeso la loro iscrizione. L'obiettivo del machine learning supervisionato è quello di individuare i modelli di età e codice postale che portano alla cessazione del cliente come rappresentato dai clienti le cui destinazioni sono "False". È possibile utilizzare questo modello per prevedere i clienti con probabilità di abbandono, ad esempio sospendendo la propria appartenenza, e potenzialmente offrire incentivi a restare.

Amazon Redshift supporta l'apprendimento supervisionato che include regressione, classificazione binaria e classificazione multiclass. Regressione si riferisce al problema di prevedere valori continui, come la spesa totale dei clienti. Classificazione binaria si riferisce al problema di prevedere uno di due risultati, ad esempio prevedere se un cliente abbandona o meno. La classificazione multiclass si riferisce al problema di prevedere uno di molti risultati, ad esempio prevedere l'articolo a cui potrebbe essere interessato un cliente. Gli analisti di dati e i data scientist possono utilizzarli per eseguire attività di apprendimento supervisionate per affrontare problemi che vanno dalla previsione, alla personalizzazione o alla previsione di abbandono dei clienti. L'apprendimento supervisionato può essere utilizzato anche in problemi quali la previsione di quali vendite stanno per terminare, la previsione dei ricavi, il rilevamento delle frodi e la previsione del valore di vita dei clienti.

Apprendimento senza supervisione in Amazon Redshift ML

L'apprendimento non supervisionato utilizza algoritmi di machine learning per analizzare e raggruppare dati di formazione senza etichetta. Gli algoritmi scoprono schemi o raggruppamenti nascosti. L'obiettivo è quello di modellare la struttura o la distribuzione sottostante nei dati per saperne di più sui dati.

Amazon Redshift supporta l'algoritmo di clustering K-Means per risolvere un problema di apprendimento senza supervisione. Questo algoritmo risolve i problemi di clustering in cui si desidera individuare i raggruppamenti nei dati. L'algoritmo K-Means tenta di trovare raggruppamenti discreti all'interno dei dati. I dati non classificati vengono raggruppati e ripartiti in base alle somiglianze e alle differenze. Raggruppando, l'algoritmo K-Means determina iterativamente i migliori centroidi e assegna ogni membro al centroide più vicino. I membri più vicini allo stesso centroide appartengono allo stesso gruppo. I membri di un gruppo sono il più simili possibile agli altri membri dello stesso gruppo e il più possibile diversi dai membri di altri gruppi. Ad esempio, l'algoritmo di clustering K-Means può essere utilizzato per classificare le città colpite da una pandemia o classificare le città in base alla popolarità dei prodotti di consumo.

Quando si utilizza l'algoritmo K-Means, si specifica un input k che specifica il numero di cluster da trovare nei dati. L'output di questo algoritmo è un insieme di centroidi k. Ogni punto dati appartiene a uno dei cluster k più vicini ad esso. Ogni cluster è descritto dal suo centroide. Il centroide può essere considerato come la media multidimensionale del cluster. L'algoritmo K-Means confronta le distanze per vedere quanto sono diversi i cluster l'uno dall'altro. Una distanza maggiore indica generalmente una maggiore differenza tra i cluster.

La preelaborazione dei dati è importante per K-Means, poiché garantisce che le caratteristiche del modello rimangano sulla stessa scala e producano risultati affidabili. Amazon Redshift supporta alcuni preprocessori K-Means per l'istruzione CREATE MODEL, come StandardScaler, MinMax e NumericPassthrough. Se non vuoi applicare alcuna preelaborazione per K-Means, scegli NumericPassthrough esplicitamente come trasformatore. Per ulteriori informazioni sui parametri K-Means, consultare CREA MODELLO con i parametri K-MEANS.

Scopri come eseguire un training senza supervisione con il clustering K-Means guardando il seguente video.

Termini e concetti per Amazon Redshift ML

I seguenti termini vengono utilizzati per descrivere alcuni concetti di Amazon Redshift ML.

  • Il machine learning in Amazon Redshift addestra un modello con un comando SQL. Amazon Redshift ML e Amazon SageMaker AI gestiscono tutte le conversioni di dati, le autorizzazioni, l’utilizzo delle risorse e il rilevamento del modello corretto.

  • L'addestramento è la fase in cui Amazon Redshift crea un modello di machine learning eseguendo un sottoinsieme specificato di dati nel modello. Amazon Redshift avvia automaticamente un job di addestramento in Amazon SageMaker AI e genera un modello.

  • La previsione (chiamata anche inferenza) è l'uso del modello nelle query SQL di Amazon Redshift per prevedere i risultati. Al momento dell'inferenza, Amazon Redshift utilizza una funzione di previsione basata su modello come parte di una query più ampia per produrre previsioni. Le previsioni vengono calcolate localmente, nel cluster Redshift, fornendo così una velocità effettiva elevata, una bassa latenza e un costo zero.

  • Con il modello bring your own model (BYOM) puoi utilizzare un modello addestrato al di fuori di Amazon Redshift con Amazon SageMaker AI per l’inferenza nel database locale in Amazon Redshift. Amazon Redshift ML supporta l'utilizzo di BYOM in inferenza locale.

  • L’inferenza locale viene utilizzata quando i modelli sono preaddestrati in Amazon SageMaker AI, compilati da Amazon SageMaker AI Neo e localizzati in Amazon Redshift ML. Per importare modelli supportati per l'inferenza locale in Amazon Redshift, utilizzare il comando CREATE MODEL. Amazon Redshift importa i modelli SageMaker AI preaddestrati chiamando Amazon SageMaker AI Neo. Compilare il modello e importarlo in Amazon Redshift. Utilizzare l'inferenza locale per accelerare la velocità e ridurre i costi.

  • L’inferenza remota viene utilizzata quando Amazon Redshift invoca un endpoint modello implementato in SageMaker AI. L’inferenza remota offre la flessibilità necessaria per invocare tutti i tipi di modelli personalizzati e modelli di deep learning, ad esempio i modelli TensorFlow creati e implementati in Amazon SageMaker AI.

Altrettanto importanti sono le seguenti:

  • Amazon SageMaker AI è un servizio di machine learning completamente gestito. Grazie ad Amazon SageMaker AI, i data scientist e gli sviluppatori possono sviluppare facilmente, addestrare e implementare direttamente i modelli in un ambiente ospitato pronto per la produzione. Per informazioni su Amazon SageMaker AI, consulta Cos’è Amazon SageMaker AI nella Guida per gli sviluppatori di Amazon SageMaker AI.

  • Amazon SageMaker AI Autopilot è una funzionalità che addestra e ottimizza automaticamente i migliori modelli di machine learning per la classificazione o la regressione, in base ai dati. Si mantiene il pieno controllo e visibilità. Amazon SageMaker AI Autopilot supporta i dati di input in formato tabulare. Amazon SageMaker AI Autopilot fornisce la pulizia automatica dei dati e la preelaborazione, la selezione automatica degli algoritmi per la regressione lineare, la classificazione binaria e la classificazione multiclasse. Supporta inoltre l'ottimizzazione automatica degli iperparametri (HPO), l'addestramento distribuito, l'istanza automatica e la selezione delle dimensioni del cluster. Per informazioni su Amazon SageMaker AI Autopilot, consulta Automatizzazione dello sviluppo dei modelli con Amazon SageMaker AI Autopilot nella Guida per gli sviluppatori di Amazon SageMaker AI.

  • Amazon Bedrock è un servizio completamente gestito che offre una scelta di modelli di fondazione (FM) ad alte prestazioni delle principali aziende di intelligenza artificiale come AI21 Labs, Anthropic, Cohere, Meta, Mistral AI, Stability AI e Amazon tramite un’unica API, insieme a un’ampia gamma di funzionalità necessarie per creare applicazioni di IA generativa.