Intelligenza Artificiale Open Source: strumenti e vantaggi
L’intelligenza artificiale, specialmente quella di tipo generativo, è stata la protagonista dell’innovazione e sta trovando applicazioni in ogni settore, dalle previsioni meteo, alla salute, al monitoraggio del traffico, alla scoperta di nuovi materiali. L’utilizzo sempre più esteso dell’intelligenza artificiale da parte di utenti, aziende e pubbliche amministrazioni, porta con sé la necessità di discutere di che cosa significa essere Open Source per un sistema AI.
La definizione di open source comprende i diritti degli utenti che utilizzano un software, tuttavia, nel contesto di un sistema di intelligenza artificiale, la componente software rappresenta solo una parte limitata. La maggior parte del sistema è costituita da dati, e risulta poco chiaro come applicare la definizione di open source a questi ultimi.
I principi dell’open source hanno dimostrato nel corso degli anni vantaggi significativi per tutti gli attori coinvolti, eliminando le barriere all’apprendimento, all’utilizzo, alla condivisione e al miglioramento del software. Allo stesso modo, è fondamentale che tutti possano accedere a tali vantaggi anche nell’ambito dell’intelligenza artificiale, al fine di sviluppare e distribuire sistemi AI affidabili e trasparenti.
In che modo l’intelligenza artificiale può essere Open Source?
Un’applicazione IA consiste di più componenti rispetto ad una tradizionale applicazione software e di conseguenza la definizione di open source ha bisogno di adattarsi ed espandersi in modo appropriato.
A differenza dei software open source, per i quali esistono linee guida ben definite stabilite dall’OSI (link esterno), l’intelligenza artificiale introduce livelli di complessità che sfidano il framework. Le quattro libertà fondamentali del software open source – libertà di eseguire, studiare, ridistribuire e migliorare il programma – non contemplano l’accesso e la disponibilità di ogni componente o input del progetto di intelligenza artificiale.
Alcuni elementi che compongono un sistema AI prescindono dai principi dell’open source, in particolare i dati. Le varie iterazioni dei dati utilizzate per addestrare i modelli, inclusi i corpus, i dati pre-elaborati, i dati puliti, i dati di test e le etichette, non rientrano nei principi dell’open source. Allo stesso modo, i dati recuperati, i dati per task specifici e i dati di prompting sono essenzialmente equivalenti agli input utente su un pacchetto open source e quindi esulano dalla definizione di open source. Al contrario, l’accesso al codice (prerequisito delle libertà 1 e 3), rientra nella sfera dell’open source, come anche il modello, l’architettura, i parametri e i bias dovrebbero utilizzare una licenza che permette ad utenti e sviluppatori di applicare le 4 libertà.
L’intelligenza artificiale open source fornisce componenti di base e output specifici, permettendo agli sviluppatori di sfruttare le quattro libertà fondamentali, ma senza la garanzia di poter riprodurre completamente il modello originale. È possibile per gli utenti avvalersi di dati pubblici e fonti OSINT per addestrare modelli simili all’originale. Si noti che, in ogni caso, software e tecnologie completamente conformi a tutti i requisiti dell’OSI sono ancora rari.
> Leggi anche: Intelligenza Artificiale e Cyber Security: 3 campi di applicazione
Perché l’IA dovrebbe essere Open Source
L’accesso alla tecnologia e all’innovazione dovrebbe essere considerato un diritto universale. Applicare i principi dell’open source all’IA democratizza l’accesso, lo studio e l’utilizzo di questa tecnologia e permette ad aziende e individui di esplorarla, senza incontrare insuperabili barriere in entrata.
Inoltre, l’approccio open source promuove la trasparenza, la creatività e la competizione. Con l’avanzare degli anni, le applicazioni dell’intelligenza artificiale open source generativa si estenderanno ben oltre le nostre attuali concezioni. Questi modelli rivoluzioneranno i servizi essenziali, modificheranno il modo in cui accediamo alle informazioni e trasformeranno istituzioni pubbliche e private.
La pubblicazione dei modelli di intelligenza artificiale consentirebbe a ricercatori e sviluppatori di esaminare attentamente il funzionamento di questi sistemi IA, valutando la loro idoneità e identificando eventuali vulnerabilità da mitigare. Sviluppatori e PMI potrebbero inoltre adattare i modelli esistenti per creare nuove applicazioni, ottimizzare modelli per compiti specifici, addestrare modelli per rappresentare comunità diverse e sfruttare opportunità di business senza dover sostenere costi eccessivi.
La trasparenza è fondamentale per alimentare un ecosistema digitale innovativo e prospero. Senza di essa, gli utenti avrebbero difficoltà a valutare la sicurezza e l’affidabilità degli strumenti AI. Questo concetto è evidente nel successo di Android, presente sulla maggior parte degli smartphone, e di Linux, impiegato nei data center, nei sottomarini e nei razzi di SpaceX. Inoltre, i recenti progressi nella ricerca in campo di intelligenza artificiale sono stati possibili grazie alla disponibilità di architetture come i transformer e di librerie open source come PyTorch, che hanno favorito la collaborazione aperta tra ricercatori e sviluppatori di tutto il mondo.
5 strumenti Open Source AI
Ecco una panoramica di cinque strumenti open source per l’intelligenza artificiale e il machine learning che favoriscono la collaborazione e l’innovazione:
- TensorFlow è un framework flessibile ed estensibile per l’apprendimento automatico sviluppato da Google, che supporta linguaggi come Python e JavaScript. Permette ai programmatori di sviluppare e addestrare modelli di machine learning in diversi contesti e ne supporta il deployment su diverse piattaforme, inclusi dispositivi mobili e browser web. Ha una community robusta ed una libreria molto fornita di modelli pre costruiti e di strumenti che possono semplificare il processo di sviluppo, rendendo più facile agli utenti di sperimentare e innovare con l’AI. Tensorflow ha anche migliori funzionalità di data visualization rispetto agli altri strumenti e questo permette di lavorare con più facilità sulle reti neurali. Per chi si è appena affacciato al mondo del machine learning, questo strumento può avere una rapida curva di apprendimento ed essere considerato complesso, rispetto ad altri framework, nella gestione di operazioni più semplici.
- PyTorch è uno dei framework open source di deep learning più recenti, sviluppato dal gruppo di ricerca sull’IA di Facebook. Presenta un’interfaccia intuitiva e la sua integrazione con le librerie Python e il supporto per l’accelerazione GPU assicurano livelli efficienti di addestramento e di sperimentazione. Offre un ampio supporto per la ricerca nel deep learning ed è facile da utilizzare anche dagli utenti principianti. Rispetto a Tensorflow presenta una comunità ridotta ed è meno ottimizzato per il deployment su larga scala.
- FastAI è una libreria open source per il deep learning che si basa su PyTorch. È progettata per semplificare il processo di sviluppo e apprendimento dei modelli. Presenta un’interfaccia di alto livello che rende più facile la creazione di modelli complessi con poche righe di codice e offre un’ampia raccolta di tutorial, che la rendono accessibile per i principianti. FastAI non è tuttavia uno strumento indicato per progetti complessi.
- MLFlow è una piattaforma open source che gestisce i workflow di machine learning, sviluppata da Databricks. Fornisce strumenti per gestire l’intero processo, dalla sperimentazione alla produzione e offre supporto per diversi framework di machine learning, come i già citati tensorflow e pytorch. Presenta un’interfaccia utente intuitiva e dashboard per visualizzare in modo facile i risultati degli esperimenti. Come TensorFlow, presenta una ripida curva di apprendimento e dipende dalla piattaforma Databricks per alcune funzionalità avanzate. Inoltre, nonostante sia uno degli strumenti più conosciuti per gestire i workflow di machine learning, presenta una serie di limitazioni, ad esempio l’assenza di un ambiente multi utente, capacità di condivisione, accesso basato sui ruoli e funzionalità di sicurezza avanzate, che rendono l’integrazione dello strumento nell’ambiente enterprise molto complesso.
- OpenCV (Open Source Computer Vision Library) è una libreria open source per la visione artificiale e il machine learning scritta in C e C++. Oggi è lo standard de facto per tutto ciò che è legato alla computer vision ed elaborazione delle immagini: viene infatti usato dalle grandi aziende tech quali Google, Microsoft, IBM e Facebook, ma anche Toyota, Sony e Siemens. Offre una vasta raccolta di algoritmi di visione artificiale e strumenti per l’elaborazione delle immagini, inclusi rilevamento di oggetti, tracciamento del movimento e molto altro ed è facile da usare grazie anche alla vasta documentazione disponibile.
La sicurezza rimane una delle principali preoccupazioni sollevate dalle imprese che operano nel settore “closed source”. I governi di tutto il mondo stanno già intervenendo per regolamentare l’uso di questi sistemi, con l’obiettivo di democratizzarne l’accesso senza compromettere la sicurezza.
Ad esempio, l’AI ACT
“si applica ai sistemi di IA rilasciati con licenza libera e open source, a meno che non siano immessi sul mercato o messi in servizio come sistemi di IA ad alto rischio o come sistema di IA rientrante nell’ambito di applicazione dell’articolo 5 o 50.”
> Leggi anche: Intelligenza artificiale: il Parlamento Europeo approva la legge
Nonostante l’emergere degli strumenti open source per l’intelligenza artificiale rappresenti una novità con importanti applicazioni future, è essenziale approcciarli e adottarli con cautela, specialmente quando vengono integrati nei sistemi aziendali. Questo implica la necessità di coinvolgere partner tecnologici esperti per ottimizzare i modelli e garantire il raggiungimento di elevati standard di efficacia, fiducia e sicurezza nell’utilizzo aziendale.
Fonti:
Brooks, B. (2024, February 9). Open-source AI is good for Us. IEEE Spectrum. https://spectrum.ieee.org/open-source-ai-good
Hermoni, O., & Edelsohn, D. (2024, February 14). Adapting the definition of open source to AI: The quest for the holy grail. The Linux Foundation AI & Data. https://lfaidata.foundation/blog/2024/02/14/adapting-the-definition-of-open-source-to-ai-the-quest-for-the-holy-grail/
Mucci, T. (2023, December 21). Five open-source AI tools to know. IBM Blog. https://www.ibm.com/blog/five-open-source-ai-tools-to-know/
The open source definition. Open Source Initiative. (2024, February 16). https://opensource.org/osd
Pascal, D. (n.d.). What is open source AI and why is profit so important to the debate?. euronews. https://www.euronews.com/next/2024/02/20/open-source-vs-closed-source-ai-whats-the-difference-and-why-does-it-matter
Thévenet, A. (2023, October 9). Defining open source AI. Joinup. https://joinup.ec.europa.eu/collection/open-source-observatory-osor/news/defining-open-source-ai