• User Attivo

    Ma allora i motori di ricerca attualmente fanno uso di sistemi dotati di Intelligenza Artificiale, sì o no?


  • User Attivo

    Nessuno può rispondere a questa domanda, ma a mio parere no.


  • Moderatore

    😮 ...ehm, in realtà uno degli autori del libro più importante sull'argomento "Intelligenza Artificiale: un approccio moderno" (2 volumi) è Peter Norvig che, guarda caso: *is currently the Director of Research (formerly Director of Search Quality) at *Google Inc](http://en.wikipedia.org/wiki/Google)

    😉


  • User Attivo

    Rimango del mio parere 😛


  • User Attivo

    uMoR quello che dici, l'esempio (e le considerazioni) del ristorante o dei mutui e' giustissimo, ma non e' in contrasto con l'affermazione che i motori usino intelligenza artificiale.

    Anzi, a maggior ragione, per risolvere i problemi che citi dovrammo migliorare-implementare ulteriormente algoritmi "estermi", magari legati piu' agli utenti e meno al lavoro dei wm.

    Ma girala come vuoi sempre di intelligenza artificiale (debole) si tratta.


    La cosa simpatica e' l'idea che normalmente ha la "gente comune" dell'intelligenza artificiale. La maggior parte dei non addetti ai lavori crede che l'intelligenza artificiale in informatica sia cosa da pochi ed espertissimi, cosa degna di reverenziale rispetto sia per la materia che per chi la tratta.

    Quando poi gli spieghi che per fare un buon sito totalmente artificiale ci vuole tanta ricerca ed intelligenza artificiale debole come quella necessaria a creare da 0 un motorino di ricerca discreto, ecco che allora si ricredono.

    Si ricredono e vedono l'ai per quello che realmente e', un insieme piu' o meno semplice di regole che interagendo tra di loro simulano-riproducono schemi decisonali funzionali all'uomo.

    Tutto qui, a ben vedere niente di cosi' complicato.
    Se metto sulla mia auto un rilevatore di distanza e gli dico di azionarmi l'apri cancello quando sono distante meno di 5 metri e vado a meno di 20 all'ora (ma solo se lo trova chiuso), ecco che parliamo di intelligenza artificiale.

    Sara' sicuramente artificiale, ma in questo caso di intelligente ci vedo poco...


    Intelligente invece e' un sistema di estrapolazione automatizzato delle keyphrase, come il programma Clusterizer di Paolo.
    Tuttavia i programmi intelligenti non servono a nulla se non si e' poi cosi' intelligenti da usarli quotidianamente.

    Sistemi come Clusterizer o Kea (che io ora uso per sbrigarmi con un modulo mio basato sull'analisi circa di un milione di documenti) sono eccezionali per indirizzare un wm con che keylink lincare i propri documenti o le pagine altrui.
    Oppure per mettere le key salienti di una pagina nel titolo della stessa o nella sua description. Per non parlare dei tag di un blog etc...

    Un semplice esempio.

    Sappiamo benissimo che i motori "aggiungono-attribuiscono" ad un documento le key usate nei link per lincarlo.

    E' una tecnica per i motori cosi' normale e "di peso" che a volte e' possibile travare in cima alle serp addirittura dei documenti che non contengono la keyword usata per la query di quella serp, e questo solo perche' quella keyword e' assegnata al documento dalle keylink.

    Ora ipotizziamo che un wm voglia fuorviare i motori per danneggiare un concorrente, e decida di lincare una pagina del concorrente con dei link che contengono come keylink dei termini incongruenti-distanti-assurdi rispetto al contenuto della pagina concorrente lincata.

    Il wm di cui sopra, credendosi furbo ragiona: se io linco la pagina concorrente che parla di "mutui" con la key "bollito" il motore attribuira' un po' di bollito anche alla pagina dei mutui e di certo questo non l'aiutera'.

    Questo forse valeva qualche anno fa, prima che i motori per "difendersi" da queste nefandezze implementarono un po' di quell'intelligenza artificiale usata nei sistemi di "keyphrase indexing" (come quello di Paolo) per stabilire con buon margine che la pagina lincata con bollito invece parla di mutui.

    Conseguenza?

    Di conseguenza il wm furbo oggi viene penalizzato pesantemente.
    Il motore infatti ragiona: se questo wm non e' capace neanche di lincare correttamente un altro documento, come posso ritenere (io motore) che quel wm sia ingrado di produrre documenti suoi degni di nota-decenti?

    --

    Veniamo al dunque.

    Quante volte oggi un wm linca una pagina sua o di un collega senza valutare con attenzione la keylink usata?

    E come essere aiutati-indirizzati affinche' una keylink sia veramente valida?

    Appunto con sistemi-tecniche di intelligenza artificiale.

    Pertanto o li usi quotidinamente o ti leggi ogni volta tutto il documento e poi ci ragioni con attenzione.

    Se per sbrigarti usi-copi un pezzo del titolo od il nome della pagina rischi piccole penalizzazioni, il motore penalizza chi pretende di consigliare un utente dove andare senza neanche sbattersi a riassumerne di suo il contenuto e per sbrigarsi copia-usa ovvieta'.

    Per questo ed altri motivi domandiamoci non solo se i motori utlizzano l'intelligenza artificiale, ma se l'utilizzano anche i wm.


  • User Attivo

    Molto interessante, fino a poco tempo fa non sapevo nulla di questo argomento.

    Posso sapere cosa sono più precisamente questi clusterizer, a cosa servono e dove si trovano?


  • Moderatore

    @agoago said:

    ...
    Intelligente invece e' un sistema di estrapolazione automatizzato delle keyphrase, come il programma Clustezer di Paolo.

    Clustezer:
    E' una applicazione web che permette la classificazione automatica di keywords e keyprhases in categorie auto-determinate</I>. Utilizza l'algoritmo di clustering K-means ed, in termini di IA, è un esempio di apprendimento non-supervisionato.
    Disponibile, previa registrazione gratuita, su www.nelsenso.net

    Se per sbrigarti usi-copi un pezzo del titolo od il nome della pagina rischi piccole penalizzazioni, il motore penalizza chi pretende di consigliare un utente dove andare senza neanche sbattersi a riassumerne di suo il contenuto e per sbrigarsi copia-usa ovvieta'.
    Per questo ed altri motivi domandiamoci non solo se i motori utlizzano l'intelligenza artificiale, ma se l'utilizzano anche i wm.

    Summazer:
    Summazer riassume automaticamente un testo estrapolando le frasi con più elevata rilevanza semantica. Si basa sul principio di reciproco rinforzo fra termini e frasi. Anche questo tool è disponibile sul suddetto sito.

    Grazie Ago 😉


  • User Attivo

    Grazie, ce ne sono anche altri da far girare in locale o da scaricare?


  • User Attivo

    "Anzi, a maggior ragione, per risolvere i problemi che citi dovrammo migliorare-implementare ulteriormente algoritmi "estermi", magari legati piu' agli utenti e meno al lavoro dei wm."

    Per me è statistica, non intelligenza artificiale!


  • Moderatore

    @agoago said:

    Sistemi come Clusterizer o Kea...

    Ciao Ago 🙂 ,
    puoi fornirci maggiori info su Kea?

    :ciauz:

    [edit]
    ..ops, eccolo (non lo conoscevo). Thanks
    [/edit]


  • User Attivo

    Kea e' un progetto pubblico e libero (come i sorgenti) dell'universita' di Waikato. Kea e Weka sono opera del dott. F. Eibe con l'aiuto per la parte di indicizzazione delle keyphrase di una sua studentessa che ha ricevuto la borsa di studio da... Google 🙂

    http://www.nzdl.org/Kea/

    Ho integrato Kea in un mio progetto piu' ampio (del quale parlero' in modo approfondito questa estate), ho creato un mio modello basato sull'analisi dei testi di tutta Wikipedia, e lo uso per decidere con che keylink lincare le pagine interne.

    Ho anche ampliato l'elenco delle stopkey originarie di Kea, ma premetto che su windows ho seri problemi di memoria in quanto java non mi vede-usa oltre 1,5 giga di ram.

    Purtroppo il problema dei limiti "hardware", il problema dei tempi di lettura ed analisi dei testi, sono il vero dramma in questo genere di studi-lavori.


    Faccio un esempio banale.
    Se per analizzare-valutare 1 mega di testo ci si impiegasse 1 secondo, per un testo da 10 mega ci potrebbe volere 1 minuto, 100 mega un ora... immaginiamo processare un tera di materiale!

    Per capirci, si pensi solo alle catene di Marcov.
    Un conto se devo scegliere per procedere tra 5 parole, un conto tra 60.000 potabili.
    Prendo a caso o analizzo quale siano le migliori tra quelle 60.000?
    Ma le migliori sono quelle che hanno maggior frequenza (rispetto al testo precedente) o quelle che hanno un senso logico rispetto al pezzo di testo?

    Se avessi:

    casa rossa

    potrei scegliere poi:

    bandiera

    questo se mi basassi solo su rossa come parola da analizzare per decidere come proseguire, ma se lavorassi su "casa rossa" invece che solo su "rossa" non sceglierei bandiera.

    Ma anche 2 parole possono non bastare, allora diciamo che lavoriamo su 4.
    Ecco che allora prendo:

    la bella casa rossa

    e vedo cosa c'e' normalmente dopo, potrei dover scegliere tra:

    affittasi
    ,
    e
    nel
    bruciata
    etc

    ma siamo da capo.

    Anche se nel 90% dei casi "affittasi" seguisse "la bella casa rossa" non avrebbe senso privilegiarla, perche' se la frase fosse lunga potrei preferire la "," se la frase parla di pompieri allora seglierei "bruciata" e via discorrendo.

    Per capire di cosa parla la frase dovro' tenere conto del significato di ogni parola, dei sinonimi, dovro' contare aggettivi, congiunzioni, nomi (e quanto altro) per sapere se dopo "la bella casa rossa" sia meglio mettere un aggettivo, un verbo, un articolo o magari chiudere la frase con un punto.
    Se un verbo prima era al passato dovro' privilegiare quel tempo...

    Diventa dura frase per frase, immaginiamoci per un documento nel suo complesso.

    Per questi motivi purtoppo, anche i migliori programmi disponibili sul web, spesso (praticamente sempre) possono essere utilizzati o a fini di studio o per analisi magari profondissime ma su piccole porzioni di testo.

    In caso di grossi volumi ecco che bisogna spezzare i corpus, dividerli in 100 modi, per grammatica, per alfabeto, per peso, per logica, per tema, per sinonimi, per lunghezza frasi, per numero parole, per lingue, per unicode, per anzianita', (che me ne faccio a fini pratici di un corpus basato sulla Bibbia?) etc etc.

    E cosi' i giga diventono tera...

    Poi riprovi il tutto nuovamente ma ottieni le solite risposte: out of memory, out of patience, out of your time life limit... da piangere.


  • Moderatore

    @agoago said:

    In caso di grossi volumi ecco che bisogna spezzare i corpus, dividerli in 100 modi, per grammatica, per alfabeto, per peso, per logica, per tema, per sinonimi, per lunghezza frasi, per numero parole, per lingue, per unicode, per anzianita', (che me ne faccio a fini pratici di un corpus basato sulla Bibbia?) etc etc.

    E cosi' i giga diventono tera...

    Poi riprovi il tutto nuovamente ma ottieni le solite risposte: out of memory, out of patience, out of your time life limit... da piangere.

    E già... questo è un tipico problema in cui si dovrebbero utilizzare applicazioni distribuite in ambito parallelo o "parallel computing"

    :ciauz:


  • User

    @paocavo said:

    L?IA è una disciplina che studia i fondamenti teorici, le metodologie e le tecniche che permettono di concepire, progettare, realizzare, sperimentare ed utilizzare sistemi artificiali sia simulati via software che implementati in hardware con gli obiettivi di ottenere prestazioni ritenute caratteristiche dell?intelligenza e di fornire modelli computazionali di processi cognitivi.
    Fonte: http://ia.di.uniba.it/

    ***Applicazioni principali
    *Attualmente questi sono i principali algoritmi dell'intelligenza artificiale:
    *Rappresentazione della conoscenza
    Apprendimento automatico (Machine Learning)
    Apprendimento non supervisionato
    Clustering
    Regole di associazione
    Apprendimento supervisionato
    Albero di decisione
    Regole di decisione
    Sistemi Esperti
    Apprendimento per rinforzo
    Reti neurali
    Algoritmi genetici o evolutivi
    Sistemi a classificatori
    Programmazione Logica Induttiva (ILP)
    Visual retrieval
    Visione artificiale
    Problema di soddisfacimento di vincoli *
    Fonte: http://it.wikipedia.org/wiki/Intelligenza_artificiale#Applicazioni_principali

    La popolarità di un sito è solo uno di tanti e tanti fattori considerati dai MDR.
    Anche se è uno di quelli preponderanti (perche un sito autorevole dovrebbe linkare un sito "fasullo"?)

    Bella domanda!
    Per rispondere si potrebbe scrivere un libro (e forse tu lo stai già facendo... no? tesi? 😉 )
    Adesso vado a cenare, a presto...

    :ciauz:

    Ciao Paolo, scusa il ritardo ma non avevo visto la tua risposta...
    Non sto scrivendo una tesi perche sono iscritto a Fisica (anche se fuori corso:D) comunque è un argomento di grande interesse e sto creando una piccola azienda che vorrebbe creare un suo "motore personale" rivolto sopratutto alle aziende. Ho lavorato nel campo del web marketing per 1 anno e ho verificato che l'unica cosa che funziona bene come ritorno degli investimenti è proprio la pubblicità sui motori di ricerca, sia come vendite che come immagine del marchio. Quindi ho pensato di creare un motore personale che includa algoritmi di AI per fare meglio il proprio lavoro. L'AI(forse per i Film) è vista come qualcosa di irraggiungibile...però il tuo algoritmo è già una prova che qualcosa si può fare (e non è poco). Comunque sono solo in fase di partenza e la strada sarà molto lunga e difficile e non è detto che il risultato finale sia accettabile, però fino a quando uno non prova non si puo dire:D.
    Devo dire che la comunità di Giorgio Tave è davvero eccezionale, non vi conoscevo prima di trovarvi tramite internet, e non pensavo che in Italia ci fosse un livello di competenza cosi buono...complimenti a tutti;)


  • User Attivo

    Paocavo scrive:

    "E già... questo è un tipico problema in cui si dovrebbero utilizzare applicazioni
    distribuite in ambito parallelo o "parallel computing""

    Ho seguito il link e letto un po' la documentazione.
    L'unica parola (di tutto) che ho capito' e' "parallelo".
    Credo sinceramente che sia oltre le mie capacita'.

    Ma almeno adesso so perche' riscontro questi limiti!


  • Bannato Super User

    [LEFT]agoago[/LEFT]

    il problema delle tue risorse lo risolvi appena ( spero che il suo avvento non tardi ) il sistema globus farà il suo ingresso sulla rete.

    La potenza di calcolo che questo sistema offre è illimitata.

    In parole povere hai presente come funziona il p2p?

    Bene, li si sharano file ( di tutti i tipi mp3 avi rar ecc. ) con globus si sharano le risorse di sistema.

    Siamo ancora agli albori, e ti posso dire che questo tipo di ricerca va lenta non tanto per la mancanza di menti geniali che la sviluppino, ma per i troppi interessi ( questo è un altro capitolo ).

    Dobbiamo pazientare, con un amico abbiamo sviluppato un software molto simile al tuo ma con scopo differente, ci limita proprio la potenza di calcolo che abbiamo a disposizione.

    Poi a lavoro ho incontrato un ingegnere 24 enne che stava preparando la sua tesi su [LEFT]globus e da li l' illuminazione, tutto il mio entusiasmo fu frenato quando mi disse che per ora
    globus funge solo in lan e malamente, e che le ricerche vanno a rilento.

    E che lui insoddisfatto dal sistema ( no globus, ma dalla gente che lo circondava ) aveva lasciato il progetto che non li dava più stimoli.
    [/LEFT]


  • User Attivo

    Ago prima di pensare ai cluster proverei a riscrivere tutto il software in qualche linguaggio tipo c e strutturarlo per utilizzare basi di dati studiate ad-hoc (discorso già fatto 1000 volte)..

    Spero che non ti basi su MySql per gestire tutti quei dati 😄


  • Bannato Super User

    uMoR il mio software scritto in c# ha piegato già 4 pc 😄


  • User Attivo

    Eh ma almeno il software sfrutta appieno la potenza di calcolo, se scrivi un programma in visual basic hai voglia.. 😛


  • Moderatore

    siamo un tantino OT...:ciauz:


  • User Attivo

    A proposito dell'interessante argomento di discussione, segnalo a tutti questo simpatico seminario in cui mi sono imbattuto...

    http://video.google.com/videoplay?docid=-7704388615049492068

    carino, vero? 🙂