Info:

twitter

Ultimi commenti: Comment feed

Tags:

Sponsor:

Archivio 2018:

Gen

Archivio 2017:

Dic Nov Ott Mag Apr Mar Feb Gen

Archivio 2016:

Dic Nov Ott Ago Mag Mar Feb Gen

Archivio 2015:

Nov Ott Set Mar Gen

Archivio 2014:

Dic Nov Ott Set Lug Giu Mag Apr Gen

Archivio 2013:

Dic Nov Set Ago Lug Giu Mag Apr Feb Gen

Archivio 2012:

Dic Nov Ott Set Ago Giu Mag Apr Mar Feb Gen

Archivio 2011:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2010:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2009:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2008:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2007:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2006:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Stemming

Mentre debuggavo qualche pezzo di Blogoo inerente stemla ricerca, mi sono imbattuto in un algoritmo alquanto interessante data la mia viscerale passione per l’analisi lessicale: lo stemming, ovvero la riduzione di una parola alla sua radice in modo che la ricerca sia più accurata possibile.

Ho cercato di usare qualcosa di già pronto, ma si è rivelato così bacato che ho preferito riscrivere l’intero algoritmo da capo tenendo in mente che una parte dell’algoritmo deve essere molto veloce.

Anche se ad un certo punto mi son arreso per dare priorità, come dovrebbe pur essere, alla corretta funzionalità.

L’algoritmo che ho usato è una versione modificata di quello descritto in questa pagina. Modifica resasi necessaria per il corretto stemming di parole che terminano in –atrice, –atrici gestite in maniera diversa – e chissà per quale motivo – dai corrispondenti suffissi maschili. Volendo per i programmatori C# volenterosi ci si potrebbe divertire a studiare implementazioni migliori e darle in pasto ad un semplice programma di test.

Nel piccolo di questa piattaforma quindi lo stemming è pressoché completato: magari non serve a niente, ma un algoritmo interessante è difficile da ignorare.

-quack

Technorati Tags: ,

Commenti (2):
1. Enrico
martedì 29 luglio 2008 alle 6:25 PM - unknown unknown unknown
   

Sono affascinato da questi algoritmi.

Tendo ad includerli nel più vasto ambito dell'intelligenza artificiale (Fuzzy Logic, reti Neurali, etc.), verso la quale nutro una vera e propria passione.

Questa passione mi ha anche immediatamente costretto ad acquisti come il Roomba, che dopo urlti e strepiti della mia compagna per l'acquisto "...INUTILE..." e lo "...spreco di soldi..." ora è ritenuto all'unanimità i-d-i-s-p-e-n-s-a-b-i-l-e

Un altro effetto collaterale di letture sull'argomento è la comparsa, da mesi, di un'idea, una specie di visone, su come potrebbero essere le interfacce future, dotate cioè di intelligenza artificiale.

Dato che visioni simili in passato si son tradotte molte volte in realtà tempo dopo (UMPC, iPhone, SSD, ed altre), ora sto imparando a prendere coraggio e a raccontarle, vincendo la paura di essere considerato un pazzo visionario o, al meglio, un romantico sognatore che non ha i piedi per terra.:D

L'idea sarebbe quella di un'evoluzione del superfetch, in grado di prevedere con una certa accuratezza l'applicazione che l'utente intende lanciare, che inizierebbe così ad essere precaricata nel momento in cui l'utente inizia a muovere il mouse.

Il rinforzo positivo verrebbe dall'esecuzione del task correttamente previsto come target, il rinforzo negativo invece dal lancio di un'applicazione diversa da quella prevista, consentendo l'apprendimento per rinforzo.

Ovviamente la previsione basata sulla probabilità che l'utente voglia avviare proprio quell'applicazione, oltre che sul movmento del puntatore o sulla sequenza di operazioni, puo' essere basata anche su altri dati, ad esempio le statistiche di utilizzo.

Tornando agli algoritmi che lavorano sui testi, invece, un'idea che sto cercando di approfondire è quella della possibilità di "capire" i vari argomenti trattati da piattaforme di discussione come forum, newsgroup e blog.

In particolare, anche sfruttando il know how già acquisito e che rende possibili cose come il sunto automatico di un articolo, mi piacerebbe progettare un algoritmo in grado di suddividere un generico post in diversi thread, automaticamente, sulla base delle risposte e dei quote al post origine.

Il risultato sarebbe quello di porre ordine autometicamente a quel guazzabuglio di commenti/risposte/repliche/ecc. che si genera inevitabilmente in quelle discussioni accese, rendendo quasi illegibile la discussione una volta che si popola di commenti/risposte/repliceh varie.

   
2. wisher
mercoledì 30 luglio 2008 alle 11:42 AM - unknown unknown unknown
   

@Enrico, ogni tanto anche io penso che il mio pc dovrebbe capire quale programa fare partire... chissà se Paperino ci farà il regalo di implementare questa funzione su Windows Seven

   
Lascia un commento:
Commento: (clicca su questo link per gli smiley supportati; regole di ingaggio per i commenti)
(opzionale, per il Gravatar)