Oppure

Loading
05/12/15 21:24
drew
Ciaooo, sto sviluppando una piattaforma per l'analisi delle conversazioni (sto raccogliendo chat di Whatsapp e Facebook).

Per ora, dai messaggi estraggo le parole con una regex standard che cerca ( ,.!?/) e voglio migliorare la funzione, facendo in modo che riconosca anche (..., .., ecc) e altre espressioni comuni nelle chat ed errori tipici come sequenze di punteggiatura (parola ! .parola) ed infine mi serve che links, mail, date e ore non vengano suddivisi.

Otre alla regex, per favore, segnalate anche i problemi comuni che si incontrano nel processare conversazioni con errori di ortografia e grammatica ed eventuali soluzioni.

Grazie! :asd::asd::asd:
Ultima modifica effettuata da drew 05/12/15 21:45
aaa
06/12/15 14:59
TheDarkJuster
Io dopo aver letto sono rimasto con un enorme punti interrogativo, e l'unica cosa che riesco a pensare è: "bboooooohhhhhh". Cosa vuol dire non vengano divisi link e mai? Cosa hai scritto? Possiamo vedere qualcosa? In che senso ...? Cosa intendi con processare conversazioni?
aaa
07/12/15 7:35
Thejuster
Oltre all'affermazione di DarkJuster...

Il senso del topic?
Cioe non ho capito se e' una richiesta di aiuto su qualcosa
O che abbia descritto cosa sta facendo :om:

Forse a natale abbiamo un nuovo ciaffo sotto l'albero lol.
mire.forumfree.it/ - Mire Engine
07/12/15 22:37
drew
Si, è una richiesta di aiuto...

Per processare conversazioni, intendo che il programma estrare le parole usate nei messaggi ed elebora delle statistiche su modelli linguistici pre-inseriti e ne cerca di nuovi, riconoscendo correlazioni di trend.

Per ora, separo le parole cercando lo spazio, la virgola e il punto e, vorrei riuscire a far riconoscere correttamente al programma una percentuale di parole maggiore, ad esempio facedogli splittare prima segmenti divisi dai tre o due punti di sospensione e altri pattern che lo spazio, la virgola e il punto e far si che che link, mails, date(se introduco anche il carattere \) vengano riconosciuti e non vengano divisi come gli altri segmenti.

La domanda è: posso fare tutto usando le regex o devo/è meglio riprocessare gli output con altre funzioni che correggono gli errori?
aaa
07/12/15 23:48
TheDarkJuster
Se avessi seguito i miei thread sapresti già che io ti risponderei lascia stare le regex.

Analizzando bene il problema non posso non affermare che usare le regex sia la scelta mogliore come semplicità e possibilità di estensione del programma.

aaa
08/12/15 17:35
Roby94
Se la mole di dati è contenuta e la complessità di computazione non è un problema vai per le regex, ti risparmi tutta la complessità di sviluppare un parser, avendone uno bello potente, versatile e gia pronto alle spalle. Con poche di righe di codice puoi identificare gran parte degli schemi che ti servono senza scomodare piu di qualche funzione, in piu avresti a disposizione dei gruppi d caratteri che ti semplificherebbero il compito di identificare cos'è e cosa non è una parola. Lo split secondo caratteri come lo spazio, la virgola e il punto sono piuttosto limitative per un testo articolato.
Fatto il parsing secondo regex a te non rimarrà che lavorare con dei semplici array, molto piu gestibili di una stringa disordinata.
aaa
10/12/15 1:40
drew
Postato originariamente da Roby94:

Se la mole di dati è contenuta e la complessità di computazione non è un problema vai per le regex, ti risparmi tutta la complessità di sviluppare un parser, avendone uno bello potente, versatile e gia pronto alle spalle. Con poche di righe di codice puoi identificare gran parte degli schemi che ti servono senza scomodare piu di qualche funzione, in piu avresti a disposizione dei gruppi d caratteri che ti semplificherebbero il compito di identificare cos'è e cosa non è una parola. Lo split secondo caratteri come lo spazio, la virgola e il punto sono piuttosto limitative per un testo articolato.
Fatto il parsing secondo regex a te non rimarrà che lavorare con dei semplici array, molto piu gestibili di una stringa disordinata.


Grazie mille...
aaa
11/12/15 22:23
lumo
Potresti avere dei problemi con le regex perché dalla tua descrizione sembrerebbe ti serva fare backtracking, in praticolare per individuare gli errori comuni.
In realtà la risposta da darti è difficile, perché l'analisi linguistica dei testi è un campo in cui si fa molta sperimentazioni e molta ricerca. Vedi cosa ti esce.
aaa