Programmering

Hvad du har brug for at vide om Azure Notebooks

Moderne forretningsapplikationer samler mange dele af udviklingen. Du er uden tvivl mest fortrolig med n-tierapplikationer, der bygger på årtiers programmeringsfærdigheder og teknikker, der forbinder brugergrænseflade med kode og data. De er velkendte og lette at forstå. Men at alt ændrer sig, når du begynder at tilføje nye teknologier og tilgange, konstruere massivt skalerbare distribuerede computerplatforme, der drager fordel af store mængder data og maskinindlæring.

Meget af moderne maskinindlæring bygger på brug af analytiske værktøjer til at udforske data og udvikle regler til at vise statistisk signifikante afvigende. Selvom specialiserede neurale netværk håndterer kompleks tale- og billedgenkendelse, kræver de fleste problemer ikke særlig komplekse modeller - især hvis du bruger forudsigelige algoritmer på datastrømme fra sensorer eller anden IoT-hardware. Alligevel er det vigtigt at prøve nye algoritmer på realm-data, før du implementerer dem.

Introduktion til Azure Notebooks

At få styr på maskinlæring kan være vanskelig. Det er svært at visualisere data i målestok og sværere at forstå, hvordan analyser kan drive maskinindlæring. Det er her Azure Notebooks kommer ind, hvilket giver dig et sted at udforske analyser ved hjælp af velkendte sprog på en legeplads, hvor du kan prøve kode og visualiseringer, dele resultater med kolleger og tilføje beskrivende tekst omkring din kode og resultater til præsentationer til ledelsen og dit team .

Azure Notebooks er en implementering af den almindeligt anvendte open source Jupyter Notebook. Jupyter Notebooks, der understøtter mere end 40 forskellige sprog, kan køre lokalt såvel som i skyen, og du kan bringe kode, der er udviklet på Azure, ind i en privat Jupyter Notebook, klar til deling lokalt - eller hvis du har brug for at arbejde med cloud-kode på et fly.

Alt hvad du behøver for at starte er en Microsoft-konto og en moderne webbrowser, selvom offentlige notesbøger ikke har brug for login. Når du har oprettet en konto, kan du oprette og gemme nye notesbøger eller klone eksisterende til dine egne eksperimenter. Der er support til både personlige og arbejdskonti, så du kan arbejde med Azure Notebooks som et udviklingsværktøj til at afprøve ideer på din egen tid eller til at dele kode og dokumentation som en del af et udviklingsteam.

En legeplads til analyse og maskinindlæring

De underliggende teknologier er velkendte: Du kan tilføje indhold omkring eksekverbare kodepladser ved hjælp af Markdown for at formatere tekst. Azure Notebooks føjer automatisk brugergrænseflade til dine kodestykker, og du kan bruge et hvilket som helst af et udvalg af visualiseringsværktøjer til at kortlægge resultater. Data kan uploades til og downloades fra lokale pc'er, så du kan tage filer, du har brugt med Excels analyser, og bruge dem i Azure Notebooks, så du kan sammenligne resultater og bruge business intelligence-værktøjer til at forberede data, før de bruges.

Du importerer online data med Curl eller Wget ved hjælp af Python-kode i en notesbog eller fra en notesboks indbyggede terminalvindue. Der er også integration med Dropbox, så du kan dele filer med kolleger eller bruge den til at sikre, at du altid arbejder med den nyeste version af en fil.

Selvom Microsoft leverer de fleste af de værktøjer, du har brug for, kan det kun virkelig understøtte generelle analytiske operationer med værktøjer som Pythons Anaconda data science-udvidelser. Hvis du har brug for specialiserede biblioteker, f.eks. Til at håndtere en bestemt matematisk eller maskinindlæringsoperation, eller hvis du vil bruge et værktøj, der er almindeligt anvendt i din organisation, kan du installere kode fra sprogspecifikke pakkehåndtering via notebook-terminalen.

Bygge biblioteker fra notesbøger

Grupper af notesbøger gemmes som biblioteker med et dashboard, der hjælper med at administrere og kontrollere dine biblioteker. Ud over at dele individuelle notesbøger giver Azure Notebooks kontrolleret adgang til hele biblioteker for kolleger og samarbejdspartnere samt vidåben adgang til alle biblioteker, du offentliggør.

Offentlige biblioteker er ikke den eneste måde at bringe kode ind i Azure Notebooks; du kan også importere fra GitHub repos. Hvis du gemmer et bibliotek i GitHub, hvorfor så ikke gøre det lettere for andre at bruge din kode ved at tilføje et GitHub-badge til din readme-fil, der automatisk kloner og starter dine gemte notesbøger?

Hvis du finder en offentlig Azure Notebook, du vil arbejde med, er alt hvad du skal gøre, at lave en klon af den. Måske udforsker den en forudsigende vedligeholdelses-maskinlæringsalgoritme, der muligvis fungerer godt med dine IoT-sensorer, så tilføj dine egne visualiseringer og data til en klon samt finjuster enhver kode. Hvis det fungerer, kan du implementere algoritmen eller et derivat i din applikation. Ved at bruge en Azure Notebook som en kode, hvad-hvis, kan du undersøge, hvordan forskellige algoritmer påvirker din kode uden at skulle opbygge hele applikationen i et testmiljø.

Lær, prøv og lær igen

Azure Notebooks er ikke en fuld implementering af Jupyter Notebooks, men den delmængde, som Microsoft tilbyder, er skræddersyet til værktøjerne i Azures analyse- og maskinindlæringsplatforme. Det er i øjeblikket gratis, selvom der er nogle hukommelses- og lagerbegrænsninger: Du kan kun bruge 4 GB hukommelse pr. Bruger med 1 GB lagrede data. Microsoft hvidlister også eksterne datakilder, og selvom det reagerer på brugeranmodninger, har du muligvis ikke adgang til tredjepartsdata, du vil bruge, så du foretrækker måske at opbygge og uploade de uddrag, du har brug for.

En vigtig anvendelse af Azure Notebooks er som en træningsplatform. Du kan bruge det til at begynde at lære forskellige versioner af Python (det er sådan, jeg har brugt dem, fordi jeg har indset, at jeg har et stort Python-formet hul i min sprogkundskab), af R eller endda F # . Microsoft leverer et bibliotek med notesbøger, der hjælper dig med at lære andre værktøjer, herunder brug af Python med sin CNTK dyb læringsramme og opbygning og træning af Azure ML-modeller.

At have en sandkasse at spille i er en god måde at lære nye teknikker på, især med maskinindlæring og andre analytiske teknikker. Men Azure Notebooks har også indbyggede præsentationsværktøjer, så hvis du er kommet med noget, der kan fungere i et projekt, skal du kommentere din notesbogskode i Markdown og dele den med kolleger.

At gøre Azure Notebooks til en del af din udviklingsproces gør udviklingen mere samarbejdsvillig, så du kan prøve kode og få kommentarer, inden den bruges i dit daglige udviklingsmiljø.