Come aggiungere soluzioni di Machine Learning alla tua azienda utilizzando AWS

Pubblicato: 2020-05-13

L'apprendimento automatico è in continua evoluzione e svolge un ruolo enorme nell'economia globale, poiché consente un'analisi rapida e automatica di grandi porzioni di dati.

Per avvicinare ancora di più la tecnologia di machine learning ai programmatori, Amazon offre attualmente oltre 10 servizi di machine learning e intelligenza artificiale sulla sua piattaforma AWS. Con questi servizi, puoi iniziare a creare modelli in modo semplice, che possono portare la tua attività a un livello superiore.

La maggior parte di questi servizi è completamente gestita, il che significa che per usarli non è necessaria alcuna esperienza di machine learning poiché questi strumenti sfruttano modelli pre-addestrati per lavorare con i dati. A seconda del tuo problema aziendale, puoi scegliere tra servizi di machine learning pre-addestrati in aree come la visione artificiale, l'elaborazione del linguaggio naturale, i consigli e le previsioni. Il grafico seguente mostra un flusso di lavoro della soluzione di Machine Learning, insieme agli strumenti AWS che puoi utilizzare in ciascuna delle fasi.

Fasi della creazione di soluzioni di Machine Learning

Come applicare il Machine Learning al business con AWS

Primo: raccogliere i dati

L'elemento più importante nella creazione di soluzioni ML sono i dati. Esistono 3 tipi di dati: strutturati, semi-strutturati e non strutturati.

  • Gli elementi dei dati strutturati sono indirizzabili e possono essere archiviati in un database relazionale. Questo tipo di dati ha uno schema predefinito. Un esempio di dati strutturati è un database relazionale con dati numerici e di tipo stringa (di testo).
  • I dataset semistrutturati non risiedono in database relazionali, ma hanno comunque alcuni elementi predefiniti (schema) che li rendono più facili da analizzare. Esempi di tipi di file di dati semistrutturati sono XML, HTML, RDF o JSON.
  • I dati non strutturati sono tutto il resto. Questo tipo di dati non ha una struttura predefinita e di solito vengono archiviati come un insieme di file. Gli esempi di dati non strutturati più popolari sono documenti di testo, foto, file video e audio e registri delle applicazioni.

Caricamento dati: cos'è Kinesis?

Il servizio AWS Kinesis acquisisce dati che possono essere generati continuamente da varie origini, ad esempio applicazioni Web e mobili. È un servizio di streaming di dati in tempo reale che può acquisire molto rapidamente gigabyte di dati. Kinesis offre i seguenti strumenti:

  • Kinesis Video Streaming : uno strumento che può aiutarti a trasmettere video in streaming dai dispositivi ad AWS
  • Kinesis Data Streaming : uno strumento che può aiutarti a raccogliere dati come log IT, clic su siti Web o transazioni finanziarie
  • Kinesis Data Firehose : uno strumento per caricare i dati in streaming in archivi dati (ad es. S3, Redshift) o strumenti di analisi
  • Kinesis Data Analytics : uno strumento che elabora i dati in streaming in tempo reale con SQL o Java

Caricamento dei dati: cos'è la colla?

Un altro servizio AWS che può aiutare con il caricamento dei dati è Glue , gestito da Apache Spark . È uno strumento di estrazione, trasformazione e caricamento (ETL) che può essere utilizzato per preparare i dati prima che vengano utilizzati per l'analisi. Glue può funzionare sia con dati strutturati che semi-strutturati.

Gli elementi di Glue sono Data Catalog, motore ETL e uno scheduler. Il Catalogo dati della colla è la parte più importante dello strumento. Salva i metadati sui dati forniti, rilevati automaticamente dai crawler che passano attraverso le origini dati e ne rilevano lo schema.

I motori ETL possono generare codice Python e Scala da utilizzare nel processo ETL per utenti non programmatori. Può trattare i dati anche con un codice fornito dall'utente. L'utilità di pianificazione può monitorare i lavori, eseguire attività e attivarli in base ad alcuni eventi (ad esempio a un'ora specifica ogni lunedì o quando un'altra attività viene completata o non riesce).

Secondo: scegliere gli strumenti di machine learning giusti

Dopo aver raccolto i dati di cui abbiamo bisogno, possiamo iniziare a creare le nostre soluzioni ML. AWS offre alcuni strumenti di machine learning in grado di elaborare dati di vario tipo.

Diamo ora un'occhiata a ciascuno di questi strumenti e presentiamo le principali possibili aree di applicazione nel mondo degli affari .

Cos'è SageMaker?

SageMaker è particolarmente utile per sviluppatori di machine learning e data scientist. Questo servizio è una soluzione completa che aiuta a portare i modelli di machine learning dall'ideazione alla produzione con il minimo sforzo. Amazon SageMaker dispone di un ricco set di strumenti (Ground Truth, Notebooks, Experiments, Debugger, Model Monitor, Neo) che possono aiutare a etichettare i dati, creare, ottimizzare, addestrare, testare e distribuire modelli.

Trovare manualmente l'algoritmo giusto per un determinato problema richiede spesso ore di formazione e test. SageMaker ha un'opzione AutoPilot, che utilizza 50 diversi modelli ML pre-addestrati per trovare automaticamente il miglior modello ML per il caso in questione. Gli sviluppatori possono utilizzare questa soluzione per trovare rapidamente un modello di base.

Cos'è Personalizza?

Personalizza è un servizio di machine learning che aiuta a creare sistemi di raccomandazione. Personalizza può elaborare i flussi di attività dalle applicazioni, ad esempio clic, visualizzazioni di pagina, acquisti e utilizzarli per creare consigli personalizzati. Puoi anche utilizzare informazioni aggiuntive sui tuoi utenti, come l'età o la posizione geografica. La visualizzazione dei risultati dei consigli nell'applicazione può essere semplificata con brevi chiamate API. La tecnologia di apprendimento automatico in Personalizza è stata migliorata per anni di utilizzo da parte di Amazon.com.

Che cos'è Comprendi?

Comprehend è un servizio di elaborazione del linguaggio naturale (NLP) che utilizza l'apprendimento automatico per estrarre informazioni preziose da dati testuali non strutturati. Questo servizio applica l'analisi del sentiment, l'estrazione di parte del discorso e la tokenizzazione per rilevare le caratteristiche chiave del testo. Comprendere può essere utile per capire quanto sia positivo o negativo un determinato testo.

Comprehend ha uno strumento aggiuntivo: Amazon Comprehend Medical, specifico per l'industria medica. Amazon Comprehend Medical può analizzare la documentazione medica (come cartelle cliniche dei pazienti, note cliniche) ed estrarre informazioni su farmaci, dosi e frequenze. Comprehend è un servizio completamente gestito.

Che cos'è la previsione?

Forecast utilizza l'apprendimento automatico per creare modelli di previsione di serie temporali. Può combinare i dati delle serie storiche storiche con variabili aggiuntive (che ritieni possano influire sulle previsioni) per creare modelli predittivi. Questa soluzione Amazon si applica alla previsione di valori come i prezzi delle azioni o la domanda di prodotti dei clienti. Anche Forecast è un servizio completamente gestito e può essere ridimensionato in base alle esigenze aziendali.

Cos'è Lex?

Lex utilizza il riconoscimento vocale automatico (ASR) per convertire il parlato in testo e la comprensione del linguaggio naturale (NLU) per riconoscere l'intento del testo. Questa soluzione consente all'utente di creare bot conversazionali.

Ad esempio, puoi utilizzare Lex come sostituto dell'assistenza clienti manuale che risponderà automaticamente alle domande dei clienti. Amazon Lex utilizza la stessa tecnologia di deep learning di Amazon Alexa (l'IA dell'assistente virtuale di Amazon).

Cos'è Polly?

Polly è un servizio cloud che utilizza algoritmi di deep learning per convertire il testo in un discorso realistico. Attualmente supporta 60 voci maschili e femminili in 29 lingue, tra cui giapponese, cinese, coreano e arabo. Polly può anche gestire tempo, date, unità, frazioni e abbreviazioni. Questa soluzione consente all'utente di creare applicazioni in grado di parlare.

Che cos'è il rilevatore di frodi?

Fraud Detector è un servizio AWS che può aiutare a identificare attività online fraudolente, come frodi di pagamento o account falsi. Questo servizio è completamente gestito in modo da poter creare un modello di rilevamento delle frodi con pochi clic.

Cos'è Texttract?

Texttract è un servizio in grado di leggere automaticamente i dati dai documenti scansionati. Texttract può elaborare milioni di pagine in poche ore e può aiutare ad automatizzare i flussi di lavoro dei documenti. Questo servizio è utile nell'elaborazione di documenti come richieste di prestito o documentazione medica.

Cos'è Traduci?

Translate è un servizio di apprendimento automatico AWS utile per eseguire la traduzione del testo da lingua a lingua. Utilizza modelli di deep learning per fornire traduzioni più accurate e dal suono più naturale, rispetto ai tradizionali algoritmi statistici. Translate supporta 54 lingue (tra cui afrikaans, bulgaro, estone) e 2.804 coppie di lingue.

Cos'è il riconoscimento?

Rekognition è un servizio di visione artificiale in grado di riconoscere oggetti, persone e testo da immagini e filmati. Recognition è in grado di identificare e confrontare i volti, analizzarli e identificare alcuni tratti del viso, come bocca, naso o occhi.

Rekognition ha un modulo per rilevare automaticamente emozioni come felicità, tristezza o sorpresa nelle immagini facciali. Può anche eseguire la verifica del volto dell'utente, che confermerà l'identità dell'utente confrontando l'immagine in tempo reale con l'immagine di riferimento memorizzata.

Terzo: distribuzione di soluzioni di machine learning

Il metodo più utilizzato per distribuire i modelli è SageMaker Service, che puoi utilizzare in due modi:

  • Utilizzo di SageMaker Hosting Service per configurare gli endpoint HTTPS. In questa soluzione, le applicazioni client inviano richieste agli endpoint HTTPS per ottenere previsioni dai modelli distribuiti. Per utilizzare questa soluzione, devi fornirla con l'immagine Docker. Se devi distribuire più modelli, puoi anche utilizzare endpoint multimodello.
  • Utilizzando SageMaker Batch Transform , che ti aiuta a ottenere previsioni per un intero set di dati. Per distribuire un modello utilizzando Batch Transform è necessario un bucket S3 per archiviare il modello, i set di dati e le previsioni.

L'alternativa di distribuzione è l'utilizzo di AWS IoT Greengrass . Questo servizio estende AWS ai dispositivi Internet delle cose (IoT). Utilizzando questo servizio, i dispositivi possono raccogliere, filtrare, elaborare dati e possono anche eseguire funzioni Lambda, contenitori Docker ed eseguire previsioni basate su modelli ML anche senza connessione cloud. Quando è connesso a Internet, Greengrass sincronizza tutti i dati con i servizi cloud.

Riepilogo

Come puoi vedere, Amazon Web Service offre un ricco set di strumenti che possono aiutarti a creare soluzioni di machine learning di grande impatto per la tua azienda. Con gli strumenti ML AWS puoi aggiungere nuove funzionalità alle tue applicazioni, come il rilevamento dei volti, i chatbot, il riconoscimento vocale, l'analisi del sentiment dei contenuti dei social media. AWS aggiunge nuovi servizi ML, basati su nuovi casi d'uso, ogni pochi mesi, il che la rende una delle piattaforme in più rapida crescita per la creazione di soluzioni di intelligenza artificiale.

Sviluppa una soluzione di apprendimento automatico a prova di futuro con Miquido!