Newsgroup: it.comp.ia
Titolo: Il bambino virtuale

Una delle idee che circolano nel mondo della IA, è quella di cercare di 
creare un programma che abbia le capacità tipiche di un neonato umano; 
con un addestramento opportuno l'idea è quella di "fare crescere" il 
programma neonato fino a fargli raggiungere uno stato piu' adulto e, 
magari, anche una sorta di autocoscienza. 
Nota: Un sito che tratta di questo argomento per esempio è 
http://www.a-
i.com/
 
Quello che mi perplime maggiormente in questo approccio, è la convinzione 
che un neonato virtuale in grado di percepire solo ed esclusivamente 
input testuale, sia poi davvero in grado di "capire". 
Mi spiego meglio. 
Secondo voi, un bambino che fosse cieco, privo di tatto, incapace di 
muoversi xche' paralizzato, incapace di toccare/maneggiare le cose e per 
lo piu' sordo a tutti i rumori tranne che alla voce umana (!), sarebbe 
veramente in grado di diventare un uomo autocosciente ? 
Come potrebbe capire una frase del tipo "vai dal panettiere a prendere 2 
panini" quando egli: 
a) non è in grado di muoversi e quindi non è in grado di capire cosa 
significhi "vai". Non percepisce nemmeno il movimento per cui nemmeno se 
la madre lo portasse in carrozzella dal panettiere lui se ne 
accorgerebbe. 
b) essendo cieco, non e' in grado nemmeno di "vedere" che si sta 
muovendo. 
c) non è in grado di percepire col tatto e quindi non sa fisicamente cosa 
sia un panino ne' tantomeno ne conosce il gusto. Per lui un panino o un 
tovagliolo sono la stessa cosa, ovvero nulla! Non ha modo di riconoscerli 
nè di distinguerli. 
c) non è in grado di vedere per cui non sa cosa sia un panettiere, anzi 
non sa nemmeno cosa sia il mondo che lo circonda. Non sa nemmeno come e' 
fatto egli stesso. 
Da quest'ultima affermazione, nasce spontanea un'altra domanda. Se il 
bambino non è in grado di percepire nemmeno se stesso, come potrebbe 
sviluppare l'autocoscienza di se ? 
Secondo me, un bambino cosi' gravemente handicappato, potrebbe al massimo 
raggiungere il livello di "intelligenza" di un chatbot ovvero, potrebbe 
rispondere in maniera piu' o meno automatica a frasi predefinite (anche 
se a questo punto mi sovviene che sarebbe difficile premiare/punire un 
bambino cosi' privo dei sensi). 
In conclusione, quel che dico io è: se proviamo a ribaltare la tesi e 
diciamo "prendiamo un bambino normale, 'mutiliamolo' fino a quando egli 
non sia piu' in grado di recepire altro che il parlato umano....questo 
bambino sara' ancora in grado di crescere e svilupparsi come un uomo 
normale? Sviluppera' l'autocoscienza?"
Se la risposta e' no (e io sono un sostenitore del no), allora xche' 
perdere tempo con questo esperimento?

 perdere tempo con questo esperimento?
Perchè, malgrado il nome altisonante della disciplina, la ricerca
sull'intelligenza artificiale non ha il delirante obiettivo di
replicare in tutto e per tutto l'intelligenza umana, ma piuttosto, a
seconda dell'approccio, studiare quest'ultima, oppure produrre delle
macchine "intelligenti" per aiutare l'uomo.
Molte tecnologie informatiche oggi di uso comune furono prodotte dalla
ricerca sull'intelligenza artificiale.

 sanno di cosa parlano)
In effetti loro non parlano di autocoscienza; sono io che trasportato 
dalla foga ho inserito anche questo discorso.
Lo scopo dichiarato e' quello di creare una programma in grado di capire 
meglio (meglio rispetto a cosa? ai chatbot attuali?) il linguaggio 
naturale.
A questo punto pero' il termine "capire" va preso con le pinze.
Non so, non capisco cosa ci sia di diverso tra una chatbot programmato 
con 1000 if..then, ed un chatbot bambino programmato con zero if..then ma 
in grado di ampliare il suo DB.
Si tratta sempre della stessa cosa alla fine no?
Il programma non capisce davvero il linguaggio naturale, si limita a 
cercare nel suo DB una serie di parole chiave e risponde di conseguenza.
E poi perche' ci impiegano 18 mesi per "crescere" un programma bambino 
che rispecchi (a detta loro) un vero bambino di 15 mesi ? 
Mi sembra un po' lento l'apprendimento. Vabbe' che č un bambino 
programma, ma e' pur sempre un computer, non si stanca, non dorme, non 
mangia, non ha perdita d'attenzione, non ha altro da fare se non parlare 
con il trainer, possibile che ci voglia cosi' tanto per dire 2 frasette 
in croce in un linguaggio a malapena comprensibie ?
Piu' ci penso e piu' mi convinco che questo progetto sia una bufala...o 
forse non ho capito cosa stanno cercando di fare :-)

 forse non ho capito cosa stanno cercando di fare :-)
Mah... diciamo che quella dei chatbot non è una delle applicazioni più 
entusiasmanti (parlo per me!) dell'IA... e non credo che oggi Turing 
perderebbe tempo a costruire un chatbot che superi il suo test...
Vabbè come primo intervento (ma vi lurko da un po'!) mi sono dilungato anche 
troppo...
Ciao a tutti!


Provo a risponderti scrivendo un progetto credo molto simile a quello in 
discussione, ma interamente italiano ed in continuo aggiornamento.
Per ulteriori informazioni puoi visitare il sito 
www.aifactory2.it
:
AIFBot (abbreviazione di Artificial Intelligence Factory roBot) è la 
combinazione hardware-software ideata dal team A.I-Factory2 ed attulmente in 
fase di sviluppo.
Il compito principale di AIFBot è il seguente: interpretare ed elaborare in 
maniera autonoma informazioni provenienti dall'esterno (come dialoghi o 
immagini), a partire da pochissime informazioni e regole logiche di base al 
fine di ottenere una rappresentazione simbolica e formale della realtà.
Per soddisfare questo compito AIFBot dovrà essere capace di sostenere una 
conversazione con l'utente tramite frasi di senso compiuto e sviluppare una 
primitiva forma di pensiero. Una delle funzionalità del programma sarà 
infatti quella di comprendere il linguaggio naturale interprtando nuove 
parole partendo da un numero ristretto di parole fondamentali. In futuro 
verranno presi in considerazione anche eventuali fattori legati ad una 
esperienza visiva. Tali "abilità" verranno quindi affinate con il tempo.
Il cuore di AIFBot è una rete simbolica, creata ad hoc, che permette 
inferenze logiche e semantiche che portano ad un aumento costante e 
progressivo della conoscenza interna al sistema a partire da informazioni 
primitive e tra loro non collegate. Grazie a questo, AIFBot, può essere 
considerato un simulatore di pensiero umano primitivo. Per "pensiero" si 
intende il flusso di attenzione lungo i percorsi della rete. Questa 
affermazione semplice indica due cose. Primo, che esistono dei percorsi già 
consolidati, e, secondo, che esistono regole governanti il flusso. 
Successivamente verrano spiegati questi due concetti. Teoricamente il 
pensiero non può da se stabilire nuovi percorsi ma solamente seguire quelli 
già esistenti. La sequenza del flusso o addirittura la sua direzione possono 
arrivare ad essere alterate tramite gli stimoli esterni, ma il percorso 
fondamentale rimane lo stesso. Il pensiero è quindi l'aspetto di AIFBot che 
più lo distingue dai comuni ChatterBot.
Grazie alla nostra tecnologia, per rispondere a una domanda, non è 
necessario che il sistema conosca esattamente l'intera struttura del 
linguaggio naturale; è sufficiente che sia in grado di rielaborare le 
strutture di frasi imparate precedentemente (percorsi), con l'effetto di 
aver "interpretato" il contenuto dei testi analizzati. La rielaborazione 
della rete permette di spostare il livello di analisi dal singolo elemento 
(parola in ricerca) alla struttura in cui esso è inserito (struttura 
semantica), creando in questo modo una vera mappa concettuale.
In assenza di stimoli esterni AIFBot sembra avere la capacità che il 
filosofo Kant chiamerebbe "io penso". Grazie a questa facoltà, tramite un 
numero finito e non determinabile a priori di associazioni logiche fra 
quanto esso conosce, AIFBot dovrebbe riuscire a definire se stesso ed i 
propri limiti (regole del suo funzionamento senza le quali non potrebbe 
funzionare e quindi neanche definirsi). E' chiaro che per raggiungere un 
così alto e vasto livello di pensiero è necessaria una significativa 
conoscenza del mondo esterno.
Fondamentale quindi nel programma è l'interpretazione degli stimoli esterni 
(più comunemente detti input). In una fase futura dello sviluppo di AIFBot è 
prevista la realizzazione di una piattaforma robotica che permetta una 
migliore integrazione di AIFBot nell'ambiente circostante (elaborazione di 
suoni e immagini tramite un dispositivo collegato al computer, come una 
comune WebCam). I dati che il pensiero riceve dallo stimolo principale sono 
le frasi digitate da tastiera seguite dalla relativa normalizzazione 
(interpretazione e rielaborazione grammaticale). I percorsi già consolidati 
e le regole governanti il flusso del pensiero vengono assimilati tramite 
l'elaborazione di questo primo stimolo. Ciò che invece viene "detto" da 
AIFBot (ad esempio le risposte alle domande dell'utente) è leggibile su 
schermo o udibile grazie alla sintesi vocale.

perdere tempo con questo esperimento?
da un punto di vista 'ingegneristico'  vogliamo una macchina che, dato
un certo input [es preparami quelle cotolette che sai fare tu] mi dia
un certo output [il pranzo è servito]
Poco ce ne cale se 'capisce' nell'accezione umana del termine.
Ci interessa che capisca... cosa deve fare!
Naturalmente è diverso il discorso IA forte. Ma è presto per parlarne.
Facciamo andare avanti le neuroscenze per altri 20 anni, poi si vedrà

primitive e tra loro non collegate.
Usate logiche non monotone?

Per ulteriori informazioni puoi visitare il sito 
www.aifactory2.it
:
non c'e nulla a parte ciò che hai già postato
il sito è momentaneamente giù ?

 informazioni primitive e tra loro non collegate. 
Come fa AIFBot a capire la semantica di un termine ? Come hai fatto a 
"spiegarglielo" ?
Questo probabilmente e' il punto cruciale.
Se un programma capisse davvero il significato delle parole, 
probabilmente sarebbe in grado anche di usarle al di fuori del contesto 
specifico e di generalizzare un concetto.
Se un programma capisse davvero cosa e' un "animale", allora 
automaticamente sarebbe in grado di riconoscere che un cane e' un animale 
e una margherita invece non lo e'.
Ma, e qui torniamo alla mia tesi iniziale, senza poter "vedere" un cane, 
è difficile spiegare cosa sia se non con semplici parole che fanno a loro 
volta riferimento ad altre parole altrettanto sconosciute.
Se ci fai caso, quando noi descriviamo qualcosa, usiamo altre parole che 
si da per scontato uno conosca e capisca.
"il cane è un ANIMALE, a 4 ZAMPE, generalmente PELOSO. Di solito 
SCODINZOLA e ABBAIA".
Questa è una descrizione di cane valida per un uomo; probabilmente un 
bambino di diciamo 4 anni che non avesse mai visto un cane in vita sua, 
sarebbe in grado di riconoscerlo basandosi su questa descrizione 
(sopratutto per "scodinzola" e "abbaia").
Ma un computer cosa ne potrebbe capire? Che ne sa di "abbaiare"? 
Cosa e' una zampa?
Cosa vuol dire peloso? vuol dire che ha del pelo...e cosa e' il pelo? 

 Facciamo andare avanti le neuroscenze per altri 20 anni, poi si vedrà
E allora perche' inventarsi algortmi complessi, reti semantiche, teorie sul 
"lexical attraction" quando alla fine della fiera basta una serie di
IF input = "preparami quelle cotolette che sai fare tu" THEN azione
con un numero suff lungo di IF..THEN di questo tipo il programma sarebbe in 
grado di "rispondere" a tutto quanto. E se non riconosce una domanda, basta 
aggiungerla alla lista e indicargli l'azione da compiera. La prossima volta 
sara' in grado di "capire" anche questa domanda.


wrote:

Semplice: perchè una catena di if-then non basta. Non riesci a
generalizzare a sufficienza.  Il trucco sta proprio in quel tuo
'sufficientemente lungo'
Per esempio, tanto per parlare di applicazioni concrete, non riesci a
sviluppare un applicazione che riconosce i volti se cambiano le
condizioni ambientali 
Inoltre, anche considerando domini applicativi in cui una catena di
if-then è sufficiente [cioè in linea teorica tutti i problemi
risolvibili da una macchina di turing] non puoi programmare a mano la
catena if-then necessaria. 
Puoi invece cercare di costruire una macchina che 'scriva da sola' le
proprie regole estrapolandole da un insieme di esempi.
qualcuno [citato da Gardner in un libro di matematica ricreativa, mi
pare] ha scritto un illuminante algoritmo per giocare a tris.
L'algoritmo era implementato mediante pietre e scatole di fiammifferi
. Le scatole capivano di vincere? erano contente?
Magari la singola scatoletta no, m al'insieme di scatole+ pietre
chissà ;-)

 [...]
Bel volantino pubblicitario ;)
Tralasciando il fatto che per molte applicazioni utili l'approccio
simbolico è ancora tremendamente efficiente...
Affermate che il vostro software può rappresentare fedelmente il
pensiero di un soggetto.
Considerando che non siamo più ai tempi di Hobbes, e si va via via
affermando l'idea che le caratteristiche che contraddistinguono
l'intelligenza emergano dall'interazione di più unità a livello
sub-simblico, non vi sentite decisamente controcorrente nel voler
proporre una rete simbolica come fedele modello del pensiero e
dell'apprendimento?
Il "flusso di attenzione" e le sue regole possono essere visti in vario
modo, non per forza come una rete simbolica; ad esempio, una rete
ricorrente che agisca da memoria associativa.
Inoltre, mai sentito parlare di comprensione a livello simbolico e a
livello semantico?
Beh, i termini parlano per sè, sarà dura che un aspetto semantico
emerga autonomamente a un livello simbolico (potrà avere accezione
semantica solo per chi ha scritto il software).
Addirittura l'approccio neurale non è pienamente soddisfacente come
modello del cervello naturale.
Tornando al software, penso che l'abbinare un sintetizzatore vocale non
aggiunga nulla se non un po' di spettacolarità.
In ogni caso, a che punto siete con lo sviluppo?
Dal sito non si evince molto per ora.
Il vostro software elabora efficacemente le immagini pur rimanendo ad
un così alto livello di astrazione?
Credo che già realizzare un chatbot da cui si possano trarre
informazioni utili con una conversazione verosimile sarebbe un ottimo
risultato, senza pretendere di aver modellizzato la conoscenza umana.
--
http://www.alessandropresta.cjb.net

risultato, senza pretendere di aver modellizzato la conoscenza umana.
Mai detto di riuscire a modellizzare in assoluto la conoscenza umana..
credo cmq di aver trovato un modo carino di modellizzare della conoscenza.
Un modo che mi permette di elaborare in molteplici e imprevisti modi le 
informazioni acquisite.
Ciao,
Matteo

 perdere tempo con questo esperimento?
Molte aziende "perdono tempo" con i chat-bot e simili per due motivi:
1. Possono stupire una persona che non è tecnica e che non ci perderà 
molto tempo (es.: un finanziatore possibile) - questo tipo di persone 
molto spesso resta stupita positivamente quando il bot se ne viene con 
una frase a effetto svicolando.
2. Perché la ricerca va fatta per la ricerca, anche senza sapere dove ti 
porterà - tante volte si riesce ad ottenere qualcosa di inaspettato da 
ricerche molte semplici, magari qualcosa di utile in campi completamente 
diversi.
C++U,
   GiO

   GiO

 intuiva 'esistenza.
E' quasi sempre così.
Io mi occupo di applicazioni molto dirette (videogiochi) in cui la 
ricerca è a brevissimo termine e va a braccetto con lo sviluppo, ma 
certamente nei campi più "elevati" si parte spesso senza conoscere tutte 
le applicazioni di una teoria che si sta formulando.
C++U,
   GiO

    GiO

 Credo siate fra i pochi che fanno sul serio, in Italia. Complimenti :)
Grazie, cmq sicuramente ci sono altre aziende di una certa importanza, e 
altre ancora stanno nascendo o crescendo.
C++U,
   GiO
 
www.spinvector.com

Premetto che non sono esperto ne in materia di IA ne in materia di
Neurologia; vorrei però fare una riflessione. Tempo fa avevo letto
un'articolo in cui si parlava della sindrome della "mano aliena"; tale
sindrome fa si che una delle mani si comporti come se non fosse più sotto
controllo diretto del cervello cioè agisce come se fosse in possesso di una
coscienza propria. Questa sindrome spesso si manifesta in seguito ad
incidenti che lesionano il corpo colloso facendo in modo che le informazioni
non passino più dall'emisfero destro a quello sinistro. (Esperimenti
mostrano come la mano destra tocchi un'oggetto eppure il cervello non'è in
grado di riconoscerlo se non lo vede).
Questa sindrome mi ha fatto riflettere su come, il nostro cervello, in
realtà possa essere considerato come due cervelli in costante comunicazione
tra loro; le nosre capacità intellettive quindi potrebbero essere anche
frutto di una comunicazione costante dei nostri emisferi cerebrali.
Mi chiedevo, e vi chiedo, se un modello cooperativo di questo tipo sia mai
stato sviluppato a livello di IA. Due reti neurali che si scambiano
informazioni per arrivare a sviluppare una unica risposta ad un questio
dato.