Guido e Giuseppe, vi ringrazio di questo scambio di idee che è davvero interessante e prezioso, utile e di facile lettura E' difficile trovare qualcosa di così chiaro e rigoroso, almeno secondo la mia percezione dello stato del dibattito sul tema. Peccato solo che la sua disponibilità resti confinata a questa mlist: varrebbe davvero la pena di renderlo pubblico.
Giovanna Il giorno lun 17 feb 2025 alle ore 12:09 Guido Vetere <vetere.gu...@gmail.com> ha scritto: > > secondo me invece è proprio sul ragionamento analogico (piuttosto che logico) > che l'AI generativa incontrerà il suo più serio limite, ma vedremo > per il resto sono d'accordo: questi language model ci faranno capire (anche > negativamente) molte cose interessanti > per esempio ci diranno cose sul linguaggio che la grammatica e la > lessicografia non ci hanno ancora detto, ne parlo nel mio libro > G. > > > On Sat, 15 Feb 2025 at 08:47, Giuseppe Attardi <atta...@di.unipi.it> wrote: >> >> Il punto è proprio quello: il modello impara da sè la teoria e lo fa in un >> modo che non è necessariamente lo stesso di come lo facciamo noi. >> >> Un caso eclatante è la Mossa 37 di AlphaGo contro Sedol. È stato ciò che >> viene chiamato un Aha moment, ossia AlphaGo ha fatto una mossa che nessun >> umano si sarebbe aspettato. >> Come dice Andrei Karpathy, il RL consente slla macchina di apprendere cose >> che noi non sappiamo e che quindi non potremmo insegnarle. È questa la >> novità. >> È per questo che non sono solo pappagalli stocastici. >> Nel futuro ne vedremo sempre di più e forse saremo noi a dover imparare da >> loro. >> >> Sono queste evoluzioni che a RMS sembrano essere sfuggite. >> >> Per illustrare il processo, meglio dei miei due esempi, eccovi un riassunto >> visuale del funzionamento dei modelli che ragionano: >> >> https://newsletter.maartengrootendorst.com/p/a-visual-guide-to-reasoning-llms >> >> — >> >> On 14 Feb 2025, at 19:07, Guido Vetere <vetere.gu...@gmail.com> wrote: >> >> >> molto interessante, grazie, ma secondo me è un esempio che depone contro la >> tua tesi :-) >> se conosci la semantica dei numeri e degli operatori, non ti serve alcun >> tipo di apprendimento da esempi: L uguale o più grande di F, ed F è uguale o >> più grande di V, quindi L è uguale o più grande di V. i bambini delle >> elementari lo intuiscono geometricamente a prima vista >> il motivo per cui devi ricorrere a esempi e rinforzi è proprio il fatto che >> la rete neurale non ragiona con la semantica del problema, come invece >> facciamo noi, anche intuitivamente >> non ti far ingannare dal fatto che la macchina dice cose del tipo: >>> >>> F is at least as much as V (F ≥ V), so the relation between F and V is F is >>> greater than or equal to V. >> >> perché quelle sono frasi prodotte non su base semantica, ma per imitazione >> di frasi analoghe a quelle osservate nel training >> ora non ripetere che 'con la semantica non si sono risolti i problemi, >> smucinando coi dati invece sì' perché questo può anche essere >> contingentemente vero, ma non prova nulla >> >> buona serata, >> G. >> >> >> >> On Fri, 14 Feb 2025 at 18:26, Giuseppe Attardi <atta...@di.unipi.it> wrote: >>> >>> Il modello DeepSeek R1 è stato addestrato a “svolgere ragionamenti" con un >>> SFT+RL su esempi di ragionamenti logico matematici: è quindi qualcosa di >>> diverso da un semplice LLM. >>> Quando si insegna la matematica, un insegnante presenta la teoria (1), poi >>> mostra la soluzione di alcuni esercizi (2) e poi sottopone gli studenti a >>> degli esercizi (3) per vedere se hanno capito. >>> Nel training di modelli con STF+RL si fa qualcosa di simile: >>> 1 è il training del LLM, acquisizione della conoscenza di base >>> 2 è il SFT+RL >>> 3 sono i benchmark di valutazione >>> >>> Provo ad illustrarlo con un esempio, per uscire dalla disquisizione >>> astratta di cosa sia “ragionare”, “comprendere”, ecc. termini antropomorfi >>> che non sono necessariamente applicabili al caso. >>> >>> Prompt: “In the following question assuming the given statements to be >>> true, find which of the conclusion among the given conclusions is/are >>> definitely true." >>> >>> Statements: >>> H > F ≤ O ≤ L; F ≥ V < D >>> >>> Conclusions: >>> I. L ≥ V >>> II. O > D >>> >>> The options are: >>> >>> A. Only I is true >>> B. Only II is true >>> C. Both I and II are true >>> D. Either I or II is true >>> E. Neither I nor II is true.” >>> >>> Response by o3: >>> >>> To solve this problem, let's first clarify the given statements and their >>> implications: >>> 1. H > F≤ O≤L >>> 2. F≥V< D >>> We need to evaluate the given conclusions: >>> I. L≥ V >>> II. O > D >>> Let's analyze each conclusion: >>> >>> Conclusion I: L ≥ V >>> From the statements: >>> • F is at least as much as V (F ≥ V), so the relation between F and V is F >>> is greater than or equal to V. >>> • L is at least as much as O (O ≤ L), and since F <= 0 <= L, we can say F >>> <= L. >>> • So we have F ≥ V and L ≥ O. >>> Combining all, F ≥ V and L ≥ F leads to L ≥ V. >>> >>> Therefore, Conclusion I: L ≥ V is definitely true. >>> >>> Conclusion II: 0 > D >>> From the statements: >>> • F ≤ O, so O is greater or equal to F. >>> • D is greater then V (V< D), and we know from the statements F is greater >>> than or equal to V (F ≥ V) >>> >>> However, without definite numerical value or direct inequality comparisons >>> between O and D, we cannot ascertain that O is greater than D. >>> Conclusion II: O > D is not definitely true based on the given information. >>> >>> Thus, the answer is: >>> A. Only l is true >>> ----- >>> >>> Ecco un altro esempio dai miei esperimenti sulla generazione di codice per >>> interrogare tabelle. >>> >>> Question: Does the author with the longest name post mainly original >>> content? >>> <think> >>> To determine if the author with the longest name posts mainly original >>> content, we need to: >>> >>> 1. Identify the author with the longest author_name. >>> 2. Check if this author's type is 'original'. >>> 3. Verify if the majority of their posts are original. >>> >>> Here's the Python function using pandas to perform these steps: >>> ... >>> Wait, maybe the problem is that when you group by 'author_name' and then >>> use 'agg('max')', it's trying to compute the max for each group, but if >>> 'author_name' is a Categorical, it's not ordered, so the max function >>> doesn't know which one is the maximum. >>> So, converting 'author_name' to a string type before grouping would solve >>> the issue. >>> So, the function would be: >>> ... >>> But again, the problem is that after grouping, the index is reset, so when >>> you try to filter `original_posts`, it might not have the same index as >>> `max_author`. >>> >>> Wait, no. The `max_author` is the name of the author with the longest name, >>> and `original_posts` is a DataFrame filtered to only include 'original' >>> type posts. Then, `max_author_original` is a subset of `original_posts` >>> where the 'author_name' is equal to `max_author`. >>> This should work because `max_author` is a string, and it's looking for >>> that string in the 'author_name' column of `original_posts`. >>> So, the function should correctly return whether the author with the >>> longest name posts mainly original content. >>> >>> … >>> Wait, that's a problem. >>> So, the function needs to handle the case where there are no original posts. >>> In that case, the function should return False, because the author with the >>> longest name does not post original content. >>> But in the current code, if `original_posts` is empty, >>> `max_author_original` would also be empty, and accessing >>> `max_author_original['type']` would throw an error. >>> So, to fix this, we need to check if `max_author_original` is not empty >>> before accessing its 'type' column. >>> So, the function should be modified to: >>> … >>> >>> >>> >>> On 14 Feb 2025, at 07:47, Guido Vetere <vetere.gu...@gmail.com> wrote: >>> >>> Beppe, >>> ma la "spiegazione" della c.d. chain-of-thought si trova sullo stesso piano >>> epistemico di ciò che intende spiegare, cioè quello della correlazione, non >>> quello delle causalità. >>> La differenza è 'striking' e la spiega bene Judea Pearl nel suo "The Book >>> of Why" (https://en.wikipedia.org/wiki/The_Book_of_Why) >>> >>> G. >>> >>> On Thu, 13 Feb 2025 at 12:36, Giuseppe Attardi <atta...@di.unipi.it> wrote: >>>> >>>> Non solo lui, ma gran parte degli studiosi di linguistica della vecchia >>>> generazione, a partire da Noam Chomsky, sono rimasti indietro di 8 anni. >>>> Non solo, ma non comprendono la differenza tra i LLM e i chatbot, che sono >>>> delle applicazioni dei primi, nate inizialmente per gioco: ricorderete la >>>> storia degli unicorni, prodotta da GPT-2. >>>> Era un esercizio classico di uso dei LM per generare testo a completamento >>>> di un prompt. >>>> >>>> Ma I chatbot sono un’applicazione specializzata dei LLM, allenata con una >>>> fase di post-training, con varie tecniche, in primis il RLHF introdotto in >>>> ChatGPT, per addestrarlo a partecipare a dialoghi, ossia ad accontentare >>>> gli interlocutori. >>>> Ma oltre ai chatbot, ci sono mille altre applicazioni dei LLM che non sono >>>> solo per chiacchierare. >>>> >>>> Da allora, la tecnica si è poi ulteriormente evoluta con tre sostanziali >>>> progressi: >>>> >>>> 1. Con l’aumentare della scala dei modelli, sono apparse capacità >>>> emergenti (emergent abilities), che vanno oltre la banale capacità di >>>> predire la prossima parola: un fenomeno che si spiega con la teoria dei >>>> sitemi complessi di Giorgio Parisi: l’applicazione su larga scala di >>>> semplici funzioni di probabilità dà origine a comportamenti complessi, non >>>> riducibili alla funzione di partenza >>>> 2. Si sono raffinate le tecniche di post-processing: SFT e RL basato su >>>> DPO (Direct Preference Optimizazion) o GRPO (quella usata da DeepSeek R1 >>>> ecc.) Quest’ultima tecnica accelera l’apprendimento con RL e viene usata >>>> per insegnare direttamente a effettuare ragionamenti matematici e logici >>>> ai modelli, senza bisogno di un secondo modello di critica delle risposte >>>> come in ChatGPT. >>>> 3. Le capacità apprese dai modelli di grandissime dimensioni possono >>>> essere “distillate” in modelli più piccoli, mantenendone le capacità >>>> acquisite. >>>> >>>> Quindi i modelli attuali, come GPT-4 o3, DeepSeek R1, Gemini 2.0, ecc., >>>> fanno cose ben diverse dalla semplice generazione a caso di risposte. >>>> DeepSeek è particolarmente interessante da osservare, perché riporta nella >>>> risposta tutte le fasi del suo ragionamento, racchiuse tra i tag >>>> <think></think>, mentre gli altri modelli li tengono nascosti. >>>> Si vede chiaramente come svolge il suo ragionamento: propone una prima >>>> risposta, poi la valuta criticamente, dicendo: “Ah wait. …” e spiegando >>>> come quella risposta funziona e se ci sono criticità, poi ne genera una >>>> seconda che risolve quelle criticità e poi ci ragiona sopra di nuovo. >>>> >>>> Questo purtroppo in Italia ci è vietato dalla decisione del Garante della >>>> Privacy che ci ha impedito l’accesso a DeepSeek. >>>> >>>> Ma è un passo avanti importante, anche perché rintuzza un’altra critica ai >>>> modelli ML, la mancanza di trasparenza. >>>> In questo caso, l’intero processo di ragionamento viene esposto, compresa >>>> una spiegazione in termini perfettamente comprensibili della ragione della >>>> risposta. >>>> >>>> — Beppe >>>> >>>> >>>> On 13 Feb 2025, at 12:00, nexa-requ...@server-nexa.polito.it wrote: >>>> >>>> From: Diego Giorio <dgio...@hotmail.com> >>>> To: Nexa <nexa@server-nexa.polito.it> >>>> Subject: [nexa] Perché Richard Stallman sbaglia in tema di >>>> intelligenza artificiale >>>> Message-ID: >>>> <bn6pr17mb3139f372ca9f7422d383438fbe...@bn6pr17mb3139.namprd17.prod.outlook.com> >>>> >>>> Content-Type: text/plain; charset="iso-8859-1" >>>> >>>> Ieri è stata una bellissima esperienza. >>>> >>>> A titolo personale mi pongo un po' a metà tra l'opinione di Stallman e >>>> quella di questo articolo, che comunque ritengo giusto segnalare >>>> >>>> Buona giornata a tutti >>>> >>>> >>>