Ciao 380°, On Fri, Apr 21, 2023 at 05:43:41PM +0200, 380° wrote: > Deciding is a computational activity, something that can ultimately be > programmed. Choice, however, is the product of judgment, not > calculation. > [...] > Siccome nel linguaggio naturale il significato delle parole > dipende... da un sacco di cose, per amor di brevità, in _questo_ > contesto potremmo /scegliere/ di attribuire a ciascun termine una e una > sola delle definizioni disponibili oggi sul Merriam Webster: > > - "decide": 1.b to select as a course of action —used with an infinitive > > - "choose": 1.a to select freely and after consideration
Interessante distinzione che evidenzia come io non sia stato chiaro. Riprovo: - decidere è un'azione uomana. - segliere anche. sono azioni diverse, ma entrambe umane. Il burocrate che, vittima di una poderosa alienazione cibernetica, applica le regole senza buon senso o compassione, decide non sceglie. Ma decide sempre e comunque sotto la propria responsabilità (che magari cerca di eludere appunto comportandosi COME un automa che esegue un programma). Il computer NON decide. Esattamente come non conta, non vede, non legge etc... Persino la mia precedente affermazione secondo cui "il software calcola" è una affermazione inesatta: non calcola nemmeno. Il software è un dato. E' espressione di uno o più esseri umani che collaborativamente determinano il comportamento di una macchina. La macchina (il computer che esegue il software) non calcola, non conta non produce numeri casuali etc... esegue meccanicamente il software. Per il computer cicli e condizioni non hanno alcun significato. La CPU risponde alle variazioni di tensione sul bus senza avere alcuna comprensione del loro significato. Dunque il computer non decide. Dunque l'hardware che esegue il software non decide alcunché: esegue meccanicamente il programma (che è dato, espressione dell'uomo interpretabile dall'uomo) e produce un output che pur essendo determinato dal programma non ha alcun significato fin tanto che una mente umana non lo interpreta. Esattamente come i byte che il tuo MUA rappresenterà sullo schermo quando leggerai questa mail: pur essendo auspicabilmente espressione della mia coscienza, non hanno alcun significato intrinseco fintanto che una mente umana non li interpreta sulla base delle informazioni che già la caratterizzano (nota: ho scritto informazioni, non dati). L'atto di interpretare un dato è talmente istintivo per l'uomo che non riusciamo facilmente ad diventarne consapevoli. Puoi provare a distinguere i segni che vedi sul tuo schermo dalle informazioni che gli attribuisci nella tua mente? Lo stesso accade per qualsiasi output. C'è sempre qualcuno che lo intepreta. Quindi dire che un software decide (o persino calcola) è sbagliato. E' una scorciatoia comunicativa (e cognitiva) comoda, ma è sbagliato. E con le "intelligenze artificiali" diventa propriamente pericoloso. Un software non può decidere e non deve mai sembrare che lo faccia. Può essere utile per verificare la correttezza formale di una decisione, ma solo debuggandolo pazientemente passo passo, in modo che una singola mente interpreti input, programma che la riproduce e output. Tale correttezza formale ovviamente non garantisce la correttezza della decisione: ad esempio potrebbero esserci errori nella selezione dell'input. Ma solo così il software diventa un ausilio alla decisione: come specchio per la mente umana che decide, non come suo sostituto. > > il software effettua SEMPRE ed ESCLUSIVAMENTE ciò che è definito nel > > proprio programma. anche quando modifica la propria configurazione > > (che come osservava 380° in passato, è semplicemente una parte della > > programmazione differita rispetto alla compilazione del binario), in > > funzione dell'input ricevuto, tale variazione è predeterminata. > > Cioè: la decisione è "computational activity" nella misura in cui un > **processo** (programma in esecuzione sulla macchina) esegue un /branch/ > [3] causato da un /conditional/ [4]... che è /stato programmato/. > No, la decisione è computational activity nel senso che devono essere sufficienti capacità logico-deduttive (aritmetiche direi) per determinarla. Ma un computer non ha capacità logico-deduttive: è una macchina! :-D > I /conditional/ sono sempre programmati da umani, anche se il processo > di "compilazione" (in senso molto ampio) del binario è complesso (o > /complicato/) come nel caso della programmazione statistica detta > "machine learning". I /conditional/ sono espressione umana, ordine ad una macchina di eseguire una certa transizione di stato che produrrà un output che un'altra persona interpreterà come risultato di una condizione. > Quindi la decisione (to select as a course of action) è sì effettuata > dal processo ma dipende da come è stato programmato _e_ dell'ambiente di > esecuzione (configurazione, input... "perturbazioni varie" [5]). Non è una decisione, ma uno stato applicativo (o una transazione fra stati applicativi) che produce un output che poi TU intepreti. Che poi queste perturbazioni varie determinino tale stato applicativo insieme al binario, all'input, alla configurazione etc... siamo d'accordo. Rimane uno stato di una certa macchina, che non ha significato di per sé fintanto che non gli viene attribuito da una mente umana. Mente che non è razionale (tant'è che spesso interpreta l'output come qualcosa che non è, vedi ChatGPT) rendendo intrinsecamente non razionale anche il sistema cibernetico composto da software + umano, per quanto perfetto possa essere il software. L'interpretazione dell'output è SEMPRE un atto politico. E deve essere responsabile e consapevole. > > quand'anche un software fosse connesso ad una sorgente randomica in > > grado di alterarne la configurazione per simulare una sorta di libero > > arbitrio, la forma della configurazione stessa e la sua > > interpretazione da parte del programma sarebbe comunque > > predeterminato. > > Cioè: anche se /simulassimo/ una configurazione frutto di "libero > arbitrio" (ammettiamo sia possibile con reti neurali e "machine > learning"), il **processo** eseguirebbe solo e soltanto i branch > _determinati_ dai conditionals inseriti nel programma. > > Sia i branch che i conditionals possono essere tantissimi, tanti da > essere umanamente difficili anche solo da concepire, figuriamoci da > (ri)calcolare, ma la loro natura è quella. Precisamente. (almeno su questo sono stato chiaro :-D) > > > dunque "il digitale" non decide. MAI. > > Ma sì: il digitale decide No, non decide. Una macchina che esegue un software non decide. Reagisce meccanicamente a variazioni di corrente determinati dal binario in memoria, dal pointer counter, dallo stato dello stack, dello heap, etc... Un essere umano ha scritto quel software perché qualcuno interpreti l'output in un determinato modo... e l'interprete deve essere pienamente consapevoli della PROPRIA responsabilità nel prendere LUI una decisione sulla base dell'output di quel programma scritto da quella persona. Ma la decisione (e la responsabilità) non è del programma, ma solo delle persone che lo usano per comunicare (programmatori e utenti). > Tutt'altra cosa è scegliere. Vero. E se le macchine non decidono, figurati scegliere! ;-) > > Siamo sempre noi che interpretiamo il suo output. > > > > Talvolta, in evidente stato confusionale, lo interpretiamo come > > "decisione" > > ma non lo è: la decisione è SOLO nostra e dobbiamo assumercene la piena > > responsabilità, perché siamo noi ad interpretare l'output. > > "Signora mia, non sono io a scegliere di non accordarle XYZ: è il > computer che lo ha deciso" > > In effetti ci sono tanti funzionari che hanno l'ordine di non scegliere > ma di applicare le decisioni che escono dal computer. Esatto: esempio "da manuale" di alienazione cibernetica. L'alienazione è al limite del ridicolo se il funzionario non sa nemmeno spiegare precisamente e completamente il processo che ha portato alla decisione di cui LUI è responsabile. Perché la decisione è sua: il computer gli ha solo disegnato una serie di segni sullo schermo. > > Il software determina completamente e precisamente ciò che > > l'automatismo farà e ciò che non farà. > > Se con software intendi il **processo** allora sì, se con software > intendi il programma allora no, perché l'ambiente di esecuzione *e* - se > c'è - l'undefined behaviour [5] hanno una parte altrettanto rilevante > nel determinare la decisione (uso questo termine apposta) > dell'automatismo. Ne determinano l'output (e durante l'esecuzione lo stato della macchina che esegue il software) ma non determinano alcuna decisione. Io posso sempre decidere di ignorare quell'output o di interpretarlo al contrario o di alterare l'input finché non ottengo l'output desiderato... Posso persino interpretare gli 1 come l e gli 0 come O o viceversa. :-p la decisione è SEMPRE dell'uomo. > > Ogni artefatto può essere utile. > > Ma a nessuno va attribuita alcuna dignità intrinseca. > > > > Per questo parlare di "intelligenza artificiale", "macchine cognitive" > > (come fa Enrico Nardelli nel suo ottimo libro) o anche solo > > "esseri tecnici" è pericolosamente alienante! > > Possiamo anche perdonarci a vicenda per l'uso improprio di certe > definizioni, che come abbiam visto nel caso di "deciding" sono > /multiformi/, ma per non farsi alienate è importante non fermarsi alle > "etichette sulle scatole" ma aprirle queste benedette scatole, capire > cosa c'è dentro, a cosa serve il contenuto, se ci piace, /come/ possiamo > _usarlo_, ecc... Non è questione di perdono, né di ambiguità linguistica: è questione di usare un linguaggio alienante o meno. Insisto sull'inadeguatezza di certi termini (e provo a proporne di alternativi, come "programmazione statistica") perché ne vedo chiaramente i danni cognitivi inflitti alla società. I ragazzini che soffrono perché Replika dismette le funzioni erotiche. Autorevoli giuristi che giustificano le violazioni dei diritti umani fatte da Open AI tramite Chat GPT perché... "è solo una povera AI!" E così via. Io sono CERTO della buona fede di Giuseppe nell'uso della locuzione "intelligenza artificiale". Così come sono CERTO della buona fede di Enrico nell'uso della locuzione "macchine cognitive" o in quella di kerlessi nell'uso della locuzione "esseri tecnici" E capisco benissimo cosa intendono. Ma poiché quelle locuzioni (ancor più se usata e difese da persone tanto autorevoli) danneggiano tutti, sono costretto a smontarle, guardarci dentro, rivoltarle e mostrare a tutti che... sono solo scatole vuote. A presto! Giacomo _______________________________________________ nexa mailing list nexa@server-nexa.polito.it https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa