Post recenti
Commenti recenti
- I Principali Test per un Sito Web in Ottica SEO - Ingegnerealbano.com on Come calcolare la distribuzione del “PageRank” tra le pagine di un sito
- SEO e keywords: esistono strategie e tecniche efficaci? | SERIAL EYE on Benedetta SEO, maledetta SEO
- LowLevel on Continuare a smontare Google: un’altra scoperta SEO
Tutti i post
-
Questa opera di Enrico Altavilla è concessa in licenza sotto la Licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Unported.
Whatsup 0.1, la genesi
Mentre attendo che la pasta cuocia, vi scrivo il primo di una serie di post attraverso i quali vi darò visibilità del nuovo software che sto progettando.
Come forse qualcuno avrà intuito da qualche mia passata partecipazione al Convegno GT, è da un po’ di tempo che mi interesso di Google News.
Oltre a incamerare una quantità industriale di informazioni sul motore di ricerca verticale, ho trovato il modo per avere accesso alle ricerche in tempo reale fatte dagli italiani. Si tratta di informazioni che Google non divulga esplicitamente ma alle quali è possibile arrivare smontando il giocattolo e cercando dentro.
Il primo risultato di questa ricerca si chiama Whatsup, un software attualmente in fase embrionale ma già in grado di fornire dati interessanti a chiunque debba scrivere articoli e notizie online (e non solo); conoscere in tempo reale i temi a cui gli italiani sono interessati è un’informazione dal valore altissimo.
Lo screenshot che trovate su questa pagina mostra non semplicemente un elenco delle keyphrase estratte da Google ma anche una sua elaborazione: ho implementato un algoritmo di clustering nel tentativo di mettere ordine a informazioni prive di struttura.Inizialmente ho ipotizzato di poter sfruttare un algoritmo della classe K-Means ma successivamente mi sono reso conto che, almeno nelle sue implementazioni più semplici, il K-Means non sarebbe andato bene per i miei scopi.
Nelle forme più semplice del K-means, infatti, la scelta dei cluster iniziali può avvenire attraverso criteri un po’ deboli: a volte persino facendo una scelta casuale. Nel tipo di classificazione che volevo ottenere io, invece, avrei desiderato ottenere una definizione dei cluster fondata su una prima analisi dei dati stessi.
La seconda perplessità sull’uso di un K-means è collegata al fatto che la quantità di dati da classificare (le keyphrase) è abbastanza bassa: intorno al centinaio di elementi. Di fronte a queste quantità e ad un numero di cluster potenzialmente elevato, fino a qualche decina, non è detto che il concetto cardine sul quale si basa il K-Means (la ridisposizione in spazi multidimensionali di elementi che condividono caratteristiche) si riveli in grado di produrre buoi risultati.
Insomma, mi son detto che non conveniva smobilitare la NASA per classificare un centinaio di keyphrase e quindi ho sviluppato un mio algoritmo di clustering, a mio parere più adatto a quanto volevo ottenere. Per esempio la scelta dei nomi dei cluster avviene facendo delle statistiche sulle parole più frequenti nel gruppo di keyphrase.
Il risultato potete notarlo nello sceenshot già citato. Dati e classificazione sono fatti dal software, la mappa mentale l’ho creata a mano con XMind.
Notate che si tratta solo della prima versione dell’algoritmo di clustering e che nel momento in cui scrivo questo primo post sono già giunto a versioni superiori e a mio parere migliori sotto molti aspetti, che tratterò nei post successivi di questa serie.
Salumi e caci.
Dal più basso livello possibile
Il nickname “Low Level” mi ha accompagnato sin da quando ho iniziato a muovere i primi passi sulla Rete. Non era nemmeno Internet, era una roba che si chiamava Fidonet. Se non avessi cannibalizzato l’adattatore telematico del Commodore 64 subito dopo l’acquisto per farne nonricordocosa, probabilmente avrei conosciuto anche l’emozione del Videotel.
“Low level” significa letteralmente “basso livello” ma non si tratta di un’indicazione sulla qualità di qualcosa: “basso livello” significa semplicemente indagare in profondità il meccanismo di qualsiasi cosa per capire come funziona. E’ la voglia di smontare i giocattoli per capire quali ingranaggi li regolano. La programmazione di software a basso livello, per esempio, è quella che si fa programmando direttamente nel linguaggio della CPU o di altri chip.
Capirete da voi che quando si è colpiti da questo “morbo” sin da piccoli, la famiglia del pargolo può incontrare serie difficoltà a finanziare i continui e folli smantellamenti di giocattoli del novello Dottor Frankenstein. Se i genitori possiedono un minimo di buonsenso, iniziano scaltramente a razionare i regali e questo è un bene perché a questo punto solitamente avviene l’evoluzione: alla fase esplorativa il bambino è costretto ad aggiungere la fase creativa.
Inizia ad assemblare i componenti precedentemente espiantati al modellino di Mazinga e al trenino elettrico, gli aggiunge la paletta per raccogliere la sporcizia, un elastico, due graffette e ci tira fuori un acceleratore di particelle, dove le particelle sono delle palline di chewing-gum che sfruttano la potenza propulsiva dell’ordigno appena inventato per trasformarsi in fastidiosissimi proiettili al colorante rosso E120.
Da quel momento non la pianta più di fare ‘ste cose. I genitori mantengono comunque un equilibrio psichico perché saltuariamente fanno echeggiare in maniera strategica delle parole magiche quali “collegio” o “circo togni” (e non per portarcelo come spettatore) e tutto va avanti in maniera più o meno serena. Ma se un figlio così dovesse capitare a voi, non regalategli mai un gatto, perché passare da un acceleratore ad un divaricatore è un attimo.
E da grande? Da grande non smette. Che si tratti di informatica, di marketing, di motori di ricerca e SEO o persino di relazioni interpersonali, continua ad osservare, a studiare e a cercare di trovare modi ottimizzati (si legga: migliori) di fare le cose a beneficio proprio e altrui.
E si diverte un mondo. Io spero di darne evidenza su questo blog.
Alla prossima!