Il web intelligente
Upcoming SlideShare
Loading in...5
×
 

Il web intelligente

on

  • 2,742 views

Sono passati decine di anni dai primi siti web composti solo da testo, immagini e link. Ora gli utenti pretendono di più volendo fare di meno. Desiderano che il tuo sito web capisca i loro gusti, ...

Sono passati decine di anni dai primi siti web composti solo da testo, immagini e link. Ora gli utenti pretendono di più volendo fare di meno. Desiderano che il tuo sito web capisca i loro gusti, fornisca approfondimenti, si modifichi in base alle loro esigenze. Durante questo intervento verranno forniti consigli su quali tecniche e servizi di text analysis, collective intelligence e semantic web possono rendere il nostro sito web intelligente.

Statistics

Views

Total Views
2,742
Slideshare-icon Views on SlideShare
2,731
Embed Views
11

Actions

Likes
6
Downloads
42
Comments
1

5 Embeds 11

http://www.linkedin.com 5
http://www.techgig.com 3
http://lanyrd.com 1
https://twitter.com 1
http://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • Ottimo, ben spiegato con riferimenti e link utili
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Il web intelligente Il web intelligente Presentation Transcript

    • Il web intelligente Smart is the new sexy Better Software 2011 Firenze - 27/ 28 giugno 2011
    • Happy Developer . http://about.me/davidecerbo http://www.exmachina.chhttp://www.linkedin.com/in/davidecerbo http://twitter.com/davide_cerbo
    • Ringraziamenti Costantino Cerbo Davide Palmisano Senior developer @ Gebit CEO @ Smartetics in Germania in Inghilterra• http://linkedin.com/in/ccerbo • http://linkedin.com/in/davidepalmisano• http://text-analysis.sourceforge.net/ • http://smartetics.co.uk/• http://twitter.com/webtextanalysis • http://twitter.com/dpalmisano
    •  “Quello che l’informazione consuma è piuttosto  ovvio: consuma l’attenzione dei suoi  destinatari. Dunque un’abbondanza di  informazione crea povertà d’attenzione, ed il bisogno di scegliere come distribuire in maniera  efficiente questa attenzione tra la sovrabbondanza di informazioni che potrebbero  consumarla” H.A. Simon
    • Come ne usciamo? Aiutiamo il web a diventare più intelligente!
    • Le nostre armi segrete Analisi del testo Sistemi di raccomandazione Open Data Web Semantico
    • Analisi del testo "si riferisce al processo di estrazione di  informazioni di alta qualità dal testo" (http://en.wikipedia.org/wiki/Text_mining) I 4 passi base Esempio "Grazie a tutti per essere venuti a Better Software"
    • Tokenizzazione• Analizzare il testo per estrarre i terminiString[] tokens = {"Grazie", "a", "tutti", "per", "essere", "venuti","a", "Better", "Software!"}Normalizzazione• Pulire il testo da caratteri e differenze non utiliString[] tokens = {"grazie", "a", "tutti", "per", "essere", "venuti","a", "better", "software"}
    • Eliminazione "Stop Words"• Eliminare le parole di uso comune in una lingua che non incidono per lidentificazione del contenuto del testo.• Esistono delle liste open source per le varie lingue, per litaliano: http://snowball.tartarus.org/algorithms/italian/stop.txtString[] tokens = {"grazie", "a", "tutti", "per", "essere", "venuti","a", "better", "software"}
    • StemmingLo stemming è il processo di riduzione della forma flessa di una parola alla sua forma radice, detta tema. Il tema non corrisponde necessariamente alla radice morfologica (lemma) della parola: normalmente è sufficiente che le parole correlate siano mappate allo stesso tema. (http://it.wikipedia.org/wiki/Stemming)Esempio: andare, andai, andò = andString[] tokens = {"graz", "tutt", "ess", "venut", "better","softwar"}Approfondimento su:http://snowball.tartarus.org/algorithms/italian/stemmer.html
    • Principali algoritmi• Estrazione contenuto rilevante da pagina web o http://boilerpipe-web.appspot.com/ o https://www.readability.com/• Rilevamento della lingua o https://ajax.googleapis.com/ajax/services/language/detect?v=1.0&q=Benvenuta %20gente o http://www.alchemyapi.com/api/demo.html• Estrazione parole chiave o http://www.alchemyapi.com/api/demo.html o http://developer.yahoo.com/search/content/V1/termExtraction.html o http://saplo.com/api• Categorizzazione testo o http://uclassify.com/• Riassunti automatici o http://topicmarks.com/dashboard o http://shablast.com/?id=1080961&type=Summary o http://lada.si.umich.edu:8080/clair/nie1/nie.cgi• Estrazione di "Named entity" o http://cogcomp.cs.illinois.edu/demo/ner/?id=8 o http://access.alchemyapi.com/demo/entities_int.html?mode=entity o http://www.opencalais.com/about
    • Sentimental Analysis Categorizza dei testi in positivi onegativi tramite lestrazione di frasi o parole chiave Molto usato per analisi su Twitter o su post dei blog• Twitter o http://www.tweetfeel.com o http://twittersentiment.appspot.com/• Ristoranti, hotel, aziende o http://www.infoglutton.com• Mercato azionario o http://www.thestocksonar.com• Marchi, avvenimenti, etc o http://www.repustate.com
    • Sentimental Analysis: un esempio
    • Il Semantic WebSemantic Web, Web of Data, Machine-readable Web, Web3.0 ... termini differenti per indicare la stessa idea:correlare dati eterogenei tra di loro come fossero  pagine Web "The Semantic Web is a webby way to link data"  - Dave Beckett, Yahoo Inc.
    • Il Semantic Web: building blocks RDF Microformats schema.org RDFa Microdata
    • Il Semantic Web: RDF Resource Description Framework (RDF) è lo standard base del W3C.• qualsiasi entità descrivibile è identificata da una URI• proprietà e relazioni tra entità vengono espresse con URI• lo statement (o tripla) è lunità base: soggetto - predicato - oggetto• un insieme di statement fanno un grafo RDF• i grafi si serializzano tramite: RDF/XML, N-Triples, Notation3, ... Esempio: Davide Cerbo è lautore della presentazione il Web Intelligente diventa in RDF/XML:<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:au="http://description.org/schema/"><rdf:Description about="http://snoopal.com/..."> <au:author>http://snoopal.com/user/davidecerbo</au:author></rdf:Description></rdf:RDF>
    • Il Semantic Web: RDFa Resource Description Framework-in-Attribute (RDFA) è una W3C Recommendation per aggiungere RDF nelle pagine web. Gli attributi usati sono: about o src, rel o rev, href or resource, property,  content, datatype e typeof Esempio:<div xmlns:dc="http://purl.org/dc/elements/1.1/"about="http://snoopal.com..."> <span property="dc:title">Il web Intelligente</span> <span property="dc:creator">Davide Cerbo</span> <span property="dc:date">2011-06-27</span></div>
    • Il Semantic Web: MicroformatsMicroformats è una specifica per includere informazioni semantiche in una paginaweb usando gli attributi: • class • rel Ha molte specifiche per descrivere, ad esempio: ricette (hRecipe), CV (hResume), recensioni (hReview) e risorse multimediali (hMedia). Esempio:<div class="vcard"> <div class="fn">Davide Cerbo</div> <div class="org">Ex Machina</div> <div class="tel">+41 00 000 000 000</div> <a class="url" href="http://...">http//exmachina.ch</a></div>
    • Il Semantic Web: MicrodataMicrodata e parte di una specifica di HTML5 per annotare semanticamenteporzioni della pagina Web.La specifica prevede un algoritmo per convertirle Microdata in RDF.Lidea alla base e quella di prevedere gruppi (items) di coppie chiave-valore(itemprop), rappresentati da elementi del DOM annotati con i seguenti attributi: itemscope, itemtype, itemid, itemref e itemprop Esempio:<section itemscopeitemtype="http://example.org/animals#cat"> <h1 itemprop="name">Hedral</h1> <p itemprop="desc">Hedral is a male american domestic shorthair, with a fluffy black fur with white ...</p> <img itemprop="img" src="hd.jpg" title="Hedral,age 18 "></section>
    • Il Semantic Web: Schema.orgDa un accordo tra i principali motori di ricercanasce schema.org, un vocabolario basato su Microdata per la descrizione dientità di uso comune: • Creative works: Book, Movie, MusicRecording, Recipe, TVSeries ... • Embedded non-text objects: AudioObject, ImageObject, VideoObject • Person • Place, LocalBusiness, Restaurant ... I SEO dovranno rispettare un solo standard!
    • Il Semantic Web: Real life :-)
    • Il Semantic Web: Real life :-)
    • "Pensiamo che sia ingiusto che Google o altri prendano i nostri  contenuti senza pagare "    Carlo De Benedetti
    • "My Administration is committed to creating an unprecedented level of openness in Government.     We will work together to ensure the public  trust and establish a system of transparency,  public participation, and collaboration. Openness  will strengthen our democracy and promote  efficiency and effectiveness in Government." Open Government Initiative Memorandum,  President B. Obama 
    • Open data e il Semantic Web• Lidea alla base prevede che alcuni dati siano pubblici e riusabili da liberamente al fine di promuovere trasparenza e partecipazione democratica• Numerose iniziative o data.gov o data.gov.uk o dati.piemonte.it o datasf.org o ... cerca #opendata su twitter ;)
    • Open data e il Semantic WebTuttavia la pubblicazione dei dati rimane estremamenteeterogenea: • file CSV, testi non strutturati • XML • ... • fino a piattaforme più sofisticateLeterogeneità rimane un ostacolo allo sviluppo rapido dimashups e applicazioniNecessità di gestire il licensing dei datiNecessità di monetizzare API e mashups su questi datiMetodo per il riconoscimento della qualità dei data sets
    • Il Semantic Web: Linked Open DataIl web permette di collegare documenti. Similarmente permette di collegare dati. Il termini Linked Data fa riferimento ad un insieme di best practices per pubblicare e collegare dati strutturati nel Web. Le tecnologie chiave che supportano Linked Data sono URI ( un modo generico per indentificareentità o concetti nel mondo), HTTP (un meccanismo semplice, ma universale, per recuperare risorse o descrizioni di risorse), e RDF (un generico modello basato su grafo che struttura e collega le cose nel mondo). Tom Heath (http://tomheath.com/papers/bizer-heath-berners-lee-ijswis-linked-data.pdf)
    • ottobre 2007...
    • ...settembre 2010
    • Il Semantic Web: a 5 stelle★★★★★ rendi i tuoi dati disponibili sul web (in qualsiasi formato) e con una licenza aperta★★★★★ forniscili come dati strutturati★★★★★ usa formati non proprietari★★★★★ usa URI per identificare le tue risorse, così che gli utenti possano puntarle direttamente★★★★★ collega i dati ad altri dati per fornire un contesto http://lab.linkeddata.deri.ie/2010/star-scheme-by-example/
    • Il Semantic Web: data marketsLinked Open Data è un modello per la pubblicazione elinterlinking di open data sets differenti.La ricerca degli stessi, la loro catalogazione, la pubblicazionedi API derivate dal mashup degli stessista portando ai primi data markets:• datamarket.com• infochimps.com• kasabi.com• factual.com• ckan.netSi intravedono i primi revenue model per data owner e API
    • Ed ora?Mashup     Sistemi di raccomandazione   Data mining
    •    "Il 90% di tutto è spazzatura" Theodore Sturgeon
    •     "Che cosè lintelligenza collettiva? In primo luogo bisogna  riconoscere che lintelligenza è distribuita dovunque cè  umanità, e che questa intelligenza, distribuita dappertutto,  può essere valorizzata al massimo mediante le nuove  tecniche, soprattutto mettendola in sinergia. Oggi, se due  persone distanti sanno due cose complementari, per il  tramite delle nuove tecnologie, possono davvero entrare in  comunicazione luna con laltra, scambiare il loro sapere, cooperare. Detto in modo assai generale, per grandi linee, è  questa in fondo lintelligenza collettiva" Pierre Lévy
    • Sistemi di raccomandazioneLa nostra missione: Fornire ai nostri utenti gli elementi di loro interesse a partiredai dati di cui si dispone: informazioni su utenti e oggetti.Tipi: • Basati sul contenuto elementi simili a quelli piaciuti nel passato• Collaborativi elementi che sono piaciuti a persone con profili simili• Ibridi un mix trai precedenti
    • Basati sul contenutoPunti chiave: • Creare un profilo per ogni elemento • Il profilo assegnato manualmente o automaticamente. • Per i testi si utilizzano le tecniche di analisi del testo.Esempio: Se io compro un libro di James Frey mi verranno suggeriti tutti  gli altri libri dello stesso autore, dello stesso genere,  pubblicati nello stesso annoPro: • buoni risultati anche in sistemi con pochi utentiContro: • offre raccomandazioni scontate (e.s.: i libri di James Frey li posso scoprire anche vedendo  la sua bibliografia)
    • Collaborativi: Memory-basedPunti chiave: • Si basano sulla storie delle valutazioni degli utenti. • Vengono usate diverse tecniche euristiche per calcolare la somiglianza tra utenti come il calcolo del Coefficiente di correlazione di r di Pearson. • Non tutti gli utenti valutano gli elementi nello stesso modo. I voti vanno normalizzati!Esempio: Se io compro un libro di James Frey mi verranno suggeriti i libri comprati da un gruppo di persone che hanno fatto lo stesso acquisto.Pro: • offre raccomandazioni più imprevedibili • crea relazioni fra utenti e la possibilità di raccomandazioni indiretteContro: • cold start: servono molti utenti per avere buone raccomandazioni • difficilmente tutti gli utenti esprimeranno preferenze su un numero sufficiente di risultati (si può risolvere con la Dimensionality Reduction) • Banana Problem: si suggeriscono sempre degli elementi molto comuni
    • Collaborativi: Model-basedPunti chiave: • Si basano sulla storie delle valutazioni degli utenti per creare un modello • Solitamente basato sul calcolo delle probabilità. • Sfruttano lAnalisi del Collegamenti.Esempio: Se io compro un libro di James Frey mi verranno suggeriti i libri comprati da un gruppo di persone che hanno fatto lo stesso acquisto. Dando maggior peso a quelli acquistati da utenti molto  attivi o importanti nel sistema.Pro: • offre raccomandazioni più affidabili rispetto ai Memory-based • gli stessi del Memory-basedContro: • costi computazionali elevati • gli stessi del Memory-based
    • Links raccomandati :)• IntroAnalytics http://www.introanalytics.com/examples.php• DirectEdge http://www.directededge.com/• Sailthru Concierge https://www.sailthru.com/concierge• kassandra-recommendations http://code.google.com/p/kassandra-recommendations/
    • Langolo dello smanettone 1/2• Apache Lucene http://lucene.apache.org/java/docs/• Text Analysis http://text-analysis.sourceforge.net/• Apache OpenNLP http://incubator.apache.org/opennlp/• LingPipe http://alias-i.com/lingpipe/• NLTK (python) http://www.nltk.org/• Apache Mahout http://mahout.apache.org/• Apache UIMA http://uima.apache.org/• Any23 http://developers.any23.org
    • Langolo dello smanettone 2/2• Virtuoso (anche OpenSource) http://virtuoso.openlinksw.com/• Jena http://jena.sourceforge.net/• Sesame http://www.openrdf.org/• JRDF http://jrdf.sourceforge.net/• SIREn http://siren.sindice.com/• Apache Clerezza http://incubator.apache.org/clerezza/• OrientDb (graph DB prima o poi vi servirà!) http://www.orientechnologies.com/• Sail Ouplementation https://github.com/tinkerpop/blueprints/wiki/Sail-Ouplementation
    • Letture consigliate 1/2• Algorithms of the Intelligent Web http://www.manning.com/marmanis/• Mining the Social Web http://oreilly.com/catalog/0636920010203/• Collective Intelligence in Action http://www.manning.com/alag/• Programming Collective Intelligence http://oreilly.com/catalog/9780596529321• Costruire sistemi per la reputazione Web http://www.tecnichenuove.com/libri/costruire_sistemi_per_reputazione_web.html
    • Letture consigliate 2/2• Semantic Web. Dai fondamenti alla realizzazione di unapplicazione  http://hpe.pearson.it/scheda_opera.php?ID=2789&macrodestinazioneID=&materiaID=• Thinking on the Web Web   http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471768669.html
    • Q&A