Cosa devi sapere sui notebook di Azure

Le moderne applicazioni aziendali riuniscono molti filoni di sviluppo. Senza dubbio hai più familiarità con le applicazioni n -tier, basandoti su decenni di abilità e tecniche di programmazione, collegando l'interfaccia utente al codice e ai dati. Sono familiari e facili da capire. Ma tutto cambia quando si inizia ad aggiungere nuove tecnologie e approcci, costruendo piattaforme di elaborazione distribuita massicciamente scalabili che sfruttano grandi quantità di dati e apprendimento automatico.

Gran parte dell'apprendimento automatico moderno si basa sull'utilizzo di strumenti analitici per esplorare i dati e sviluppare regole per mostrare valori anomali statisticamente significativi. Sebbene le reti neurali specializzate gestiscano il riconoscimento vocale e di immagini complesse, la maggior parte dei problemi non richiede modelli particolarmente complessi, soprattutto se si utilizzano algoritmi predittivi su flussi di dati da sensori o altro hardware IoT. Anche così è importante provare nuovi algoritmi sui dati realm prima di implementarli.

Presentazione di Azure Notebooks

Prendere confidenza con l'apprendimento automatico può essere complicato. È difficile visualizzare i dati su larga scala e ancora più difficile capire in che modo l'analisi può guidare l'apprendimento automatico. È qui che entrano in gioco i notebook di Azure, che offrono un luogo per esplorare l'analisi utilizzando linguaggi familiari in un parco giochi in cui è possibile provare codice e visualizzazioni, condividere risultati con i colleghi e aggiungere testo descrittivo attorno al codice e risultati per presentazioni alla direzione e al team .

Azure Notebooks è un'implementazione del notebook Jupyter open source ampiamente utilizzato. Supportando più di 40 lingue diverse, i notebook Jupyter possono essere eseguiti sia localmente che sul cloud e puoi trasferire il codice sviluppato su Azure in un notebook Jupyter privato, pronto per la condivisione in locale o se devi lavorare con codice cloud su un aereo.

Tutto ciò di cui hai bisogno per iniziare è un account Microsoft e un browser web moderno, sebbene i taccuini pubblici non abbiano bisogno di un accesso. Dopo aver impostato un account, puoi creare e salvare nuovi taccuini o clonare quelli esistenti per i tuoi esperimenti. È disponibile il supporto per account personali e di lavoro, quindi puoi lavorare con Azure Notebooks come strumento di sviluppo per provare idee nel tuo tempo libero o per condividere codice e documentazione come parte di un team di sviluppo.

Un parco giochi per l'analisi e l'apprendimento automatico

Le tecnologie sottostanti sono familiari: puoi aggiungere contenuto attorno a playground di codice eseguibile utilizzando Markdown per formattare il testo. Azure Notebooks aggiunge automaticamente l'interfaccia utente ai frammenti di codice ed è possibile usare qualsiasi selezione di strumenti di visualizzazione per la creazione di grafici dei risultati. I dati possono essere caricati e scaricati da PC locali, in modo da poter prendere i file che hai usato con le analisi di Excel e usarli in Azure Notebooks, permettendoti di confrontare i risultati e usare strumenti di business intelligence per preparare i dati prima che vengano usati.

Importi dati online con Curl o Wget, utilizzando il codice Python in un notebook o dalla finestra del terminale integrata di un notebook. C'è anche l'integrazione con Dropbox, quindi puoi condividere file con i colleghi o usarlo per assicurarti di lavorare sempre con l'ultima versione di un file.

Sebbene Microsoft fornisca la maggior parte degli strumenti di cui avrai bisogno, può supportare solo operazioni analitiche di uso generale con strumenti come le estensioni di data science di Anaconda di Python. Se hai bisogno di librerie specializzate, ad esempio per gestire una specifica operazione matematica o di apprendimento automatico, o se desideri utilizzare uno strumento di uso comune nella tua organizzazione, puoi installare codice da gestori di pacchetti specifici della lingua tramite il terminale notebook.

Creazione di librerie da quaderni

I gruppi di taccuini vengono salvati come librerie, con un dashboard che aiuta a gestire e controllare le tue librerie. Oltre a condividere singoli notebook, Azure Notebooks offre accesso controllato a intere librerie per colleghi e collaboratori, nonché ampio accesso a tutte le librerie rese pubbliche.

Le librerie pubbliche non sono l'unico modo per portare il codice in Azure Notebooks; puoi anche importare da repository GitHub. Se salvi una libreria in GitHub, perché non rendere più facile per gli altri utilizzare il tuo codice aggiungendo un badge GitHub al tuo file readme che clona e avvia automaticamente i tuoi blocchi note salvati?

Se trovi un Azure Notebook pubblico con cui vuoi lavorare, tutto ciò che devi fare è crearne un clone. Forse esplora un algoritmo di apprendimento automatico della manutenzione predittiva che potrebbe funzionare bene con i tuoi sensori IoT, quindi aggiungi le tue visualizzazioni e i tuoi dati a un clone, oltre a modificare qualsiasi codice. Se funziona, puoi implementare l'algoritmo o un derivato nella tua applicazione. Usando un blocco appunti di Azure come codice what-if, è possibile esplorare il modo in cui algoritmi diversi influiscono sul codice senza dover compilare l'intera applicazione in un ambiente di test.

Impara, prova e impara di nuovo

Azure Notebooks non è un'implementazione completa di Jupyter Notebooks, ma il sottoinsieme offerto da Microsoft è personalizzato per gli strumenti delle piattaforme di analisi e machine learning di Azure. Al momento è anche gratuito, sebbene ci siano alcune limitazioni di memoria e archiviazione: puoi utilizzare solo 4 GB di memoria per utente, con 1 GB di dati memorizzati. Microsoft inserisce anche nella whitelist le origini dati esterne e, sebbene risponda alle richieste degli utenti, potresti non avere accesso ai dati di terze parti che desideri utilizzare, quindi potresti preferire creare e caricare gli estratti di cui hai bisogno.

Un utilizzo importante di Azure Notebooks è come piattaforma di formazione. Puoi usarlo per iniziare a imparare diverse versioni di Python (che è il modo in cui le ho usate, perché mi sono reso conto di avere un grande buco a forma di Python nella mia conoscenza della lingua), di R o anche F # . Microsoft fornisce una libreria di notebook per aiutarti ad apprendere altri strumenti, incluso l'uso di Python con il suo framework di deep learning CNTK e la creazione e l'addestramento di modelli Azure ML.

Avere una sandbox in cui giocare è un buon modo per apprendere nuove tecniche, specialmente con l'apprendimento automatico e altre tecniche analitiche. Ma Azure Notebooks ha anche strumenti di presentazione incorporati, quindi se hai trovato qualcosa che potrebbe funzionare in un progetto, annota il codice del tuo notebook in Markdown e condividilo con i colleghi.

Rendere Azure Notebook parte del processo di sviluppo rende lo sviluppo più collaborativo, consentendoti di provare il codice e ricevere commenti prima che venga utilizzato nell'ambiente di sviluppo quotidiano.