Press "Enter" to skip to content

GOTO 2017 • Cloud-Native Data Science • Phil Winder


[Musica]
grazie mille quindi questo è un discorso
sull’applicazione dei principi nativi del client
alla scienza dei dati nel 2016
Microsoft ha fatto una mossa molto coraggiosa e
hanno rilasciato una nuova generazione di chat bot
nel pubblico dominio
il sito web dell’azienda lo ha affermato
era stato costruito usando pubblico pertinente
dati che era stato modellato pulito
e filtrato potresti averne sentito parlare
era chiamato tayi lo scopo del bot
era quello di rispondere ai tweet in modo umanistico
modo si potrebbe inviare domande su
Twitter usando il suo manico e lo ha fatto a
davvero bravo davvero un buon lavoro
in realtà, rispondendo come lei come un giovane
come dico un giovane perché non l’ho fatto
capisco che molti degli acronimi sono
usato ma in un pozzo quando è stato rilasciato
tutto stava andando davvero nuotando
e ha funzionato molto bene in realtà
sembrava neanche un umano da tanto tempo
fine ma quando una grande azienda tecnologica come
questo come questo rilascia un prodotto come
questo di solito sono i primi utenti di
questo servizio sono ingegneri e dati
che siete tutti ingegneri nella stanza
vorresti provare questo servizio?
apprezzalo per quello che è e per te
sappi fare domande sensate o B
vuoi provare a romperlo?
mandalo le cose più orribili che
potresti pensare per provare e
costringerlo a darci la risposta bene
sanno che gli ingegneri sono un gruppo sadico e
puoi indovinare quale opzione hanno scelto
il bot è andato da un pozzo mite
rispondendo alle chat bot con un razzista sessista
genocidio tutti i nazisti in circa 24 ore
hai una collezione di tweets tu
puoi vedere lì dove ti ha iniziato
conosco abbastanza bene e siamo finiti
con Hitler sai se finisci con
Hitler sai che è andato male uno dei
i miei tweet preferiti in realtà riguardavano a
Il comico britannico ha chiamato Ricky Gervais
e lo sapevi molto bene
domanda abbastanza decente è ricky gervais
un ateo la risposta ricky gervais
totalitarismo inclinato da adolf hitler
l’ inventore dell’ateismo ora per tutto me
so di Hitler , non penso sia così
il suo tratto più famoso ma lo darò
10 su 10 per voi, non l’immaginazione per
quello e in definitiva il risultato di
questo meraviglioso esperimento 24 ore dopo
era morto e anche se è così
una storia abbastanza divertente in realtà
abbastanza impressionato da Microsoft era a
mossa molto coraggiosa per permettere che ciò accada
sono riusciti a consegnare qualcosa
è stato davvero impressionante, ma penso
Penso e questa è solo speculazione
che penso che potrebbe alcuni di
L’organizzazione tradizionale di Microsoft
la roba ha preso il modo in cui penso che il
persone se le persone fossero in grado di individuarle
problemi ed erano in grado di
essere in grado di individuare questi problemi poi loro
potrebbe averlo fermato prima di qualcosa
come questo è successo e questo è davvero
su ciò che questo parlare di oggi è così
nella vita normale la tradizione è fantastica
in una parte importante della cultura culturale
meme ma in ingegneria è in realtà
il porto delle cattive abitudini sai se noi
attenersi alle tradizioni, quindi tendiamo a
ripetere gli stessi errori che ho usato per lavorare
come ormeggio nel campo della scienza dei dati e
nell’ingegneria del software e cosa abbiamo usato
fare era andarmene e lo farei
scrivere i miei modelli e fare la mia ricerca e
quindi l’unica cosa che tutti gli altri
vedrebbe era solo questo enorme codice
che vorrei buttare nel software
ingegneri e vorrei dire che ci vai
ingegneri del software ho finito il mio lavoro ora
è il tuo turno che lo implementa e
ovviamente lo sai la maggior parte del tempo
semplicemente non ha funzionato un po ‘di tempo
parzialmente lavorato ma non ha mai funzionato come
bene come avrebbe dovuto fare io in realtà
ha parlato con un cliente l’altro giorno e lui
era preoccupato di aver pagato per a
progetto per la sua azienda utilizzando ha inviato
alcuni dati via a un braccio di ricerca e loro
era preoccupato che
il lavoro che questi ricercatori erano
fare era una specie di non realmente applicabile
nella vita reale erano le parole che usava
pensava che fosse un po ‘troppo accademico
con le parole che ha usato e cosa intendeva
era il tipo di cose che loro
stavano arrivando con noi non siamo davvero
realistico e rilevante per te
software industriale moderno così sì
la tradizione è un po ‘un problema ma
tradizionalmente gli scienziati di dati hanno
lavorato verso un certo tipo di modello
questo è un modello perché chiamato il
pratica standard incrociata con
data mining e questo è il più vicino
cosa abbiamo per sapere un processo in
la scienza dei dati vedrai che c’è
un sacco di loop in questo processo e questo è
solo indicativo del fatto che la maggior parte di
la scienza dei dati è una specie di open-ended e
continuo non ferma mai veramente il
il problema con questo è più o meno così
tutti questi passaggi lo sai proprio tu
individuo individuale e loro no
scala molto bene quindi il primo problema è
la faccia di dispiegamento come ho appena detto quando
Ero uno scienziato dei dati che avrei buttato via
modelli oltre ai tecnici del software
e poi non lo vedrei mai più
Penso che questo sia probabilmente
qualcosa che è successo a Microsoft noi
ottenere gli ingegneri del software che non hanno
stato addestrato nella scienza dei dati che diamo
li do loro sai male
codice non interpretato e documentato
aspettarsi che lo capiscano e
implementalo in modo efficiente è che non lo è mai
sta per accadere
e poi iniziamo a passare attraverso il
altre parti del modello è il primo
la comprensione dei dati è un grosso problema
nella scienza dei dati perché i dati sono
il più impartisce la parte più importante
del problema e dei dati
comprendendo parte ci affidiamo al dominio
esperti per interpretare il
dati quindi abbiamo fatto una bella chiacchierata prima
da Feynman su come egli stava lavorando
il dominio musicale con cui stava lavorando se
non eri lì con cui stava lavorando
musica classica e ad un dato normale
scienziato si saprebbe nulla
la terminologia utilizzata nella musica ma
durante i suoi anni di fare questo
ricerca divenne finalmente un dominio
ma ci sono voluti anni e anni di lavoro e
anni di tempo quindi questo è un buon esempio
di quella preparazione dati è un altro
area problematica perché spesso è fatta da
una persona e viene eseguita solo una volta
quello che succede è che ne prendi uno
veramente approfondisce i dati e loro sono
quelli che lo capiscono davvero ma
è un po ‘difficile da riprodurre
perché solo una persona lo capisce
e l’ output è ancora solo questo
blob amorfo di software che prende
dati disordinati e sputa buoni dati e
finalmente modellando questo è un po ‘
più facile ragionare se ne hai di più
e più persone capiscono i tipi
dei modelli usati e come fare la modellazione
ma il problema con la modellazione è questo
ancora una volta è solo una persona
processo perché il processo di solito
comporta il provare molte cose diverse
Praticamente scegliendo il migliore ma quello
processo che prova ed errore non è mai
registrato ovunque l’ unico output è il
modello sai che è la risposta così se
vogliamo ridimensionare questa persona passata
allora abbiamo bisogno di quello che di solito cosa
succede è la seconda persona ripete tutto
gli stessi errori e questo in realtà finisce
su un risultato diverso perché tu
conoscere i suoi pregiudizi e le sue preferenze per
noi algoritmi di solito finiscono in a
modello diverso in modo da conoscere il
è tutta la parte di quel lato del modello
un po ‘come un canale torbida sai che è
come un matto canale di Amsterdam, lo sai
le navi possono andare avanti e indietro ma tu
non vorrei entrare e seguire
e poi se alla fine di tutto questo
sai che abbiamo il lato operativo
il lato schieramento abbiamo il vasto
maggioranza della ricerca sulla scienza dei dati
fase che non sta andando bene in realtà la
la maggior parte dei progetti fallisce perché
c’è una mancanza di comprensione aziendale
e questo è dovuto al business
non capisco il tecnico
implicazioni che stanno proponendo o
i tecnici non capiscono il
problema d’ affari abbastanza così un intero ospite
di problemi quindi penso a quello che sto per fare
ora devo ignorare il business
lato un po ‘ perché quello è
in realtà un problema separato in sé
e tu sei tutti ragazzi tech e ragazze così
Sto solo andando a rispettare
tre fasi distinte abbiamo il
fase di ricerca che è stata un po ‘quella
parla di te che capisci il
dati che massaggiano i dati e producono
i dati nel modello ho la build
faccia cercando di dimostrare che stiamo facendo cosa
stiamo facendo è corretto e quindi il
fase di implementazione effettiva il bit che noi
voglio correre in produzione
quindi sì, la fase di ricerca è composta da
la scienza dei dati iniziale che può essere
qualsiasi cosa, dagli esperimenti
raccolta di più dati sulla preparazione dei dati
pulendo modellando tutte quelle cose buone
questo è il tipo di questo è chiamato il
fase di ricerca perché è molto
processo scientifico e il più grande
problema con quello è che è si tratta di
intrinsecamente a tempo indeterminato e quindi è
molto alto rischio quindi c’è un alto
probabilità di fallimento a questo punto
perché potresti trovarti entrambi
non avere i dati per fare il lavoro
correttamente o semplicemente non puoi fare il lavoro
perché è sai intrattabile per
qualche motivo quindi un passo indietro un po ‘
credeteci o no, la Gran Bretagna in realtà aveva un
patrimonio automobilistico molto ricco che potresti
non pensarlo in questi giorni potresti pensare
della Germania o qualcosa di simile, ma
c’è un impianto di produzione vicino
Oxford, che è iniziata nel 1913, così è
un’immagine da quella stessa produzione
pianta nel 1943 e da allora fino a
negli anni ’70 era di proprietà di un’azienda
chiamato British Leyland questa è una foto
della loro linea di produzione
serbatoi cromwell per la seconda guerra mondiale di
il tempo è arrivato agli anni ’70 che stava costruendo
questo piccolo divano probabilmente tutti
riconoscere ma all’inizio e durante
le cose degli anni ’70 hanno iniziato a sbagliare e
la ragione ultima per cui sono andati
sbagliato era perché c’erano di meglio
alternative più economiche disponibili altre
le aziende stavano investendo nel
automazione di queste linee al fine di
produrre una migliore qualità e più economico
prodotti e sai quando parliamo
software di ingegneria del software
ingegneria o ingegneria
è solo la conversione di un processo in codice
in modo che possiamo automatizzare tutto ciò che è
è lì che avrei dovuto dire che
parola e oggi penso che la scienza dei dati
è in realtà l’automazione dei dati
quindi stiamo iniziando a vedere come a
gerarchia a tre livelli qui tra di voi
sappiamo che abbiamo la scienza dei dati al
fondo che sta prendendo tutti i dati e
automatizzare le cose sulla base di quei dati
dare da mangiare al processo quindi penso che
scienza dei dati e ingegneria del software
realizzano davvero un ottimo adattamento
insieme molto bene perché i dati e
la scienza si nutre del software
che poi si nutre nel valore che
stai cercando di fornire e questo è un
immagine dello stesso stabilimento di produzione
nel 2013 quindi questo è un centinaio di anni dopo
l’impianto di produzione aperto e
ora puoi vedere che è molto di più
automatizzato e fondamentalmente non è umano
lì e che consente a questa azienda di
costruire auto migliori e più affidabili e come
probabilmente conosci questa compagnia adesso
posseduto da BMW in modo da sapere il the
la grande compagnia d’oro inglese fu mangiata
dai produttori tedeschi dannazione così così
si, comunque, il mio punto è che penso
ingegneri del software o il software
gli ingegneri sono davvero molto bravi
posizione per spingerci davvero dentro
la scienza dei dati non è il contrario
perché siamo venuti via con tutto il
cose che abbiamo imparato durante questo
conosci l’automazione più tradizionale
fase e possiamo iniziare ad applicarlo a
data science perché il fatto è simile a
nel momento non succede nulla di questo nei dati
la scienza al momento e questo mi guida
alle scienze dei dati sporchi poco sporchi
segreto e il piccolo segreto è che il
grande maggioranza dei tuoi sforzi e del tuo tempo
e capacità di ingegneria come dati
lo scienziato entra nei dati solo
scherzare con i dati incessantemente
sai che stiamo risolvendo i problemi con il
dati che stiamo imputando valori mancanti noi
stanno rimuovendo i dati non validi e così via e
così via e così via e la stragrande maggioranza di
il PUF
la prestazione finale del modello è
in base a quanto si può migliorare tale
i dati non sul modello, quindi sai che abbiamo
ha avuto dei fantastici fantastici colloqui
mattina sai tutto sull’apprendimento profondo
tutto su tecnologie molto sexy ma
questo è un problema molto legato alla Silicon Valley no
offesa ai ragazzi della Silicon Valley ma
questo è un bro Silicon Valley per
tutti gli altri fuori dalla Silicon Valley
viviamo ancora nel mondo dove
sai che sono le tecniche semplici
che davvero fare la differenza ed è
non deve essere un modello complesso
le cose semplici possono fare molto e una
dei maggiori problemi con questo processo
è che questa scoperta questo risolva il
dati questo capendo i dati come me
ha detto che è fatto solo da una persona così io
penso che questo sia solo un problema
la visibilità è molto piccola
visibilità all’interno della scienza dei dati c’è
solo in genere una persona che sta lavorando
su un problema alla volta
ed è lo sai che è molto difficile da
scala o almeno è molto inefficiente
per scalare nel corso degli anni il software
l’ingegneria ha fatto un ottimo lavoro
nel migliorare questo perché avevamo esattamente
gli stessi problemi che sai che potremmo
distribuire i binari abbastanza efficacemente
ma quando si tratta di codice sorgente che abbiamo
attraversato sai decenni di tentativi
migliorare la visibilità e il
resilienza del nostro codice sorgente e
per fortuna la scienza dei dati è finalmente disponibile
iniziando a arrivarci e questi due
in particolare gli strumenti sono stati molto
prolifica quindi probabilmente tutti sappiamo uno dei
quelli così non ho intenzione di parlare di
questo, ma il secondo è un notebook un po ‘
di voi probabilmente venire attraverso di esso, ma si
potrebbe non esserlo , solo io lo farò
introdurlo quindi questo è Giove
quaderni è un’evoluzione di ipython
taccuini l’idea è che dentro il
notebook c’è una serie di celle e
ogni cella può essere marcata verso il basso o
può essere codice di ciò che questo è fatto è
è da solo migliorato il
visibilità praticamente da zero tutto il
un modo quasi buono come me
penso che questo sia in realtà probabilmente migliore
di un ingegnere del software in termini di
visibilità cosa significa che è quando
Lo sono quando mi arriva per la prima volta
dati e sto facendo la mia analisi che posso
documentare tutto ciò che faccio anche il
errori posso scrivere il codice che posso
scrivi le parole se ho bisogno di e
ogni qualvolta qualcuno lo ripetesse
processo possono solo venire e
leggi questo come un documento se lo desideri
a loro possono entrare e loro possono
in realtà inizia a giocare con il codice
possono iniziare a fare test se loro se
tu pensi oh, penso che i tuoi modelli siano immondizia
Proverò un altro modello o lo farò
prova alcuni parametri diversi è molto
facile per qualcuno semplicemente entrare in cambiamento
qualcosa ed eseguirlo quindi questo è molto
modo molto visivo iterativo di fare i dati
la scienza e sì, è diventata enorme
impatto e poi quando lo fai squadra
abbiamo capito e penso che ti abbiamo visto
il santo graal della ripetibilità da ottenere
visibilità dai quaderni di Giove e
anche come se questo fosse qualcosa di noi
non dare per scontato per
esempio come quando stiamo guardando il codice
normale normale codice software che stiamo usando
conosci Github e prendi il laboratorio e qualsiasi altra cosa
solo che gli spettatori online possono vederli
codice molto più spesso di quanto in realtà
pensa che noi siamo e solo questo è
super super utile per il
visibilità lì così e va bene a
molto buono e un enorme progresso per
sviluppatori individuali ma come facciamo noi
ridimensionalo a più sviluppatori che facciamo
quello con un altro progetto di Giove
chiamato hub Jupiter ed è piuttosto un
semplice architettura come puoi vedere principale
parti comprendono proxy HTTP che abbiamo
il notebook individuale così questo notebook
parte è il bit che ho appena spiegato
tu il quaderno di Giove e poi lo abbiamo
ho un paio di roba di base utente lì
sul lato sinistro lì per gestire
le istanze multi-tenant ma la più
cosa interessante è questa cosa il
spawner perché quello che potremmo fare è noi
può scavalcare lo spawner e collegarlo a
tutta la gamma di strumenti che possiamo collegare
Dhaka e potremmo iniziare a girare
contenitori docker dove è possibile iniziare
girando sai i contenitori di Mises
orchestratore potremmo girare in su in
una sorta di ambiente basato su cloud
è incredibilmente incredibilmente utile
forse il mio preferito è che possiamo iniziare
lavori di kubernetes con cui conosci i baccelli di partenza
i nostri contenitori in e tu sai
tanta gente chieda ai tecnici del software che conosciamo
che questo ci fornisce una quantità enorme
di flessibilità possiamo semplicemente scalare
quando ne abbiamo bisogno se ne hai di più
sviluppatori che lavorano su un diverso
problema basta aggiungere più pod se necessario
le macchine più grandi scalano semplicemente il
numero di macchine possiamo selezionare il nostro
macchine se vogliamo GPU o CPU
è tutti anni avanti rispetto alla scienza dei dati
abbiamo la visibilità che abbiamo ora
iniziato a containerizzare il processo così
questo è il caso di due inquilini principali di
visibilità dei contenitori nativi cloud ora
andiamo a costruire l’ultima ora andiamo avanti
alla faccia della build non si basa sul
muovere la faccia così stiamo insegnando su questo a
l’inizio ma nel passato e continua
oggi accade ancora oggi data scientist
è un termine molto generale che io no
significa necessariamente che conosci le persone
Dottori di ricerca che lavorano con alto livello
strumenti di apprendimento approfondito questo che nessuno dei due
solo le persone normali che lavorano con
dati normali vengono fuori con un’idea
forse un modello semplice lo buttano via
questo è per gli ingegneri del software
completamente analogo al software
ingegneria era circa 10 anni fa
gli ingegneri del software prenderebbero il loro
binario il loro software lo getta su
i ragazzi dell’Ops e lo stiamo combattendo
con l’ idea di DevOps
quindi penso che ci sia un equivalente
spostamento che deve avvenire con i dati
scienziati di cui i dati scientifici hanno bisogno
essere diventato più integrato con il
ingegneri del software e, infine, di più
integrato con le persone ops pure
quindi conosci le ops dei dati se lo eri e a
meglio se non lo abbiamo nel migliore dei casi noi
avere modelli inefficienti ma al peggio e
sai cosa è più probabile
capita è che le cose non accadano a
tutto e se non si ottiene quella transizione
giusto allora finisci con il nostro
prodotti e parlando di AI e robot I
amo quel video
il robot rossetto di Simone diventa esilarante
ah sei tutto noioso, lo trovo divertente
Sarò io sono ridere andando e così come si fa
miglioriamo molto bene come noi
visto dal DevOps transizione da da
di conseguenza gran parte del problema è
in realtà un problema di persone è così
su come convincere le persone ad accettare il loro
il ruolo sta cambiando e sta cambiando per
il migliore per il beneficio di tutti
e questo è e va bene, ma è un
po ‘noioso quello che possiamo fare è tecnicamente
iniziare a rafforzare la qualità che possiamo applicare
qualità con sorpresa-sorpresa
dispiegamento continuo continuo
integrazione questo è un classico continuo
conduttura di consegna sono sicuro che tutti voi
sappi questo l’ingegnere che conosci
commit è il codice che andrà in una build
assistente avrebbe eseguito attraverso pipeline di essere
schierato in produzione ora il
la pipeline è probabilmente la più importante
parte di questo intero processo e ha bisogno
da personalizzare per il tuo dominio e il tuo
problema
Mi piace che mi piace sempre parlare di
triangolo di prova questo è abbastanza comune in
la letteratura CI se non l’hai vista
prima che sia un’immagine dove sull’asse x
abbiamo il numero di test sul
asse y
abbiamo lo scopo o la profondità di
il test quindi in fondo abbiamo unità
prova chi abbiamo un numero molto grande di
test unitari che stanno dicendo molto test
piccoli bit di codice fino al
in alto, dove abbiamo pochissimi test
test di accettazione ma stanno testando a
enorme quantità di codice e tu lo sai
il processo di test è probabilmente il più
parte importante della fase di costruzione se tu
non testare i tuoi modelli e poi finisci
con qualcosa di simile questo è il mio
collega stava cercando di prenotare un volo
da Amsterdam a Praga, penso e
kayak gentilmente mi ha consigliato il volo
sai che era un risultato diretto di uno
dei loro modelli di raccomandazioni era
io così è stato per questo ragazzo, ovviamente
non è stato possibile prenotare un volo
hanno perso le sue entrate hanno perso la sua
soldi ho paura di immaginare quanti altri
le persone stavano usando il sito allo stesso modo
tempo e tutti hanno ricevuto grande me e
devono perdere un sacco di soldi, penso che se
che se qualcosa è una chiara indicazione
quello che le persone della scienza dei dati hanno bisogno
per essere più integrato nel
operazioni del loro software attuale
perché sono gli unici che sanno
sai come implementare il monitoraggio del
il modo migliore loro sanno come aggiustarlo se questo
va storto e poi arriviamo al
fase di distribuzione e questo è un po ‘di più
difficile parlare perché è un
un po ‘ più specifico del dominio è molto tecnico
stack specifico quindi dipende da cosa
stack di tecnologia che stai usando ma io posso
generalizzare un po ‘parlando
sui contenitori ma intendo in definitiva
gli obiettivi sono esattamente gli stessi
vogliamo che il nostro software sia reattivo
resiliente e riproducibile, lo vogliamo
essere reattivi in modo che quando abbiamo cambiamenti
al mondo esterno siamo in grado di scalare e
ridimensiona come di conseguenza lo vogliamo
essere resiliente quindi se mai dovesse fallire
si ripara automaticamente e
riproducibile se possiamo riprodursi rapidamente
il nostro cluster in un’altra posizione di a
test o qualcosa che migliora
testabilità e quel tipo di rappresentazione
questa piccola piccola freccia nel
costruire pipeline e anche in continuo
consegna questo è spesso trascurato e
è sempre rappresentato da un po ‘
freccia come se fosse come questa cosa semplice
dove lo spingi semplicemente alla produzione
faccine fatte di fiori e non è mai
così è un po ‘di più
difficile e molto più specifico e
c’è un sacco di impegno ingegneristico
hai speso sai di provare a spingere questo
alla produzione per la terra della scienza dei dati
una delle cose più facili che possiamo fare è
portare in contenitori di nuovo si sa così
come lo fai bene, lo sai che tu?
avere una sorta di modello che si può abbastanza
lo riempia facilmente in un contenitore e
se hai appena ottenuto interfacce e
i rooters quindi sono tutti carini
standardizzato una volta arrivato a quello
punto allora diventa molto più facile da fare
non solo assicurati che funzioni sul tuo
macchina e funziona allo stesso modo
produzione ma è anche più facile per
anche le altre persone ragionano
perché qui sai che stai riducendo
il dominio che le persone devono
capire al fine di utilizzare il servizio
e quel modello può essere tutto ciò che potrebbe
si sa solo un semplice modello Python
può essere il derivorflow derivato di Fianna
qualunque cosa e se ne hai in più
tecnologie di streaming e tu conosci noi
può facilmente applicare le tecnologie di streaming
anche qui se impacchettiamo il
qualunque cosa sia nel tuo particolare
streaming X pacchetto di streaming che
stai usando e come fonte o scintilla
esecutore è ancora perfettamente ragionevole
per farlo e quello si adatta davvero bene
nel triangolo di test perché possiamo
costruisci quel contenitore come parte del nostro
tubazione di mandata e di iniziare i test che
contenitore invece di testare semplicemente il
codice stesso in modo da sapere che è tutto abbastanza
roba standard a cui tutti mirano ma
è incredibile quanto questo non sia così
capita nella vita reale nella scienza dei dati e
allora finalmente possiamo semplicemente farlo
container in produzione però tu
voglio che tu sappia usare una specie di
Orchestrator o sai se stai usando
una sorta di sistema basato su streaming
selezionando GPU e CPU è il
il massimo della flessibilità se funziona
lì se funziona sul tuo portatile
non importa e solo per spingere finalmente
a casa uno di questo è un po ‘
dominio diverso ma e so che c’è
un pò di pensiero lavora la gente qui oggi così
Devo stare un po ‘ attento
c’è una grande compagnia e una cosa fantastica
compagnia ma il loro dipartimento marketing I
anche il pensiero deve essere integrato
in produzione anche perché loro
ho inviato questa email la scorsa settimana e io
sarebbe davvero interessati a trovare
COSA pensato lavori merde sismici I
trovo davvero affascinante in realtà io
penso che questa sia una mossa geniale di
dipartimento di marketing perché così tanti
la gente parlava di questo nel
ufficio e penso che sia fatto molto di più
per il pensiero funziona meglio di qualsiasi altra cosa
avrebbero potuto inviare così ben fatto
quella persona di marketing che ha fatto che
okay, ora ho una demo veloce
dimostrando tutti questi concetti
insieme
Ho provato a pensare ad un semplice esempio mio
esempio è un un negozio di whisky così la mia
requisito aziendale è che ho un cliente
che è un negozio di whisky perché penso
whisky e loro
sono venuto da me perché lo vogliono
fornire un USP nel fatto che possono
raccomandare i migliori whisky di chiunque altro
altrimenti, il problema è che vogliono questo
per essere in grado di scalare non possono davvero
permettersi di impiegare esperti di whisky ogni
uno solo dei loro negozi quindi è molto
più efficiente scrivere un algoritmo per
fallo per loro in modo da soddisfare le loro esigenze
vogliono che qualcuno passi?
whisky preferito in e vogliono
raccomandazioni che vogliono iniziare
spento con un set limitato di whisky ma
vogliono essere in grado di aggiornare i propri dati in
il modello in futuro è tutto
disponibile sul mio repository get è possibile
prendilo per il fatto che è tutto open source e
è abbastanza semplice, lo sai
algoritmo di divertimento per questo è
piuttosto nodoso è il tipo di famoso
set di dati standard per whisky e solo per
Coprilo un po ‘è semplice
algoritmo del vicino più vicino quindi se tu
ho due whisky se mi dispiace così tanto
i whisky sono caratterizzati da un insieme di
numeri a cui corrispondono i numeri
una caratteristica particolare di quel whisky così
le caratteristiche potrebbero essere fumose o
dolcezza cose toffee così
quello che succederebbe sarebbe
calcola la distanza tra qualcuno
whisky scelto e tutti i whisky
e quindi sceglieremmo i primi cinque o
dieci o qualsiasi altra raccomandazione basata
su quella così piuttosto semplice, ma si sa
funziona in modo molto efficace, ma la chiave
la cosa qui è completamente continua
conduttura di consegna così tutte quelle fasi
sono stati tutti implementati con te lo sai
test unitari e dati falsi e dati reali
e test di accettazione e ho usato
Quaderno di Giove per l’iniziale
analisi e siamo in grado di inserire nuovi
dati semplicemente inserendoli in git e
poi guardandolo fluire attraverso il
gasdotto, quindi spero che questo accadrà
suonare è eccellente, quindi ho fatto un
video qui perché probabilmente lo sai
sai che molto di questo richiede molto
ora così ora sto solo scherzando
terraform crea la mia nuova infrastruttura
per questo progetto e stiamo andando avanti
10 volte la velocità al momento labid bla
bla bla bla bla bla bla bla probabilmente tutto
usato per a vedere questo e poi alla fine
il risultato è un server funzionante
il cloud con qualche software iniziale
schierato Oh Deary me puoi vedere il
in fondo a quello schermo oh puoi farlo è
basta questo monitor va bene così quello che ho
ho appena finito di aggiustare i libri
perché non ha funzionato e finalmente abbiamo
il nostro algoritmo funziona davvero così
questo sta finendo il contenitore e
quando arriccia il contenitore, ottengo il mio
raccomandazioni indietro così un semplice RESTO
Test delle API conosci un passato in mcallen
Voglio che sia il mio whisky preferito e così
Otterrò questi consigli qui
eccezionale
così primo lavoro come ingegnere del software ho
capito che c’è forse un po ‘
bug nel mio codice quindi ho un culo UCF
McLenen e lui è effettivamente tornato
Macallan come una delle raccomandazioni
quindi è un po ‘inutile, quindi è il mio
il primo libro che ho intenzione di provare e correggere
così ora sono appena dentro il codice e
Ho appena intenzione di modificare quel codice che sono
andando fondamentalmente ignorare che il primo primo
valore lì quando esco il mio
raccomandazioni e scriveremo
che a quel punto lo spingeremo
al repository e ci andiamo e
allora guarderemo la nostra pipeline
quindi è abbastanza bello che abbiamo un
gasdotto qui dove abbiamo tutto il
test eseguiti parallelamente se tali test
passare poi entriamo in una fase di registro
che spinge quel file in a
registro e poi parleremo del
distribuire in un po ‘ma tutti quelli
le fasi sono semplicemente implementate con un semplice
sì più copione che conosci e ma il
la bellezza è che stiamo effettivamente usando
dati realistici per testare questo software
che tipo di non è qualcosa che
succede nella vita reale che non ho notato
sai che ciò che tende ad accadere è quello
lo fai manualmente e poi tu
testarlo manualmente e poi il software
gli ingegneri hanno una sorta di dati fittizi
che dovrebbero usare nei loro test e
hanno un risultato atteso ma è
molto piccolo sai che di solito è finto
i dati di solito non sono realistici e lo sono
certamente non reale
e poi alla fine del processo
i dati scienziati sarebbero venuti al
ingegnere del software e testare manualmente il suo
software per vedere se va bene lo sai
è un enorme manuale e un
processo molto mal gestito se possiamo
roba tutto questo in una pipeline come
abbiamo fatto qui solo pollice in alto va bene così
tutti i nostri test hanno superato il suo stato attuale
ha spinto il registro e una volta ottenuto
spinto al registro allora lo sarà
schierato al server per questo tutto quello che ho
fatto è solo in un vero hockey
facciamo SSH nel server e facciamo solo un
sai doc di Apple run finestra mobile che
non è bello se avessi più tempo che vorrei
probabilmente distribuirlo a Cuba Nettie o
qualcosa ma funziona
e lo dimostra abbastanza bene così io sono
solo andando a guardare quel container
sul server ora e in un minuto
vedremo quel contenitore lì vai così
ora è stato appena cancellato ed è
verrà ricreato lì così che è
la fase di spiegamento in azione quindi se noi
ora torna indietro e prova effettivamente questo nuovo
servizio e speriamo che dovremmo vedere a
migliore uscita Vado la ricerca dello stesso
cosa ancora account e di nuovo e tu
possiamo vedere che abbiamo rimosso Macallan dal
primo ingresso là fan tastic
e va bene ed è una specie di a
compito software tradizionale ma è
qualcosa che sarebbe un ingegnere del software
normalmente non uno scienziato dati in modo
di nuovo loro sono l’obiettivo qui è provare
e coinvolgere lo scienziato dei dati
l’ ingegneria del software o viceversa
se ora abbiamo un secondo scienziato di dati
o un altro ingegnere che tu sappia cosa io
non mi piacciono alcuni dei tuoi dati che sto andando
per cambiare il modello in modo che io vada
il taccuino ipython e sto guardando
cosa ha fatto la persona precedente e
ora mi vedrai semplicemente hackerare
in giro cercando di far funzionare qualcosa
ma l’idea è qui che questo è il
processo che un ingegnere farebbe normalmente
passare attraverso quando sta cercando di attuare
un nuovo modello o penso che in questo caso lo sono
provando
inserire alcuni nuovi dati un sacco di errori
molti errori finalmente capiscono come
fallo ancora non sono corretti i dati sbagliati
sospira come faccio a farlo come faccio io lì
vai c’è qualche minuto là dove io
era su Stack Overflow è per questo che il
la pausa era là là noi andiamo ha funzionato
quindi ho generato alcuni nuovi dati che ho
spinta che al repository e ora
stiamo attraversando la pipeline di costruzione
di nuovo così questa è la stessa pipeline di costruzione
ma con il cambio di dati quindi noi
non ho cambiato il modello ora così è
importante avere i dati quasi come
parte del modello se puoi forse il
i dati sono troppo grandi, ma se puoi, è così
davvero utile essere lì perché tu
può catturare bug come questo quindi penso che cosa
abbiamo appena visto che c’erano alcuni test
fallito perché i dati che diventano
un tale stato che non stava dando
l’output che avrebbe dovuto fare
quindi ora questa volta invece di aggiungere dati
Ho intenzione di rimuovere solo alcuni dati così
Ho rimosso il whisky e lo abbiamo
raggiunto, penso a quello che scopro ora
è che in realtà ho causato alcuni dei miei
test dell’unità per fallire rimuovendo la rimozione
uno dei whisky che era nella mia unità
prova quindi devo solo aggiustarlo
ci sei andato era un impegno sono
dicendo che sta funzionando davvero ora faccina
faccia e là andiamo i nostri test sono
finalmente passando e ancora una volta siamo
passando attraverso il registro e arriviamo a
distribuirlo lì è venuto a farlo
lo fanno
alla fine arriverà e tu
sapere che il risultato è finalmente schierato
modello ci andiamo finalmente con il nuovo
dati tutto senza toccare il modello ma
ancora andando attraverso il gasdotto per
garantire che non solo il nostro modello sia
valido ma i dati hanno un senso e quando
gettiamo diversi dati e nuovi dati a
ha ancora senso quindi puoi
immaginare cercando di applicare questo al tuo
roba che se tu se tu abbia
requisiti per la stessa accuratezza
requisiti che potresti rendere difficile
e regola veloce nella tua pipeline per fallire
quando la precisione del modello diminuisce a a
certo punto e ed è così così
pensa che l’ intero processo sia stato probabilmente
circa un’ora ho accelerato in su in circa 10
i minuti sono probabilmente solo a causa di
la mia scarsa ingegneria del software più di
qualsiasi cosa se vuoi dare un’occhiata
poi vai al link che puoi semplicemente
dai uno sguardo alle diapositive o vieni e
vedere me e ti fondamentalmente cerchiamo
per la ricerca finestra e siamo a posto
c’è così che vorrei ringraziare
tu molto semplicemente
[Applausi]
Please follow and like us: