Sviluppo del progetto AI: come dovrebbero prepararsi i project manager

Pubblicato: 2022-03-11

Ascolta la versione audio di questo articolo

In qualità di project manager, probabilmente ti sei impegnato in una serie di progetti IT nel corso della tua carriera, da complesse strutture monolitiche ad app Web SaaS. Tuttavia, con il progresso dell'intelligenza artificiale e dell'apprendimento automatico, nuovi progetti con requisiti e problemi diversi stanno arrivando all'orizzonte a una velocità rapida.

Con l'ascesa di queste tecnologie, sta diventando meno "piacevole da avere" e invece essenziale per i project manager tecnici avere un sano rapporto con questi concetti. Secondo Gartner, entro il 2020, l'IA genererà 2,3 milioni di posti di lavoro, superando gli 1,8 milioni che rimuoverà, generando un valore aziendale di 2,9 trilioni di dollari entro il 2021. Il CEO di Google si spinge fino a dire che "l'IA è una delle cose più importanti l'umanità sta lavorando. È più profondo di […] elettricità o fuoco”.

Con le applicazioni dell'intelligenza artificiale che stanno già sconvolgendo settori che vanno dalla finanza all'assistenza sanitaria, i PM tecnici che possono cogliere questa opportunità devono capire in che modo la gestione dei progetti AI è distinta e come possono prepararsi al meglio per il panorama in evoluzione.

Teoria

Cosa significa tutto: AI vs. ML

Prima di approfondire, è importante avere una solida comprensione di cosa sia veramente l'IA. Con molti termini diversi spesso usati in modo intercambiabile, tuffiamo prima nelle definizioni più comuni.

La progressione dell'IA, dell'apprendimento automatico e dell'apprendimento profondo

La progressione dell'IA, dell'apprendimento automatico e dell'apprendimento profondo

Intelligenza Artificiale (IA)

L'intelligenza artificiale è un campo dell'informatica dedicato alla risoluzione di problemi che altrimenti richiedono l'intelligenza umana, ad esempio riconoscimento di schemi, apprendimento e generalizzazione.

Questo termine è stato abusato negli ultimi anni per denotare l'intelligenza artificiale generale (AGI) che si riferisce a programmi per computer autoconsapevoli, capaci di cognizione reale. Tuttavia, la maggior parte dei sistemi di intelligenza artificiale per il prossimo futuro sarà ciò che gli informatici chiamano "IA ristretta", il che significa che saranno progettati per svolgere un compito cognitivo molto bene, piuttosto che "pensare" da soli.

Apprendimento automatico (ML)

L'apprendimento automatico è un sottoinsieme dell'intelligenza artificiale che utilizza tecniche statistiche per dare ai computer la possibilità di apprendere dai dati senza essere programmati in modo esplicito.

AI e ML sono stati utilizzati in modo intercambiabile da molte aziende negli ultimi anni grazie al successo di alcuni metodi di apprendimento automatico nel campo dell'IA. Per essere chiari, l'apprendimento automatico denota la capacità di un programma di apprendere , mentre l'intelligenza artificiale comprende l'apprendimento insieme ad altre funzioni.

Per ulteriori informazioni sulle reti neurali e sul deep learning, fare riferimento all'appendice alla fine di questo articolo.

Un'importante distinzione: IA e algoritmi standard

Un aspetto chiave dell'IA è che i suoi algoritmi utilizzano una grande quantità di dati per regolare la loro struttura interna in modo tale che, quando vengono presentati nuovi dati, vengano classificati in base ai dati precedenti forniti. Chiamiamo questo "apprendimento" dai dati piuttosto che operare secondo le istruzioni di categorizzazione scritte rigorosamente nel codice.

Immagina di voler scrivere un programma in grado di distinguere le auto dai camion. Nell'approccio di programmazione tradizionale, proveremmo a scrivere un programma che cerchi caratteristiche specifiche e indicative, come ruote più grandi o un corpo più lungo. Dovremmo scrivere un codice che definisca in modo specifico come appaiono queste caratteristiche e dove dovrebbero essere trovate in una foto. Scrivere un programma del genere e farlo funzionare in modo affidabile è molto difficile, probabilmente producendo sia falsi positivi che falsi negativi, al punto che alla fine potrebbe non essere affatto utilizzabile.

È qui che gli algoritmi di intelligenza artificiale diventano molto utili. Una volta che un algoritmo di intelligenza artificiale è stato addestrato, possiamo mostrargli molti esempi e regola la sua struttura interna per iniziare a rilevare le caratteristiche rilevanti per la corretta classificazione delle immagini invece di fare affidamento su definizioni di caratteristiche statiche e prescritte.

Gestione del progetto AI in pratica

I dati sono re

Gli esseri umani non sono bravi a gestire grandi volumi di dati e l'enorme volume di dati a nostra disposizione a volte ci impedisce di utilizzarli direttamente. È qui che entrano in gioco i sistemi di intelligenza artificiale.

Un concetto fondamentale per quanto riguarda i sistemi di intelligenza artificiale è che le loro previsioni sono valide solo quanto i loro dati. Ad esempio, un algoritmo con un milione di punti dati supererà lo stesso algoritmo con 10.000 punti dati. Inoltre, BCG riferisce che "molte aziende non comprendono l'importanza dei dati e della formazione per il successo dell'IA. Spesso, dati migliori sono più cruciali per costruire un sistema intelligente rispetto a algoritmi più nudi, proprio come l'educazione spesso supera la natura negli esseri umani.

Con queste conoscenze al seguito, la preparazione e la pulizia dei dati è qualcosa che diventerà più prevalente nel processo di progetto. Questo passaggio è spesso la parte più laboriosa della creazione di un sistema di intelligenza artificiale, poiché la maggior parte delle aziende non dispone dei dati pronti nei formati corretti, pertanto gli analisti di dati potrebbero richiedere del tempo per completare questo passaggio essenziale.

La preparazione dei dati è un passaggio chiave nella gestione dei progetti di IA.

La preparazione dei dati è un passaggio chiave nella gestione dei progetti di IA.

Inoltre, la configurazione dell'infrastruttura dati e i lavori di pulizia dei dati sono molto più lineari rispetto al normale sviluppo del software e potrebbero richiedere una metodologia di gestione del progetto diversa.

Per riassumere, la creazione della giusta infrastruttura di dati e la preparazione dei dati da utilizzare può richiedere molto più tempo rispetto alla creazione del modello di machine learning per eseguire i dati. Questa è una grande considerazione per i project manager mentre gestiscono i team e pensano all'ambito dell'IA e alle stime dei progetti.

Inoltre, il set di dati dovrebbe essere continuamente aggiornato con i nuovi dati. L'accesso a set di dati univoci potrebbe essere il principale fattore decisivo che definisce quale prodotto ML ha maggior successo. È fondamentale rimanere aggiornati su questo al fine di raggiungere le migliori prestazioni possibili per il tuo progetto ML, anche dopo il lancio.

Il ciclo di vita dello sviluppo dell'IA

La maggior parte di voi avrà familiarità con il ciclo di vita di sviluppo dei sistemi standard (SDLC) e come le diverse metodologie e tecnologie lo stanno plasmando. È importante notare che lo sviluppo dell'IA porterà una nuova serie di sfide sul campo. Possiamo suddividere il ciclo di vita dello sviluppo dell'IA in questi passaggi: ideazione e rilevamento dei dati, definizione delle priorità degli MVP e sviluppo degli MVP in prodotti a tutti gli effetti.

Ideazione e scoperta dei dati

In questa prima fase, l'attenzione dovrebbe essere concentrata su due elementi chiave: l'utente finale del prodotto ML e quali pool di dati sono disponibili.

Affrontando il problema da due lati indipendenti, queste tecniche possono aiutare un project manager a restringere rapidamente le opportunità di prodotti ML disponibili all'interno di un'azienda. Durante questa fase, i migliori PM possono trarre vantaggio dalla loro conoscenza dello spazio del machine learning per comprendere meglio la difficoltà a cui possono essere risolti determinati problemi. Le cose si muovono molto velocemente nel campo del ML e alcuni problemi difficili possono essere resi molto più facili dai nuovi sviluppi nella ricerca.

Come accennato in precedenza, una volta scoperti i dati, è necessario pulirli e prepararli. Questo compito specifico viene normalmente svolto in fasi lineari, che non si adattano perfettamente a metodologie di progetto tipiche come Agile o Waterfall, sebbene possano essere forzate a degli sprint. In genere, la pulizia dei dati viene eseguita in modo iterativo aumentando gradualmente le dimensioni dei set di dati e preparandoli parallelamente ad altri sforzi di sviluppo.

Dare priorità al prodotto minimo vitale (MVP)

La verità che è meglio avere un prototipo funzionante di un prodotto più piccolo, piuttosto che uno grande non finito, è ancora qui con i prodotti di apprendimento automatico. I nuovi MVP ML ​​dovrebbero avere la priorità in base alla velocità di consegna e al loro valore per l'azienda. Se riesci a fornire prodotti, anche quelli più piccoli, con velocità, può essere una buona e rapida vittoria per l'intero team: dovresti prima dare la priorità a questi prodotti.

Preparare questi MVP nel classico stile Agile è una buona idea e il team di sviluppo dovrebbe concentrarsi sulla fornitura di modelli ML basati sui set di dati in continuo miglioramento preparati in modo indipendente dal team di dati. Un'importante distinzione qui è che il data team non deve necessariamente lavorare attraverso la stessa struttura Sprint del team che costruisce l'MVP .

MVP a prodotto a tutti gli effetti

Questo passaggio è il punto in cui l'infrastruttura dei dati diventa fondamentale. Se il tuo prodotto ML richiede l'accesso ad API ad alta frequenza da tutto il mondo, dovresti ora considerare come scalare l'infrastruttura per supportare il prodotto ML.

È qui che le modifiche ai moduli ML devono essere valutate attentamente per evitare di compromettere le prestazioni del prodotto attuale. La riqualificazione dei moduli ML con nuovi algoritmi o set di dati non comporta sempre un aumento lineare delle prestazioni, pertanto è necessaria una notevole quantità di test prima dell'implementazione in tempo reale. I test dei moduli ML per casi limite e potenziali attacchi di rete adversarial generativa (GAN) sono ancora agli inizi, ma è sicuramente qualcosa che i project manager devono tenere a mente quando eseguono un prodotto ML live.

Ruoli chiave nel ciclo di vita dello sviluppo dell'IA

I requisiti pesanti per lo sviluppo di applicazioni ML introducono nuovi ruoli nell'SDLC dei prodotti di intelligenza artificiale. Per essere un ottimo project manager nel campo delle applicazioni ML, devi avere molta familiarità con i seguenti tre ruoli: data scientist, data engineer e infrastruttura engineer. Sebbene a volte siano mascherati da altri titoli, inclusi ingegneri dell'apprendimento automatico, ingegneri dell'infrastruttura dell'apprendimento automatico o scienziati dell'apprendimento automatico, è importante avere una solida comprensione di queste posizioni fondamentali e del loro impatto sul processo di sviluppo del machine learning.

Tre ruoli chiave con cui i PM tecnici dovrebbero avere familiarità: data scientist, data engineer e infrastrutturale

Tre ruoli chiave con cui i PM tecnici dovrebbero avere familiarità: data scientist, data engineer e infrastrutturale

Data Scientist

I data scientist sono le persone che costruiscono i modelli di machine learning. Sintetizzano le idee in base alla loro profonda comprensione delle statistiche applicate, dell'apprendimento automatico e dell'analisi e quindi applicano le loro intuizioni per risolvere problemi aziendali reali.

I data scientist sono talvolta visti come versioni avanzate degli analisti di dati. I data scientist, tuttavia, di solito hanno solide capacità di programmazione, sono a proprio agio nell'elaborazione di grandi quantità di dati che si estendono tra i data center e hanno esperienza nell'apprendimento automatico.

Ci si aspetta inoltre che abbiano una buona comprensione delle infrastrutture di dati e del big data mining, oltre a essere in grado di eseguire esercizi esplorativi da soli, guardando i dati e trovando per trovare indizi e approfondimenti iniziali al loro interno.

Competenze fondamentali: Python, R, Scala, Apache Spark, Hadoop, Machine Learning, Deep Learning, Statistica, Data Science, Jupyter, RStudio

Ingegnere dei dati

Gli ingegneri dei dati sono ingegneri del software specializzati nella creazione di software e infrastrutture necessari per il funzionamento dei prodotti ML. Tendono a concentrarsi sull'architettura generale e, anche se potrebbero non essere esperti di machine learning, analisi o big data, dovrebbero avere una buona comprensione di questi argomenti per testare il loro software e la loro infrastruttura. Ciò è necessario per consentire ai modelli di apprendimento automatico creati dal data scientist di essere implementati con successo ed esposti al mondo reale.

Competenze fondamentali: Python, Hadoop, MapReduce, Hive, Pig, Data Streaming, NoSQL, SQL, Programmazione, DashDB, MySQL, MongoDB, Cassandra

Ingegnere delle infrastrutture

Gli ingegneri dell'infrastruttura si prendono cura della spina dorsale dei prodotti ML: il livello dell'infrastruttura. Sebbene gli ingegneri dei dati possano creare parte di questa infrastruttura, è spesso costruita sopra il livello preparato e concordato dal team dell'infrastruttura.

Gli ingegneri dell'infrastruttura possono lavorare in più team di ML, con l'obiettivo di creare un ambiente scalabile ed efficiente in cui le app di ML possono scalare per servire milioni di utenti. Gli ingegneri dell'infrastruttura non si occupano solo del livello software delle piattaforme, ma si coordinano anche con i partner dei data center per garantire che tutto funzioni senza intoppi, dalla posizione geografica dei dati ospitati all'hardware. Con questi aspetti che acquistano importanza per i progetti ML, gli ingegneri infrastrutturali stanno diventando sempre più importanti nelle aziende basate sull'intelligenza artificiale.

Competenze fondamentali: Kubernetes, Mesos, EKS, GKE, Hadoop, Spark, HDFS, CEPH, AWS, Cloud Computing, Operazioni di data center, Infrastruttura di elaborazione end-to-end, Infrastruttura IT, Gestione dei servizi

Sfide comuni oggi

Con l'emergere di prodotti basati su AI e ML, ci si aspetta che i project manager si imbattono in sfide familiari e completamente estranee. I migliori PM sono profondamente consapevoli di questi potenziali problemi durante l'intero processo, dall'individuazione dei progetti fino al completamento.

Controllo di realtà

Nonostante la popolarità e la promessa dell'IA, ci sono buone probabilità che il problema che stai cercando di risolvere non richieda un'elaborata soluzione di IA .

Molti problemi di previsione possono essere risolti utilizzando modelli di regressione statistica più semplici e, in alcuni casi, più affidabili. È molto importante che un PM esegua un controllo di integrità prima di iniziare un progetto per garantire che il problema richieda davvero l'apprendimento automatico.

A volte è saggio iniziare con un modello statistico più semplice e procedere in parallelo con una soluzione basata sull'apprendimento automatico. Ad esempio, se stai creando un motore di suggerimenti, potrebbe essere saggio iniziare con una soluzione più semplice con un ciclo di vita di sviluppo più rapido, fornendo una buona base che il successivo modello ML dovrebbe superare.

Inclinazione dell'ambito dell'IA

Le cause più comuni di scorrimento dell'ambito nei progetti ML sono legate al tentativo di fare troppe cose contemporaneamente e alla sottovalutazione dello sforzo necessario per preparare i dati .

Per affrontare il primo problema, gestisci le parti interessate in modo che capiscano che è meglio iniziare con vittorie rapide piuttosto che piani grandiosi. Comunicare questo approccio continuamente durante tutto il progetto, durante la creazione e il test.

Inizia con piccole funzionalità atomiche che possono essere facilmente definite e testate. Se ti trovi con un compito complesso, prova a scomporlo in compiti più semplici che sono buoni proxy per il tuo compito principale. Dovrebbe essere facile comunicare ciò che questi compiti si prefiggono di realizzare.

Ad esempio, se stai cercando di prevedere quando un utente farà clic su un annuncio specifico, puoi prima provare a prevedere se l'utente respinge completamente l'annuncio. In questo approccio, il problema è semplificato e può essere meglio affrontato e previsto dagli attuali modelli ML. Facebook ha realizzato un'ottima serie che approfondisce questo argomento, concentrandosi maggiormente sulla pipeline ML dall'inizio alla consegna del modello.

Per affrontare il secondo contributore allo scope creep, assicurati di essere in grado di preparare i dati per supportare i tuoi progetti ML. Il semplice presupposto che tu abbia i dati necessari, nel formato necessario, è l'errore più comune che i PM fanno quando iniziano appena con i progetti ML. Poiché la preparazione e la pulizia dei dati sono spesso la parte più lunga del processo del progetto ML, la gestione di questo passaggio è essenziale. Assicurati che il tuo data scientist abbia accesso ai dati giusti e possa verificarne la qualità e la validità prima di inventare le funzionalità di ML che desidera creare.

Preparati a eseguire l'etichettatura e la pulizia dei dati come esercizio continuo durante tutto il progetto, non solo come iniziatore, poiché il progetto può sempre trarre vantaggio da dati migliori e più. Poiché questo passaggio non è l'attività più accattivante, suddividi questo lavoro in sprint in modo che il tuo team di dati possa sentire l'avanzamento dei propri sforzi invece di affrontare un arretrato di biglietti infinito.

A volte, le aziende esternalizzano l'etichettatura dei dati a terzi. Sebbene ciò possa aiutare a risparmiare tempo e costi iniziali, può anche produrre dati inaffidabili, ostacolando in definitiva il successo del tuo modello ML. Per evitare ciò, utilizzare la tecnica della sovrapposizione multipla, in cui ogni dato viene controllato da più parti e utilizzato solo se i risultati corrispondono.

Durante la pianificazione del progetto, concedere al team dati un tempo sufficiente per apportare modifiche nel caso in cui i requisiti di etichettatura cambino durante il progetto e sia necessaria una rietichettatura.

Infine, controlla se i tuoi dati possono essere facilmente utilizzati con i metodi ML esistenti invece di inventare nuovi metodi ML, poiché partire da zero può aumentare drasticamente il tempo e l'ambito del progetto. Nota che se stai cercando di risolvere un problema di ML che non è stato ancora risolto, ci sono buone probabilità che fallirai. Nonostante il successo dell'apprendimento automatico e il numero di articoli di ricerca pubblicati, risolvere i problemi di machine learning può essere un'impresa molto difficile. È sempre più facile iniziare con un'area di ML che ha molti buoni esempi e algoritmi e provare a migliorarla piuttosto che cercare di inventare qualcosa di nuovo.

Apprendimento automatico, aspettative e UX

Ogni PM dovrebbe essere pronto a pensare all'esperienza utente dei prodotti di intelligenza artificiale che stanno creando e a come gestire al meglio il team che li sta costruendo. Google ha scritto un ottimo pezzo sul loro modo di pensare a UX e AI, con un'enfasi sull'interazione umana.

Questo punto è particolarmente importante se il tuo prodotto ML deve interagire con gli operatori o addirittura essere sostituito da loro. Il progetto dovrebbe aggiungere la quantità minima necessaria di stress agli operatori e agli utenti del sistema. Ad esempio, i chatbot sono spesso basati sull'apprendimento automatico, ma possono essere rilevati senza problemi da un operatore umano.

Esiste anche la possibilità che le parti interessate possano aspettarsi molto di più dai prodotti di apprendimento automatico rispetto a ciò che possono offrire. Questo di solito è un problema che deriva dal clamore creato dai media quando si scrive di prodotti di intelligenza artificiale, quindi è importante che il project manager stabilisca aspettative ragionevoli.

Assicurati di spiegare cos'è veramente lo strumento di intelligenza artificiale e cosa può ottenere per i tuoi stakeholder in modo da poter gestire le loro aspettative abbastanza bene prima che testano lo strumento. Una buona UX è ottima, ma non può fornire valore agli utenti con aspettative non realistiche, quindi è essenziale che qualsiasi PM coinvolto gestisca queste informazioni ed educhi i propri stakeholder sull'IA e sulle sue capacità realistiche.

Garanzia della qualità (QA) e pratiche di test in ML

L'IA nella sua forma attuale è un campo relativamente nuovo. Mai prima d'ora ci sono state così tante applicazioni che utilizzano il deep learning per raggiungere i propri obiettivi. Questi nuovi sviluppi presentano una serie di sfide, in particolare nei test.

Sebbene sia relativamente facile testare un software standard con un chiaro "set di regole" scritto dalle persone, è molto più difficile testare in modo esaustivo i modelli di apprendimento automatico, in particolare quelli costruiti utilizzando le reti neurali. Attualmente, la maggior parte dei modelli ML viene testata dagli stessi data scientist, ma ci sono pochi metodi concordati di test con i team di QA standard per garantire che i prodotti ML non falliscano in modi inaspettati.

Con nuovi modi per manipolare i risultati dei modelli noti come questi attacchi GAN, il test completo dei modelli diventerà sempre più importante. Questa diventerà una priorità per molti progetti ML e negli anni a venire vedremo più test di "integrazione" per i modelli ML. Per la maggior parte dei progetti semplici, questo potrebbe non essere attualmente un problema tangibile, ma è importante tenerlo a mente se stai creando un prodotto ML mission-critical.

Furto di modelli ML e plagio

Da quando questo articolo di Wired è stato pubblicato e il documento originale è stato presentato alla conferenza USENIX Security nel 2016, è diventato evidente che esiste la possibilità di plagiare un modello ML live.

Questo è ancora piuttosto difficile da realizzare bene, ma se si dispone di un modello in esecuzione tramite un'API disponibile pubblicamente, è importante essere consapevoli di questa possibilità. In teoria, una parte con un accesso sostanziale ad essa potrebbe addestrare la propria rete in base alla tua e copiare efficacemente la tua capacità di previsione.

Questo è ancora piuttosto limitato in termini di possibilità, ma assicurati di lavorare con il tuo team su una strategia di prevenzione per possibili attacchi se questo è un problema per il tuo progetto.

Carenza di talenti

Con l'attuale domanda di esperti di intelligenza artificiale di livello mondiale, la competizione per ottenere il talento giusto è agguerrita. In effetti, il New York Times riporta che esperti di intelligenza artificiale di livello mondiale possono guadagnare fino a 1 milione di dollari all'anno lavorando per le grandi centrali tecnologiche della Silicon Valley. In qualità di PM, mentre cerchi esperti di intelligenza artificiale da inserire nel tuo team, tieni presente queste dinamiche in quanto potrebbero influire sui cicli di assunzione, sul budget o sulla qualità del lavoro svolto.

Questa carenza si estende oltre le menti innovative che creano i nuovi algoritmi di deep learning ed è vero anche per ingegneri e scienziati di dati di alta qualità.

Molte delle persone più talentuose partecipano a concorsi di apprendimento automatico come Kaggle, dove possono sperare di vincere oltre $ 100.000 per la risoluzione di difficili problemi di apprendimento automatico. Se è difficile assumere esperti di ML a livello locale, è consigliabile cercare soluzioni fuori dagli schemi, come assumere appaltatori specializzati in remoto o gestire la propria competizione Kaggle per i problemi più difficili di ML.

Sfide legali ed etiche

Le sfide legali ed etiche dell'IA nella gestione dei progetti sono duplici.

La prima serie di sfide deriva dai dati utilizzati per addestrare i modelli ML. È essenziale capire da dove provengono i dati che utilizzi e in particolare se hai i diritti per utilizzarli e le licenze che ti consentono di utilizzare i dati.

È sempre importante consultare i propri avvocati per risolvere tali domande prima di implementare un modello addestrato sui dati per i quali potresti non disporre del giusto tipo di licenza. Poiché si tratta di un campo relativamente nuovo, molte di queste risposte non sono chiare, ma i PM dovrebbero assicurarsi che i loro team utilizzino solo set di dati che hanno i diritti di utilizzare.

Ecco un buon elenco di set di dati pubblicamente disponibili per il training degli algoritmi ML.

La seconda serie di sfide deriva dal garantire che il sistema non sviluppi un pregiudizio sistematico. Ci sono stati numerosi casi di tali problemi negli ultimi anni, in cui un'azienda di fotocamere ha dovuto ammettere che la sua tecnologia di riconoscimento del sorriso rileva solo persone di una particolare razza perché è stata addestrata solo su dati contenenti volti di quella razza. Un altro esempio è venuto da una grande azienda di software, che ha dovuto ritirare il proprio bot Twitter di autoapprendimento dopo alcuni giorni di apprendimento, poiché uno sforzo concertato di un gruppo di troll di Internet ha prodotto insulti razzisti e ripetuto cospirazioni selvagge.

Il grado di questi problemi può essere minore o distruttivo del progetto, quindi quando sviluppano sistemi critici, i PM dovrebbero assicurarsi di considerare tali possibilità e prevenirle il prima possibile.

Buone fondamenta portano a strutture forti

Il progresso della gestione delle informazioni, che porta all'IA.

Il progresso della gestione delle informazioni, che porta all'IA.

In sintesi, l'imminente rivoluzione dell'IA produce una serie di progetti interessanti e dinamici che spesso si accompagnano a un processo di sviluppo modificato, un archetipo di squadra diverso e nuove sfide.

I migliori project manager tecnici non hanno solo una buona comprensione delle basi dell'IA, ma anche l'intuizione per la difficoltà di ogni fase del progetto e cosa è veramente possibile creare con il loro team. Poiché l'IA non è una soluzione COTS (commercial off-the-shelf), anche le aziende che scelgono di acquistare determinati prodotti ML dovranno comunque investire per testare nuove cose e gestire correttamente i propri dati e l'infrastruttura.

È chiaro che i tipi di prodotti software e i processi per crearli stanno cambiando con l'emergere dell'IA. I project manager in grado di cogliere ed eseguire questi nuovi concetti saranno attori fondamentali nella creazione dei prodotti di machine learning del futuro.

Materiali extra dall'autore

Teoria aggiuntiva: DL e NN

Oltre alla terminologia più comune di intelligenza artificiale (AI) e machine learning (ML), i project manager possono trarre vantaggio dall'essere consapevoli di distinguere ulteriormente il deep learning (DL) e le reti neurali (NN).

Apprendimento profondo (DL)

Il deep learning fa parte di una famiglia più ampia di metodi di machine learning basati sull'apprendimento delle rappresentazioni dei dati, al contrario dei classici algoritmi specifici per attività.

La maggior parte dei moderni modelli di deep learning si basa su una rete neurale artificiale, sebbene possano utilizzare vari altri metodi.

Reti neurali (NN)

Le reti neurali sono strutture matematiche connesse e di ispirazione biologica che consentono ai sistemi di intelligenza artificiale di apprendere dai dati loro presentati.

Possiamo immaginare queste reti come milioni di piccole porte che si aprono o si chiudono, a seconda del nostro input di dati. Il successo di queste tecniche è stato reso possibile dalla crescita della potenza di calcolo delle GPU negli ultimi anni, che ci ha consentito di regolare rapidamente più di quelle "piccole porte" all'interno delle reti neurali.

Un diagramma di rete neurale

Un diagramma di rete neurale

Esistono diversi tipi di reti neurali, ciascuna accompagnata da casi d'uso specifici e livello di complessità. Potresti vedere termini come CNN (rete neurale convoluzionale) o RNN (rete neurale ricorrente) usati per descrivere diversi tipi di architettura di rete neurale.

Per capire meglio come appaiono e come funzionano, ecco una fantastica visualizzazione 3D di come "appaiono" le reti neurali mentre sono attive.

Interessato a saperne di più sull'IA?

Se, dopo aver letto questo, vuoi approfondire l'argomento, ti consiglio di dare un'occhiata a queste fonti:

Capire le reti neurali

Se vuoi approfondire i meccanismi di funzionamento delle reti neurali, ti suggerisco di dare un'occhiata alla serie 3Blue1Brown sulle reti neurali su YouTube. Secondo me, questa è di gran lunga la migliore spiegazione approfondita delle reti neurali. Viene fornito in termini semplici e non richiede alcuna conoscenza preliminare.

Rimani aggiornato con AI News

Se vuoi rimanere aggiornato con i più recenti progressi nella tecnologia AI senza passare ore a leggere documenti accademici, ti consiglio i seguenti Two Minute Papers. Questo canale fornisce aggiornamenti settimanali di due minuti sulle nuove tecniche di intelligenza artificiale più impressionanti e sulle loro implementazioni.

Imparare le basi dello sviluppo di ML

Se vuoi dilettarti nel codice da solo e hai alcune abilità rudimentali in Python, puoi dare un'occhiata a Fast.ai. Il loro corso consente a chiunque abbia competenze di sviluppo di base di iniziare a sperimentare e giocare con le reti neurali.

Fondamenti di Machine Learning

Questo suggerimento è per coloro che vogliono iniziare dall'inizio e raggiungere l'apice della comprensione e dell'implementazione dell'apprendimento automatico.

Creato dall'ormai leggendario Andrew Ng, che ha lanciato Coursera con questo corso, richiede un notevole investimento di tempo, almeno sei mesi, ma può essere un modo estremamente produttivo per trascorrere un sabato.


Nota: le definizioni dei termini chiave sono state adattate da Wikipedia.