Stiamo facendo manutenzione.

Simulare una mente umana e superarla

La tecnologia è strettamente legata all'informatica. Sempre di più. Quando è di informatica che si parla questa sezione è adatta.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 17/07/2014, 16:05

Non c'è dubbio che debba contenere un software! Quello che voglio dire è che il software realmente necessario potrebbe non essere implementabile su un hardware che è una macchina di Turing, cioè una macchina sequenziale. Il fatto che la parallelizzazione dei processi sia una tecnica ormai largamente implementata non cambia nulla. Attualmente la parallelizzazione dei processi consente di ottenere una rapidissima risposta. Ma il tempo di esecuzione è irrilevante, dal punto di vista della nostra discussione. Gli algoritmi utilizzati in qualsiasi programmazione parallela attualmente disponibile possono comunque essere tradotti letteralmente in un'unico flusso di istruzioni eseguite sequenzialmente. Quindi, anche gli array di computer più sofisticati attualmente disponibili rimangono intrinsecamente delle macchine di Turing. Quello che volevo dire è che, probabilmente, il concetto di macchina pensante come macchina di Turing potrebbe richiedere una revisione (il che implicherebbe un'architettura dell'hardware concettualmente diversa). Infine, non è detto che un team umano debba essere capace di sviluppare il software necessario. In linea di principio, sarebbe sufficiente sviluppare un software capace di apprendere ed auto-modificarsi per giungere a produrre il risultato finale. Questo significa che il prodotto del team umano dovrebbe alla fine evolversi per produrre un risultato al di la delle possibilità del suo creatore. Detta così sembra fantascienza! Ma, in termini biologici, la Natura (qualunque cosa essa sia) non ha prodotto l'uomo tout court. Ha prodotto solo qualche catena di aminoacidi che si sono autoevoluti in batteri, cellule, micro-organismi e tutto ciò che è stato generato a causa delle interazioni casuali dei mattoni elementari con il mondo esterno. Forse dovremmo pensare a costruire il mattone elementare giusto e poi stare a vedere cosa succede.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 17/07/2014, 16:18

Qualche post fa, Aspie96 ha scritto:

"Potrebbe anche essere solo hardware (come il cervello umano)".

Io non sono d'accordo su questa frase. Chi ha mai detto che il cervello umano sia solo hardware? Ognuno di noi impara. E questo significa apprendere istruzioni ed applicarle, fare valutazioni e quindi operare delle scelte. Tutto ciò è software. E le cose che ognuno di noi sa fare dipendono da ciò che ha appreso. Quindi, hardware simili ma software diversi. Quello che c'è di diverso tra il nostro cervello e le comuni macchine (dal punto di vista dell'hardware) è che i dispositivi di memorizzazione di massa e le componenti della CPU sono gli stessi oggetti. Il software è scritto in maniera tale che ad ogni nuova memorizzazione o ad ogni modifica del programma corrisponda una modifica delle connessioni fisiche tra i neuroni. Quindi una modifica dell'hardware. Forse dovremmo pensare che il software è scritto nell'architettura dell'hardware? Può essere, ma ovviamente non ho la risposta.
Avatar utente
Aspie96
Amministratore
Messaggi: 1386
Iscritto il: 23/02/2019, 19:52

Re: Simulare una mente umana e superarla

Messaggio da Aspie96 » 17/07/2014, 16:36

francesco.aliotta ha scritto:Ma il tempo di esecuzione è irrilevante, dal punto di vista della nostra discussione.

Mica tanto.
Se per simulare un millisecondo di mente umana servono 100 anni, si può dire che non si può ancora simulare la mente umana.

francesco.aliotta ha scritto:Gli algoritmi utilizzati in qualsiasi programmazione parallela attualmente disponibile possono comunque essere tradotti letteralmente in un'unico flusso di istruzioni eseguite sequenzialmente.

Nì.
In linea di principio, potresti.
A livello pratico, non puoi creare un unico programma che faccia quello che fanno più programmi eseguiti parallelamente su un PC attuale.

francesco.aliotta ha scritto:Infine, non è detto che un team umano debba essere capace di sviluppare il software necessario. In linea di principio, sarebbe sufficiente sviluppare un software capace di apprendere ed auto-modificarsi per giungere a produrre il risultato finale. Questo significa che il prodotto del team umano dovrebbe alla fine evolversi per produrre un risultato al di la delle possibilità del suo creatore. Detta così sembra fantascienza!

Non sembra affatto fantascienza.
Si sta già facendo da diversi anni.
Ovviamente il "risultato finale" non è ancora un'intelligenza umana, ma ci sono già computer in grado di apprendere, evolversi ed in alcuni casi perfino intuire automaticamente, senza necessità dell'intervento di un programmatore informatico.

Per quanto riguarda il riferimento alla natura, penso che la speranza sia di impiegarci meno tempo :P


francesco.aliotta ha scritto:Chi ha mai detto che il cervello umano sia solo hardware? Ognuno di noi impara. E questo significa apprendere istruzioni ed applicarle, fare valutazioni e quindi operare delle scelte. Tutto ciò è software. E le cose che ognuno di noi sa fare dipendono da ciò che ha appreso. Quindi, hardware simili ma software diversi.

La differenza fra hardware e software è davvero estremamente sottile e stabilire se una cosa è "hardware" o "software" è davvero soltanto questione di punti di vista.

francesco.aliotta ha scritto:Quello che c'è di diverso tra il nostro cervello e le comuni macchine (dal punto di vista dell'hardware) è che i dispositivi di memorizzazione di massa e le componenti della CPU sono gli stessi oggetti. Il software è scritto in maniera tale che ad ogni nuova memorizzazione o ad ogni modifica del programma corrisponda una modifica delle connessioni fisiche tra i neuroni. Quindi una modifica dell'hardware.

Anche in un computer ci sono delle modifiche fisiche quando cambiano dei dati.
La CPU non cambia semplicemente perché non memorizza dati (è vero, ci sono i registri. Sto semplificando).
Ma un hard-disk è ovviamente fisicamente diverso quando contiene dei dati.
Comunque, quando ho detto che il cervello umano è solo hardware, mi riferivo proprio a questa sottile differenza.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 17/07/2014, 18:43

"Mica tanto.
Se per simulare un millisecondo di mente umana servono 100 anni, si può dire che non si può ancora simulare la mente umana."D

Quando ho detto che il tempo è irrilevante mi riferivo, credevo fosse ovvio, alla sua irrilevanza sul punto di discussione: la simulazione del comportamento del cervello umano. Da questo punto di vista è il comportamento (l'output) quello che conta. Potrebbe impiegarci migliaia di anni ma l'output sarebbe sempre lo stesso. Sotto questo aspetto, la parallelizzazione così com'è implementata non cambia nulla. Sempre una macchina di Turing abbiamo e quindi otteniamo sempre so stesso output (anche se su tempi macroscopicamente diversi).


"Anche in un computer ci sono delle modifiche fisiche quando cambiano dei dati.
La CPU non cambia semplicemente perché non memorizza dati (è vero, ci sono i registri. Sto semplificando).
Ma un hard-disk è ovviamente fisicamente diverso quando contiene dei dati.
Comunque, quando ho detto che il cervello umano è solo hardware, mi riferivo proprio a questa sottile differenza."

Tutto ciò che dici è assolutamente vero. E' ovvio che la CPU cambi stato ad ogni ciclo ed è vero tutto il resto. Ma la sua architettura non cambia. Quello che è un registro di memoria rimarrà sempre e soltanto un registro di memoria. Un circuito logico che manipola bit provenienti dai registri farà comunque sempre la stessa cosa (o è un AND o è un OR, non può essere entrambe le cose, anche se differenti flussi logici implicano che i diversi elementi logici siano connessi in maniera diversa). Ma l'architettura rimane statica. Questo è profondamente diverso in un cervello umano. Il neurone rimane certamente un neurone, Ma gli elementi logici e le celle di memoria sono costituiti da reti di neuroni. Inoltre, queste reti sono ampiamente distribuite e delocalizzate. La concentrazione di funzioni complesse in aree localizzate è un concetto che si è dimostrato fallace (a parte qualche funzionalità quasi automatica). Questa è una grossa differenza. Sia gli elementi logici che gli elementi di memoria che il software sono concretizzati nella rete dinamica di connessioni. E la rete è ampiamente ridondante (altrimenti ogni minimo trauma creerebbe un danno irreparabile). E tutto ciò pone il problema se il cervello umano (e non solo quello umano) sia veramente assimilabile ad una macchina di Turing. Forse, è qualcosa di più di una sottigliezza.
Avatar utente
Aspie96
Amministratore
Messaggi: 1386
Iscritto il: 23/02/2019, 19:52

Re: Simulare una mente umana e superarla

Messaggio da Aspie96 » 17/07/2014, 19:02

Ho capito ciò che intendi.
Sostanzialmente, ti riferisci al fatto che un computer è, in genere, meno flessibile di un cervello umano.

In effetti, il ruolo di un'area del cervello potrebbe perfino cambiare, così come può cambiare la struttura stessa del cervello.
Ciò accade in tutti i casi, ma è particolarmente evidente e interessante in casi "estremi" come la sinestesia e altre differenze neurologiche, a volte estremamente rare come la sindrome dell'idiota sapiente.
Insomma, cose di cui ho parlato all'inizio della discussione.

Comunque, tornando in topic, la differenza sicuramente è abissale, ma ciò non significa che non ci potrà mai essere un computer simile alla macchina di macchina di Von Neumann in grado di simulare e perfino superare una mente umana al 100%.
Certo, ciò che accade al suo interno sarebbe completamente diverso.
Ma che cosa importa? Cambierebbe il contenitore della mente, la mente non sarebbe identica ad una umana ma ci sarebbe e, soprattutto, i risultati sarebbero i medesimi.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 17/07/2014, 19:30

Certo questo è un risultato plausibile. Questa è la conseguenza del ragionamento sugli automi di Neumann. Ma non si tratterebbe di una mente umana. Si tratterebbe di una metamente, incomprensibile alla mente umana anche se l'avvio al processo che la ha generata è stato causato dalla mente umana. E' plausibile, non ci sono paradossi e non c'è ricorsività. Quello che volevo dire è che non credo sia possibile produrre direttamente il sistema cosciente. Ma ciò non implica che l'uomo non possa, in linea di principio, creare l'automa che, dopo una serie di step evolutivi, produca a sua volta il risultato finale: l'intelligenza e la coscienza. Il processo sarà deterministico ma la sua complessità algoritmica rimarrà oltre le possibilità del cervello umano. Mi sembra che siamo andati a convergenza.
Avatar utente
Aspie96
Amministratore
Messaggi: 1386
Iscritto il: 23/02/2019, 19:52

Re: Simulare una mente umana e superarla

Messaggio da Aspie96 » 17/07/2014, 20:14

Siamo andati a convergenza come in tutte le discussioni a cui abbiamo partecipato insieme fino ad ora (e ciò non è affatto negativo).

Mi permetto di evidenziare di nuovo la pignoleria: un "automa" fa sempre le stesse cose (in modo, appunto, automatico).
Esistono robot automi da prima dell'invenzione dell'energia elettrica.
Un automa (con tutto rispetto per gli automi, ci mancherebbe!) non è mai dotato di capacità di apprendimento.
Perché se imparasse non sarebbe un automa.

Comunque, questo è solamente un termine e non ha influenza sul concetto che volevi esprimere.
Non lo rende meno valido e non è un'argomentazione contro ciò che hai detto.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 18/07/2014, 13:01

Giusto per pignoleria, non è esattamente corretto dire che un automa non possa avere capacità di apprendimento. Anche un comportamento automatico (cioè rigorosamente deterministico) può produrre apprendimento (cioè, può portare ad una modifica delle risposte da dare allo stimolo esterno). Potrei portare ad esempio centinaia di risultati. Mi limito a due per i quali sono disponibili on line i pdf (così non ci sono problemi con la violazione del copyright).
Ecco i due link:
http://minchu.ee.iisc.ernet.in/new/people/faculty/pss/la-survey-smc.pdf
http://iasi.bu.edu/yushan/About_Me_files/learning_journal_IJRR_second_submission.pdf

La facoltà di apprendimento di per sè, non implica auto-coscienza. Uno potrebbe essere portato a supporre che implichi almeno una sorta di rudimentale intelligenza. Qui si può discutere, ma prima occorre mettersi d'accordo sul significato da dare alle parole. Nel discorso che io ho fatto precedentemente ho introdotto "intelligenza" e "coscienza" come due concetti indissolubili. Questo implica che nella mia personale definizione di "intelligenza" ho considerato presenti contemporaneamente tutta una serie di capacità, inclusa ad es. la capacità di critica. Questa capacità non è ovviamente presente nell'intelligenza installata in qualunque automa (oggi esistente). Se il livello di contenuto semantico che diamo alla parola "intelligenza" diviene più basso di quello che ho adottato io, allora diviene evidente che il nuovo concetto di intelligenza non implica più la coscienza.
Avatar utente
Aspie96
Amministratore
Messaggi: 1386
Iscritto il: 23/02/2019, 19:52

Re: Simulare una mente umana e superarla

Messaggio da Aspie96 » 18/07/2014, 13:22

Il termine "automa" è ormai utilizzabile come sinonimo di "robot".
Tuttavia, in italiano (quindi in inglese potrebbe essere diverso, non ne sono al corrente) dovrebbe indicare una macchina che si comporta sempre allo stesso modo, al limite basandosi sugli input che riceve (non è legato alla coscienza).
Così come un "androide" in teoria dovrebbe avere sembianze umane, ma di fatto si dice "androide" per riferirsi ai robot umanoidi in generale e va bene così.
francesco.aliotta
Messaggi: 812
Iscritto il: 09/07/2014, 16:33

Re: Simulare una mente umana e superarla

Messaggio da francesco.aliotta » 18/07/2014, 13:43

Si, il termine automa è utilizzabile come sinonimo di robot. Non sono esattamente la stessa cosa perchè la parola "robot" implica la capacità di fare lavoro fisico, cioè implica un esistenza fisica del "robot". Ad es. una lavatrice è un robot, è programmabile ed esegue automaticamente la sequenza di istruzioni prestabilite. Ed è, ovviamente, un robot non intelligente. Potresti definirla anche un automa, e non sbaglieresti. Ma anche i motori di ricerca sulla rete sono degli automi, anche se sono solo software e non puoi identificarli in nessun hardware specifico. Io, personalmente, non li chiamerei mai "robot". Comunque, non è questo il punto. L'essenza delle cose non è nel nome che gli dai ma in ciò che sono. Il punto è che la tua personale definizione di automa (una macchina che produce sempre lo stesso comportamento) è riduttiva. Se tu avessi detto che è una macchina il cui comportamento è rigorosamente deterministico, allora sarei d'accordo con te. Ma il fatto di possedere un comportamento deterministico non implica automaticamente che debba fornire lo stesso output ad uno stesso input (ammesso che dal mondo reale sia possibile ricevere due volte uno stimolo che sia rigorosamente uguale a se stesso). In una macchina deterministica possono benissimo operare parallelamente più processi deterministici concorrenti, i quali producono un output complesso. Se l'interazione tra i processi (o tra i loro output parziali) non è lineare, la tua definizione di automa diviene riduttiva. Comunque, come puoi vedere dai link che ti ho postato, i "learning automata" sono da tempo una realtà.
Rispondi