Re: [nexa] AI Training is Copyright Infringement
Il 8 Settembre 2024 14:24:00 UTC, Guido Vetereha scritto:
Research has also shown that memorization occurs if an LLM sees a text repeatedly during training (Carlini et al., 2022b; Biderman et al., 2023). Because of this, *memorization can be seen as an extreme case of training data contamination* where a dataset is not only seen during training but repeated within the training set so often that the LLM becomes able to consistently generate it.
La memorizzazione, insomma, è un caso degenere.
Sembra un caso degenere perché immagini un'intelligenza artificiale che impara.
Non appena comprendi che si tratta semplicemente di un software programmato statisticamente
Che significa “software programmato statisticamente”? Una rete neurale è realizzata con programmi come altri utilizzando algoritmi di ottimizzazione, con un processo di fit dei parametri del modello rispetto ai dati per minimizzare una funzione di loss. Un modello statistico sarebbe quello costruito a partire da un campione statistico rappresentativo, selezionato appunto su basi statistiche. Ciò non vale per i LLM che usano tutti i dati disponibili, considerandoli la realtà stessa e non la loro rappresentazione. Quanto a “imparare”, è discutibile usare termini antropomorfi riguardo alle macchine, ma per intenderci si può dire che fanno qualcosa che si avvicina al nostro concetto di apprendere, ossia saper usare quanto visto in precedenza in situazioni nuove. —
Salve Giuseppe, On Mon, 9 Sep 2024 09:50:41 +0200 Giuseppe Attardi wrote:
Che significa “software programmato statisticamente”?
Un software (ovvero una sequenza di byte eseguibili da una macchina con una architettura nota in fase di compilazione) programmato attraverso tecniche statistiche, ovvero basate sull'elaborazione di grandi quantitativi di dati selezionati allo scopo.
Una rete neurale è realizzata con programmi come altri utilizzando algoritmi di ottimizzazione, con un processo di fit dei parametri del modello rispetto ai dati per minimizzare una funzione di loss.
Esatto, ottimo esempio. Con il termine "rete neurale artificiale" si con-fondono due software diversi programmati con tecniche diverse: - la macchina virtuale caratterizzata dall'architettura di interesse (la topologia della rete), tipicamente scritta in R, Python, C etc... - il software che quella macchina virtuale esegue, espresso come matrici numeriche, programmato appunto attraverso tecniche statistiche e compilato per quella specifica macchina virtuale Si tratta di software distinti, anche quando usati insieme. Il primo software (la macchina virtuale) viene eseguito dall'hardware (che può essere a sua volta virtuale, ovviamente), mentre il secondo (il cosiddetto "modello" della "rete neurale artificiale") viene eseguito dal primo. I sorgenti del primo vengono scritti. I sorgenti del secondo vengono selezionati. Cambiano le tecniche di programmazione e compilazione, ma rimangono sorgenti di software compilati per essere eseguiti dalle rispettive architetture di interesse.
Un modello statistico sarebbe quello costruito a partire da un campione statistico rappresentativo, selezionato appunto su basi statistiche.
Infatti! Proprio il software programmato statisticamente a partire dai dataset sorgente non è un modello statistico, è sbagliato chiamarlo "modello". Altrimenti finisce che i giuristi lo confondono con il data mining.
Ciò non vale per i LLM che usano tutti i dati disponibili, considerandoli la realtà stessa e non la loro rappresentazione.
Gli LLM non hanno alcuna consapevolezza dell'esistenza della realtà. Dunque non possono "considerare" i dati come la realtà. Gli LLM sono programmati compilando i dati SCELTI da chi li programma. La scelta dei contenuti da includere nel dataset è l'aspetto predominante del processo di programmazione statistica.
Quanto a “imparare”, è discutibile usare termini antropomorfi riguardo alle macchine, ma per intenderci si può dire che fanno qualcosa che si avvicina al nostro concetto di apprendere, ossia saper usare quanto visto in precedenza in situazioni nuove.
No. La calcolatrice non conosce l'aritmetica, anche se riesce a produrre in output una configurazione di cristalli liquidi che la tua mente può interpretare come somme che non le sono mai state sottoposte in passato. Una calcolatrice non sa cosa sia un numero più di quanto un LLM non sappia cosa sia un testo. Chi l'ha programmata non le ha insegnato l'aritmetica e lei non l'ha appresa, per nessuna definizione ragionevole di "apprendimento". Chi l'ha programmata ha codificato la _propria_ conoscenza della aritmetica in una serie di circuiti che ne _riproducono_ le regole sulle rappresentazioni elettriche fornite in input. Allo stesso modo, non c'è alcuna relazione fra il processo di programmazione statistica di una macchina in grado di ridurre vettori e l'apprendimento di un essere umano. Entrambi i processi sono iterativi e producono un cambiamento nel ente che li subisce, non hanno null'altro in comune. Se dicessi in una conferenza che la frutta "apprende" come comportarsi da marmellata, tutti riderebbero fragorosamente. :-D Dire che un software "apprende" come comportarsi è altrettanto ridicolo, ma hubris, ignoranza e soldi convincono troppe persone a non ridere quando sentono parlare di "machine learning". Così rimangono solo bambini e buffoni a ricordare che il re è nudo... e i software si programmano. ¯\_(ツ)_/¯ E sì, è vero: è davvero un lavoro estenuante! ;-) Giacomo
participants (2)
-
Giacomo Tesio -
Giuseppe Attardi